/* La Playa: ocean depth, clear water and first-light gold. */
:root{--navy:#063b4b;--navy2:#062b39;--teal:#087e8b;--aqua:#72ded6;--sun:#ffce70;--coral:#dc753d;--sand:#f1f7f5;--white:#fff;--ink:#113d48;--muted:#526b71;--max:1280px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;font:16px/1.65 'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--sand)}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer}.wrap{width:min(var(--max),calc(100% - 80px));margin:auto}:focus-visible{outline:3px solid #e99724;outline-offset:5px}
.topbar{position:relative;z-index:32;background:var(--navy2);color:#e5f5f5;font-size:14px}.topbar .wrap{min-height:36px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar strong{color:var(--sun);margin-right:8px}.topbar a{text-decoration:none}
header{position:absolute;z-index:30;top:36px;left:0;right:0;background:rgba(245,251,249,.94);border-bottom:1px solid rgba(255,255,255,.3)}header.scrolled{position:fixed;top:0;box-shadow:0 8px 35px #062b3912;backdrop-filter:blur(18px)}nav{height:106px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;text-decoration:none}.brand img{width:106px;height:94px;object-fit:contain;background:transparent}.brand span{display:none}.navlinks{display:flex;align-items:center;gap:32px}.navlinks>a{text-decoration:none;font-weight:600;font-size:15px}.navlinks>a:hover{color:var(--teal)}.nav-cta,.header-reserve{background:var(--navy);color:#fff!important;border-radius:5px;padding:12px 23px;text-decoration:none;font-weight:600}.header-reserve{display:none}.menu-toggle{display:none;background:none;border:0;color:var(--navy);font-size:26px;padding:8px;min-width:44px;min-height:44px}
.hero{position:relative;isolation:isolate;overflow:hidden;min-height:820px;min-height:max(740px,calc(100svh - 36px));padding:290px 0 145px;display:flex;align-items:flex-end;background:var(--navy2);color:white}.hero-photo,.hero-dawn,.hero-light{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-photo{z-index:0;object-fit:cover;object-position:58% center;filter:saturate(1.08);transform:scale(1)}.hero-dawn{z-index:1;background:#061b34;opacity:0}.hero-light{z-index:1;background:linear-gradient(125deg,transparent 35%,#ffcf7042 77%,#fff5d33a);opacity:.12;mix-blend-mode:screen}.hero:before{content:'';position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(0deg,rgba(3,26,35,.87),rgba(3,26,35,.48) 24%,rgba(3,26,35,.06) 62%,transparent),linear-gradient(90deg,rgba(3,26,35,.2),transparent 65%)}.hero>.wrap{position:relative;z-index:3}.hero-content{max-width:790px}.eyebrow{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:#fff0ca}.hero h1{font:500 clamp(3.7rem,6.4vw,6.5rem)/1.02 'Fraunces',Georgia,serif;letter-spacing:-.052em;margin:20px 0 22px;text-wrap:balance}.hero h1 em{display:block;color:var(--sun);font-weight:500}.hero p{font-size:18px;line-height:1.6;max-width:460px;margin:0 0 30px;color:#f7fcfc}.actions{display:flex;flex-wrap:wrap;gap:14px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;padding:0 28px;border:1px solid var(--sun);background:var(--sun);color:var(--navy2);font-weight:700;text-decoration:none;border-radius:5px;transition:background .2s,transform .2s}.button:hover{background:#ffdf9e;transform:translateY(-2px)}.button.outline{border-color:#ffffffaa;background:#082c3e55;color:white;backdrop-filter:blur(12px)}.button.outline:hover{background:#ffffff24}.hero-location{position:absolute;z-index:3;bottom:38px;left:max(40px,calc((100vw - var(--max))/2));display:flex;align-items:center;gap:24px;color:#e1eded;text-decoration:none;font-size:14px}.hero-location span:last-child{font-size:24px}.replay-sunrise{position:absolute;z-index:3;bottom:38px;right:max(40px,calc((100vw - var(--max))/2));color:white;background:#062b394d;border:1px solid #ffffff55;border-radius:30px;min-height:44px;padding:8px 18px;font-size:14px;backdrop-filter:blur(8px)}.hero.sunrise-ready .hero-photo{animation:shore-reveal 5.5s cubic-bezier(.18,.65,.35,1) both}.hero.sunrise-ready .hero-dawn{animation:dawn-clear 5.5s ease-out both}.hero.sunrise-ready .hero-light{animation:first-light 5.5s ease-out both}@keyframes shore-reveal{from{transform:scale(1.1);filter:brightness(.58) saturate(.65)}to{transform:scale(1);filter:brightness(1) saturate(1.08)}}@keyframes dawn-clear{0%{opacity:.62}45%{opacity:.2}100%{opacity:0}}@keyframes first-light{0%{opacity:0;transform:translateX(10%)}45%{opacity:.85}100%{opacity:.12;transform:none}}
.tape{position:relative;background:var(--navy);color:#c8edeb;overflow:hidden;border-bottom:1px solid #ffffff24}.tape-track{display:flex;width:max-content;padding:20px 0;font-size:14px;letter-spacing:.15em;text-transform:uppercase;animation:ticker 50s linear infinite}.tape-track span{padding:0 28px}.tape-track span:after{content:'·';margin-left:56px;color:var(--sun)}@keyframes ticker{to{transform:translateX(-50%)}}
section{padding:110px 0}.intro-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:95px}.kicker{font-size:14px;letter-spacing:.15em;text-transform:uppercase;color:var(--teal);font-weight:700}.title{font:500 clamp(2.5rem,4vw,4.1rem)/1.1 'Fraunces',Georgia,serif;letter-spacing:-.035em;color:var(--navy);margin:18px 0 25px;text-wrap:balance}.lead{font-size:18px}.intro-grid p{color:var(--muted)}.intro-pic{position:relative}.intro-pic .photo-window{border-radius:200px 200px 8px 8px}.intro-pic img{width:100%;height:550px;object-fit:cover}.sun-badge{position:absolute;left:-30px;bottom:32px;background:var(--navy);color:var(--sun);width:135px;height:135px;border-radius:50%;display:grid;place-items:center;text-align:center;border:6px solid var(--sand)}.sun-badge span{font:500 23px/1.2 'Fraunces',serif}.directions{display:inline-flex;min-height:44px;align-items:center;gap:10px;color:var(--teal);font-weight:700;text-underline-offset:6px;margin-top:15px}
.highlights{background:var(--navy);color:white;padding:70px 0}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr)}.highlight{padding:10px 40px;border-right:1px solid #ffffff2b}.highlight:first-child{padding-left:0}.highlight:last-child{border:0;padding-right:0}.highlight .icon{font-size:27px}.highlight h3{font:500 28px/1.2 'Fraunces',serif;margin:18px 0 14px}.highlight p{color:#cbe0e3;margin:0}.highlight strong{color:var(--sun);font-weight:500}
.menu-section{background:#fff}.menu-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.menu-head .title{max-width:670px;margin-bottom:0}.menu-link{color:var(--teal);font-weight:700;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:6px}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.menu-card{border-bottom:1px solid #d0e2e3;overflow:hidden}.menu-card img{width:100%;height:220px;object-fit:cover}.menu-card .photo-window{border-radius:6px}.menu-card-body{padding:24px 0}.menu-card .mark{display:none}.menu-card h3{font:500 26px/1.2 'Fraunces',serif;margin:0 0 12px}.menu-card p{color:var(--muted);margin:0}
.experience{padding:0}.experience-grid{display:grid;grid-template-columns:1.12fr .88fr;min-height:610px}.experience-photo{background:url('food.jpg') center/cover no-repeat;min-height:450px}.experience-copy{background:#bde9df;padding:80px clamp(36px,6vw,100px);display:flex;flex-direction:column;justify-content:center}.experience-copy .button{align-self:flex-start;margin-top:18px;background:var(--navy);border-color:var(--navy);color:#fff}.experience-copy p{font-size:18px;color:#24545b}.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px}.details{display:grid;grid-template-columns:1fr 1fr;gap:30px}.detail{border-top:1px solid #a5c4c9;padding-top:15px}.detail h3{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--teal);margin:0 0 8px}.detail p{margin:0;overflow-wrap:anywhere}.hours{background:white;padding:40px;border-radius:8px}.hours h3{font:500 30px/1.2 'Fraunces',serif;margin:0 0 20px}.hour-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #e1eded}.closed{color:#a34d28;font-weight:600}
footer{background:var(--navy2);color:#d2e6e8;padding:65px 0 30px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:70px}.footer-logo img{width:135px;height:125px;object-fit:contain;filter:drop-shadow(0 0 1px #ffffff55)}.footer-logo strong{display:none}.footer h4{font-size:14px;letter-spacing:.12em;color:var(--sun);text-transform:uppercase}.footer a{display:flex;width:fit-content;align-items:center;gap:10px;min-height:38px;text-decoration:none}.footer a:hover{color:var(--sun)}.copyright{border-top:1px solid #ffffff25;padding-top:24px;margin-top:40px;font-size:14px;color:#adc9cd}.facebook-link{display:inline-flex;align-items:center;gap:10px;min-height:44px}.facebook-link svg{flex-shrink:0}.mobile-cta{display:none}
@media(min-width:1500px){.hero-content{max-width:900px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.navlinks{gap:20px}.hero{min-height:830px}.hero h1{font-size:clamp(3.7rem,7.5vw,5rem)}.intro-grid,.visit-grid{gap:40px}.highlight{padding:10px 24px}.menu-grid{grid-template-columns:1fr 1fr}.hero-location{left:24px}.replay-sunrise{right:24px}}
@media(max-width:800px){nav{height:94px;gap:16px}.brand img{width:92px;height:82px}.navlinks{display:none}.header-reserve{display:inline-flex;margin-left:auto;font-size:14px;padding:10px 16px}.menu-toggle{display:block;z-index:2}.navlinks.open{display:flex;position:fixed;top:130px;left:0;right:0;bottom:0;background:var(--sand);flex-direction:column;justify-content:center;align-items:center;padding:30px;gap:28px;overflow:auto}.scrolled .navlinks.open{top:94px}.navlinks.open>a{font-size:22px}.hero{padding-top:290px;min-height:820px}.hero h1{font-size:clamp(3.6rem,8vw,5rem)}.intro-grid,.visit-grid,.experience-grid{grid-template-columns:1fr}.intro-grid{gap:45px}.intro-pic{max-width:580px}.intro-pic img{height:500px}.highlight-grid{grid-template-columns:1fr}.highlight,.highlight:first-child,.highlight:last-child{padding:28px 0;border-right:0;border-bottom:1px solid #ffffff30}.highlight:last-child{border:0}.experience-copy{padding:65px 36px}.footer-grid{gap:35px}.topbar .wrap span:last-child{display:none}.topbar .wrap{justify-content:center}.menu-head{gap:20px}.hero p{max-width:440px}}
@media(max-width:560px){.wrap{width:calc(100% - 40px)}.topbar{font-size:12px}.topbar .wrap{min-height:32px}header{top:32px}.brand img{width:78px;height:72px}nav{height:86px;gap:12px}.header-reserve{font-size:13px;padding:10px 12px}.navlinks.open{top:118px}.scrolled .navlinks.open{top:86px}.hero{min-height:calc(100svh - 32px);min-height:max(750px,calc(100svh - 32px));padding:285px 0 115px}.hero-photo{object-position:64% center}.hero h1{font-size:clamp(2.9rem,11vw,3.85rem);line-height:1.07;margin:16px 0 20px}.hero .eyebrow{font-size:12px;letter-spacing:.08em;max-width:300px}.hero p{font-size:16px;max-width:330px}.hero:before{background:linear-gradient(0deg,#031a23ed,rgba(3,26,35,.53) 43%,rgba(3,26,35,.02) 75%)}.actions{gap:10px}.hero .button{font-size:14px;padding:0 17px;gap:12px;min-height:52px}.hero-location{left:20px;bottom:40px;gap:12px;font-size:12px}.replay-sunrise{right:20px;bottom:36px;padding:8px 12px;font-size:12px}.tape-track{font-size:12px;padding:17px 0}section{padding:75px 0}.title{font-size:2.6rem}.intro-pic img{height:410px}.sun-badge{left:-8px;width:120px;height:120px}.menu-head{display:block}.menu-link{margin-top:15px}.menu-grid{grid-template-columns:1fr;gap:32px}.menu-card img{height:270px}.experience-photo{min-height:360px}.experience-copy{padding:55px 25px}.details{grid-template-columns:1fr}.hours{padding:28px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}footer{padding-bottom:105px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#f3faf8;box-shadow:0 -4px 20px #062b391a}.mobile-cta a{flex:1;display:grid;place-items:center;min-height:46px;background:var(--navy);color:white;text-decoration:none;font-weight:600;border-radius:4px;font-size:14px}.mobile-cta a:last-child{background:var(--sun);color:var(--navy2)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero .hero-photo{transform:none;filter:none}.hero .hero-dawn{opacity:0}.hero .hero-light{opacity:.12}.replay-sunrise{display:none}}
.footer-logo img{filter:brightness(0) invert(1)}
@media(max-width:560px){.hero-location{display:none}.replay-sunrise{top:110px;bottom:auto}}
