:root{--ink:#0b1710;--forest:#123c28;--lime:#b7ef52;--coral:#ff674d;--cream:#f6f0e4;--yellow:#f5c84c;--blue:#68c7df;--white:#fff;--sans:"DM Sans",sans-serif;--display:"Montserrat",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);overflow-x:hidden}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.section{padding:clamp(5rem,9vw,9rem) max(5vw,calc((100vw - 1320px)/2))}.eyebrow{font:800 .73rem/1 var(--display);letter-spacing:.2em;margin-bottom:1.5rem}.eyebrow-light{color:var(--lime)}h1,h2{font-family:var(--display);font-weight:900;letter-spacing:-.055em;line-height:.9;margin:0;text-transform:uppercase}h1{font-size:clamp(3.5rem,8vw,8.6rem)}h2{font-size:clamp(3.2rem,6.8vw,7rem)}h1 em{color:var(--coral);font-style:normal}.site-header{align-items:center;color:#fff;display:flex;height:88px;justify-content:space-between;left:0;padding:0 4vw;position:fixed;right:0;top:0;transition:.35s;z-index:20}.site-header.scrolled{background:rgba(7,17,11,.95);height:72px;backdrop-filter:blur(10px)}.header-brand{opacity:0;transition:.3s}.scrolled .header-brand{opacity:1}.header-brand img{height:43px;width:110px;object-fit:contain}.main-nav{align-items:center;display:flex;gap:2rem;font-size:.83rem;font-weight:700}.main-nav a{transition:.2s}.main-nav a:hover{color:var(--lime)}.nav-pill{border:1px solid rgba(255,255,255,.65);border-radius:50px;padding:.65rem 1rem}.menu-toggle{background:none;border:0;display:none;height:44px;width:44px}.menu-toggle span{background:white;display:block;height:2px;margin:7px;width:25px}.hero{align-items:center;background:url("assets/courtyard-wide.jpg") center 49%/cover no-repeat;display:flex;height:100svh;justify-content:center;min-height:620px;position:relative}.hero-shade{background:linear-gradient(180deg,rgba(5,12,8,.36),rgba(5,12,8,.05) 42%,rgba(5,12,8,.5));inset:0;position:absolute}.hero-logo{filter:drop-shadow(0 5px 25px rgba(0,0,0,.35));position:relative;width:min(68vw,760px)}.scroll-cue{align-items:center;bottom:28px;color:white;display:flex;flex-direction:column;font:700 .65rem/1 var(--display);gap:.55rem;letter-spacing:.18em;position:absolute}.scroll-cue svg{animation:bounce 1.7s infinite;fill:none;height:30px;stroke:currentColor;stroke-width:1.5;width:30px}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}.intro{text-align:center}.intro h1{font-size:clamp(3.3rem,7.3vw,7.4rem)}.intro-copy{font-size:clamp(1.1rem,1.6vw,1.4rem);line-height:1.65;margin:2.5rem auto;max-width:760px}.intro-actions{align-items:center;display:flex;gap:2rem;justify-content:center}.button{border:0;border-radius:100px;cursor:pointer;display:inline-flex;font:800 .82rem/1 var(--display);justify-content:center;letter-spacing:.04em;padding:1.15rem 1.6rem;text-transform:uppercase;transition:.2s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:white}.button-coral{background:var(--coral);color:var(--ink);justify-content:space-between;width:100%}.button-outline{border:2px solid var(--ink)}.text-link{font-weight:600}.text-link span{color:#c33f2f}.experience{background:var(--forest);color:white;display:grid;gap:clamp(3rem,7vw,8rem);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.photo-card{position:relative}.photo-card img{height:100%;min-height:620px;object-fit:cover;width:100%}.photo-tag{background:var(--lime);bottom:-1rem;color:var(--ink);font:800 .72rem var(--display);letter-spacing:.12em;padding:1rem 1.3rem;position:absolute;right:-1rem;transform:rotate(-2deg)}.experience-copy{align-self:center}.experience-copy>p{font-size:1.15rem;line-height:1.65;margin:2rem 0 3rem;max-width:560px}.feature-list>div{border-top:1px solid rgba(255,255,255,.2);display:grid;gap:1rem;grid-template-columns:35px 90px 1fr;padding:1.4rem 0}.feature-list span{color:var(--lime);font:700 .75rem var(--display)}.feature-list h3{font:800 1.15rem var(--display);margin:0;text-transform:uppercase}.feature-list p{color:#cbd7cf;margin:0}.marquee{background:var(--lime);font:900 clamp(1.8rem,4vw,4rem)/1 var(--display);overflow:hidden;padding:1.3rem 0;white-space:nowrap}.marquee div{animation:slide 24s linear infinite;width:max-content}.marquee i{color:var(--coral);font-style:normal;margin:0 .6em}@keyframes slide{to{transform:translateX(-50%)}}.visit-heading{align-items:end;display:flex;justify-content:space-between;margin-bottom:3rem}.visit-grid{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.info-card{min-height:390px;padding:2rem;position:relative}.info-card.green{background:var(--lime)}.info-card.coral{background:var(--coral)}.info-card.cream{background:white;border:1px solid #ddd4c6}.card-number{font:800 .7rem var(--display);position:absolute;right:2rem;top:2rem}.info-card h3{font:900 2rem var(--display);margin:3rem 0 2rem;text-transform:uppercase}.info-card small{bottom:2rem;left:2rem;opacity:.67;position:absolute}.info-card #hoursList p{border-bottom:1px solid rgba(11,23,16,.2);display:flex;justify-content:space-between;margin:0;padding:.55rem 0}.big-info{font:900 clamp(5rem,8vw,8rem)/1 var(--display);letter-spacing:-.08em;margin:0}.address{font-size:1.5rem;line-height:1.5}.card-link{bottom:2rem;font-weight:800;position:absolute}.atmosphere{height:min(72vw,820px);position:relative}.atmosphere>img{height:100%;object-fit:cover;width:100%}.atmosphere:after{background:linear-gradient(90deg,rgba(4,8,5,.72),transparent 65%);content:"";inset:0;position:absolute}.atmosphere-overlay{color:white;left:8vw;position:absolute;top:50%;transform:translateY(-50%);z-index:2}.atmosphere-overlay p{font-size:1.3rem;margin:0 0 1rem}.section-heading-row{align-items:end;display:flex;justify-content:space-between;margin-bottom:3rem}.section-heading-row h2{font-size:clamp(3rem,5vw,5.5rem)}.section-heading-row>p{font-size:1.1rem;line-height:1.6;max-width:420px}.product-grid{display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.product-image{align-items:center;aspect-ratio:4/5;display:flex;flex-direction:column;gap:2rem;justify-content:center;overflow:hidden;padding:2rem;position:relative}.product-image>img:not(.product-logo){height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.product-green{background:#247650}.product-coral{background:var(--coral)}.product-yellow{background:var(--yellow)}.product-blue{background:var(--blue)}.product-logo{max-height:90px;opacity:.92;object-fit:contain}.product-image>span{color:white;font:800 .65rem var(--display);letter-spacing:.15em}.product-info{padding:1rem .25rem}.product-info h3{font-size:1rem;margin:0}.product-info p{margin:.35rem 0}.product-info>span{font-size:.8rem;font-weight:700;opacity:0;transition:.2s}.product-card:hover .product-info>span{opacity:1}.reserve{background:var(--ink);color:white;display:grid;gap:8vw;grid-template-columns:.8fr 1.2fr}.reserve-copy>p{color:#c6d0c8;font-size:1.1rem;line-height:1.7;margin:2rem 0}.reserve-note{border-left:3px solid var(--lime);color:#c6d0c8;padding-left:1rem}.form-card{background:var(--cream);color:var(--ink);padding:clamp(1.5rem,4vw,3rem)}label{font-size:.73rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}input,select,textarea{background:transparent;border:0;border-bottom:1px solid #9d9b91;border-radius:0;color:var(--ink);font:500 1rem var(--sans);margin:.5rem 0 1.5rem;outline:none;padding:.75rem 0;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--coral)}.field-row{display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.hidden{display:none}.social-grid{display:grid;gap:1rem;grid-template-columns:1.2fr .8fr .8fr}.social-grid a{aspect-ratio:1/1;overflow:hidden;position:relative}.social-grid img{height:100%;object-fit:cover;transition:.5s;width:100%}.social-grid a:hover img{transform:scale(1.04)}.social-grid span{background:white;border-radius:50%;padding:.7rem;position:absolute;right:1rem;top:1rem}.feed-note{color:#777;font-size:.78rem}.newsletter{align-items:center;background:var(--coral);display:grid;gap:6vw;grid-template-columns:1fr 1fr}.newsletter h2{font-size:clamp(3rem,5vw,5rem)}.newsletter p{font-size:1.05rem}.newsletter-form{border-bottom:2px solid var(--ink);display:flex}.newsletter-form input{border:0;font-size:1.2rem;margin:0;padding:1rem .2rem}.newsletter-form button{background:none;border:0;font:800 .78rem var(--display);white-space:nowrap}.connect{display:grid;gap:10vw;grid-template-columns:1fr 1fr}.contact-intro h2{font-size:clamp(3rem,5vw,5.7rem)}.contact-intro p{line-height:1.6}.contact-intro>a{font-weight:800;text-decoration:underline}.contact-form{background:white;padding:2rem}footer{background:#07110b;color:white;display:grid;gap:3rem;grid-template-columns:1.2fr 1fr 1fr;padding:5rem max(5vw,calc((100vw - 1320px)/2)) 2rem}footer>img{max-width:220px}.footer-links{display:grid;gap:.7rem}.copyright{border-top:1px solid rgba(255,255,255,.15);font-size:.72rem;grid-column:1/-1;margin:2rem 0 0;padding-top:2rem}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}
@media(max-width:800px){.site-header{height:70px;padding:0 1rem}.header-brand{opacity:1}.header-brand img{height:36px;width:95px}.menu-toggle{display:block;position:relative;z-index:2}.main-nav{align-items:flex-start;background:var(--ink);display:flex;flex-direction:column;font:800 1.8rem var(--display);inset:0;padding:7rem 2rem;position:fixed;transform:translateX(100%);transition:.35s}.main-nav.open{transform:none}.nav-pill{font-size:1rem}.hero{background-position:63% center}.hero-logo{width:82vw}.scroll-cue span{display:none}.section{padding:5rem 1.2rem}.intro h1{font-size:clamp(3rem,13vw,4.8rem)}.intro-actions{align-items:stretch;flex-direction:column}.experience{grid-template-columns:1fr}.photo-card img{min-height:480px}.experience-copy{padding-top:1rem}.feature-list>div{grid-template-columns:25px 75px 1fr}.visit-grid{grid-template-columns:1fr}.info-card{min-height:340px}.atmosphere{height:115vw}.atmosphere>img{object-position:62% center}.section-heading-row{align-items:flex-start;flex-direction:column;gap:1.5rem}.product-grid{grid-template-columns:repeat(2,1fr)}.product-image{padding:1rem}.product-logo{max-height:55px}.reserve,.newsletter,.connect{grid-template-columns:1fr}.field-row{gap:0;grid-template-columns:1fr}.social-grid{grid-template-columns:1fr 1fr}.social-grid a:first-child{grid-column:1/-1}.newsletter-form{margin-top:1rem}.newsletter-form button span{display:none}footer{grid-template-columns:1fr;padding:4rem 1.2rem 2rem}.copyright{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue svg,.marquee div{animation:none}*{transition:none!important}}
.drink-pricing{align-items:center;background:var(--forest);color:white;display:grid;gap:4rem;grid-template-columns:.8fr 1.2fr;margin-top:1rem;padding:2.5rem;position:relative}.drink-pricing .card-number{color:var(--lime)}.drink-pricing .eyebrow{color:var(--lime);margin-bottom:.85rem}.drink-pricing h3{font:900 clamp(1.8rem,3vw,3rem)/1 var(--display);margin:0;text-transform:uppercase}.drink-pricing>p{font-size:clamp(1.1rem,1.7vw,1.4rem);line-height:1.55;margin:0;max-width:700px}.drink-pricing strong{color:var(--lime)}
.food-truck{align-items:center;background:var(--yellow);display:grid;gap:clamp(3rem,8vw,8rem);grid-template-columns:minmax(220px,.65fr) minmax(0,1.35fr);overflow:hidden}.food-truck-badge{align-items:center;aspect-ratio:1;background:var(--coral);border-radius:50%;display:flex;font:900 clamp(1.7rem,3.4vw,3.5rem)/.95 var(--display);justify-content:center;letter-spacing:-.04em;text-align:center;transform:rotate(-5deg)}.food-truck-copy h2{font-size:clamp(3.1rem,6vw,6.4rem)}.food-truck-copy h2 em{color:var(--forest);font-style:normal}.food-truck-copy p{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.65;margin:2rem 0;max-width:720px}
@media(max-width:800px){.drink-pricing{gap:1.5rem;grid-template-columns:1fr;padding:2rem}.drink-pricing .card-number{position:static;display:block;margin-bottom:2rem}}
@media(max-width:800px){.food-truck{grid-template-columns:1fr}.food-truck-badge{justify-self:center;max-width:260px;width:72vw}}
.submission-notice{align-items:center;background:var(--lime);bottom:1.25rem;box-shadow:0 12px 40px rgba(0,0,0,.25);display:flex;font-weight:700;gap:1rem;justify-content:space-between;left:50%;max-width:min(92vw,680px);padding:1rem 1.25rem;position:fixed;transform:translateX(-50%);width:max-content;z-index:50}.submission-notice button{background:none;border:0;cursor:pointer;font-size:1.6rem;line-height:1}
.instagram-feed{min-height:340px;width:100%}
.social-heading{align-items:flex-end;display:flex;justify-content:space-between;margin-bottom:3rem}.social-heading h2{font-size:clamp(3rem,6vw,6.5rem)}.social-follow{align-items:center;display:flex;gap:1.25rem}.social-arrow{font-size:clamp(2.5rem,5vw,5rem);font-weight:300;line-height:1}.social-icons{display:flex;gap:.65rem}.social-icons a{align-items:center;background:var(--ink);border-radius:50%;color:white;display:flex;height:50px;justify-content:center;transition:.2s;width:50px}.social-icons a:hover{background:var(--coral);color:var(--ink);transform:translateY(-3px)}.social-icons svg{fill:none;height:23px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:23px}.social-icons .icon-fill{fill:currentColor;stroke:none}.social-grid-four{gap:0;grid-template-columns:repeat(4,1fr)}.gallery-item{aspect-ratio:1;background:none;border:0;cursor:zoom-in;overflow:hidden;padding:0;position:relative}.gallery-item img{height:100%;object-fit:cover;transition:transform .45s;width:100%}.gallery-item:hover img,.gallery-item:focus-visible img{transform:scale(1.06)}.gallery-item span{background:var(--lime);bottom:1rem;font:800 .65rem var(--display);letter-spacing:.12em;opacity:0;padding:.65rem .8rem;position:absolute;right:1rem;text-transform:uppercase;transition:.2s}.gallery-item:hover span,.gallery-item:focus-visible span{opacity:1}.lightbox{background:transparent;border:0;height:100%;margin:auto;max-height:none;max-width:none;padding:clamp(1rem,4vw,3rem);width:100%}.lightbox::backdrop{background:rgba(5,12,8,.92);backdrop-filter:blur(8px)}.lightbox img{height:100%;margin:auto;max-height:calc(100vh - 2rem);object-fit:contain;width:100%}.lightbox-close{align-items:center;background:var(--lime);border:0;border-radius:50%;cursor:pointer;display:flex;font-size:2rem;height:48px;justify-content:center;position:fixed;right:1.25rem;top:1.25rem;width:48px;z-index:2}
@media(max-width:800px){.social-heading{align-items:flex-start;flex-direction:column;gap:1.75rem}.social-follow{align-self:flex-end}.social-arrow{transform:rotate(45deg)}.social-grid-four{grid-template-columns:repeat(2,1fr)}.gallery-item span{display:none}}
.social-heading{align-items:center;gap:1.5rem;justify-content:flex-start}.social-follow{gap:0}
@media(max-width:800px){.social-heading{align-items:flex-start;gap:.9rem}.social-follow{align-self:flex-start}}
@media(max-width:800px){.social-heading{align-items:center;text-align:center}.social-follow{align-self:center}}
