:root{--teal:#00a4b2;--ice:#aee0e6;--dark:#3d555e;--gray:#696c6e;--ink:#203d46;--paper:#f6fbfb;--aqua:#aee0e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font:400 16px/1.65 Poppins,Arial,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-underline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid currentColor;outline-offset:5px}.shell{width:min(1320px,calc(100% - 80px));margin:auto}header{background:var(--dark);color:white;border-bottom:1px solid #ffffff35}header nav{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand img{display:block;width:112px;height:auto;filter:brightness(0) invert(1)}.navlinks{display:flex;align-items:center;gap:32px}.navlinks a{text-decoration:none;font-size:.9375rem}.navlinks a:hover{text-decoration:underline}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Kalam,'Segoe Print',cursive;font-weight:400;line-height:1.12}.hero{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:white}.hero-copy{padding:72px max(40px,calc((100vw - 1320px)/2));padding-right:48px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.kicker{text-transform:uppercase;font-size:.875rem;font-weight:500;letter-spacing:.15em}.eyebrow{color:var(--ice);margin:0 0 36px}h1{font-size:clamp(4rem,6.8vw,7rem);margin:0 0 22px;letter-spacing:-.035em}h1 span{color:var(--ice)}.hero-copy>p:not(.eyebrow):not(.hero-bottom){font-size:1.125rem;color:#e5f4f5}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 24px;min-height:50px;font-size:.9375rem;text-decoration:none;border:1px solid currentColor}.primary,.button-primary{background:var(--ice);color:var(--ink);border-color:var(--ice)}.button:hover{background:var(--teal);color:white;border-color:var(--teal)}.text-link{font-size:.9375rem}.hero-bottom{width:100%;margin:65px 0 0;padding-top:18px;border-top:1px solid #ffffff45;font-size:.875rem;letter-spacing:.1em;display:flex;gap:20px;justify-content:space-between}.hero-bottom span{color:var(--ice)}.hero-art{position:relative;min-height:610px;background-color:var(--teal);background-image:url('wave-rear.webp');background-size:300% auto;background-position:right top;background-repeat:no-repeat;overflow:hidden}.art-logo{position:absolute;left:8%;bottom:8%;border:2px solid white;width:230px;padding:30px 22px 20px;text-align:center;background:#009facd9;color:white}.art-logo img{width:100%;height:auto;filter:brightness(0) invert(1)}.art-logo span{display:block;font-size:.875rem;margin-top:20px}.intro{padding:80px 0;background:var(--ice)}.intro-grid{display:grid;grid-template-columns:1fr 1.25fr 190px;gap:55px;align-items:center}.kicker{margin-bottom:20px}h2{font-size:clamp(3rem,4.7vw,5rem);margin:0}.intro-copy p{margin-bottom:24px}.details{display:grid;grid-template-columns:1fr 1fr;gap:22px;border-top:1px solid #203d4645;padding-top:20px}.details strong,.details span{display:block}.details strong{font-size:.9375rem}.details span{font-size:.875rem;margin-top:5px}.ambience-photo{width:100%;height:245px;object-fit:cover;border:7px solid #ffffffa0;transform:rotate(3deg)}.menu-section{padding:76px 0 36px}.menu-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.menu-heading h2{font-size:clamp(4rem,7vw,6.8rem);color:#007481}.menu-heading p{margin-bottom:15px}.menu-index{display:flex;flex-wrap:wrap;gap:10px 26px;border-block:1px solid #203d4630;margin-top:25px;margin-bottom:35px;padding-block:17px}.menu-index a{font-size:.9375rem;text-decoration:none}.menu-index a:hover{text-decoration:underline}.menu-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:stretch}.dark{background:var(--dark);color:#d2f2f4}.teal{background:var(--teal);color:#102f37}.light{background:var(--ice);color:#1f4a54}.gray{background:var(--gray);color:white}.menu-column{padding:12px 32px 28px}.menu-category{padding:30px 0 20px;scroll-margin-top:20px}.menu-category h3{font-size:2.75rem;margin:0 0 7px;overflow-wrap:break-word}.menu-labels,.menu-items li{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:12px}.menu-labels.double,.menu-items.double li{grid-template-columns:minmax(0,1fr) 4.3rem 4.3rem;gap:12px}.menu-labels{font-size:.875rem;border-bottom:1px solid currentColor;padding-bottom:7px;margin-bottom:7px;opacity:.9}.menu-items{list-style:none;padding:0;margin:0}.menu-items li{font-size:1rem;line-height:1.45;padding:8px 0;border-bottom:1px solid #ffffff22;align-items:baseline}.teal .menu-items li,.light .menu-items li{border-bottom-color:#173e461c}.item-name{min-width:0;overflow-wrap:break-word}.price{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:.9375rem}.soft-drinks{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:var(--gray)}.soft-drinks .menu-category{padding:38px 32px}.soft-drinks h3{color:var(--ice)}.menu-note{font-size:.875rem;padding-top:22px}.moments{padding:70px 0 80px;background:var(--teal);color:#123941}.moments h2{max-width:750px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:45px}.cards article{border-top:1px solid #12394160;padding-top:20px}.cards span{font-size:.875rem;letter-spacing:.08em}.cards h3{font-size:2.1rem;margin:24px 0 10px}.cards p{margin-bottom:0}.location{padding:80px 0;background:var(--ice)}.location-wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:80px}.location-copy h2{margin-bottom:24px}.location-copy p{max-width:600px}.address{border-block:1px solid #203d4645;margin:28px 0;padding:22px 0}.address strong{display:block}.location .button-primary{background:var(--dark);color:white;border-color:var(--dark)}.hours-panel{background:var(--dark);color:white;padding:45px}.hours-panel h3{font-size:3.1rem;margin:0 0 20px}.hours-panel dl{margin:0 0 25px}.hours-panel dl div{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;border-bottom:1px solid #ffffff40;padding:18px 0}.hours-panel dd{margin:0;color:var(--ice)}.hours-panel>p:not(.kicker){font-size:.875rem}.hours-panel a{overflow-wrap:anywhere}footer{background:var(--dark);color:white;padding:28px 0}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.875rem}.footer-row img{width:110px;height:auto;filter:brightness(0) invert(1)}
@media(min-width:1600px){.hero-art{background-size:300% auto}.hero-copy{padding-left:max(40px,calc((100vw - 1320px)/2))}}@media(max-width:1100px){.shell{width:calc(100% - 48px)}.hero-copy{padding:55px 32px}.hero-bottom{flex-direction:column;gap:5px}.intro-grid{grid-template-columns:1fr 1.4fr;gap:35px}.ambience-photo{display:none}.menu-board{grid-template-columns:1fr 1fr}.menu-column.light{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.menu-column.light #rum{grid-column:2;grid-row:1/4}.soft-drinks{grid-template-columns:1fr 1fr}.soft-drinks #digestivos{grid-column:1/-1}.location-wrap{gap:35px}.menu-column{padding-inline:25px}}@media(max-width:700px){html{scroll-padding-top:24px}.shell{width:calc(100% - 32px)}header nav{min-height:90px;gap:18px}.brand img{width:90px}.navlinks{gap:14px;flex-wrap:wrap;justify-content:flex-end}.navlinks a{font-size:.875rem}.navlinks a[href="#ambiente"]{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 24px}.eyebrow{font-size:.875rem;margin-bottom:25px}h1{font-size:clamp(3.8rem,14vw,5rem)}.hero-bottom{margin-top:35px;flex-direction:row;font-size:.8125rem;letter-spacing:.02em}.hero-art{min-height:320px;max-height:360px;background-size:300% auto;background-position:right top}.art-logo{width:160px;padding:17px;left:auto;right:7%;bottom:10%}.art-logo span{font-size:.8125rem;margin-top:9px}.intro{padding:50px 0}.intro-grid{grid-template-columns:1fr;gap:25px}.details{gap:16px}.menu-section{padding-top:45px}.menu-heading{align-items:start;flex-direction:column;gap:10px}.menu-heading h2{font-size:4.5rem}.menu-heading p{margin-bottom:0}.menu-index{gap:12px 22px;margin-top:25px;margin-bottom:24px}.menu-board{width:100%;display:block}.menu-column,.menu-column.light{display:block;padding:12px 24px 28px}.menu-category{padding:24px 0 16px}.menu-category h3{font-size:2.8rem}.soft-drinks{display:block}.soft-drinks .menu-category{padding:30px 24px}.menu-labels.double,.menu-items.double li{gap:10px}.menu-items li{padding:9px 0}.moments{padding:45px 0}.cards{grid-template-columns:1fr;gap:28px;margin-top:30px}.cards h3{margin-top:15px}.location{padding:45px 0}.location-wrap{grid-template-columns:1fr;gap:30px}.hours-panel{padding:30px 24px}.footer-row{flex-wrap:wrap}.footer-row>span{order:3;flex-basis:100%}.actions{gap:18px}.location-copy .actions{align-items:stretch}.menu-note{padding-bottom:5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{header,.hero,.intro,.moments,.location,footer,.menu-index{display:none}.menu-board{width:100%;display:block}.menu-column,.menu-column.light,.soft-drinks{display:block;background:white;color:black}.menu-category{break-inside:avoid;background:white;color:black}.menu-category h3{color:black}.menu-items li{border-color:#ddd}}


/* Transparent menu-inspired artwork and restrained editorial composition. */
.decorative{display:block;object-fit:contain;pointer-events:none;user-select:none;height:auto}
.hero-bottom{flex-wrap:wrap;gap:12px 22px}.hero-bottom .coordinates{color:var(--ice);letter-spacing:.02em;font-size:.875rem;text-decoration:none}.hero-bottom .coordinates:hover{text-decoration:underline}
.hero-art{border-left:1px solid #aee0e633;background-size:max(300%,1900px) auto}.art-logo{background:#087c86e6;backdrop-filter:blur(2px);border:1px solid white;padding:29px;left:9%;bottom:9%}
.intro{position:relative;isolation:isolate;overflow:hidden;padding:95px 0;background:#b9e5e9}.intro-grid{position:relative;z-index:1}.intro-foliage{position:absolute;left:-110px;bottom:-180px;width:390px;transform:rotate(20deg);opacity:.4;z-index:0}.intro-title{position:relative}.intro-title h2{font-size:clamp(3.4rem,4.7vw,5rem)}.intro-copy p{max-width:570px}.ambience-photo{border:8px solid #f6fbfb;box-shadow:10px 12px 0 #00758025;transform:rotate(4deg)}
.menu-section{overflow:hidden;padding-top:85px;background:#f6fbfb}.menu-heading{position:relative;min-height:190px;padding-right:290px;align-items:center}.menu-foliage{position:absolute;right:5px;top:-70px;width:270px;transform:rotate(-15deg)}.menu-heading h2{line-height:1.1}.menu-heading>p{font-size:1rem;max-width:220px}.menu-index{position:relative;border-block-color:#203d4635;padding-block:20px;gap:12px 30px;margin-top:24px;margin-bottom:35px}.menu-index a:hover{color:#007480}.menu-board{box-shadow:0 14px 40px #203d460d}.menu-column{padding-top:20px}.menu-category{padding-block:25px}.menu-category h3{font-size:2.85rem}.menu-items li{padding-block:9px}.menu-labels{border-bottom-width:1px}.soft-drinks{border-top:1px solid #ffffff38}.soft-drinks .menu-category{padding-top:42px}.coffee-heading{position:static}.soft-drinks h3{font-size:2.5rem;line-height:1.18}
.moments{position:relative;overflow:hidden;background:var(--ice);color:var(--ink);padding:85px 0 75px}.moments>.shell{position:relative}.moments .kicker{max-width:62%;font-size:.8125rem}.moments h2{max-width:65%;font-size:clamp(3.2rem,5vw,5rem)}.drinks-art{position:absolute;right:-15px;top:-83px;width:360px}.moments .cards{gap:42px;margin-top:60px}.moments .cards article{border-color:#203d4645}.moments .cards span{font-size:.8125rem;letter-spacing:.15em}.moments .cards h3{font-size:2rem}.moments .cards p{font-size:1rem;max-width:320px}
.location{background:#f6fbfb;padding:85px 0}.location-wrap{gap:80px;align-items:stretch}.location-copy{padding-top:20px}.location-coordinates{display:block;width:fit-content;margin:18px 0 6px;font-size:.9375rem;text-decoration:none;font-variant-numeric:tabular-nums}.location-coordinates>span{display:block;font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px}.location-coordinates:hover{text-decoration:underline}.hours-panel{position:relative;isolation:isolate;overflow:hidden;padding:55px 42px}.hours-foliage{position:absolute;right:-76px;bottom:-115px;width:280px;transform:rotate(-35deg);opacity:.42;z-index:-1}.hours-panel>p,.hours-panel>dl,.hours-panel>a,.hours-panel>h3{position:relative}.hours-panel dl{margin-bottom:28px}.hours-panel a{position:relative}.footer-row{border-top:1px solid #aee0e638;padding-top:14px}footer{padding-top:16px}
@media(max-width:1100px){.menu-heading{padding-right:220px}.menu-foliage{width:225px;right:-15px;top:-45px}.menu-heading>p{max-width:150px}.menu-column.light #rum{grid-row:1/4}.drinks-art{width:290px;top:-35px;right:-24px}.location-wrap{gap:35px}.hours-panel{padding:42px 30px}.moments .cards{gap:30px}}
@media(max-width:700px){.hero-art{background-size:300% auto}.intro{padding:58px 0}.intro-foliage{width:250px;left:auto;right:-125px;bottom:-100px;opacity:.25}.intro-title h2{font-size:3.4rem}.intro-copy{position:relative}.menu-section{padding-top:55px}.menu-heading{padding-right:125px;min-height:140px;align-items:start;gap:9px}.menu-heading h2{font-size:3.5rem;white-space:nowrap}.menu-heading .kicker{font-size:.8125rem}.menu-heading>p{max-width:100%;font-size:.9375rem}.menu-foliage{width:120px;top:0;right:-28px;transform:rotate(-15deg)}.menu-index{gap:12px 23px;margin-top:22px;margin-bottom:25px}.menu-column{padding-top:10px}.menu-category h3{font-size:2.65rem}.menu-category{padding-block:26px}.soft-drinks h3{font-size:2.5rem}.soft-drinks .menu-category{padding:30px 24px}.hero-bottom{flex-direction:column;align-items:flex-start}.hero-bottom .coordinates{font-size:.875rem;letter-spacing:0}.moments{padding:55px 0}.moments .kicker{max-width:100%;padding-right:55px;font-size:.8125rem}.moments h2{max-width:100%;font-size:3.1rem}.drinks-art{position:relative;float:none;width:190px;margin:15px 0 0 auto;right:auto;top:auto}.moments .cards{clear:both;display:grid;gap:28px;margin-top:32px;padding-top:12px}.moments .cards h3{margin-top:15px}.moments .cards p{max-width:none}.location{padding:55px 0}.location-wrap{gap:35px}.location-copy{padding-top:0}.location-copy h2{font-size:3.3rem}.hours-panel{padding:34px 24px}.hours-foliage{width:240px;right:-110px;bottom:-80px;opacity:.28}.location-coordinates{font-size:.875rem}.art-logo{padding:18px;left:auto;right:7%;bottom:10%}}
@media(prefers-reduced-motion:no-preference){.button,.navlinks a{transition:background-color .2s,color .2s}.menu-index a{transition:color .2s}}
@media print{.decorative{display:none}}


/* Menu composition: flat printed panels, open rows and dedicated illustration spaces. */
.menu-section{overflow:clip;padding-bottom:48px}
.menu-board{gap:0;box-shadow:0 18px 50px #203d4612;border:8px solid #fff}
.menu-column{padding:30px 34px 38px}
.menu-column+.menu-column{border-left:1px solid #ffffff40}
.menu-category{padding:27px 0;scroll-margin-top:100px}
.menu-category+.menu-category{border-top:1px solid #ffffff35}
.teal .menu-category+.menu-category,.light .menu-category+.menu-category{border-top-color:#203d4630}
.menu-category h3{font-size:3rem;line-height:1.12;margin:0 0 19px;letter-spacing:-.025em}
.menu-labels{font-size:.875rem;letter-spacing:.025em;opacity:.85;margin-bottom:10px;padding-bottom:8px;border-bottom-color:currentColor}
.menu-labels>span:not(:first-child){text-align:right}
.menu-items li{padding:8px 0;border-bottom:0;font-size:1rem;line-height:1.5}
.price{font-weight:500;font-variant-numeric:tabular-nums;align-self:baseline}
.menu-art{display:flex;align-items:center;justify-content:center;margin:12px -8px 18px;padding:12px 0;min-height:210px}
.menu-art img{display:block;width:100%;max-width:325px;height:220px;object-fit:contain;pointer-events:none}
.menu-art--coffee{margin:0 0 26px;min-height:0;padding:0}
.menu-art--coffee img{max-width:240px;height:155px}
.menu-brand-seal{display:flex;justify-content:center;padding:55px 0 28px;opacity:.65}
.menu-brand-seal img{width:115px;height:auto}
.soft-drinks{border-top:8px solid #fff;align-items:start}
.soft-drinks .menu-category{padding:40px 34px;border-top:0}
.soft-drinks h3{font-size:2.6rem;margin-bottom:20px}
.menu-index{position:sticky;top:0;z-index:20;background:var(--paper);box-shadow:0 6px 15px #203d4610;padding:8px 14px;gap:0 28px}
.menu-index a{display:inline-flex;align-items:center;min-height:44px;text-decoration-thickness:2px;text-underline-offset:7px}
.menu-index a:focus-visible{outline:2px solid #007480;outline-offset:3px}
@media(min-width:701px) and (max-width:1100px){.menu-column{padding-inline:28px}.menu-column.light{border-left:0;border-top:8px solid #fff}.menu-brand-seal{grid-column:1/-1;padding:25px}.soft-drinks .menu-category{padding-inline:28px}}
@media(max-width:700px){.menu-board{width:calc(100% - 24px);border-width:5px}.menu-column,.menu-column.light{padding:18px 25px 28px}.menu-column+.menu-column{border-left:0;border-top:5px solid #fff}.menu-category{padding:27px 0;scroll-margin-top:85px}.menu-category h3{font-size:2.8rem}.menu-items li{padding-block:8px}.menu-art{margin:7px 0 10px;min-height:180px}.menu-art img{height:200px;max-width:290px}.menu-art--coffee{min-height:0;margin-bottom:24px}.menu-art--coffee img{height:150px;max-width:230px}.soft-drinks{border-top-width:5px}.soft-drinks .menu-category{padding:32px 25px}.soft-drinks .menu-category+.menu-category{border-top:1px solid #ffffff40}.menu-labels.double,.menu-items.double li{grid-template-columns:minmax(0,1fr) 4.1rem 4.1rem;gap:8px}.menu-index{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;gap:22px}.menu-index a{white-space:nowrap;flex-shrink:0}.menu-brand-seal{padding:30px 0 15px}}
@media print{.menu-art,.menu-brand-seal,.menu-index{display:none}.menu-board,.soft-drinks{border:0;box-shadow:none}}

/* Large decorative layers echo the printed menu's foliage at the panel edges. */
.menu-column,.soft-drinks{position:relative;isolation:isolate;overflow:hidden}
.menu-backdrop{position:absolute;z-index:0;display:block;object-fit:contain;pointer-events:none;user-select:none;width:360px;height:360px;opacity:.24}
.menu-column>.menu-category,.menu-column>.menu-art,.soft-drinks>.menu-category{position:relative;z-index:1;background:transparent}
.dark>.backdrop-top{right:-135px;top:-80px;transform:rotate(-38deg);opacity:.42}
.dark>.backdrop-bottom{left:-190px;bottom:-95px;width:450px;height:450px;transform:rotate(38deg);opacity:.35}
.teal>.backdrop-top{left:-170px;top:230px;transform:rotate(55deg);filter:brightness(0) invert(1);opacity:.17}
.teal>.backdrop-bottom{right:-100px;bottom:-65px;width:420px;height:420px;transform:rotate(-28deg);filter:brightness(0) invert(1);opacity:.32}
.light>.backdrop-top{right:-180px;top:-75px;transform:rotate(-45deg);opacity:.29}
.light>.backdrop-middle{left:-200px;top:46%;transform:rotate(45deg);opacity:.18}
.light>.backdrop-bottom{right:-120px;bottom:-80px;width:410px;height:410px;transform:rotate(-30deg);opacity:.35}
.backdrop-soft-left{left:-140px;bottom:-115px;width:370px;height:370px;transform:rotate(45deg);opacity:.38}
.backdrop-soft-right{right:-150px;top:-90px;width:350px;height:350px;transform:rotate(-45deg);filter:brightness(0) invert(1);opacity:.14}
.menu-column{padding-bottom:95px}
.soft-drinks{padding-bottom:65px}
@media(max-width:1100px) and (min-width:701px){.light>.backdrop-middle{left:30%;top:auto;bottom:-170px}.light>.backdrop-bottom{right:-150px}.menu-column.light{padding-bottom:90px}}
@media(max-width:700px){.menu-column,.menu-column.light{padding-bottom:85px}.menu-backdrop{width:300px;height:300px}.dark>.backdrop-top{right:-160px;top:-55px;opacity:.3}.dark>.backdrop-bottom{width:350px;height:350px;left:-180px;bottom:-65px}.teal>.backdrop-top{left:-185px;top:180px;opacity:.12}.teal>.backdrop-bottom{width:320px;height:320px;right:-95px;bottom:-50px}.light>.backdrop-top{right:-180px;top:-40px}.light>.backdrop-middle{left:-215px}.light>.backdrop-bottom{width:350px;height:350px;right:-140px;bottom:-65px}.soft-drinks{padding-bottom:65px}.backdrop-soft-left{left:-180px;bottom:-75px}.backdrop-soft-right{right:-190px;top:10px}}
@media print{.menu-backdrop{display:none}.menu-column,.soft-drinks{padding-bottom:0}}

/* Fine line art lifted from the original menu waves sits within selected product lists. */
.menu-category{isolation:isolate}
.menu-category>:not(.menu-art){position:relative;z-index:1}
.menu-category:is(#cocktails,#sour,#cervezas,#gin,#rum,#refrescos,#calientes,#digestivos)::before{content:"";position:absolute;z-index:0;inset:10% -28px 5%;pointer-events:none;background:url('menu-wave-ink.webp') no-repeat right 55% / min(490px,145%) auto;opacity:.28}
.menu-category:is(#cocktails,#gin,#refrescos)::before{transform:scaleX(-1);background-position:right 55%}
.menu-category:is(#sour,#cervezas,#calientes)::before{background-position:right 90%}
.dark .menu-category::before,.gray.menu-category::before{filter:brightness(0) invert(1);opacity:.25}
.teal .menu-category::before{opacity:.3}
.light .menu-category::before{opacity:.24}
@media(max-width:700px){.menu-category:is(#cocktails,#sour,#cervezas,#gin,#rum,#refrescos,#calientes,#digestivos)::before{inset:10% -24px 5%;background-size:min(380px,150%) auto;opacity:.22}.dark .menu-category::before,.gray.menu-category::before{opacity:.2}}
@media print{.menu-category::before{display:none}}


.mobile-quick{display:none}
@media(max-width:900px){header nav{flex-wrap:wrap;gap:14px;padding-block:14px}.navlinks{gap:20px}.language-switch{margin-left:auto}}
@media(max-width:700px){header nav{flex-wrap:nowrap;gap:8px;min-height:88px}.navlinks{display:none}.mobile-quick{position:fixed;z-index:50;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:var(--dark);color:#fff;border-top:1px solid #aee0e660;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));box-shadow:0 -4px 18px #203d4620}.mobile-quick a{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:7px 4px;font-size:.875rem;text-decoration:none;line-height:1.3}.mobile-quick a:first-child{background:var(--ice);color:var(--ink)}.mobile-quick a+a{border-left:1px solid #aee0e640}body{padding-bottom:calc(70px + env(safe-area-inset-bottom,0px))}.hero-copy{overflow-wrap:break-word}.hero h1{font-size:clamp(3rem,12vw,5rem)}.menu-category h3{overflow-wrap:anywhere}.hours-panel h3{font-size:2.7rem}.menu-heading h2{white-space:normal;overflow-wrap:normal;font-size:clamp(2.5rem,10vw,3.5rem)}.menu-heading{padding-right:85px}.menu-foliage{width:100px}.location-copy h2{overflow-wrap:break-word}}
@media print{.language-switch,.mobile-quick{display:none}body{padding-bottom:0}}
.price-request{white-space:normal;overflow-wrap:anywhere;font-size:.875rem;line-height:1.4}.item-name{hyphens:auto}
/* Immersive cover: original waves, layered light and restrained pointer depth. */
header{position:relative;z-index:5;background:#243e48;border-bottom-color:#aee0e62e}
.hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:min(760px,calc(100svh - 99px));overflow:hidden;background:#243e48;--depth-x:0px;--depth-y:0px;--light-x:72%;--light-y:45%}
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#243e48 2%,#243e48f5 30%,#243e48b8 48%,#243e4810 73%,transparent)}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x) var(--light-y),#c9ffff24,transparent 48%);mix-blend-mode:screen}
.hero-art{position:absolute;z-index:0;inset:-25px -25px -25px auto;width:69%;min-height:0;max-height:none;border:0;background-size:300% auto;background-position:right top;transform:translate3d(var(--depth-x),var(--depth-y),0) scale(1.025);transition:transform .7s cubic-bezier(.2,.65,.3,1);overflow:visible;will-change:transform}
.hero-copy{position:relative;z-index:2;width:72%;max-width:1050px;padding:65px 40px 50px max(40px,calc((100vw - 1320px)/2));background:transparent}
.hero .eyebrow{display:flex;align-items:center;gap:16px;font-size:.8125rem;letter-spacing:.18em;margin-bottom:30px}
.hero .eyebrow::before{content:"";height:1px;width:40px;background:var(--ice);flex-shrink:0}
.hero h1{font-size:clamp(5rem,8.5vw,9rem);line-height:1.04;letter-spacing:-.05em;margin-bottom:28px;max-width:100%}
.hero-title-line{display:block;color:#fff}
.hero-title-line.hero-emphasis{color:#aee0e6}
.hero-copy>p:not(.eyebrow):not(.hero-bottom){font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.7;max-width:530px;color:#f0f8f9;margin-bottom:30px}
.hero .actions{gap:26px;position:relative}
.hero .button.primary{position:relative;overflow:hidden;background:#bcebef;border-color:#bcebef;padding:17px 28px;font-weight:500;box-shadow:0 8px 30px #09232a22;transition:background .2s,box-shadow .2s,transform .2s}
.hero .button.primary::after{content:"";position:absolute;inset:-100% auto -100% -70%;width:35%;background:linear-gradient(90deg,transparent,#ffffff70,transparent);transform:rotate(20deg);transition:left .65s;pointer-events:none}
.hero .button.primary:hover::after{left:140%}
.hero .button.primary:hover{background:#d9f5f7;color:#203d46;transform:translateY(-2px);box-shadow:0 12px 35px #09232a40}
.hero .text-link{font-size:.9375rem;color:#fff}
.hero-bottom{max-width:585px;margin-top:52px;padding-top:20px;font-size:.75rem;letter-spacing:.12em;border-top-color:#d9f5f745;flex-direction:row;align-items:center}
.hero-bottom .coordinates{font-size:.8125rem}
.art-logo{position:absolute;left:auto;right:14%;top:35%;bottom:auto;width:230px;padding:35px 28px 27px;background:#164f5b45;border:1px solid #e0ffff85;backdrop-filter:blur(9px);box-shadow:0 25px 70px #173e4635;transform:translate3d(calc(var(--depth-x) * -1.5),calc(var(--depth-y) * -1.5),0) rotate(-5deg);transition:transform .8s cubic-bezier(.2,.65,.3,1)}
.art-logo span{font-size:.8125rem;letter-spacing:.06em;color:#fff}
html[lang="en"] .hero h1{font-size:clamp(4.3rem,7.3vw,7.8rem)}
html[lang="fr"] .hero h1,html[lang="de"] .hero h1{font-size:clamp(4.3rem,7.2vw,7.7rem)}
@media(prefers-reduced-motion:no-preference){.hero .eyebrow,.hero-title-line,.hero-copy>p:not(.eyebrow),.hero .actions{animation:hero-reveal .85s cubic-bezier(.16,1,.3,1) both}.hero .eyebrow{animation-delay:.05s}.hero-title-line{animation-delay:.14s}.hero-emphasis{animation-delay:.25s}.hero-copy>p:not(.eyebrow){animation-delay:.35s}.hero .actions{animation-delay:.42s}.hero .hero-bottom{animation-delay:.5s}@keyframes hero-reveal{from{opacity:0;transform:translate3d(0,22px,0);filter:blur(5px)}to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}}}
@media(max-width:1100px){.hero{min-height:650px}.hero-copy{width:76%;padding-left:32px;padding-right:25px}.hero h1{font-size:clamp(4.5rem,8.5vw,7rem)}.art-logo{width:190px;right:10%;top:42%;padding:28px 22px}.hero-bottom{flex-direction:column;align-items:flex-start;gap:8px;max-width:430px}html[lang="en"] .hero h1,html[lang="fr"] .hero h1,html[lang="de"] .hero h1{font-size:clamp(4rem,7.5vw,6.5rem)}}
@media(max-width:700px){.hero{display:block;min-height:0}.hero-copy{width:100%;max-width:none;padding:38px 24px 260px}.hero::before{background:linear-gradient(180deg,#243e48 0%,#243e48 43%,#243e48ed 58%,#243e48a3 70%,#243e4800 91%)}.hero-art{inset:auto -18px -20px;width:calc(100% + 36px);height:430px;min-height:0;max-height:none;background-size:300% auto;will-change:auto;transform:none;transition:none}.hero .eyebrow{font-size:.75rem;letter-spacing:.12em;gap:10px;margin-bottom:24px}.hero .eyebrow::before{width:22px}.hero h1{font-size:clamp(3.8rem,15vw,5.6rem);line-height:1.02;letter-spacing:-.04em;margin-bottom:22px}html[lang="en"] .hero h1,html[lang="fr"] .hero h1,html[lang="de"] .hero h1{font-size:clamp(3.1rem,12vw,4.5rem)}.hero-copy>p:not(.eyebrow):not(.hero-bottom){font-size:1rem;line-height:1.6;margin-bottom:24px}.hero .actions{gap:18px}.hero .button.primary{padding:14px 20px;min-height:52px}.hero .text-link{font-size:.875rem}.hero-bottom{margin-top:28px;padding-top:16px;max-width:100%;gap:8px;flex-direction:column}.hero-bottom .coordinates{font-size:.8125rem}.art-logo{top:auto;bottom:48px;right:12%;width:160px;padding:22px 20px 18px;transform:rotate(-5deg);backdrop-filter:blur(6px)}.art-logo span{font-size:.75rem;margin-top:12px}.hero::after{background:radial-gradient(ellipse at 90% 95%,#c9ffff26,transparent 55%)} }
@media(prefers-reduced-motion:reduce){.hero-art,.art-logo,.hero .button.primary{transition:none;will-change:auto}.hero .button.primary:hover{transform:none}.hero .button.primary::after{display:none}}
@media print{.hero{display:none}}

/* Logo arrives as a transparent silhouette; its glass panel resolves last.
   Individual transforms leave pointer-driven parallax independent. */
@media(prefers-reduced-motion:no-preference){
.art-logo{--arrival-x:-110px;--arrival-y:-65px;--arrival-scale:1.85;animation:logo-arrival 2.2s cubic-bezier(.22,.72,.2,1) .12s both}
.art-logo img{animation:logo-focus 2.2s ease-out .12s both}
.art-logo span{animation:logo-caption .6s ease-out 1.65s both}
@keyframes logo-arrival{
0%{opacity:0;translate:var(--arrival-x) var(--arrival-y);scale:var(--arrival-scale);background:transparent;border-color:transparent;box-shadow:0 0 0 transparent;backdrop-filter:blur(0)}
22%{opacity:.28;background:transparent;border-color:transparent;box-shadow:0 0 0 transparent;backdrop-filter:blur(0)}
55%{opacity:.65;background:transparent;border-color:transparent;box-shadow:0 0 0 transparent;backdrop-filter:blur(0)}
100%{opacity:1;translate:0 0;scale:1}
}
@keyframes logo-focus{from{filter:brightness(0) invert(1) blur(5px)}65%,to{filter:brightness(0) invert(1) blur(0)}}
@keyframes logo-caption{from{opacity:0;translate:0 6px}to{opacity:1;translate:0 0}}
}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){.art-logo{--arrival-x:-35px;--arrival-y:-80px;--arrival-scale:1.45}}

/* A photographic farewell that blends into the printed menu palette. */
.location{position:relative;isolation:isolate;overflow:hidden;background:#009eac;padding:340px 0 90px;color:#103941}
.location-photo{position:absolute;inset:0 0 auto;height:560px;z-index:-2}
.location-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.location-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#143d4610 15%,#009eac12 35%,#009eacba 68%,#009eac 100%)}
.location-wrap{position:relative;gap:80px;align-items:end}
.location-copy{padding-top:30px}.location-copy .kicker{font-weight:600}.location-copy h2{font-size:clamp(4rem,6vw,6rem);line-height:1.05;color:#fff;margin-bottom:28px;text-shadow:0 2px 22px #164e4520}
.location-copy>p:not(.kicker){max-width:540px;font-size:1.0625rem}
.location .address{border-color:#10394145}.location .button-primary{background:#243e48;border-color:#243e48;color:white}.location .button:not(.button-primary){background:#c4f1f15c}.location .button:hover{background:#fff;color:#203d46;border-color:#fff}
.location .hours-panel{align-self:end;background:#173e46d9;border:1px solid #d1ffff70;backdrop-filter:blur(12px);box-shadow:0 25px 65px #16424b33;padding:48px 40px;transform:rotate(1deg)}
.location .hours-panel h3{font-size:3.7rem}.location .hours-panel dl{font-size:1rem}.location .hours-foliage{opacity:.3}
.location-leaves{position:absolute;z-index:-1;left:-140px;bottom:-170px;width:410px;opacity:.28;transform:rotate(20deg);pointer-events:none}
.location-cocktails{position:absolute;z-index:-1;right:-85px;top:310px;width:330px;opacity:.35;transform:rotate(12deg);pointer-events:none}
footer{background:#243e48}
@media(max-width:1100px){.location-wrap{gap:35px}.location .hours-panel{padding:36px 28px}}
@media(max-width:700px){.location{padding:265px 0 55px}.location-photo{height:390px}.location-photo>img{object-position:58% center}.location-wrap{gap:35px}.location-copy{padding-top:10px}.location-copy h2{font-size:3.8rem}.location-copy>p:not(.kicker){font-size:1rem}.location .hours-panel{transform:none;padding:32px 24px}.location .hours-panel h3{font-size:3rem}.location-cocktails{width:225px;right:-90px;top:440px;opacity:.22}.location-leaves{width:320px;left:-140px;bottom:-95px}}
@media(prefers-reduced-motion:no-preference){.location-reveal{animation:location-reveal .85s cubic-bezier(.2,.7,.2,1) both}@keyframes location-reveal{from{opacity:.25;translate:0 28px}to{opacity:1;translate:0 0}}}

/* Separately painted layers overlap beyond every viewport edge. */
.wave-scene{position:absolute;inset:0;overflow:hidden;visibility:hidden;pointer-events:none}
.wave-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;transform-origin:50% 75%;pointer-events:none}
.waves-ready .wave-scene{visibility:visible}.waves-ready .hero-art{background-image:none;background-color:#aee0e6}
.wave-rear{z-index:0;transform-origin:100% 0%;object-fit:fill}.wave-middle{z-index:1}.wave-front{z-index:2}.art-logo{z-index:3}
.wave-toggle{position:absolute;z-index:4;right:24px;bottom:24px;width:44px;height:44px;border:1px solid #e0ffff90;border-radius:50%;background:#243e48ba;color:white;font:500 20px/1 Poppins,Arial,sans-serif;cursor:pointer;backdrop-filter:blur(6px)}
.wave-toggle[hidden]{display:none}.wave-toggle:hover{background:#243e48}.wave-toggle:focus-visible{outline:3px solid white;outline-offset:4px}
@media(prefers-reduced-motion:no-preference){
.waves-ready .wave-layer{will-change:transform;animation:wave-drift 15s ease-in-out infinite alternate;--sway-x:9px;--sway-y:5px;--sway-angle:.35deg}
.waves-ready .wave-middle{animation-duration:10s;animation-delay:-3s;--sway-x:-18px;--sway-y:10px;--sway-angle:-.7deg}
.waves-ready .wave-front{animation-duration:7.5s;animation-delay:-5s;--sway-x:22px;--sway-y:-12px;--sway-angle:.8deg}
@keyframes wave-drift{from{transform:translate3d(calc(-1 * var(--sway-x)),calc(-1 * var(--sway-y)),0) rotate(calc(-1 * var(--sway-angle))) scale(1.07)}to{transform:translate3d(var(--sway-x),var(--sway-y),0) rotate(var(--sway-angle)) scale(1.07)}}
.hero.waves-paused .wave-layer{animation-play-state:paused}
}
@media(max-width:700px){.wave-scene{inset:0}.wave-toggle{right:16px;bottom:18px}.waves-ready .wave-rear{--sway-x:4px;--sway-y:3px;--sway-angle:.2deg}.waves-ready .wave-middle{--sway-x:-8px;--sway-y:5px;--sway-angle:-.35deg}.waves-ready .wave-front{--sway-x:10px;--sway-y:-6px;--sway-angle:.4deg}}
@media(prefers-reduced-motion:reduce){.wave-toggle{display:none}.wave-layer{transform:scale(1.07)}}
.skip-link{position:fixed;z-index:100;top:10px;left:10px;padding:12px 16px;background:white;color:#203d46;translate:0 -150%;transition:translate .2s}.skip-link:focus{translate:0 0}
.hero h1 .hero-business{display:block;font:500 1rem/1.5 Poppins,Arial,sans-serif;letter-spacing:.025em;color:#e5f4f5;margin-bottom:14px}

/* A continuous photo composition follows the morning-to-sunset story. */
.moments .moment-stories{display:grid;grid-template-columns:1.06fr .94fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:0;height:600px;margin:54px 0 0;border:8px solid #fff;box-shadow:0 20px 45px #17485225;overflow:hidden}
.moments .moment-stories .moment-story{position:relative;isolation:isolate;min-width:0;min-height:0;overflow:hidden;margin:0;padding:0;border:0;background:#009eac;color:#f6ffff}
.moments .moment-story:first-child{grid-row:1/3;background:#243e48}
.moments .moment-story:nth-child(2),.moments .moment-story:nth-child(3){border-left:8px solid #fff}
.moments .moment-story:nth-child(3){border-top:8px solid #fff;background:#3d555e}
.moment-story figure{position:absolute;inset:0 auto 0 0;width:44%;height:100%;margin:0;overflow:hidden;background:#173e46}
.moment-story:first-child figure{width:100%}
.moment-story figure img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 58%;transition:transform .85s cubic-bezier(.2,.7,.2,1)}
.moment-story:first-child figure img{object-position:center 80%;transform:scale(1.11)}
.moment-story:nth-child(2) figure img{object-position:center 55%}
.moment-story:nth-child(3) figure img{object-position:center 56%}
.moment-story:first-child::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#12364182 0%,transparent 35%,transparent 53%,#123641d9 100%);pointer-events:none}
.moment-story-head{position:absolute;z-index:1;top:24px;left:calc(44% + 26px);right:24px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:13px;border-bottom:1px solid #ffffff76}
.moment-story:first-child .moment-story-head{left:28px;right:28px;border-bottom-color:#ffffff80}
.moments .moment-story-head span:first-child{font-size:.8125rem;font-weight:600;letter-spacing:.16em}
.moment-story-head span:last-child{font:1.35rem/1 Kalam,cursive;opacity:.8}
.moment-story-copy{position:absolute;z-index:1;left:calc(44% + 26px);right:24px;bottom:28px}
.moment-story:first-child .moment-story-copy{left:30px;right:30px;bottom:36px;max-width:450px}
.moments .moment-story h3{font-size:clamp(1.9rem,2.45vw,2.55rem);line-height:1.08;margin:0 0 9px;color:#fff}
.moments .moment-story:first-child h3{font-size:clamp(2.4rem,3.6vw,3.7rem)}
.moments .moment-story p{max-width:25ch;margin:0;font-size:.9375rem;line-height:1.55;color:#ebfbfc}
.moments .moment-story:first-child p{font-size:1.0625rem;max-width:35ch}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.moment-story:hover figure img{transform:scale(1.055)}.moment-story:first-child:hover figure img{transform:scale(1.16)}}
@media(prefers-reduced-motion:no-preference){.moments-motion-ready .moment-story{opacity:0;translate:0 22px;transition:opacity .7s ease,translate .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--story-index) * 100ms)}.moments-motion-ready .moment-story.is-visible{opacity:1;translate:0 0}}
@media(max-width:950px){.moments .moment-stories{height:570px;grid-template-columns:1fr 1fr}.moment-story-head{top:18px;left:calc(44% + 17px);right:15px}.moment-story-copy{left:calc(44% + 17px);right:16px;bottom:20px}.moments .moment-story h3{font-size:1.8rem}.moments .moment-story p{font-size:.875rem}}
@media(max-width:700px){.moments .moment-stories{clear:both;display:grid;grid-template-columns:1fr;grid-template-rows:360px 275px 275px;height:auto;margin-top:30px;border-width:5px}.moments .moment-story:first-child{grid-row:auto}.moments .moment-story:nth-child(2),.moments .moment-story:nth-child(3){border-left:0;border-top:5px solid #fff}.moment-story figure{width:43%}.moment-story:first-child figure{width:100%}.moment-story-head{top:21px;left:calc(43% + 17px);right:15px;padding-bottom:9px}.moment-story:first-child .moment-story-head{left:20px;right:20px}.moment-story-copy{left:calc(43% + 17px);right:15px;bottom:20px}.moment-story:first-child .moment-story-copy{left:21px;right:21px;bottom:24px}.moments .moment-story h3{font-size:clamp(1.65rem,7vw,2rem)}.moments .moment-story:first-child h3{font-size:2.7rem}.moments .moment-story p{font-size:.875rem}.moments .moment-story:first-child p{font-size:1rem}}
@media(max-width:370px){.moments .moment-stories{grid-template-rows:330px 295px 295px}.moment-story-head{left:calc(40% + 12px);right:12px}.moment-story figure{width:40%}.moment-story-copy{left:calc(40% + 12px);right:12px;bottom:16px}.moments .moment-story h3{font-size:1.55rem}.moments .moment-story p{font-size:.8125rem}}

/* A single language seal keeps the illustrated header calm; the full choice opens on demand. */
@media(min-width:901px){header nav{display:grid;grid-template-columns:1fr auto 1fr}.brand{justify-self:start}.navlinks{justify-self:center}.language-switch{justify-self:end}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.language-switch{position:relative;flex-shrink:0;margin-left:0;color:#e9f9f9}
.language-switch summary{display:flex;align-items:center;justify-content:center;gap:10px;min-width:84px;min-height:48px;padding:8px 9px;list-style:none;border-bottom:1px solid #aee0e6a0;cursor:pointer;user-select:none;font-size:.875rem;font-weight:600;letter-spacing:.08em}
.language-switch summary::-webkit-details-marker{display:none}
.language-switch summary:hover,.language-switch[open] summary{color:#fff;background:#aee0e619;border-color:var(--ice)}
.language-switch summary:focus-visible{outline:2px solid var(--ice);outline-offset:3px}
.language-switch img{display:block;width:24px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #ffffffbd}
.language-chevron{margin-top:-4px;color:var(--ice);font-size:1.2rem;line-height:1;transition:rotate .2s}
.language-switch[open] .language-chevron{rotate:180deg}
.language-options{position:absolute;z-index:50;top:calc(100% + 10px);right:0;width:202px;padding:7px;background:#243e48;border:1px solid #aee0e6a6;box-shadow:0 14px 30px #10293277}
.language-options::before{content:"";position:absolute;right:22px;top:-11px;width:16px;height:10px;background:#243e48;clip-path:polygon(50% 0,0 100%,100% 100%)}
.language-options a{display:flex;align-items:center;gap:13px;min-height:46px;padding:8px 12px;color:#f5ffff;text-decoration:none;font-size:.875rem;border-left:2px solid transparent}
.language-options a:hover,.language-options a:focus-visible{background:#aee0e626;outline:none}
.language-options a[aria-current="page"]{background:#aee0e61e;border-color:var(--ice);font-weight:600}
@media(max-width:900px){.language-switch{margin-left:auto}}
@media(max-width:700px){.language-switch summary{min-width:82px;min-height:48px}.language-options{top:calc(100% + 6px)}}
@media(prefers-reduced-motion:reduce){.language-chevron{transition:none}}
footer .footer-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;padding-top:18px;margin-top:18px;border-top:1px solid #ffffff32;font-size:.875rem}footer .footer-legal a:hover{text-decoration-thickness:2px}@media(max-width:700px){footer .footer-legal{justify-content:flex-start;padding-bottom:82px}}
.social-links,.footer-social{display:flex;flex-wrap:wrap;gap:10px 23px}.social-links{margin-top:16px}.google-rating{display:flex;align-items:center;gap:19px;width:min(100%,530px);margin:24px 0 28px;padding:18px 22px;border:1px solid #0a879246;background:#e0f3f4;text-decoration:none;transition:transform .2s,box-shadow .2s}.google-rating:hover{transform:translateY(-2px);box-shadow:0 9px 24px #203d4617}.google-rating:focus-visible{outline:3px solid #007481;outline-offset:4px}.google-rating-score{display:flex;flex-direction:column;gap:0;line-height:1.1;white-space:nowrap}.google-rating-stars{font:1rem/1.2 Arial,sans-serif;letter-spacing:.09em;color:#087d88}.google-rating-score strong{font-size:2rem;line-height:1.15;font-weight:600}.google-rating-score small{font-size:.95rem;font-weight:400}.google-rating-copy{display:flex;flex-direction:column;line-height:1.4;font-size:.875rem}.google-rating-copy strong{font-size:1rem;font-weight:600}.google-rating-arrow{margin-left:auto;font-size:1.35rem}@media(max-width:700px){.google-rating{gap:12px;padding:15px}.google-rating-score strong{font-size:1.7rem}.google-rating-stars{font-size:.8rem}.footer-social{order:2}}

.menu-mobile-nav{display:none}
.social-links a,.footer-social a{display:inline-flex;align-items:center;gap:7px;text-decoration:none}.social-links svg,.footer-social svg{width:18px;height:18px;flex:0 0 auto;fill:currentColor;stroke:none}.social-links svg rect,.social-links svg circle:not(.social-dot),.footer-social svg rect,.footer-social svg circle:not(.social-dot){fill:none;stroke:currentColor;stroke-width:1.8}.social-links .social-dot,.footer-social .social-dot{fill:currentColor;stroke:none}.social-links a:hover,.footer-social a:hover{text-decoration:underline}
.google-rating{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;width:min(100%,610px);margin:24px 0 28px;padding:0;border:1px solid #0a879246;background:#e0f3f4}.google-rating-summary{display:flex;align-items:center;gap:19px;padding:18px 22px;text-decoration:none;transition:background .2s}.google-rating-summary:hover{background:#fff8}.review-direct{display:flex;align-items:center;justify-content:center;gap:9px;padding:16px 20px;background:#243e48;color:#fff;text-align:center;text-decoration:none;font-size:.9rem;font-weight:500;transition:background .2s}.review-direct:hover{background:#007d89}.google-rating-summary:focus-visible,.review-direct:focus-visible{outline:3px solid #007481;outline-offset:4px}
@media(max-width:700px){html{scroll-padding-top:76px}.menu-index{display:none}.menu-mobile-nav{display:block;position:sticky;top:0;z-index:26;width:calc(100% - 24px);margin:0 auto 24px;background:#f6fbfb;border-block:1px solid #203d4635;box-shadow:0 7px 18px #203d4615}.menu-mobile-nav summary{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:9px 16px;cursor:pointer;list-style:none;font-weight:600;color:#075f69}.menu-mobile-nav summary::-webkit-details-marker{display:none}.menu-mobile-nav[open] summary{border-bottom:1px solid #203d4625}.menu-mobile-nav nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:min(55svh,430px);overflow:auto;padding:10px}.menu-mobile-nav nav a{display:flex;align-items:center;min-height:45px;padding:8px 10px;text-decoration:none;border-bottom:1px solid #203d4615}.menu-mobile-nav nav a[aria-current=true]{background:#aee0e66e;color:#075f69;font-weight:600}.google-rating{grid-template-columns:1fr}.google-rating-summary{gap:12px;padding:15px}.review-direct{min-height:52px}.social-links a,.footer-social a{min-height:42px}.footer-social{flex-basis:100%}}



/* 2026 harmony pass — one continuous Atlantic / printed-menu language. */
:root{--ease-editorial:cubic-bezier(.2,.72,.2,1);--line-soft:#203d4630}
.intro,.menu-section,.moments,.location{position:relative;isolation:isolate}
.intro::after,.menu-section::after,.moments::after{content:"";position:absolute;z-index:8;left:0;right:0;bottom:-1px;height:42px;pointer-events:none;clip-path:polygon(0 52%,9% 38%,20% 63%,34% 31%,49% 57%,65% 27%,81% 54%,91% 35%,100% 49%,100% 100%,0 100%)}
.intro::after{background:#f6fbfb}.menu-section::after{background:#d8f1f3}.moments::after{background:#009eac}
.intro{padding-bottom:105px;background:linear-gradient(135deg,#bce8eb 0%,#aee0e6 58%,#99d6dc 100%)}
.intro-grid{position:relative;z-index:1}.intro-grid::before{content:"";position:absolute;z-index:-1;inset:-25px -28px;border:1px solid #203d4628;clip-path:polygon(0 0,94% 0,100% 18%,100% 100%,6% 100%,0 82%)}
.ambience-photo{box-shadow:15px 18px 0 #243e48;border-color:#f7ffff;transition:transform .65s var(--ease-editorial),box-shadow .65s var(--ease-editorial)}
@media(hover:hover){.intro-grid:hover .ambience-photo{transform:rotate(1deg) translateY(-5px);box-shadow:20px 24px 0 #243e48}}

.menu-section{padding-bottom:78px;background:linear-gradient(180deg,#f6fbfb 0%,#edf8f8 100%)}
.menu-heading::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:linear-gradient(90deg,#007481 0 28%,transparent 28% 31%,#203d4625 31% 100%)}
.menu-board{position:relative;box-shadow:0 28px 70px #173e4621,0 0 0 1px #203d4616;transform:translateZ(0)}
.menu-board::before{content:"PURA VIDA · LOS GIGANTES";position:absolute;z-index:5;top:18px;left:50%;translate:-50% 0;padding:5px 15px;background:#f6fbfbe8;color:#24434c;border:1px solid #24434c33;font-size:.68rem;font-weight:600;letter-spacing:.18em;white-space:nowrap;pointer-events:none}
.menu-category{position:relative;overflow:hidden}
.menu-category::after{content:"";position:absolute;z-index:0;width:250px;height:250px;right:-105px;bottom:-105px;background:url('botanical.webp') center/contain no-repeat;opacity:.11;transform:rotate(-24deg);pointer-events:none}
.menu-category:nth-of-type(even)::after{right:auto;left:-118px;bottom:-92px;transform:scaleX(-1) rotate(-12deg)}
.dark .menu-category::after,.gray.menu-category::after{filter:brightness(0) invert(1);opacity:.105}.teal .menu-category::after{opacity:.13}.light .menu-category::after{opacity:.1}
.menu-category h3{display:flex;align-items:center;gap:14px}.menu-category h3::after{content:"";height:1px;flex:1;min-width:28px;background:currentColor;opacity:.38}
.menu-items li{position:relative}.menu-items li::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,currentColor 0 12%,transparent 12% 18%,currentColor 18% 100%);opacity:.08}
.menu-backdrop{filter:saturate(.85) contrast(1.05)}

.moments{padding:112px 0 120px;background:linear-gradient(180deg,#d8f1f3 0%,#b7e4e8 48%,#aee0e6 100%)}
.moments>.shell::before{content:"01  ·  02  ·  03";position:absolute;right:0;top:8px;font:500 clamp(2.5rem,7vw,6rem)/1 Poppins,Arial,sans-serif;letter-spacing:.09em;color:#0a657013;pointer-events:none}
.moments .moment-stories{position:relative;height:650px;border:6px solid #f7ffff;box-shadow:0 30px 75px #173e4630,0 0 0 1px #203d4620}
.moments .moment-stories::after{content:"PURA VIDA";position:absolute;z-index:4;left:22px;top:50%;translate:-50% -50%;rotate:-90deg;padding:4px 10px;background:#f7ffff;color:#24434c;font-size:.64rem;font-weight:600;letter-spacing:.17em;pointer-events:none}
.moments .moment-story{box-shadow:inset 0 0 0 1px #ffffff22}
.moments .moment-story::before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(115deg,#173e4633,transparent 52%,#00a4b225);pointer-events:none}
.moments .moment-story:nth-child(2)::before{background:linear-gradient(115deg,#006b7650,transparent 55%,#f2c46c25)}
.moments .moment-story:nth-child(3)::before{background:linear-gradient(115deg,#192f4655,transparent 48%,#f2a76f2b)}
.moment-story-head,.moment-story-copy{z-index:2}.moment-story-head{backdrop-filter:blur(3px)}
.moment-story-copy{padding-top:12px;border-top:1px solid #ffffff66;text-shadow:0 2px 16px #102f37aa}

.location{padding-top:375px}.location-photo{height:610px}.location-photo::after{background:linear-gradient(180deg,#143d4608 8%,#009eac0a 32%,#009eac88 66%,#009eac 100%)}
.location-wrap::before{content:"";position:absolute;inset:-34px -30px -28px;border:1px solid #d4ffff48;clip-path:polygon(0 0,96% 0,100% 9%,100% 100%,4% 100%,0 91%);pointer-events:none}
.location .hours-panel{transform:none;border:6px solid #edfdfdd9;box-shadow:18px 22px 0 #24434c,0 30px 70px #16424b28;backdrop-filter:blur(14px)}
.location .hours-panel::before{content:"PUERTO DE LOS GIGANTES";display:block;margin:-18px 0 25px;padding-bottom:13px;border-bottom:1px solid #ffffff55;color:var(--ice);font-size:.68rem;font-weight:600;letter-spacing:.17em}
.google-rating{box-shadow:11px 13px 0 #24434c;border-color:#24434c38}.review-direct{position:relative;overflow:hidden}.review-direct::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff24 50%,transparent 70%);translate:-120% 0;transition:translate .75s var(--ease-editorial)}.review-direct:hover::before{translate:120% 0}
.location .address{background:#b9e8e938;padding-inline:18px;border-left:3px solid #24434c}

@media(prefers-reduced-motion:no-preference){
.harmony-motion-ready .harmony-reveal{opacity:0;translate:0 32px;transition:opacity .85s ease,translate .85s var(--ease-editorial)}
.harmony-motion-ready .harmony-reveal.is-visible{opacity:1;translate:0 0}
.harmony-motion-ready .menu-board.harmony-reveal{translate:0 45px;transition-duration:1s}
.harmony-motion-ready .menu-board.harmony-reveal.is-visible{translate:0 0}
}
@media(max-width:1100px){.ambience-photo{display:block;width:160px;height:220px}.intro-grid{grid-template-columns:1fr 1.4fr 160px}.moments .moment-stories{height:600px}.location{padding-top:340px}.location-wrap::before{inset:-22px -16px}}
@media(max-width:700px){
.intro{padding:64px 0 90px}.intro-grid{grid-template-columns:1fr;gap:28px}.intro-grid::before{inset:-18px -10px}.ambience-photo{display:block;width:calc(100% - 28px);height:210px;margin:10px 0 12px 12px;object-position:center 55%;transform:rotate(1deg);box-shadow:10px 12px 0 #243e48}
.intro::after,.menu-section::after,.moments::after{height:26px}
.menu-section{padding-bottom:58px}.menu-heading::after{bottom:-12px}.menu-board::before{top:12px;font-size:.59rem;letter-spacing:.13em}.menu-category::after{width:210px;height:210px;right:-100px;bottom:-95px;opacity:.09}.menu-category:nth-of-type(even)::after{left:-105px}
.moments{padding:78px 0 88px}.moments>.shell::before{top:35px;right:4px;font-size:2.7rem}.moments .moment-stories{height:auto;border-width:4px;box-shadow:0 20px 45px #173e4628}.moments .moment-stories::after{display:none}.moment-story-copy{padding-top:9px}
.location{padding-top:285px}.location-photo{height:420px}.location-wrap::before{inset:-12px -8px}.location .hours-panel{border-width:4px;box-shadow:10px 12px 0 #24434c}.location .hours-panel::before{margin-top:-10px}.google-rating{box-shadow:7px 8px 0 #24434c}.location .address{padding-inline:13px}
.menu-mobile-nav{background:#f6fbfbe9;backdrop-filter:blur(14px);box-shadow:0 10px 26px #203d4620}.menu-mobile-nav summary{letter-spacing:.015em}
}
@media(prefers-reduced-motion:reduce){.ambience-photo,.review-direct::before{transition:none}.review-direct::before{display:none}}

/* Completion pass — every item from the visual brief is now explicit. */
:root{--motion-calm:900ms}

/* The three real photographs overlap at different heights and recover colour on entry. */
.moments .moment-stories{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:60px 470px 70px;gap:0;height:600px;border:0;box-shadow:none;overflow:visible;background:transparent}
.moments .moment-story:first-child{grid-column:1/6;grid-row:1/4;z-index:1;rotate:-1.1deg}
.moments .moment-story:nth-child(2){grid-column:5/10;grid-row:2/4;z-index:2;rotate:1.2deg}
.moments .moment-story:nth-child(3){grid-column:9/13;grid-row:1/3;z-index:3;rotate:-.7deg}
.moments .moment-story,.moments .moment-story:nth-child(2),.moments .moment-story:nth-child(3){border:7px solid #f7ffff;box-shadow:0 25px 55px #173e4638}
.moment-story figure,.moment-story:first-child figure{width:100%;inset:0}
.moment-story figure img,.moment-story:first-child figure img{object-position:center 58%;filter:none;transform:scale(1.08);transition:filter var(--motion-calm) var(--ease-editorial),transform 1.2s var(--ease-editorial)}
.moment-story:first-child figure img{object-position:center 78%}.moment-story:nth-child(3) figure img{object-position:center 52%}
.moments-motion-ready .moment-story figure img{filter:grayscale(.42) saturate(.68) contrast(.96)}.moments-motion-ready .moment-story.is-visible figure img{filter:grayscale(0) saturate(1.06) contrast(1.02)}
.moments .moment-story::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,#1236418a 0%,transparent 38%,transparent 50%,#123641e6 100%);pointer-events:none}
.moment-story-head,.moment-story:first-child .moment-story-head{left:26px;right:26px;top:24px}
.moment-story-copy,.moment-story:first-child .moment-story-copy{left:28px;right:28px;bottom:30px;max-width:390px}
.moments .moment-story h3,.moments .moment-story:first-child h3{font-size:clamp(2rem,3vw,3.1rem)}
.moments .moment-story p,.moments .moment-story:first-child p{font-size:.98rem;max-width:32ch}
.moments .moment-stories::after{left:10px;top:50%;z-index:5}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.moment-story:hover figure img,.moment-story:first-child:hover figure img{transform:scale(1.13);filter:grayscale(0) saturate(1.12)}}

/* Each menu family now owns a distinct, translucent illustration below the text. */
.menu-category::after{width:330px;height:330px;right:-105px;bottom:-115px;background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.12}
.menu-category:is(#cocktails,#mojitos,#sour,#mule,#caipirinha,#spritz)::after{background-image:url('menu-cocktails.webp');opacity:.13}
.menu-category:is(#vinos,#aperitivo,#cervezas)::after{background-image:url('menu-wine.webp');opacity:.14;transform:rotate(8deg)}
.menu-category:is(#vodka,#gin,#whisky,#rum)::after{background-image:url('drinks.webp');opacity:.12;transform:rotate(-15deg)}
.menu-category#refrescos::after{background-image:url('menu-wave-ink.webp');opacity:.17;transform:rotate(-8deg)}
.menu-category:is(#calientes,#digestivos)::after{background-image:url('menu-coffee.webp');opacity:.14;transform:rotate(9deg)}
.dark .menu-category::after,.gray.menu-category::after{filter:brightness(0) invert(1);opacity:.13}.teal .menu-category::after{opacity:.14}.light .menu-category::after{opacity:.12}
.menu-category::before{opacity:.12!important}.dark .menu-category::before,.gray.menu-category::before{opacity:.1!important}

/* A framed harbour photograph and a calmer, more compact information column. */
.location-photo::before{content:"";position:absolute;z-index:2;inset:24px;border:1px solid #efffffaa;clip-path:polygon(0 0,96% 0,100% 10%,100% 100%,4% 100%,0 90%);pointer-events:none}
.location-copy{max-width:650px}.location-copy>p:not(.kicker){max-width:495px;margin-bottom:20px}.location .address{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 24px;margin:20px 0;padding-block:17px}.location .address>strong,.location .address>span,.location .address>.location-coordinates{grid-column:1}.location .address>a[href^="tel:"]{grid-column:2;grid-row:1;align-self:center}.location .social-links{grid-column:1/-1;margin-top:10px}.location-coordinates{margin:10px 0 2px}.google-rating{margin-top:18px}

/* The sea motif continues in the mobile menu and closes the page before the footer. */
.location{padding-bottom:118px}.location::after{content:"";position:absolute;z-index:8;left:0;right:0;bottom:-1px;height:52px;background:#243e48;clip-path:polygon(0 58%,8% 42%,18% 61%,31% 33%,45% 57%,58% 29%,72% 54%,86% 36%,100% 55%,100% 100%,0 100%);pointer-events:none}
footer{position:relative;z-index:2;margin-top:0}
.menu-mobile-nav{overflow:hidden}.menu-mobile-nav::before{content:"";position:absolute;z-index:0;inset:-35% -5%;background:url('wave-rear.webp') right top/240% auto no-repeat;opacity:.16;pointer-events:none}.menu-mobile-nav>summary,.menu-mobile-nav>nav{position:relative;z-index:1}

/* All entrance effects share one duration and easing. */
@media(prefers-reduced-motion:no-preference){
.harmony-motion-ready .harmony-reveal,.moments-motion-ready .moment-story{transition-duration:var(--motion-calm);transition-timing-function:var(--ease-editorial)}
.location-reveal{animation-duration:var(--motion-calm);animation-timing-function:var(--ease-editorial)}
.art-logo{animation-timing-function:var(--ease-editorial)}
}

@media(max-width:950px) and (min-width:701px){.moments .moment-stories{grid-template-rows:50px 420px 60px;height:530px}.moments .moment-story:first-child{grid-column:1/7}.moments .moment-story:nth-child(2){grid-column:5/10}.moments .moment-story:nth-child(3){grid-column:8/13}.moments .moment-story h3,.moments .moment-story:first-child h3{font-size:2.25rem}}
@media(max-width:700px){
.moments .moment-stories{display:flex;flex-direction:column;height:auto;overflow:visible;margin:34px 0 10px}.moments .moment-story,.moments .moment-story:first-child,.moments .moment-story:nth-child(2),.moments .moment-story:nth-child(3){display:block;width:92%;height:345px;min-height:345px;border:5px solid #f7ffff;rotate:-1deg;box-shadow:0 18px 38px #173e4633}
.moments .moment-story:nth-child(2){margin:-28px 0 0 auto;rotate:1.2deg}.moments .moment-story:nth-child(3){margin:-24px auto 0 0;rotate:-.6deg}.moment-story-head,.moment-story:first-child .moment-story-head{left:20px;right:20px;top:20px}.moment-story-copy,.moment-story:first-child .moment-story-copy{left:21px;right:21px;bottom:23px}.moments .moment-story h3,.moments .moment-story:first-child h3{font-size:clamp(2rem,9vw,2.65rem)}.moments .moment-story p,.moments .moment-story:first-child p{font-size:.94rem}.moments .moment-stories::after{display:none}
.menu-category::after{width:260px;height:260px;right:-105px;bottom:-95px}.menu-category:nth-of-type(even)::after{left:-110px}
.location{padding-bottom:82px}.location::after{height:34px}.location-photo::before{inset:12px}.location .address{grid-template-columns:1fr;gap:6px}.location .address>strong,.location .address>span,.location .address>.location-coordinates,.location .address>a[href^="tel:"],.location .social-links{grid-column:1}.location .address>a[href^="tel:"]{grid-row:auto}.location-copy>p:not(.kicker){max-width:none}
.menu-mobile-nav::before{background-size:310% auto;opacity:.18}
}
@media(prefers-reduced-motion:reduce){.moment-story figure img,.moment-story:first-child figure img{filter:none;transition:none}}

/* Reversible Atlantic-sky hero experiment. */
.hero{--sky-y:0px;--horizon-alpha:.72}
.hero-art{isolation:isolate;clip-path:polygon(4% 0,100% 0,100% 100%,0 100%,0 63%,2.2% 50%,0 37%);background:#76cbd4}
.hero-art::before{content:"";position:absolute;z-index:0;inset:-7%;background-image:linear-gradient(180deg,#203d4630 0%,#00a4b21f 35%,#ffc88f52 64%,#7fd3da2e 100%);background-size:cover;background-position:center 20%;filter:saturate(.86) contrast(.96) brightness(1.06);transform:translate3d(0,var(--sky-y),0) scale(1.08);transition:transform .9s var(--ease-editorial);pointer-events:none}
.hero-art::after{content:"";position:absolute;z-index:2;inset:0;background:radial-gradient(ellipse 44% 9% at 62% 38%,rgba(255,226,178,var(--horizon-alpha)),transparent 70%),radial-gradient(circle at 72% 30%,#fff7d98f 0 1px,transparent 3px),radial-gradient(circle at 82% 25%,#e9ffff8f 0 1px,transparent 3px),linear-gradient(180deg,transparent 0 37%,#eaffff26 38%,transparent 40%);mix-blend-mode:screen;pointer-events:none}
.waves-ready .hero-art{background:#76cbd4}.wave-scene{z-index:3}.wave-layer{filter:drop-shadow(-10px 14px 14px #123b4540)}.wave-rear{filter:drop-shadow(-5px 10px 9px #123b4530) saturate(.92)}.wave-middle{filter:drop-shadow(-9px 14px 12px #123b4540) saturate(1.02)}.wave-front{filter:drop-shadow(-14px 18px 16px #123b4550) saturate(1.06)}
.art-logo{z-index:6;isolation:isolate;background:#164f5b52;border-color:#f0ffffa8;box-shadow:0 28px 75px #102f374c,0 0 0 1px #ffffff1c}
.art-logo::before{content:"";position:absolute;z-index:-1;inset:-55%;background:radial-gradient(circle,#d9ffff42 0%,#8fe6ec20 33%,transparent 68%);filter:blur(12px);opacity:0;animation:logo-halo 1.4s var(--ease-editorial) 1.35s forwards;pointer-events:none}
@keyframes logo-halo{to{opacity:1}}
.atlantic-seal{position:absolute;z-index:6;right:7%;top:10%;writing-mode:vertical-rl;padding:13px 8px;border-inline:1px solid #efffff9a;color:#f6ffff;font-size:.67rem;font-weight:600;letter-spacing:.18em;text-shadow:0 2px 12px #102f37;opacity:.88;pointer-events:none}
@media(prefers-reduced-motion:no-preference){.hero-art::after{animation:horizon-breathe 6.5s ease-in-out infinite alternate}@keyframes horizon-breathe{from{opacity:.72}to{opacity:1}}}
@media(max-width:700px){.hero-art{clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.hero-art::before{inset:-5%;background-position:58% center;transform:scale(1.07)}.hero-art::after{background:radial-gradient(ellipse 52% 9% at 67% 45%,rgba(255,226,178,var(--horizon-alpha)),transparent 72%),linear-gradient(180deg,transparent 0 43%,#efffff24 44%,transparent 47%)}.wave-layer{filter:drop-shadow(-5px 8px 8px #123b453d)}.atlantic-seal{top:44%;right:auto;left:18px;writing-mode:horizontal-tb;padding:7px 11px;border-inline:0;border-block:1px solid #efffff8a;font-size:.61rem}.art-logo::before{inset:-40%}}
@media(prefers-reduced-motion:reduce){.hero-art::before{transform:scale(1.08);transition:none}.hero-art::after,.art-logo::before{animation:none}.art-logo::before{opacity:.65}}

/* Performance pass: paint the essential hero first, then hydrate visual depth. */
.hero-art{background-image:none}.hero-art::before{background-image:linear-gradient(180deg,#203d4630 0%,#00a4b21f 35%,#ffc88f52 64%,#7fd3da2e 100%)}
.wave-scene{visibility:visible}.wave-middle,.wave-front{opacity:0;transition:opacity .8s ease}.wave-layer.is-loaded{opacity:1}
.moments{content-visibility:auto;contain-intrinsic-size:auto 900px}.location{content-visibility:auto;contain-intrinsic-size:auto 1150px}footer{content-visibility:auto;contain-intrinsic-size:auto 220px}
@media(max-width:700px){.moments{contain-intrinsic-size:auto 1250px}.location{contain-intrinsic-size:auto 1450px}}
@media(prefers-reduced-motion:reduce){.wave-middle,.wave-front{transition:none}}

/* Smooth section tides — broad curves replace the former angular polygons. */
:root{--section-tide:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 42 C150 20 250 14 390 30 C530 47 635 58 790 40 C930 24 1040 6 1170 18 C1290 30 1360 42 1440 34 L1440 70 L0 70 Z'/%3E%3C/svg%3E")}
.intro,.menu-section,.moments,.location{--tide-color:#f6fbfb}
.menu-section{--tide-color:#d8f1f3}.moments{--tide-color:#009eac}.location{--tide-color:#243e48}
.intro::after,.menu-section::after,.moments::after,.location::after,
.intro::before,.menu-section::before,.moments::before,.location::before{
content:"";position:absolute;left:0;right:0;bottom:-1px;pointer-events:none;clip-path:none;
-webkit-mask:var(--section-tide) center bottom/100% 100% no-repeat;mask:var(--section-tide) center bottom/100% 100% no-repeat
}
.intro::after,.menu-section::after,.moments::after,.location::after{z-index:8;height:58px;background:var(--tide-color)}
.intro::before,.menu-section::before,.moments::before,.location::before{z-index:7;left:-2%;right:-2%;height:70px;background:var(--tide-color);opacity:.2;transform:translate3d(-1%,-8px,0)}
.intro::after{background:var(--tide-color)}.menu-section::after{background:var(--tide-color)}.moments::after{background:var(--tide-color)}.location::after{background:var(--tide-color)}
@media(prefers-reduced-motion:no-preference) and (min-width:701px){
.intro::before,.menu-section::before,.moments::before,.location::before{animation:section-tide-drift 18s ease-in-out infinite alternate}
@keyframes section-tide-drift{to{transform:translate3d(1%,-8px,0)}}
}
@media(max-width:700px){
:root{--section-tide:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 390 38' preserveAspectRatio='none'%3E%3Cpath fill='black' d='M0 23 C64 8 124 8 190 22 C257 36 320 32 390 15 L390 38 L0 38 Z'/%3E%3C/svg%3E")}
.intro::after,.menu-section::after,.moments::after,.location::after{height:36px}
.intro::before,.menu-section::before,.moments::before,.location::before{left:0;right:0;height:43px;transform:translateY(-5px);opacity:.16}
}
.menu-subtitle{margin:-8px 0 16px;font-size:.875rem;letter-spacing:.02em}

/* Surfboard from the printed menu cover, standing on the hero waves. */
.hero-surfboard{position:absolute;z-index:5;right:7%;top:50%;height:min(88%,650px);width:auto;transform:translateY(-50%) rotate(7deg);filter:drop-shadow(0 26px 28px #0a283340);pointer-events:none;user-select:none}
.hero .art-logo{right:auto;left:17%;top:9%;bottom:auto;width:190px}
@media(max-width:1100px){.hero-surfboard{right:5%;height:min(86%,560px)}.hero .art-logo{left:12%;top:8%;width:160px}}
@media(max-width:700px){.hero-surfboard{right:12%;top:57%;height:74%}.hero .art-logo{left:11%;right:auto;top:auto;bottom:34px;width:132px;padding:16px 14px 12px}.hero .wave-toggle{right:10px;bottom:10px}}
/*TAPAS-CSS*/
/* Lighter paint on phones: the menu panels carry many large rotated/filtered layers. */
@media(max-width:700px){.menu-backdrop,.menu-category::before{display:none!important}}

/* Final coherence pass: floating menu navigation, allergen note and surf motion */
.allergen-inline{margin:12px 0 0;padding-top:10px;border-top:1px dashed currentColor;font-size:.78rem;line-height:1.45;opacity:.9}
@keyframes surfboard-drift{0%,100%{transform:translate3d(0,-50%,0) rotate(7deg)}34%{transform:translate3d(-3px,calc(-50% - 5px),0) rotate(6.35deg)}68%{transform:translate3d(4px,calc(-50% + 3px),0) rotate(7.65deg)}}
.waves-ready .hero-surfboard{animation:surfboard-drift 9s ease-in-out infinite;transform-origin:50% 62%}
.waves-paused .hero-surfboard{animation-play-state:paused}
@media(max-width:700px){.menu-mobile-nav{top:10px;border:1px solid #203d4635;border-radius:18px;box-shadow:0 12px 30px #203d4628;margin-bottom:28px}.menu-mobile-nav summary>span:last-child{transition:transform .25s ease}.menu-mobile-nav[open] summary>span:last-child{transform:rotate(180deg)}}
@media(prefers-reduced-motion:reduce){.hero-surfboard{animation:none!important}}

/* Mobile-first usability and performance pass. */
.menu-mobile-search{display:none}
.mobile-quick svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.mobile-quick a{gap:9px}
@media(max-width:700px){
header nav{min-height:76px;padding-block:10px}.brand img{width:82px}.language-switch summary{min-width:78px;min-height:46px}
.hero-copy{padding:32px 22px 214px}.hero .eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(3.45rem,14.2vw,5rem);margin-bottom:18px}.hero-copy>p:not(.eyebrow):not(.hero-bottom){line-height:1.52;margin-bottom:20px}.hero-bottom{margin-top:22px}
.hero-art{height:375px}.hero-surfboard{right:10%;top:56%;height:70%;filter:drop-shadow(0 14px 16px #0a28332e)}.hero .art-logo{left:9%;bottom:24px;width:124px}.hero .wave-toggle{right:12px;top:14px;bottom:auto;width:42px;height:42px}.atlantic-seal{top:42%;left:14px}
.wave-layer,.wave-rear,.wave-middle,.wave-front{filter:none}.waves-ready .wave-layer{animation-duration:18s}.waves-ready .wave-middle{animation-duration:14s}.waves-ready .wave-front{animation-duration:11s}
.menu-mobile-search{display:block;width:calc(100% - 32px);margin:0 auto 20px;position:relative}.menu-mobile-search label{display:block;margin:0 0 7px;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#075f69}.menu-mobile-search input{width:100%;min-height:50px;padding:11px 44px 11px 15px;border:1px solid #203d4645;border-radius:14px;background:#fff;color:var(--ink);font:500 16px/1.35 Poppins,Arial,sans-serif;box-shadow:0 7px 18px #203d4610}.menu-mobile-search input:focus{outline:3px solid #00a4b24c;border-color:#007481}.menu-mobile-search svg{position:absolute;right:15px;top:38px;width:20px;height:20px;fill:none;stroke:#075f69;stroke-width:1.8;stroke-linecap:round}.menu-search-status{display:block;min-height:1.4em;margin-top:6px;font-size:.78rem;color:#365963}.menu-board.is-searching .menu-art,.menu-board.is-searching .menu-brand-seal,.menu-board.is-searching .menu-backdrop{display:none!important}.menu-board.is-searching .menu-column,.menu-board.is-searching .soft-drinks{padding-bottom:22px}.menu-board [hidden]{display:none!important}
.moments .moment-story,.moments .moment-story:first-child,.moments .moment-story:nth-child(2),.moments .moment-story:nth-child(3){width:94%;height:305px;min-height:305px}.moments .moment-story:nth-child(2){margin-top:-20px}.moments .moment-story:nth-child(3){margin-top:-18px}.moments .moment-story h3,.moments .moment-story:first-child h3{font-size:clamp(1.9rem,8vw,2.45rem)}
.location{padding-top:235px}.location-photo{height:360px}.location-wrap{display:grid}.location-copy{display:contents}.location-copy>.kicker{order:1}.location-copy>h2{order:2}.location-copy>p:not(.kicker){order:3}.location-copy>.address{order:4}.hours-panel{order:5}.location-copy>.google-rating{order:6}.location-copy>.actions{order:7}.location .hours-panel{margin-top:4px}.google-rating{margin-top:4px}.location .actions{margin-top:2px}.location .button{width:100%}
.mobile-quick{padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px))}.mobile-quick a{min-height:46px}.mobile-quick a.is-context{background:#fff;color:#203d46}.mobile-quick a:first-child:not(.is-context){background:transparent;color:#fff}body{padding-bottom:calc(62px + env(safe-area-inset-bottom,0px))}.footer-legal{padding-bottom:70px!important}
.social-links a,.footer-social a,.location-coordinates,.address a[href^="tel:"]{min-height:44px;display:inline-flex;align-items:center}
}
@media(max-width:380px){
.shell{width:calc(100% - 24px)}.hero-copy{padding-inline:18px}.hero h1{font-size:clamp(3.15rem,14.7vw,4.1rem)}.hero .actions{align-items:flex-start;flex-direction:column;gap:12px}.hero .text-link{min-height:44px;display:inline-flex;align-items:center}.hero-copy{padding-bottom:205px}
.menu-board{width:calc(100% - 16px)}.menu-column,.menu-column.light{padding-inline:18px}.soft-drinks .menu-category{padding-inline:18px}.menu-mobile-nav{width:calc(100% - 16px)}.menu-mobile-nav nav{grid-template-columns:1fr}.menu-mobile-search{width:calc(100% - 24px)}
.menu-labels.double{grid-template-columns:minmax(0,1fr) 3.75rem 3.75rem;gap:5px}.menu-items.double li{grid-template-columns:minmax(0,1fr) 3.75rem 3.75rem;gap:3px 5px}.menu-items.double li .item-name{grid-column:1/-1;padding-right:4px}.menu-items.double li .price:first-of-type{grid-column:2}.menu-items.double li .price:last-of-type{grid-column:3}.menu-items.double li .price{grid-row:2;font-size:.875rem}.menu-category h3{font-size:2.45rem}
.google-rating-summary{align-items:flex-start}.google-rating-copy{font-size:.82rem}.footer-row{gap:16px}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.hero-art::after,.art-logo::before{display:none}}

/* Android/mobile safeguard: the full menu is intentionally never hidden by an
   entrance animation. Its height can exceed the viewport by a wide margin. */
@media(max-width:700px){
.menu-board,.harmony-motion-ready .menu-board,.harmony-motion-ready .menu-board.harmony-reveal{opacity:1!important;visibility:visible!important;translate:none!important;transform:none!important}
.menu-column:not([hidden]),.soft-drinks:not([hidden]),.menu-category:not([hidden]){visibility:visible;opacity:1}
}

/* Surfboard theatre: rise through the swell, settle into a gentle 3D balance. */
.surfboard-stage{
position:absolute;z-index:5;right:7%;top:50%;height:min(88%,650px);aspect-ratio:398/1300;
opacity:0;transform:translate3d(0,-37%,0) rotate(10deg) scale(.94);transform-origin:50% 78%;
filter:drop-shadow(0 26px 28px #0a283340);pointer-events:none;user-select:none;
will-change:transform,opacity,filter
}
.surfboard-stage .hero-surfboard{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transform:none;filter:none;animation:none!important}
.surfboard-stage::before{
content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(112deg,transparent 26%,#fff0 39%,#ffffffa8 48%,#d9ffff4f 53%,transparent 66%);
background-size:260% 100%;background-position:145% 0;mix-blend-mode:screen;
-webkit-mask:url('tabla-surf-pura-vida.webp') center/contain no-repeat;mask:url('tabla-surf-pura-vida.webp') center/contain no-repeat;
opacity:0;pointer-events:none
}
.surfboard-stage::after{
content:"";position:absolute;z-index:-1;left:3%;right:-18%;bottom:2.5%;height:5.5%;border-radius:50%;
background:radial-gradient(ellipse,#102f3769 0 18%,#102f3738 42%,transparent 72%);filter:blur(7px);
transform:translate3d(9px,12px,0) rotate(-7deg);transform-origin:center
}
.surfboard-foam{position:absolute;z-index:3;display:block;border-radius:50%;background:#efffff;box-shadow:0 0 8px #d8ffffb8;opacity:0}
.surfboard-foam-one{width:9px;height:5px;left:19%;bottom:9%}.surfboard-foam-two{width:6px;height:6px;left:72%;bottom:7%}.surfboard-foam-three{width:5px;height:3px;left:48%;bottom:3%}
.waves-ready .surfboard-stage{animation:surfboard-emerge 1.75s cubic-bezier(.16,.78,.22,1) .08s both,surfboard-balance 10s ease-in-out 1.83s infinite}
.waves-ready .surfboard-stage::before{animation:surfboard-glint 8.5s ease-in-out 2.7s infinite}
.waves-ready .surfboard-stage::after{animation:surfboard-shadow 10s ease-in-out 1.83s infinite}
.waves-ready .surfboard-foam-one{animation:surfboard-foam 5.2s ease-out 1.05s infinite}.waves-ready .surfboard-foam-two{animation:surfboard-foam 6.1s ease-out 2.1s infinite}.waves-ready .surfboard-foam-three{animation:surfboard-foam 5.7s ease-out 3.2s infinite}
.waves-paused .surfboard-stage,.waves-paused .surfboard-stage::before,.waves-paused .surfboard-stage::after,.waves-paused .surfboard-foam{animation-play-state:paused}
@keyframes surfboard-emerge{0%{opacity:0;transform:translate3d(10px,-34%,0) rotate(11deg) scale(.94);filter:drop-shadow(0 8px 9px #0a283318) blur(1.5px)}58%{opacity:1}100%{opacity:1;transform:translate3d(0,-50%,0) rotate(7deg) scale(1);filter:drop-shadow(0 26px 28px #0a283340)}}
@keyframes surfboard-balance{0%,100%{opacity:1;transform:translate3d(0,-50%,0) perspective(900px) rotateX(0deg) rotateY(-1.2deg) rotate(7deg)}33%{opacity:1;transform:translate3d(-4px,calc(-50% - 6px),0) perspective(900px) rotateX(1.1deg) rotateY(2.1deg) rotate(6.15deg)}68%{opacity:1;transform:translate3d(4px,calc(-50% + 3px),0) perspective(900px) rotateX(-.8deg) rotateY(-2deg) rotate(7.7deg)}}
@keyframes surfboard-glint{0%,13%,100%{opacity:0;background-position:145% 0}19%{opacity:.7}31%{opacity:0;background-position:-50% 0}}
@keyframes surfboard-shadow{0%,100%{opacity:.72;transform:translate3d(9px,12px,0) rotate(-7deg) scaleX(.94)}33%{opacity:.55;transform:translate3d(15px,15px,0) rotate(-7deg) scaleX(1.08)}68%{opacity:.82;transform:translate3d(4px,10px,0) rotate(-7deg) scaleX(.88)}}
@keyframes surfboard-foam{0%,62%,100%{opacity:0;translate:0 0;scale:.65}70%{opacity:.85}86%{opacity:0;translate:var(--foam-x,8px) -13px;scale:1.15}}
.surfboard-foam-two{--foam-x:-7px}.surfboard-foam-three{--foam-x:4px}

@media(max-width:1100px){.surfboard-stage{right:5%;height:min(86%,560px)}}
@media(max-width:700px){
.surfboard-stage{right:10%;top:56%;height:70%;filter:drop-shadow(0 14px 16px #0a28332e);will-change:auto}
.waves-ready .surfboard-stage{animation:surfboard-emerge-mobile 1.35s cubic-bezier(.16,.78,.22,1) .05s both,surfboard-balance-mobile 12s ease-in-out 1.4s infinite}
.waves-ready .surfboard-stage::before{animation:surfboard-glint 11s ease-in-out 3s infinite;opacity:0}.surfboard-foam{box-shadow:none}.surfboard-foam-three{display:none}
@keyframes surfboard-emerge-mobile{0%{opacity:0;transform:translate3d(6px,-38%,0) rotate(9deg) scale(.96)}100%{opacity:1;transform:translate3d(0,-50%,0) rotate(7deg) scale(1)}}
@keyframes surfboard-balance-mobile{0%,100%{opacity:1;transform:translate3d(0,-50%,0) rotate(7deg)}50%{opacity:1;transform:translate3d(2px,calc(-50% - 3px),0) rotate(6.5deg)}}
}
@media(prefers-reduced-motion:reduce){
.surfboard-stage{opacity:1;transform:translate3d(0,-50%,0) rotate(7deg);will-change:auto;animation:none!important}.surfboard-stage::before,.surfboard-stage::after,.surfboard-foam{animation:none!important}.surfboard-stage::before,.surfboard-foam{display:none}
}
