:root{--green:#0a3827;--deep:#05261b;--gold:#d3af50;--cream:#f7f1e4;--paper:#fffdf7;--ink:#173429;--line:rgba(13,65,45,.24);--serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit}h1,h2,h3,p{margin-top:0}em{font-weight:400}.site-header{height:108px;padding:0 4vw;background:var(--paper);border-bottom:1px solid rgba(13,65,45,.2);position:relative;z-index:20}.site-header nav{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.nav-group{display:flex;align-items:center;gap:2.2vw}.nav-right{justify-content:flex-end}.site-header nav a:not(.wordmark){font-size:14px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;color:var(--green)}.reserve-link{color:var(--green);border-bottom:2px solid var(--gold);padding-bottom:5px}.wordmark,.footer-mark{text-decoration:none;color:var(--green);display:flex;flex-direction:column;align-items:center;line-height:.9}.wordmark span,.footer-mark span{font:italic 600 35px/1 var(--serif)}.wordmark small,.footer-mark small{font:600 9px/1 var(--sans);letter-spacing:.22em;margin-top:9px}.nav-toggle{display:none}.hero{height:calc(100svh - 108px);min-height:680px;position:relative;display:grid;place-items:center;text-align:center;color:#fff;background:url('https://static.wixstatic.com/media/41dd26_71730945bd66478793d40a7016bd20dd~mv2.jpg/v1/fill/w_1900,h_1250,al_c,q_90/41dd26_71730945bd66478793d40a7016bd20dd~mv2.jpg') center/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(rgba(3,26,18,.28),rgba(3,26,18,.67))}.hero-copy{position:relative;z-index:1;max-width:860px;padding:40px 24px}.eyebrow,.kicker{font-size:10px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:24px}.hero h1{font:500 clamp(66px,9vw,132px)/.78 var(--serif);letter-spacing:-.045em;margin-bottom:30px}.hero h1 em{display:inline-block}.hero-copy>p:not(.eyebrow){max-width:590px;margin:0 auto 34px;font:400 21px/1.45 var(--serif)}.button{display:inline-flex;align-items:center;justify-content:center;padding:16px 25px;font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;text-decoration:none;transition:.2s}.button:hover{transform:translateY(-2px)}.button-gold{background:var(--gold);color:var(--deep)}.button-green{background:var(--green);color:white}.button-cream{background:var(--cream);color:var(--deep)}.hero-scroll{position:absolute;z-index:1;bottom:28px;font-size:10px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}.hero-scroll span{margin-left:15px}.welcome{padding:135px 24px 145px;text-align:center;max-width:980px;margin:auto}.kicker{color:#9a7922}.kicker.light{color:#e3c66d}.welcome h2,.menus h2,.story h2,.signatures h2,.gather h2,.visit h2{font:500 clamp(54px,7vw,93px)/.88 var(--serif);letter-spacing:-.035em;color:var(--green);margin-bottom:34px}.welcome .lead{max-width:690px;margin:0 auto;font:400 21px/1.6 var(--serif)}.welcome-links{margin-top:38px;display:flex;justify-content:center;gap:40px}.welcome-links a{font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-underline-offset:7px}.photo-ribbon{display:grid;grid-template-columns:1.15fr .85fr;gap:8px;background:var(--cream);padding:8px}.photo{height:70vh;min-height:520px;position:relative;background-size:cover;background-position:center}.photo-dining{background-image:linear-gradient(rgba(5,35,24,.08),rgba(5,35,24,.35)),url('https://static.wixstatic.com/media/41dd26_71730945bd66478793d40a7016bd20dd~mv2.jpg/v1/fill/w_1300,h_1000,al_c,q_90/41dd26_71730945bd66478793d40a7016bd20dd~mv2.jpg');background-position:left center}.photo-detail{background-image:linear-gradient(rgba(5,35,24,.05),rgba(5,35,24,.42)),url('https://resizer.otstatic.com/v3/photos/70163092-2?width=1000&height=1200&webp=true')}.photo span{position:absolute;left:30px;bottom:28px;color:white;font:italic 26px var(--serif)}.menus{padding:130px 7vw;background:var(--cream);display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw}.menus-intro p:last-child{font:400 19px/1.55 var(--serif);max-width:450px}.menu-list{border-top:1px solid var(--line)}.menu-list a{display:grid;grid-template-columns:40px 1fr auto 24px;gap:18px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line);text-decoration:none;transition:.2s}.menu-list a:hover{padding-left:12px;color:#8a6918}.menu-list span{font:italic 15px var(--serif);color:#9a7922}.menu-list strong{font:500 34px/1 var(--serif)}.menu-list small{font-size:9px;letter-spacing:.12em}.menu-list b{font-size:18px}.story{min-height:760px;padding:120px 8vw;background:var(--deep);color:white;display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:10vw;border-top:6px solid var(--gold)}.story h2,.gather h2{color:white}.story-seal{width:min(31vw,360px);aspect-ratio:1;border:1px solid rgba(211,175,80,.72);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--gold)}.story-seal:before,.story-seal:after{content:"";width:54%;border-top:1px solid rgba(211,175,80,.6);margin:17px}.story-seal strong{font:500 clamp(70px,9vw,120px)/.8 var(--serif)}.story-seal span{font-size:9px;letter-spacing:.22em}.story-copy{max-width:650px}.story-copy>p:not(.kicker){font:400 19px/1.65 var(--serif);color:#eee5d2}.signatures{padding:125px 7vw 145px}.signatures-heading{max-width:720px;margin-bottom:50px}.dish-list{border-top:1px solid var(--line)}.dish-list article{display:grid;grid-template-columns:150px 1fr 1.2fr;gap:30px;align-items:center;padding:29px 0;border-bottom:1px solid var(--line)}.dish-list span{font-size:9px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#987722}.dish-list h3{font:500 34px var(--serif);margin:0;color:var(--green)}.dish-list p{margin:0;font:italic 18px var(--serif)}.gather{background:#164b35;color:white;padding:120px 7vw;display:grid;grid-template-columns:1.1fr 1fr;gap:9vw;align-items:center}.gather-copy>p:not(.kicker){font:400 19px/1.6 var(--serif);max-width:560px;margin-bottom:35px}.rooms{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(239,211,108,.42);border-left:1px solid rgba(239,211,108,.42)}.rooms div{padding:28px;border-right:1px solid rgba(239,211,108,.42);border-bottom:1px solid rgba(239,211,108,.42);display:flex;flex-direction:column}.rooms strong{font:500 50px var(--serif);color:#f0d47d}.rooms span{font-size:10px;letter-spacing:.1em;text-transform:uppercase}.visit{padding:125px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--paper)}.visit-details>div{border-top:1px solid var(--line);padding:21px 0;display:grid;grid-template-columns:120px 1fr}.visit-details span{font-size:9px;font-weight:600;letter-spacing:.14em;color:#987722}.visit-details a,.visit-details p{text-decoration:none;margin:0;font:400 18px/1.5 var(--serif)}.visit-details .button{margin-top:30px}footer{background:#041f16;color:#eee8da;border-top:5px solid var(--gold);padding:55px 5vw;display:flex;align-items:end;justify-content:space-between}.footer-mark{color:#f3e7c7;align-items:flex-start}footer p{font:italic 18px var(--serif);margin:0}footer>a{font-size:10px;text-transform:uppercase;letter-spacing:.12em;text-decoration:none}
@media(max-width:900px){.site-header{height:80px;display:flex;align-items:center;justify-content:space-between}.nav-toggle{display:block;margin-left:auto;background:none;border:1px solid var(--green);padding:8px 12px;color:var(--green);text-transform:uppercase;font-size:10px;letter-spacing:.12em}.site-header nav{position:absolute;left:0;right:0;top:0;height:80px;display:flex;justify-content:center}.site-header .nav-group{display:none}.site-header nav.open{top:80px;height:auto;background:var(--paper);padding:28px 6vw;display:flex;flex-direction:column;align-items:stretch;border-bottom:2px solid var(--gold)}.site-header nav.open .wordmark{display:none}.site-header nav.open .nav-group{display:flex;flex-direction:column;align-items:stretch;gap:20px}.site-header nav.open .nav-right{margin-top:20px}.wordmark span{font-size:29px}.hero{height:calc(100svh - 80px);min-height:620px}.hero h1{font-size:clamp(62px,15vw,96px)}.photo-ribbon{grid-template-columns:1fr}.photo{height:58vh;min-height:430px}.menus,.story,.gather,.visit{grid-template-columns:1fr;gap:65px}.story-seal{width:280px}.dish-list article{grid-template-columns:1fr;gap:5px}.menu-list a{grid-template-columns:35px 1fr 24px}.menu-list small{display:none}footer{align-items:flex-start;gap:35px;flex-direction:column}}
@media(max-width:560px){.hero-copy>p:not(.eyebrow){font-size:18px}.hero-scroll{display:none}.welcome{padding:95px 24px}.welcome-links{flex-direction:column;gap:20px}.photo{height:52vh;min-height:360px}.menus,.story,.signatures,.gather,.visit{padding:90px 24px}.menu-list strong{font-size:28px}.story{min-height:auto}.story-seal{width:220px}.rooms{grid-template-columns:1fr}.visit-details>div{grid-template-columns:1fr;gap:8px}footer p{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.menu-list a{transition:none}}

/* Mobile and accessibility refinements */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{overflow-wrap:break-word}
a,button{touch-action:manipulation}
.eyebrow,.kicker,.menu-list span,.dish-list span,.visit-details span{color:#806015}
.button,.welcome-links a,.hero-scroll,footer>a{font-size:.75rem}
.nav-toggle,.room-capacities strong small{font-size:.75rem}
.footer-copy{max-width:42rem}.accessibility-note{margin-top:.55rem;font:400 .875rem/1.5 var(--sans)}.accessibility-note a{text-underline-offset:3px}
.parking-link{display:inline-flex;align-items:center;min-height:44px;margin-top:.85rem;padding:.65rem .9rem;border:1px solid var(--green);color:var(--green);font:700 .75rem/1 var(--sans);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:background-color .2s,color .2s}.parking-link:hover,.parking-link:focus-visible{background:var(--green);color:#fff}
.menu-list small{font-size:.75rem;line-height:1.4}
.dish-list span,.visit-details span{font-size:.75rem;line-height:1.4}
.site-header nav a:not(.wordmark),.button,.welcome-links a,footer>a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:900px){
  .site-header{padding-left:max(4vw,env(safe-area-inset-left));padding-right:max(4vw,env(safe-area-inset-right))}
  .site-header nav.open .nav-group a{min-height:48px;padding:.7rem 0}
  .hero{height:auto;min-height:calc(100svh - 80px);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
  .photo{height:auto;min-height:0;aspect-ratio:4/3}
}
@media(max-width:560px){
  .hero-copy{padding:3.5rem 1.25rem 4.5rem}
  .hero h1{font-size:clamp(3.35rem,17vw,5.6rem);line-height:.84}
  .welcome h2,.menus h2,.story h2,.signatures h2,.gather h2,.visit h2{font-size:clamp(3rem,15vw,4.7rem);line-height:.9}
  .menus,.story,.signatures,.gather,.visit{padding-left:max(1.25rem,env(safe-area-inset-left));padding-right:max(1.25rem,env(safe-area-inset-right))}
  .menu-list a{min-height:72px;gap:.75rem}
  .menu-list strong{font-size:1.65rem;line-height:1.1}
  .visit-details a[href^="tel:"]{min-height:44px;display:inline-flex;align-items:center}
  footer .accessibility-note{display:block}
}
@media(max-width:360px){.hero h1{font-size:3.2rem}.hero-copy>p:not(.eyebrow){font-size:1.05rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.wordmark,.footer-mark{text-decoration:none;display:flex;align-items:center;justify-content:center;line-height:normal}.wordmark img{display:block;width:210px;height:78px;object-fit:contain}.footer-mark img{display:block;width:220px;height:auto;background:#fff;padding:8px}.wordmark span,.wordmark small,.footer-mark span,.footer-mark small{display:none}
@media(max-width:900px){.wordmark img{width:166px;height:62px}}
.hero{background-image:url('images/exterior.webp');background-position:center 46%}.hero-shade{background:linear-gradient(rgba(3,26,18,.25),rgba(3,26,18,.76))}.photo-dining{background-image:linear-gradient(rgba(5,35,24,.08),rgba(5,35,24,.35)),url('images/main-dining-room.webp');background-position:center}.photo-detail{background-image:linear-gradient(rgba(5,35,24,.05),rgba(5,35,24,.42)),url('images/wine-cellar.webp');background-position:center}.gallery{padding:125px 7vw 145px;background:var(--cream)}.gallery-heading{max-width:760px;margin-bottom:55px}.gallery-heading h2{font:500 clamp(54px,7vw,93px)/.88 var(--serif);letter-spacing:-.035em;color:var(--green);margin-bottom:28px}.gallery-heading>p:last-child{font:400 19px/1.55 var(--serif);max-width:560px}.gallery-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:10px}.gallery-grid figure{margin:0;position:relative;overflow:hidden;background:var(--deep);min-height:300px}.gallery-grid .gallery-wide{grid-row:span 2;min-height:610px}.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.gallery-grid figure:hover img{transform:scale(1.025)}.gallery-grid figcaption{position:absolute;left:22px;bottom:20px;color:white;font:italic 25px var(--serif);text-shadow:0 2px 10px rgba(0,0,0,.6)}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr}.gallery-grid .gallery-wide{grid-row:auto;min-height:440px}.gallery-grid figure{min-height:380px}}
@media(max-width:560px){.gallery{padding:90px 24px}.gallery-grid .gallery-wide,.gallery-grid figure{min-height:300px}.gallery-grid figcaption{font-size:21px}}
.hero{background-image:url('images/exterior-wide.webp');background-position:center 48%}.photo-ribbon{grid-template-columns:1fr 1fr}.photo{height:auto;min-height:0;aspect-ratio:3/2}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px}.gallery-grid .gallery-wide{grid-row:auto;min-height:0}.gallery-grid figure,.gallery-grid .gallery-wide{aspect-ratio:3/2;min-height:0}.gallery-grid img{position:absolute;inset:0}.gallery-grid figcaption{right:22px;padding:12px 14px;background:linear-gradient(90deg,rgba(4,31,22,.78),rgba(4,31,22,.18));text-shadow:none}
@media(max-width:900px){.hero{background-image:url('images/main-dining-room.webp');background-position:center}.photo-ribbon{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .gallery-wide{grid-column:1/-1}}
@media(max-width:560px){.gallery-grid{grid-template-columns:1fr}.gallery-grid .gallery-wide{grid-column:auto}.gallery-grid figure,.gallery-grid .gallery-wide{min-height:0}.gallery-grid figcaption{font-size:20px}}
.hero{background-image:url('images/main-dining-room.webp');background-position:center}
.skip-link{position:fixed;left:16px;top:12px;z-index:1000;background:#fff;color:#062b1e;padding:12px 16px;border:3px solid #d3af50;font-weight:600;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:3px solid #1475e1;outline-offset:4px}.site-header nav a,.welcome-links a,footer>a{text-decoration-thickness:2px;text-underline-offset:5px}.nav-toggle{min-width:48px;min-height:44px}.button{min-height:44px}.menu-list a{min-height:88px}@media(forced-colors:active){.button,.reserve-link,.nav-toggle{border:2px solid currentColor}.hero-shade{background:rgba(0,0,0,.72)}}

/* Visitor accessibility controls and WCAG-oriented states */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.accessibility-widget{position:fixed;right:1rem;bottom:1rem;z-index:900;font-family:var(--sans)}
.accessibility-toggle{min-height:48px;padding:.75rem 1rem;border:2px solid #f0d47d;border-radius:999px;background:#05261b;color:#fff;font:700 .875rem/1 var(--sans);box-shadow:0 8px 28px rgba(0,0,0,.28);cursor:pointer}
.accessibility-toggle span{margin-right:.4rem;color:#f0d47d;font-size:1rem}
.accessibility-panel{position:absolute;right:0;bottom:calc(100% + .65rem);width:min(19rem,calc(100vw - 2rem));padding:1rem;background:#fff;color:#173429;border:2px solid #0a3827;border-radius:.5rem;box-shadow:0 14px 38px rgba(0,0,0,.26)}
.accessibility-panel h2{margin:0 0 .75rem;font:600 1.25rem/1.2 var(--serif);color:#0a3827}
.accessibility-panel button,.accessibility-panel a{display:flex;width:100%;min-height:44px;align-items:center;padding:.65rem .75rem;border:0;border-bottom:1px solid rgba(13,65,45,.22);background:#fff;color:#0a3827;font:700 .875rem/1.3 var(--sans);text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.accessibility-panel button:hover,.accessibility-panel a:hover{background:#f7f1e4}
.accessibility-statement{padding:5rem 7vw;max-width:68rem;margin:0 auto;background:var(--paper)}
.accessibility-statement h2{margin-bottom:1.5rem;color:var(--green);font:500 clamp(2.5rem,5vw,4.5rem)/.95 var(--serif)}
.accessibility-statement p{max-width:52rem;font-size:1.05rem;line-height:1.75}
.accessibility-statement a{font-weight:700;text-decoration-thickness:2px;text-underline-offset:4px}
html.a11y-large-text{font-size:125%}
html.a11y-large-text .hero h1{font-size:clamp(3.4rem,8vw,7.2rem)}
html.a11y-high-contrast{--green:#002b1d;--deep:#001a11;--gold:#ffd85c;--cream:#fff;--paper:#fff;--ink:#000;--line:#000}
html.a11y-high-contrast body{background:#fff;color:#000}
html.a11y-high-contrast a{text-decoration:underline;text-decoration-thickness:2px}
html.a11y-high-contrast .hero-shade{background:rgba(0,0,0,.78)}
html.a11y-high-contrast .gather,html.a11y-high-contrast .story,html.a11y-high-contrast footer{background:#000;color:#fff}
html.a11y-high-contrast .kicker,html.a11y-high-contrast .eyebrow{color:#765500}
html.a11y-high-contrast .kicker.light,html.a11y-high-contrast .story h2,html.a11y-high-contrast .gather h2{color:#fff}
html.a11y-reduce-motion{scroll-behavior:auto}
html.a11y-reduce-motion *,html.a11y-reduce-motion *::before,html.a11y-reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:560px){.accessibility-widget{right:.65rem;bottom:.65rem}.accessibility-toggle{padding:.7rem .85rem}.accessibility-statement{padding:4rem 1.5rem}}
@media(prefers-contrast:more){:root{--line:rgba(0,0,0,.55)}.hero-shade{background:rgba(0,0,0,.7)}a{text-decoration-thickness:2px}.button{border:2px solid currentColor}}
@media(forced-colors:active){.accessibility-toggle,.accessibility-panel{border:2px solid ButtonText}.accessibility-toggle{background:ButtonFace;color:ButtonText}}

/* Symmetrical desktop navigation around the centered logo */
@media(min-width:901px){
  .site-header{padding-left:3vw;padding-right:3vw}
  .site-header nav{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:1.25vw}
  .site-header .nav-group{width:100%;justify-content:space-evenly;gap:clamp(.5rem,1vw,1.4rem)}
  .site-header .nav-left{padding-right:1vw}
  .site-header .nav-right{padding-left:1vw}
  .site-header nav a:not(.wordmark){font-size:clamp(.84rem,.9vw,1rem);letter-spacing:.065em;white-space:nowrap;border-bottom:2px solid var(--gold);padding-bottom:.35rem}
}
@media(max-width:900px){.site-header nav.open a:not(.wordmark){font-size:1rem;border-bottom:2px solid var(--gold);padding-bottom:.45rem}}

/* Featured KQED episode */
.kqed-feature{margin:0 0 1.6rem;padding:1rem;background:#f7f1e4;color:#173429;border:2px solid var(--gold);box-shadow:0 10px 28px rgba(0,0,0,.2)}
.kqed-feature-head{display:flex;align-items:center;gap:1rem;margin-bottom:.9rem}
.kqed-feature-logo{display:block;width:150px;height:86px;object-fit:contain;background:#fff}
.kqed-feature-meta{display:grid;gap:.35rem}
.kqed-feature-meta small{font:700 .72rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#765500}
.kqed-feature-meta strong{font:600 1.15rem/1.2 var(--serif);color:#173429}
.kqed-video{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}
.kqed-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.kqed-feature-copy{margin:.9rem 0 .65rem;font:400 .98rem/1.5 var(--serif)}
.kqed-source-link{display:inline-flex;align-items:center;min-height:44px;color:#173429;font:700 .76rem/1.2 var(--sans);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;border-bottom:2px solid var(--gold)}
.kqed-source-link:hover,.kqed-source-link:focus-visible{color:#765500}
@media(max-width:560px){.kqed-feature{padding:.8rem}.kqed-feature-head{align-items:flex-start;flex-direction:column}.kqed-feature-logo{width:135px;height:78px}}
