:root{--ink:#342b2e;--paper:#faf8f5;--wine:#812b41;--line:#e7ded9;--muted:#76686e;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}header,main,footer{max-width:1120px;margin:auto}header{min-height:100px;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font:2.125rem/1.05 var(--serif);letter-spacing:-.035em;color:var(--wine);white-space:nowrap}.brand span{display:block;font:.75rem/1.5 Arial,sans-serif;letter-spacing:.12em;margin-top:8px;color:var(--muted)}nav{display:flex;gap:28px;font-size:.875rem}nav a{padding:8px 0}nav a:hover{color:var(--wine)}.book{border:1px solid #c9a6af;padding:11px 17px;font-size:.875rem;line-height:1.5;border-radius:7px;color:var(--wine);text-align:center;transition:background .2s}.book:hover{background:#f0e0e4}.hero{margin:8px 36px 0;background:#f2e6e5;border:1px solid #ead8d9;border-radius:18px;display:grid;grid-template-columns:minmax(0,1fr) 310px;align-items:center;gap:30px;padding:36px 40px}.eyebrow{font-size:.75rem;line-height:1.5;letter-spacing:.1em;margin-bottom:18px;color:var(--wine)}.hero .eyebrow{display:flex;align-items:center;gap:12px}.hero .eyebrow:before{content:'';height:1px;width:28px;background:#ba818f}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.03em;line-height:1.18;text-wrap:balance}h1{font-size:clamp(2.25rem,4vw,3.15rem);margin-bottom:20px}em{font-weight:400;color:var(--wine)}h2{font-size:2rem;margin-bottom:16px}p{margin-bottom:16px}.hero p{color:var(--muted);font-size:1rem;line-height:1.65;margin-bottom:24px}.hero-cta{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid transparent;padding:12px 22px;font-size:.875rem;line-height:1.5;border-radius:7px;transition:background .2s,box-shadow .2s}.button:hover{background:#672036;color:white;box-shadow:0 4px 14px #812b4118}.light,.wine{background:var(--wine);color:white}.hero-reserve{font-size:.875rem;color:var(--wine);text-decoration:underline;text-underline-offset:5px;text-decoration-color:#c499a4}.hero-address{margin-top:24px;font-size:.75rem;line-height:1.5;color:var(--muted)}.hero-visual{position:relative;min-width:0}.hero-photo{width:100%;height:285px;border-radius:12px;overflow:hidden;border:5px solid #ffffffb3;box-shadow:0 12px 28px #63344414;background:#fff}.hero-photo img{object-position:57% 53%}.hero p.hero-photo-caption{font-size:.75rem;text-align:right;line-height:1.45;color:#8b6972;margin:12px 3px 0}.section{padding:42px 36px}.about{display:grid;grid-template-columns:160px minmax(0,1fr);gap:32px;border-bottom:1px solid var(--line);margin:0 36px;padding:32px 0}.about>.eyebrow{padding-top:7px;color:var(--muted)}.about h2{font-size:1.75rem;margin-bottom:12px}.about p{color:var(--muted);margin-bottom:16px;max-width:670px}.about-details{display:flex;flex-wrap:wrap;gap:8px 22px;font-size:.875rem;line-height:1.5;color:var(--wine)}.about-details span{border-bottom:1px solid #dbc0c8;padding-bottom:4px}.section-top{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:22px}.section-top h2{font-size:2.25rem;margin:0;color:var(--wine)}.section-top p{color:var(--muted);font-size:.8125rem;line-height:1.5;margin:0}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.tabs button{min-height:44px;border:1px solid var(--line);border-radius:7px;background:#fff;padding:10px 16px;font-size:.875rem;line-height:1.5;color:var(--muted);transition:background .2s}.tabs button.active{background:var(--wine);color:#fff;border-color:var(--wine)}.tabs button:hover:not(.active){background:#f1e3e6;color:var(--wine);border-color:#d3aeb8}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.dish{display:flex;align-items:center;gap:18px;padding:12px;background:#fff;border:1px solid #eee5df;border-radius:11px;min-width:0;transition:border-color .2s,box-shadow .2s}.dish:hover{border-color:#d7b8c0;box-shadow:0 5px 18px #6a343508}.dish-image{width:84px;height:84px;flex:0 0 84px;background:#f3eee9;border-radius:7px;overflow:hidden}.dish img{transition:transform .25s}.dish:hover img{transform:scale(1.05)}.dish h3{font-family:Arial,Helvetica,sans-serif;font-size:1rem;letter-spacing:0;line-height:1.5;margin:0;font-weight:400;overflow-wrap:break-word;text-wrap:pretty}.menu-note{font-size:.8125rem;line-height:1.6;color:var(--muted);margin:22px 0 0}.occasion{margin:0 36px;display:flex;align-items:center;gap:24px;padding:26px 30px;background:var(--wine);color:#fff;border-radius:12px}.occasion-image{width:94px;height:94px;flex:0 0 94px;border-radius:9px;overflow:hidden;border:3px solid #ffffff20}.occasion-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:24px;flex:1;align-items:center;min-width:0}.occasion h2{font-size:1.875rem;margin-bottom:8px}.occasion p{color:#f0dce1;font-size:1rem;margin:0;grid-column:1;line-height:1.6}.occasion .button{grid-column:2;grid-row:1/3;background:#fff;border-color:#fff;color:var(--wine)}.occasion .button:hover{background:#f3e3e7}.contacts{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;padding-top:44px;padding-bottom:44px}.contacts h2{margin-bottom:16px;font-size:1.875rem}.contacts p{color:var(--muted);font-size:1rem;line-height:1.7;margin-bottom:20px}.phone{display:block;font-size:1.5rem;line-height:1.4;letter-spacing:-.02em;margin:20px 0;color:var(--wine)}.contact-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.text-link{font-size:.875rem;line-height:1.5;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#c5b8bc}.text-link:hover{color:var(--wine)}.address-card{padding:28px 32px;background:#fff;border:1px solid var(--line);border-radius:12px;align-self:center}.address-card h3{font-size:1.75rem;margin-bottom:8px}.address-card p{margin-bottom:20px}.address-card .eyebrow{display:block;margin-bottom:16px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:28px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}footer .brand{font-size:1.5rem}footer .brand span{font-size:.75rem;letter-spacing:.06em}footer>span,footer>a:last-child{font-size:.8125rem;color:var(--muted)}.skip{position:fixed;left:10px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}:focus-visible{outline:3px solid #b87d88;outline-offset:4px}@media(max-width:950px){header{padding:22px 28px;gap:20px}.brand{font-size:1.875rem}nav{gap:20px}.hero{margin:4px 28px 0;padding:28px;grid-template-columns:minmax(0,1fr) 240px;gap:24px}.hero-photo{height:255px}.hero h1{font-size:2.5rem}.section{padding:34px 28px}.about{margin:0 28px;padding:28px 0;grid-template-columns:110px minmax(0,1fr);gap:24px}.menu-grid{column-gap:14px}.dish{gap:14px;padding:10px}.dish-image{width:72px;height:72px;flex-basis:72px}.occasion{margin:0 28px;padding:24px;gap:20px}.occasion-copy{display:block}.occasion .button{margin-top:16px}.contacts{gap:24px}.address-card{padding:24px}footer{padding:24px 28px}}@media(max-width:680px){header{padding:20px;flex-wrap:wrap;gap:18px;min-height:0}.brand{font-size:1.75rem}.book{font-size:.875rem;padding:10px 13px;max-width:160px}nav{order:3;justify-content:center;width:100%;gap:32px;padding-top:15px;border-top:1px solid var(--line);font-size:.875rem}.hero{margin:0 16px;padding:24px;grid-template-columns:minmax(0,1fr) 96px;gap:16px;border-radius:13px}.hero-copy{display:contents}.hero .eyebrow{grid-column:1;grid-row:1;margin:0;font-size:.75rem;display:block}.hero .eyebrow:before{display:none}.hero-visual{grid-column:2;grid-row:1/3;align-self:center}.hero-photo{width:96px;height:128px;border-width:3px;border-radius:9px}.hero p.hero-photo-caption{display:none}.hero h1{grid-column:1;grid-row:2;font-size:clamp(1.65rem,6.8vw,2.5rem);line-height:1.18;letter-spacing:-.03em;margin:0;min-width:0;text-wrap:initial}.hero p{grid-column:1/-1;font-size:1rem;margin:0;line-height:1.65}.hero-cta{grid-column:1/-1;gap:14px;margin-top:4px}.hero .button{padding:11px 17px}.hero-reserve{font-size:.875rem}.hero-address{grid-column:1/-1;margin-top:0;font-size:.75rem}.section{padding:30px 20px}.about{margin:0 20px;padding:26px 0;display:block}.about>.eyebrow{margin-bottom:12px;padding:0}.about h2{font-size:1.625rem}.about p{font-size:1rem}.about-details{gap:8px 18px;font-size:.875rem}.section-top{display:block;margin-bottom:18px}.section-top h2{font-size:2rem;margin-bottom:8px}.section-top>p{font-size:.8125rem}.tabs{gap:8px;margin-bottom:18px}.tabs button{font-size:.875rem;padding:9px 12px}.menu-grid{grid-template-columns:1fr;gap:10px}.dish{padding:10px;gap:16px}.dish-image{width:70px;height:70px;flex-basis:70px}.dish h3{font-size:1rem}.menu-note{font-size:.8125rem;margin-top:20px}.occasion{margin:0 16px;padding:22px 20px;gap:16px;align-items:flex-start}.occasion-image{width:68px;height:88px;flex-basis:68px}.occasion h2{font-size:1.625rem}.occasion p{font-size:1rem;line-height:1.6}.occasion .button{font-size:.875rem;padding:9px 14px}.contacts{grid-template-columns:1fr;gap:26px;padding-top:32px}.contacts h2{font-size:1.75rem}.contacts p{font-size:1rem}.phone{font-size:1.5rem}.address-card{padding:24px}.address-card h3{font-size:1.625rem}.address-card p{margin-bottom:16px}footer{padding:24px 20px;flex-wrap:wrap;gap:20px}footer>span{order:3;width:100%}.desktop{display:none}}@media(max-width:380px){header{gap:16px}.brand{font-size:1.5rem}.book{max-width:140px;padding:10px;font-size:.875rem}.hero{padding:20px;grid-template-columns:minmax(0,1fr) 74px;gap:14px}.hero-photo{width:74px;height:108px}.hero h1{font-size:1.75rem}.occasion{gap:12px}.occasion-image{width:52px;height:72px;flex-basis:52px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
button.dish-image{padding:0;border:0;cursor:zoom-in}.photo-trigger{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.photo-open{overflow:hidden}.photo-dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:24px;border:0;background:transparent;color:#fff;overflow:auto}.photo-dialog[open]{display:flex;align-items:center;justify-content:center}.photo-dialog::backdrop{background:rgba(25,20,23,.88);backdrop-filter:blur(6px)}.photo-panel{position:relative;width:fit-content;max-width:100%;padding:48px 0 0}.photo-full{display:block;width:auto;height:auto;max-width:min(1100px,calc(100vw - 48px));max-height:calc(100dvh - 170px);object-fit:contain;margin:auto;border-radius:7px}.photo-close{position:absolute;right:0;top:0;width:40px;height:40px;border:1px solid #ffffff70;border-radius:50%;background:#ffffff18;color:#fff;font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center}.photo-close:hover{background:#ffffff35}#photo-caption{font-size:16px;line-height:1.5;text-align:center;margin:16px auto 0;max-width:700px;color:#fff}@media(max-width:600px){.photo-dialog{padding:16px}.photo-full{max-width:calc(100vw - 32px);max-height:calc(100dvh - 165px)}#photo-caption{font-size:15px}}

/* Atmospheric photographic backgrounds */
header,main,footer{max-width:1280px}
.hero{isolation:isolate;position:relative;display:flex;align-items:center;min-height:610px;margin:8px 24px 0;padding:70px 60px 112px;overflow:hidden;border:0;border-radius:16px;background:#090909;color:#fff}
.hero-backdrop{position:absolute;inset:0;z-index:-2;background:#090909}
.hero-backdrop img{position:absolute;right:0;width:64%;height:100%;object-fit:cover;object-position:50% 49%}
.hero-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090909 5%,rgba(9,9,9,.96) 28%,rgba(9,9,9,.56) 52%,rgba(9,9,9,.03) 78%),linear-gradient(0deg,rgba(0,0,0,.78),transparent 26%)}
.hero[data-photo="interior"] .hero-backdrop img{width:100%;object-position:center 56%}
.hero[data-photo="interior"] .hero-backdrop:after{background:linear-gradient(90deg,rgba(8,9,8,.93),rgba(8,9,8,.62) 46%,rgba(8,9,8,.12)),linear-gradient(0deg,rgba(0,0,0,.7),transparent 35%)}
.hero[data-photo="marshmallow"] .hero-backdrop img,.hero[data-photo="ruby"] .hero-backdrop img{object-fit:contain;object-position:75% center;width:66%}
.hero-copy{display:block;max-width:610px}.hero h1{font-size:clamp(2.5rem,4.3vw,3.8rem);line-height:1.13;letter-spacing:-.045em;margin-bottom:25px}.hero h1 em{color:#e8bcb7}.hero .eyebrow{color:#e8cbc2;font-size:.875rem;letter-spacing:.13em;margin-bottom:26px}.hero .eyebrow:before{background:#d0a89e}.hero p{color:#e1d8d4;max-width:430px;font-size:1.0625rem;line-height:1.7;margin-bottom:28px}.hero .light{background:#f5e9e3;color:#452830;border-color:#f5e9e3}.hero .light:hover{background:#fff}.hero-reserve{color:#f5e9e3;text-decoration-color:#a68d86}.hero-address{color:#d0c0b9;font-size:.875rem;margin-top:26px}.hero-cta{gap:22px}
.photo-selector{position:absolute;bottom:26px;left:60px;right:60px;display:flex;gap:24px}.photo-selector button{display:flex;align-items:center;gap:10px;border:0;border-top:1px solid #ffffff45;background:transparent;color:#d2c6c0;padding:14px 0 4px;font-size:.875rem;min-height:44px;flex:0 1 140px;text-align:left}.photo-selector button[aria-pressed="true"]{border-color:#f0c5b7;color:#fff}.photo-selector button:hover{border-color:#fff;color:#fff}.photo-selector button:focus-visible{outline-color:#fff}
.about{grid-template-columns:240px minmax(0,1fr);gap:44px;align-items:center;padding:42px 0;margin:0 36px}.about-image{height:235px;overflow:hidden;border-radius:10px}.about-image img{object-position:center 57%}.about h2{font-size:2.2rem}.about .eyebrow{margin-bottom:12px}
@media(max-width:950px){.hero{min-height:570px;padding:48px 36px 104px}.hero h1{font-size:2.85rem}.photo-selector{left:36px;right:36px;gap:20px}.hero-backdrop img{width:70%}.hero-copy{max-width:530px}.about{grid-template-columns:190px minmax(0,1fr);gap:28px}}
@media(max-width:680px){.hero{display:flex;align-items:flex-end;min-height:720px;margin:0 12px;padding:310px 24px 100px;border-radius:12px}.hero-copy{display:block;width:100%;max-width:none}.hero-backdrop img{width:100%;height:440px;object-position:center 43%}.hero-backdrop:after{background:linear-gradient(0deg,#090909 5%,#090909 35%,rgba(9,9,9,.8) 52%,rgba(9,9,9,0) 79%)}.hero[data-photo="interior"] .hero-backdrop img{height:490px;object-position:center 58%}.hero[data-photo="interior"] .hero-backdrop:after{background:linear-gradient(0deg,#090909 12%,#090909 30%,rgba(9,9,9,.67) 58%,rgba(9,9,9,.05))}.hero[data-photo="marshmallow"] .hero-backdrop img,.hero[data-photo="ruby"] .hero-backdrop img{width:100%;height:430px;object-fit:contain;object-position:center 35%}.hero h1{font-size:clamp(2rem,8.6vw,3rem);margin:0 0 18px;line-height:1.15}.hero .eyebrow{font-size:.8125rem;margin:0 0 18px}.hero p{font-size:1rem;margin:0 0 24px}.hero-cta{gap:18px;margin:0}.hero-address{font-size:.8125rem;margin-top:24px}.photo-selector{left:24px;right:24px;bottom:22px;gap:12px}.photo-selector button{display:block;font-size:.75rem;padding-top:10px;flex:1}.photo-selector button span{display:block;font-size:.8125rem;margin-top:3px}.about{display:grid;grid-template-columns:1fr;margin:0 24px;padding:30px 0;gap:24px}.about-image{height:245px}.about-image img{object-position:center 55%}.about h2{font-size:1.875rem}}

/* Selected final photograph */
.hero{padding-bottom:70px;min-height:560px}
@media(max-width:950px){.hero{padding-bottom:48px;min-height:530px}}
@media(max-width:680px){.hero{padding-bottom:32px;min-height:650px}}

/* Black hero and seafood menu highlight. */
.hero{background:#000;min-height:480px;padding:64px 60px}
.new-dish{margin:0;min-width:0}
.about{grid-template-columns:340px minmax(0,1fr)}
.about-image{height:290px}
.about-image img{object-position:center 59%}
.new-dish figcaption{padding-top:16px}
.new-dish-label{display:block;color:var(--wine);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}
.new-dish h3{font-size:1.35rem;margin:0}
@media(max-width:950px){.hero{min-height:450px;padding:48px 36px}.about{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:680px){.hero{min-height:0;padding:48px 24px;align-items:center}.about{grid-template-columns:1fr}.about-image{height:300px}.new-dish h3{font-size:1.5rem}}

/* Cocktail retained on a black background. */
.hero-backdrop{background:#000}
.hero-backdrop:after{background:linear-gradient(90deg,#000 5%,rgba(0,0,0,.96) 28%,rgba(0,0,0,.56) 52%,transparent 78%)}
@media(max-width:680px){.hero{align-items:flex-end;min-height:650px;padding:310px 24px 32px}.hero-backdrop:after{background:linear-gradient(0deg,#000 5%,#000 35%,rgba(0,0,0,.8) 52%,transparent 79%)}}

/* Dedicated new-menu feature. */
.about{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;padding:48px 0}
.about-image{height:420px}
.new-dish-copy .eyebrow{display:inline-block;border:1px solid #d9b3bc;border-radius:30px;padding:7px 14px;margin-bottom:20px;text-transform:uppercase;font-size:.75rem}
.new-dish-copy h2{font-size:clamp(2rem,3.6vw,3rem);margin-bottom:20px}
.new-dish-copy p{max-width:450px;margin-bottom:24px}
@media(max-width:950px){.about{gap:32px}.about-image{height:360px}}
@media(max-width:680px){.about{grid-template-columns:1fr;gap:26px;padding:32px 0}.about-image{height:330px}.new-dish-copy h2{font-size:2.25rem}}

.dish-info{min-width:0}.dish-description{font-size:.8125rem;color:var(--muted);margin:5px 0;line-height:1.5}.dish-price{display:block;font-size:.9rem;color:var(--wine);margin-top:6px}
