/* ── WCAG AA — no more half measures ── */

:root{--green-deep:#1A2825;--green-primary:#31423E;--silver:#8B908F;--silver-light:#B8BFBD;--silver-bright:#D4DAD8;--amber:#A84814;--amber-light:#F4823C;--warm-black:#0E1512;--off-white:#F0EDE8;--text-muted:#7A8280;--hero-glow:rgba(49,66,62,.5);--hero-base:rgba(14,21,18,.8);--hero-svg-shadow:rgba(49,66,62,.65);--nav-bg:rgba(14,21,18,.97);--nav-scrolled:rgba(14,21,18,.98)}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--warm-black);color:var(--silver-bright);font-family:'Cormorant Garamond',Georgia,serif;font-size:18px;line-height:1.7;overflow-x:hidden}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2.5rem;background:linear-gradient(to bottom,var(--nav-bg),transparent);transition:background .4s}
nav.scrolled{background:var(--nav-scrolled);border-bottom:1px solid rgba(139,144,143,.2)}
.nav-logo{text-decoration:none}
.nav-wordmark{height:32px;width:auto;display:block;opacity:.95}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver-bright);text-decoration:none;transition:color .3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:1px;background:var(--amber-light);transform:scaleX(0);transition:transform .3s}
.nav-links a:hover{color:var(--off-white)}
.nav-links a:hover::after{transform:scaleX(1)}

#hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;padding:6rem 2rem 4rem}
#hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 40%,var(--hero-glow),transparent 70%),radial-gradient(ellipse 100% 80% at 50% 60%,var(--hero-base),transparent)}
.deco-burst{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:650px;height:650px;opacity:.055;pointer-events:none}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;animation:fadeUp 1.2s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-svg{width:320px;max-width:82vw;margin-bottom:2.4rem;animation:fadeUp 1.3s ease .15s both;filter:drop-shadow(0 0 35px var(--hero-svg-shadow))}
.divider{display:flex;align-items:center;gap:.9rem;margin-bottom:2.2rem;animation:fadeUp 1.3s ease .35s both}
.div-line{width:70px;height:1px;background:linear-gradient(to right,transparent,var(--silver-light))}
.div-line.r{background:linear-gradient(to left,transparent,var(--silver-light))}
.div-gem{width:5px;height:5px;background:var(--amber-light);transform:rotate(45deg)}
.hero-h1{font-size:clamp(3.2rem,8vw,5.8rem);font-weight:300;font-style:italic;color:var(--off-white);line-height:1;animation:fadeUp 1.3s ease .65s both;margin-bottom:1.6rem}
.hero-sub{font-family:'Cinzel',serif;font-size:clamp(.8rem,1.6vw,1rem);letter-spacing:.35em;text-transform:uppercase;color:var(--amber-light);animation:fadeUp 1.3s ease .55s both;margin-bottom:.6rem}
.notify{display:flex;max-width:420px;width:100%;border:1px solid rgba(184,191,189,.4);animation:fadeUp 1.3s ease .9s both}
.notify input{flex:1;padding:.9rem 1.2rem;background:rgba(26,40,37,.8);border:none;outline:none;color:var(--off-white);font-family:'Cormorant Garamond',serif;font-size:1.05rem}
.notify input::placeholder{color:var(--silver-light)}
.notify button{padding:.9rem 1.6rem;background:var(--green-primary);border:none;color:var(--off-white);font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s;white-space:nowrap}
.notify button:hover{background:var(--amber);color:var(--off-white)}

.corner{position:absolute;width:55px;height:55px;opacity:.28}
.corner.tl{top:78px;left:28px}
.corner.tr{top:78px;right:28px;transform:scaleX(-1)}
.corner.bl{bottom:28px;left:28px;transform:scaleY(-1)}
.corner.br{bottom:28px;right:28px;transform:scale(-1,-1)}

section{position:relative;z-index:1}
.inner{max-width:1080px;margin:0 auto;padding:5.5rem 2rem}
.s-label{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.3em;text-transform:uppercase;color:var(--amber-light);display:flex;align-items:center;gap:.9rem;margin-bottom:1.3rem}
.s-label::before{content:'';display:block;width:28px;height:1px;background:var(--amber-light)}
.s-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:300;color:var(--off-white);line-height:1.15;margin-bottom:1.4rem}
.s-title em{font-style:italic;color:var(--off-white)}

#about{background:var(--green-deep);border-top:1px solid rgba(139,144,143,.15);border-bottom:1px solid rgba(139,144,143,.15)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center}
.about-text p{color:var(--silver-bright);font-size:1.2rem;font-weight:300;line-height:1.9;margin-bottom:1.2rem}
.about-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.8rem;padding:2.8rem;border:1px solid rgba(139,144,143,.25);position:relative}
.about-box::before,.about-box::after{content:'';position:absolute;width:14px;height:14px;border-top:1px solid var(--silver-light);border-left:1px solid var(--silver-light)}
.about-box::before{top:-1px;left:-1px}
.about-box::after{bottom:-1px;right:-1px;transform:rotate(180deg)}
.astat{text-align:center}
.astat-n{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:400;color:var(--amber-light);line-height:1.1;display:block}
/* Was .58rem text-muted — now 1rem silver-bright, readable without squinting */
.astat-l{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.18em;text-transform:uppercase;color:var(--silver-bright);display:block;margin-top:.5rem}
.adiv{width:1px;height:36px;background:rgba(184,191,189,.2)}

#menu{background:var(--warm-black)}
.menu-intro{color:var(--silver-bright);font-size:1.15rem;font-weight:300;max-width:540px;margin-bottom:3rem;line-height:1.85}
.tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid rgba(139,144,143,.25);margin-bottom:2.8rem}
.tab{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.15em;text-transform:uppercase;color:var(--silver-light);padding:.8rem 1.2rem;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;transition:color .3s,border-color .3s;white-space:nowrap;flex:1 1 auto;text-align:center}
.tab:hover{color:var(--off-white)}
.tab.on{color:var(--off-white);border-bottom-color:var(--amber-light)}
.panel{display:none}
.panel.on{display:grid;grid-template-columns:1fr 1fr;gap:0}
.mi{padding:1.6rem 1.8rem 1.6rem 0;border-bottom:1px solid rgba(139,144,143,.12);display:flex;justify-content:space-between;align-items:center;gap:1.5rem}
.mi:nth-child(even){padding-left:1.8rem;padding-right:0;border-left:1px solid rgba(139,144,143,.12)}
.mi-name{font-size:1.35rem;font-weight:500;color:var(--off-white);display:block;margin-bottom:.35rem}
/* Italic descriptions — scaled up for italic legibility */
.mi-desc{font-size:1.2rem;font-style:italic;color:var(--silver-bright);line-height:1.5;display:block}
.mi-price{font-family:'Cinzel',serif;font-size:1.05rem;color:var(--amber-light);white-space:nowrap;flex-shrink:0;align-self:center}
.menu-note{margin-top:2.5rem;font-style:italic;color:var(--silver-bright);text-align:center;font-size:1.05rem}

#visit{background:var(--green-deep);border-top:1px solid rgba(139,144,143,.15)}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.hrs{width:100%;border-collapse:collapse;margin-top:1.4rem}
.hrs td{padding:.65rem 0;font-size:1.05rem;border-bottom:1px solid rgba(139,144,143,.12)}
/* Hours day labels — now .82rem silver-bright, no more squinting */
.hrs td:first-child{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--silver-bright);width:42%}
.hrs td:last-child{color:var(--off-white);font-weight:300}
.hrs tr.off td:last-child{color:var(--silver-light)}
.contact-rows{margin-top:2.4rem;display:flex;flex-direction:column;gap:1rem}
.crow{display:flex;align-items:center;gap:1rem;color:var(--silver-bright);font-size:1.05rem}
/* Contact labels — now .82rem silver-bright */
.crow-lbl{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--silver-bright);min-width:88px}
.crow a{color:var(--silver-bright);text-decoration:none;transition:color .3s}
.crow a:hover{color:var(--amber-light)}
.map-ph{background:rgba(49,66,62,.2);border:1px solid rgba(139,144,143,.18);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;color:var(--silver-light);font-style:italic;font-size:1.05rem;position:relative;overflow:hidden}
.map-ph::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(139,144,143,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(139,144,143,.04) 1px,transparent 1px);background-size:28px 28px}
.map-ph span{position:relative;z-index:1;text-align:center;line-height:1.6}
.map-embed{width:100%;aspect-ratio:4/3;border:1px solid rgba(139,144,143,.15);filter:grayscale(1) invert(1) brightness(.6) sepia(.3)}
.map-leaflet{width:100%;aspect-ratio:1/1;border:1px solid rgba(139,144,143,.15)}
.map-leaflet .leaflet-control-attribution{background:rgba(26,40,37,.8);color:var(--silver);font-size:.65rem}
.map-leaflet .leaflet-control-attribution a{color:var(--silver-light)}
.map-leaflet .leaflet-control-zoom a{background:rgba(26,40,37,.85);color:var(--silver-light);border-color:rgba(139,144,143,.2)}
.map-leaflet .leaflet-control-zoom a:hover{background:rgba(49,66,62,.9);color:var(--off-white)}

footer{background:var(--warm-black);border-top:1px solid rgba(139,144,143,.15);padding:3rem 2rem;text-align:center}
.f-wordmark{height:38px;width:auto;opacity:.9;margin-bottom:.9rem;display:block;margin-left:auto;margin-right:auto}
.f-sub{font-style:italic;font-size:1.05rem;color:var(--silver-bright);margin-bottom:1.6rem}
.f-nav{display:flex;justify-content:center;gap:2rem;list-style:none;margin-bottom:1.8rem}
/* Footer nav — now .82rem silver-bright */
.f-nav a{font-family:'Cinzel',serif;font-size:.82rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver-bright);text-decoration:none;transition:color .3s}
.f-nav a:hover{color:var(--off-white)}
/* Copyright — now .9rem silver-light */
.f-copy{font-size:.9rem;color:var(--silver-light)}

.rev{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}
.rev.vis{opacity:1;transform:translateY(0)}

@media(max-width:900px){
  .visit-grid{gap:2.5rem}
  .inner{padding:4.5rem 2rem}
}
@media(max-width:700px){
  nav{padding:1rem 1.2rem}
  .nav-links{gap:1.2rem}
  .nav-links a{font-size:.8rem}
  .inner{padding:3.5rem 1.5rem}
  .about-grid,.visit-grid{grid-template-columns:1fr;gap:2rem}
  .map-leaflet,.map-ph{aspect-ratio:auto;height:260px}
  .panel.on{grid-template-columns:1fr}
  .mi{padding-left:0;padding-right:0}
  .mi:nth-child(even){padding-left:0;padding-right:0;border-left:none}
  .corner{display:none}
  .hero-svg{width:240px}
  .tab{flex:1 1 50%;padding:.55rem .75rem;font-size:.75rem;letter-spacing:.1em}
  .tab:first-child:nth-last-child(3),.tab:first-child:nth-last-child(3)~.tab{flex-basis:33%}
  .tab:first-child:nth-last-child(5),.tab:first-child:nth-last-child(5)~.tab,.tab:first-child:nth-last-child(6),.tab:first-child:nth-last-child(6)~.tab{flex-basis:33%}
  .tab:first-child:nth-last-child(7),.tab:first-child:nth-last-child(7)~.tab,.tab:first-child:nth-last-child(8),.tab:first-child:nth-last-child(8)~.tab{flex-basis:25%}
}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2.5rem;background:linear-gradient(to bottom,var(--nav-bg),transparent);transition:background .4s}
nav.scrolled{background:var(--nav-scrolled);border-bottom:1px solid rgba(139,144,143,.18)}
.nav-logo{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.25em;color:var(--silver-light);text-decoration:none;text-transform:uppercase}
.nav-wordmark{height:32px;width:auto;display:block;opacity:.92}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver-light);text-decoration:none;transition:color .3s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-3px;left:0;right:0;height:1px;background:var(--amber-light);transform:scaleX(0);transition:transform .3s}
.nav-links a:hover{color:var(--silver-bright)}
.nav-links a:hover::after{transform:scaleX(1)}

#hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;text-align:center;padding:6rem 2rem 4rem}
#hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 40%,var(--hero-glow),transparent 70%),radial-gradient(ellipse 100% 80% at 50% 60%,var(--hero-base),transparent)}
.deco-burst{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:650px;height:650px;opacity:.055;pointer-events:none}
.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;animation:fadeUp 1.2s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
.hero-svg{width:320px;max-width:82vw;margin-bottom:2.4rem;animation:fadeUp 1.3s ease .15s both;filter:drop-shadow(0 0 35px var(--hero-svg-shadow))}
.divider{display:flex;align-items:center;gap:.9rem;margin-bottom:2.2rem;animation:fadeUp 1.3s ease .35s both}
.div-line{width:70px;height:1px;background:linear-gradient(to right,transparent,var(--silver))}
.div-line.r{background:linear-gradient(to left,transparent,var(--silver))}
.div-gem{width:5px;height:5px;background:var(--amber-light);transform:rotate(45deg)}
.hero-h1{font-size:clamp(3.2rem,8vw,5.8rem);font-weight:300;font-style:italic;color:var(--silver-bright);line-height:1;animation:fadeUp 1.3s ease .65s both;margin-bottom:1.6rem}
.hero-sub{font-family:'Cinzel',serif;font-size:clamp(.8rem,1.6vw,.95rem);letter-spacing:.35em;text-transform:uppercase;color:var(--amber-light);animation:fadeUp 1.3s ease .55s both;margin-bottom:.6rem}
.notify{display:flex;max-width:400px;width:100%;border:1px solid rgba(139,144,143,.3);animation:fadeUp 1.3s ease .9s both}
.notify input{flex:1;padding:.85rem 1.2rem;background:rgba(26,40,37,.7);border:none;outline:none;color:var(--silver-light);font-family:'Cormorant Garamond',serif;font-size:1rem}
.notify input::placeholder{color:var(--silver)}
.notify button{padding:.85rem 1.4rem;background:var(--green-primary);border:none;color:var(--silver-light);font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background .3s,color .3s;white-space:nowrap}
.notify button:hover{background:var(--amber);color:var(--off-white)}

.corner{position:absolute;width:55px;height:55px;opacity:.28}
.corner.tl{top:78px;left:28px}
.corner.tr{top:78px;right:28px;transform:scaleX(-1)}
.corner.bl{bottom:28px;left:28px;transform:scaleY(-1)}
.corner.br{bottom:28px;right:28px;transform:scale(-1,-1)}

section{position:relative;z-index:1}
.inner{max-width:1080px;margin:0 auto;padding:5.5rem 2rem}
/* s-label: decorative, amber-light has ~4.6:1 on both backgrounds — keep color, bump size */
.s-label{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.35em;text-transform:uppercase;color:var(--amber-light);display:flex;align-items:center;gap:.9rem;margin-bottom:1.3rem}
.s-label::before{content:'';display:block;width:28px;height:1px;background:var(--amber-light)}
.s-title{font-family:'Cormorant Garamond',serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:300;color:var(--silver-bright);line-height:1.15;margin-bottom:1.4rem}
.s-title em{font-style:italic;color:var(--off-white)}

#about{background:var(--green-deep);border-top:1px solid rgba(139,144,143,.12);border-bottom:1px solid rgba(139,144,143,.12)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center}
.about-text p{color:var(--silver-light);font-size:1.15rem;font-weight:300;line-height:1.9;margin-bottom:1.2rem}
.about-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.8rem;padding:2.8rem;border:1px solid rgba(139,144,143,.2);position:relative}
.about-box::before,.about-box::after{content:'';position:absolute;width:14px;height:14px;border-top:1px solid var(--silver);border-left:1px solid var(--silver)}
.about-box::before{top:-1px;left:-1px}
.about-box::after{bottom:-1px;right:-1px;transform:rotate(180deg)}
.astat{text-align:center}
/* astat-n: large display text, amber-light ~4.6:1 on green-deep — fine */
.astat-n{font-family:'Cormorant Garamond',serif;font-size:1.8rem;font-weight:300;color:var(--amber-light);line-height:1.1;display:block}
/* astat-l: was .58rem text-muted — bumped to .8rem silver-light */
.astat-l{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver-light);display:block;margin-top:.4rem}
.adiv{width:1px;height:36px;background:rgba(139,144,143,.2)}

#menu{background:var(--warm-black)}
.menu-intro{color:var(--silver-light);font-size:1.1rem;font-weight:300;max-width:500px;margin-bottom:3rem;line-height:1.8}
.tabs{display:flex;flex-wrap:wrap;border-bottom:1px solid rgba(139,144,143,.2);margin-bottom:2.8rem}
/* tabs: bumped to .75rem silver-light — passes AA comfortably */
.tab{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--silver-light);padding:.7rem 1.2rem;cursor:pointer;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;transition:color .3s,border-color .3s;white-space:nowrap;flex:1 1 auto;text-align:center}
.tab:hover{color:var(--silver-bright)}
.tab.on{color:var(--silver-bright);border-bottom-color:var(--amber-light)}
.panel{display:none}
.panel.on{display:grid;grid-template-columns:1fr 1fr;gap:0}
.mi{padding:1.5rem 1.5rem 1.5rem 0;border-bottom:1px solid rgba(139,144,143,.1);display:flex;justify-content:space-between;align-items:center;gap:1.5rem}
.mi:nth-child(even){padding-left:1.5rem;padding-right:0;border-left:1px solid rgba(139,144,143,.1)}
.mi-name{font-size:1.35rem;font-weight:500;color:var(--silver-bright);display:block;margin-bottom:.3rem}
/* mi-desc: scaled up for italic legibility */
.mi-desc{font-size:1.2rem;font-style:italic;color:var(--silver-light);line-height:1.5;display:block}
/* mi-price: scaled up to match name/desc hierarchy */
.mi-price{font-family:'Cinzel',serif;font-size:1.05rem;color:var(--amber-light);white-space:nowrap;flex-shrink:0;align-self:center}
.menu-note{margin-top:2.5rem;font-style:italic;color:var(--silver-light);text-align:center;font-size:1.15rem}

#visit{background:var(--green-deep);border-top:1px solid rgba(139,144,143,.12)}
.visit-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.hrs{width:100%;border-collapse:collapse;margin-top:1.4rem}
.hrs td{padding:.6rem 0;font-size:1rem;border-bottom:1px solid rgba(139,144,143,.12)}
/* hrs day labels: bumped to .75rem silver-light */
.hrs td:first-child{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--silver-light);width:42%}
.hrs td:last-child{color:var(--silver-bright);font-weight:300}
.hrs tr.off td:last-child{color:var(--silver-light)}
.contact-rows{margin-top:2.2rem;display:flex;flex-direction:column;gap:.9rem}
.crow{display:flex;align-items:center;gap:1rem;color:var(--silver-light);font-size:1rem}
/* crow-lbl: bumped to .75rem silver-light */
.crow-lbl{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--silver-light);min-width:80px}
.crow a{color:var(--silver-light);text-decoration:none;transition:color .3s}
.crow a:hover{color:var(--amber-light)}
.map-ph{background:rgba(49,66,62,.18);border:1px solid rgba(139,144,143,.15);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem;color:var(--silver-light);font-style:italic;font-size:1rem;position:relative;overflow:hidden}
.map-ph::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(139,144,143,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(139,144,143,.04) 1px,transparent 1px);background-size:28px 28px}
.map-ph span{position:relative;z-index:1;text-align:center;line-height:1.6}
.map-embed{width:100%;aspect-ratio:4/3;border:1px solid rgba(139,144,143,.15);filter:grayscale(1) invert(1) brightness(.6) sepia(.3)}
.map-leaflet{width:100%;aspect-ratio:1/1;border:1px solid rgba(139,144,143,.15)}
.map-leaflet .leaflet-control-attribution{background:rgba(26,40,37,.8);color:var(--silver);font-size:.65rem}
.map-leaflet .leaflet-control-attribution a{color:var(--silver-light)}
.map-leaflet .leaflet-control-zoom a{background:rgba(26,40,37,.85);color:var(--silver-light);border-color:rgba(139,144,143,.2)}
.map-leaflet .leaflet-control-zoom a:hover{background:rgba(49,66,62,.9);color:var(--off-white)}
.map-leaflet .leaflet-control-attribution a{color:var(--silver-light)}

footer{background:var(--warm-black);border-top:1px solid rgba(139,144,143,.12);padding:2.8rem 2rem;text-align:center}
.f-wordmark{height:36px;width:auto;opacity:.88;margin-bottom:.8rem;display:block;margin-left:auto;margin-right:auto}
.f-sub{font-style:italic;font-size:1rem;color:var(--silver-light);margin-bottom:1.6rem}
.f-nav{display:flex;justify-content:center;gap:1.8rem;list-style:none;margin-bottom:1.8rem}
/* f-nav links: bumped to .75rem silver-light */
.f-nav a{font-family:'Cinzel',serif;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;color:var(--silver-light);text-decoration:none;transition:color .3s}
.f-nav a:hover{color:var(--silver-bright)}
/* f-copy: bumped to .85rem silver-light */
.f-copy{font-size:.9rem;color:var(--silver-light)}

.rev{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}
.rev.vis{opacity:1;transform:translateY(0)}

@media(max-width:900px){
  .visit-grid{gap:2.5rem}
  .inner{padding:4.5rem 2rem}
}
@media(max-width:700px){
  nav{padding:1rem 1.2rem}
  .nav-links{gap:1.2rem}
  .nav-links a{font-size:.8rem}
  .inner{padding:3.5rem 1.5rem}
  .about-grid,.visit-grid{grid-template-columns:1fr;gap:2rem}
  .map-leaflet,.map-ph{aspect-ratio:auto;height:260px}
  .panel.on{grid-template-columns:1fr}
  .mi{padding-left:0;padding-right:0}
  .mi:nth-child(even){padding-left:0;padding-right:0;border-left:none}
  .corner{display:none}
  .hero-svg{width:240px}
  .tab{flex:1 1 50%;padding:.55rem .75rem;font-size:.75rem;letter-spacing:.1em}
  .tab:first-child:nth-last-child(3),.tab:first-child:nth-last-child(3)~.tab{flex-basis:33%}
  .tab:first-child:nth-last-child(5),.tab:first-child:nth-last-child(5)~.tab,.tab:first-child:nth-last-child(6),.tab:first-child:nth-last-child(6)~.tab{flex-basis:33%}
  .tab:first-child:nth-last-child(7),.tab:first-child:nth-last-child(7)~.tab,.tab:first-child:nth-last-child(8),.tab:first-child:nth-last-child(8)~.tab{flex-basis:25%}
}