/* ===================================================================
   20Twenty Restaurant & Bar - Main Stylesheet
   =================================================================== */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

:root{--cream:#FAF6EE;--cream-dark:#ECE8D9;--brown:#341210;--brown-light:#5A3A2E;--green:#376F51;--green-hover:#2B5940;--gold:#C5A258;--gold-light:#D4B76A;--orange:#D55E13;--orange-hover:#C04C03;--text-muted:#8A826E;--border:#D8D0B3;--white:#FFFFFF;--black:#1A1A1A;--font-heading:'Oswald',sans-serif;--font-body:'Inter',sans-serif;--font-accent:'Playfair Display',serif;--max-width:1290px;--content-width:960px}

html{scroll-behavior:smooth;font-size:16px}

body{font-family:var(--font-body);color:var(--brown);background:var(--cream);line-height:1.7;-webkit-font-smoothing:antialiased}

img{max-width:100%;height:auto;display:block}

a{text-decoration:none;color:inherit;transition:color 0.3s}

ul{list-style:none}

.container{max-width:var(--max-width);margin:0 auto;padding:0 2rem}

.container--narrow{max-width:var(--content-width);margin:0 auto;padding:0 2rem}

h1,h2,h3,h4,h5{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0.05em;line-height:1.2}

h1{font-size:clamp(2.4rem,5vw,4rem)}

h2{font-size:clamp(1.8rem,3.5vw,2.8rem)}

h3{font-size:clamp(1.2rem,2vw,1.6rem)}

h4{font-size:1.1rem}

.h3-visual{font-size:clamp(1.2rem,2vw,1.6rem)}

.h4-visual{font-size:1.1rem}

.kicker{font-family:var(--font-accent);font-style:italic;color:#7A5F1E;font-size:1.05rem;letter-spacing:0.02em;margin-bottom:0.5rem;font-weight:400}

p{margin-bottom:1rem;color:var(--brown-light);font-size:1rem}

.hero__tagline{color:var(--brown);font-family:var(--font-heading);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:600;letter-spacing:0.04em;margin:0}

.btn{display:inline-block;padding:0.85rem 2.2rem;font-family:var(--font-heading);font-size:0.9rem;text-transform:uppercase;letter-spacing:0.12em;border-radius:0;transition:all 0.3s ease;cursor:pointer;border:none;font-weight:500}

.btn--primary{background:var(--green);color:var(--white)}

.btn--primary:hover{background:var(--green-hover)}

.btn--outline{background:transparent;color:var(--brown);border:2px solid var(--brown)}

.btn--outline:hover{background:var(--brown);color:var(--cream)}

.btn--gold{background:var(--gold);color:var(--white)}

.btn--gold:hover{background:var(--gold-light)}

.btn--orange{background:var(--orange);color:var(--white)}

.btn--orange:hover{background:var(--orange-hover)}

.top-bar{background:var(--brown);color:var(--cream);padding:0.5rem 0;font-size:0.82rem;letter-spacing:0.03em}

.top-bar .container{display:flex;justify-content:space-between;align-items:center}

.top-bar a{color:var(--gold);text-decoration:none}

.top-bar a:hover{color:var(--gold-light)}

.top-bar a[href^="tel"]{text-decoration:none}

.top-bar a[href^="tel"] i,.top-bar a[href^="tel"] svg{margin-right:0.3em}

.top-bar__social a{margin-left:1rem;font-size:0.9rem}

.top-bar__hours{color:#bbb}

.header{background:var(--cream);position:sticky;top:0;z-index:1000;border-bottom:1px solid var(--border);transition:box-shadow 0.3s}

.header.scrolled{box-shadow:0 2px 20px rgba(0,0,0,0.08)}

.header .container{display:flex;align-items:center;justify-content:space-between;padding-top:0.6rem;padding-bottom:0.6rem}

.logo{display:flex;align-items:center;gap:0.7rem}

.logo img{height:52px;width:auto}

.logo-text{font-family:var(--font-heading);font-size:1.3rem;color:var(--brown);text-transform:uppercase;letter-spacing:0.08em;line-height:1.1}

.logo-text span{display:block;font-size:0.65rem;letter-spacing:0.2em;color:#6B6350}

.footer .logo-text span{color:#D2C8C2}

.nav{display:flex;align-items:center;gap:0}

.nav__list{display:flex;gap:0;align-items:center}

.nav__item{position:relative}

.nav__link{display:block;padding:1.2rem 1rem;font-family:var(--font-heading);font-size:0.85rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--brown);transition:color 0.3s}

.nav__link:hover{color:var(--green)}

.nav__item:hover .dropdown{opacity:1;visibility:visible;transform:translateY(0)}

.dropdown{position:absolute;top:100%;left:0;background:var(--white);min-width:220px;box-shadow:0 8px 30px rgba(0,0,0,0.1);opacity:0;visibility:hidden;transform:translateY(8px);transition:all 0.3s ease;z-index:100;border-top:3px solid var(--green)}

.dropdown a{display:block;padding:0.7rem 1.3rem;font-size:0.85rem;color:var(--brown);border-bottom:1px solid #f0ece3;transition:all 0.2s}

.dropdown a:hover{background:var(--cream);color:var(--green);padding-left:1.6rem}

.nav__cta{margin-left:1.2rem;padding:0.7rem 1.6rem;background:var(--green);color:var(--white) !important;font-family:var(--font-heading);font-size:0.82rem;text-transform:uppercase;letter-spacing:0.1em;transition:background 0.3s}

.nav__cta:hover{background:var(--green-hover)}

.nav-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:0.5rem;background:none;border:none}

.nav-toggle span{width:26px;height:2px;background:var(--brown);transition:all 0.3s}

.hero{position:relative;min-height:85vh;display:flex;align-items:center;overflow:hidden}

.hero__bg{position:absolute;inset:-5%;z-index:0}

.hero__bg img{width:100%;height:100%;object-fit:cover;will-change:transform}

.hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,26,26,0.78) 0%,rgba(52,18,16,0.62) 50%,rgba(26,26,26,0.70) 100%);z-index:1}

.hero__content{text-shadow:0 2px 12px rgba(0,0,0,0.5)}

.hero__content{position:relative;z-index:2;max-width:720px;padding:4rem 2rem;margin-left:5%}

.hero h1{color:var(--white);margin-bottom:1.2rem}

.hero p{color:rgba(255,255,255,0.88);font-size:1.1rem;line-height:1.8;margin-bottom:2rem}

.hero__buttons{display:flex;gap:1rem;flex-wrap:wrap}

.section{padding:5rem 0}

.section--cream{background:var(--cream)}

.section--tan{background:var(--cream-dark)}

.section--dark{background:var(--brown);color:var(--cream)}

.section--dark p{color:rgba(250,246,238,0.75)}

.section--dark h2,.section--dark h3{color:var(--cream)}

.section__header{text-align:center;margin-bottom:3.5rem}

.section__header h2{margin-bottom:0.8rem}

.section__header p{max-width:600px;margin:0 auto}

.callouts{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem}

.callout{text-align:center;padding:2rem 1.5rem}

.callout__icon{width:70px;height:70px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--cream-dark);font-size:1.8rem}

.callout__img{width:100%;height:220px;object-fit:cover;margin-bottom:1.5rem;border-radius:2px}

.callout h3{margin-bottom:0.8rem;color:var(--brown)}

.callout p{font-size:0.95rem}

.split{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;min-height:500px}

.split__image{overflow:hidden}

.split__image img{width:100%;height:100%;object-fit:cover}

.split__content{display:flex;flex-direction:column;justify-content:center;padding:4rem 3.5rem}

.split__content h2{margin-bottom:1.2rem}

.split__content p{margin-bottom:1rem}

.split__content .btn{margin-top:1rem;align-self:flex-start}

.features{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}

.feature{text-align:center;padding:2rem 1rem}

.feature__icon{font-size:2.2rem;margin-bottom:1.2rem;color:var(--gold)}

.feature h4{margin-bottom:0.7rem;font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0.06em}

.feature p{font-size:0.9rem;line-height:1.6}

.menu-preview{display:grid;grid-template-columns:1fr 1fr;gap:3rem}

.menu-category h3{font-size:1.4rem;margin-bottom:1.8rem;padding-bottom:0.8rem;border-bottom:2px solid var(--gold);color:var(--brown)}

.menu-item{display:flex;gap:1.2rem;margin-bottom:1.8rem;align-items:flex-start}

.menu-item__img{width:90px;height:90px;object-fit:cover;border-radius:2px;flex-shrink:0}

.menu-item__info{flex:1}

.menu-item__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:0.3rem}

.menu-item__name{font-family:var(--font-heading);font-size:1rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--brown)}

.menu-item__price{font-family:var(--font-heading);font-size:1rem;color:var(--green);white-space:nowrap;margin-left:1rem}

.menu-item__desc{font-size:0.88rem;color:#6B6454;line-height:1.5}

.events-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}

.event-card{background:var(--white);overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.06);transition:transform 0.3s,box-shadow 0.3s}

.event-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.1)}

.event-card__img{width:100%;height:240px;object-fit:cover}

.event-card__body{padding:1.5rem}

.event-card__date{font-family:var(--font-heading);font-size:0.78rem;text-transform:uppercase;letter-spacing:0.1em;color:var(--green);margin-bottom:0.5rem}

.event-card__title{font-family:var(--font-heading);font-size:1.15rem;text-transform:uppercase;margin-bottom:0.5rem}

.event-card__desc{font-size:0.9rem;color:#6B6454}

.banner{background:var(--green);color:var(--white);padding:0.55rem 0;font-family:var(--font-heading);font-size:0.82rem;letter-spacing:0.12em;text-transform:uppercase;overflow:hidden;white-space:nowrap;position:relative}

.banner__inner{display:inline-block;animation:marquee 25s linear infinite;padding-left:100%}

.banner__inner span{color:#F5E6B8}

.banner__inner i{margin:0 1.5rem;opacity:0.5;font-size:0.6em}

@keyframes marquee{0%{transform:translateX(0)}
100%{transform:translateX(-100%)}
}

.banner:hover .banner__inner{animation-play-state:paused}



@media (prefers-reduced-motion:reduce) {
  .banner__inner{animation:none;padding-left:0;text-align:center}

}

.parallax-section{position:relative;overflow:hidden}

.parallax-section__bg{position:absolute;inset:-20%;z-index:0;will-change:transform}

.parallax-section__bg img{width:100%;height:100%;object-fit:cover}

.gallery-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;overflow:hidden}

.gallery-strip__item{position:relative;overflow:hidden;aspect-ratio:4/3}

.gallery-strip__item img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s ease}

.gallery-strip__item:hover img{transform:scale(1.05)}

.gallery-strip__caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,0.7));padding:2rem 1.5rem 1.2rem;color:var(--white)}

.gallery-strip__caption h4{font-family:var(--font-heading);font-size:1.1rem;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:0.25rem}

.gallery-strip__caption p{color:rgba(255,255,255,0.8);font-size:0.85rem;margin:0}

.footer{background:var(--brown);color:var(--cream);padding:4rem 0 0}

.footer__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}

.footer h4{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0.1em;font-size:1rem;margin-bottom:1.5rem;color:var(--gold)}

.footer p{color:#B5A6A0;font-size:0.9rem;margin-bottom:0.5rem}

.footer a{color:#B5A6A0;transition:color 0.3s}

.footer a:hover{color:var(--gold)}

.footer__links li{margin-bottom:0.6rem}

.footer__links a{font-size:0.9rem}

.footer__hours td{padding:0.25rem 0;font-size:0.9rem;color:#B5A6A0}

.footer__hours td:first-child{padding-right:1.5rem;color:#D2C8C2}

.footer__social{display:flex;gap:1rem;margin-top:1rem}

.footer__social a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid rgba(250,246,238,0.2);border-radius:50%;color:var(--cream);transition:all 0.3s}

.footer__social a:hover{background:var(--green);border-color:var(--green)}

.footer__bottom{border-top:1px solid rgba(250,246,238,0.1);padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center;font-size:0.82rem;color:#BFB2AB}

.footer__bottom a{color:#BFB2AB}

.footer__bottom a:hover{color:var(--gold)}

.page-header{background:var(--brown);color:var(--white);padding:6rem 0 4rem;text-align:center;position:relative;overflow:hidden}

.page-header::before{content:'';position:absolute;inset:0;background:url('../images/6.jpg') center/cover;opacity:0.15}

.page-header h1{position:relative;z-index:1;margin-bottom:0.5rem}

.page-header p{position:relative;z-index:1;color:rgba(255,255,255,0.7);max-width:600px;margin:0 auto}

.perfect-for-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}

.perfect-for-item{text-align:center;padding:2rem 1rem;background:var(--white);border:1px solid var(--border);transition:transform 0.3s,box-shadow 0.3s}

.perfect-for-item:hover{transform:translateY(-4px);box-shadow:0 6px 20px rgba(0,0,0,0.08)}

.perfect-for-item i{font-size:2rem;color:var(--gold);margin-bottom:1rem;display:block}

.perfect-for-item h4{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0.05em;font-size:0.9rem}



@media (max-width:768px) {
  .perfect-for-grid{grid-template-columns:repeat(2,1fr)}

}

.menu-full{padding:4rem 0}

.menu-section{margin-bottom:4rem}

.menu-section h2{text-align:center;margin-bottom:2.5rem;padding-bottom:1rem;border-bottom:2px solid var(--gold)}

.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem 3rem}

.menu-grid .menu-item{padding-bottom:1.2rem;border-bottom:1px solid var(--border)}

.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}

.about-value{text-align:center;padding:2rem}

.about-value h4{margin-bottom:0.8rem}

.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem}

.gallery-grid img{width:100%;aspect-ratio:1;object-fit:cover;cursor:pointer;transition:opacity 0.3s}

.gallery-grid img:hover{opacity:0.85}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}

.contact-info__item{display:flex;gap:1rem;margin-bottom:1.5rem;align-items:flex-start}

.contact-info__icon{font-size:1.4rem;color:var(--green);margin-top:0.2rem}

.contact-form input,.contact-form textarea,.contact-form select{width:100%;padding:0.9rem 1.2rem;border:1px solid var(--border);background:var(--white);font-family:var(--font-body);font-size:0.95rem;margin-bottom:1rem;transition:border-color 0.3s;color:var(--brown)}

.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--green)}

.contact-form textarea{min-height:140px;resize:vertical}

.map-container{width:100%;height:400px;background:#ddd}

.map-container iframe{width:100%;height:100%;border:0}



@media (max-width:768px) {
  .hero__overlay{background:linear-gradient(180deg,rgba(26,26,26,0.82) 0%,rgba(52,18,16,0.75) 40%,rgba(26,26,26,0.60) 100%)}

  .hero__content{text-shadow:0 2px 16px rgba(0,0,0,0.7),0 1px 4px rgba(0,0,0,0.5)}

}


@media (max-width:1024px) {
  .callouts{grid-template-columns:repeat(2,1fr)}

  .features{grid-template-columns:repeat(2,1fr)}

  .footer__grid{grid-template-columns:1fr 1fr}

  .gallery-grid{grid-template-columns:repeat(3,1fr)}

}


@media (max-width:768px) {
  .nav__list{display:none}

  .nav__cta--desktop{display:none}

  .nav-toggle{display:flex}

  .nav__list.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--cream);border-top:1px solid var(--border);box-shadow:0 8px 30px rgba(0,0,0,0.1);z-index:999}

  .nav__list.open .nav__link{padding:1rem 2rem;border-bottom:1px solid var(--border)}

  .nav__list.open .dropdown{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border-top:0}

  .nav__list.open .dropdown a{padding-left:3rem;background:var(--cream-dark)}

  .hero{min-height:70vh}

  .hero__content{margin-left:0;padding:3rem 1.5rem}

  .split{grid-template-columns:1fr}

  .split__content{padding:3rem 2rem}

  .callouts{grid-template-columns:1fr;gap:1.5rem}

  .features{grid-template-columns:1fr}

  .menu-preview{grid-template-columns:1fr;gap:2rem}

  .menu-grid{grid-template-columns:1fr}

  .events-grid{grid-template-columns:1fr}

  .gallery-strip{grid-template-columns:1fr}

  .contact-grid{grid-template-columns:1fr}

  .footer__grid{grid-template-columns:1fr;gap:2rem}

  .footer__bottom{flex-direction:column;gap:0.5rem;text-align:center}

  .gallery-grid{grid-template-columns:repeat(2,1fr)}

  .top-bar .container{flex-direction:column;gap:0.3rem;text-align:center}

}


@media (max-width:480px) {
  .hero h1{font-size:2rem}

  .hero__buttons{flex-direction:column}

  .hero__buttons .btn{text-align:center}

  .section{padding:3.5rem 0}

}

.callout__title{font-family:var(--font-heading);font-size:clamp(1.2rem,2vw,1.6rem);font-weight:600;letter-spacing:0.04em;color:var(--brown);margin:0}

.h4-visual{margin-bottom:0.8rem}

.feature h3{margin-bottom:0.6rem}

.fa-icon{display:inline-block;width:1em;height:1em;vertical-align:-0.125em;fill:currentColor}

 @font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');unicode-range:U+1F00-1FFF}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');unicode-range:U+1F00-1FFF}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');unicode-range:U+1F00-1FFF}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format('woff2');unicode-range:U+1F00-1FFF}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752FD8Ghe4.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752GT8G.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752FD8Ghe4.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752GT8G.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752FD8Ghe4.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752GT8G.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752FD8Ghe4.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752GT8G.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752FD8Ghe4.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}

@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752HT8Ghe4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url(fonts/TK3iWkUHHAIjg752GT8G.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTXtXA-W2r.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTXt7A-W2r.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTXt_A-W2r.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(fonts/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTXtHA-Q.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTPYgFE_.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTLYgFE_.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTPYgFE_.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTLYgFE_.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(fonts/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}



/* ===================================================================
   Additional Page-Specific & Component Styles
   =================================================================== */

/* Page-header BEM children (used by about.html, menu.html) */
.page-header__bg {
  position: absolute;
  inset: 0;
  background: url('../images/6.jpg') center/cover;
  opacity: 0.15;
}

.page-header__overlay {
  position: absolute;
  inset: 0;
  background: url('../images/6.jpg') center/cover;
  opacity: 0.15;
}

.page-header__content {
  position: relative;
  z-index: 1;
}

/* Gallery grid item wrappers (about page uses __item divs) */
.gallery-grid__item {
  overflow: hidden;
}

.gallery-grid__item img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  cursor: pointer;
  transition: transform 0.4s ease, opacity 0.3s;
}

.gallery-grid__item img:hover {
  transform: scale(1.05);
  opacity: 0.85;
}

/* About values grid */
.about-values h3 {
  margin-bottom: 1rem;
}

.d-grid-3col {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

/* Event card image override */
.event-card__img[alt*="Wine Tasting"] {
  object-fit: cover;
  object-position: center 60%;
  transform: scale(0.85);
  margin: 0 auto;
}

/* Blog cards */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.blog-card {
  background: var(--white);
  border: 1px solid var(--border);
  overflow: hidden;
  transition: transform 0.3s, box-shadow 0.3s;
}

.blog-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.1);
}

.blog-card__img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.blog-card__body {
  padding: 1.5rem;
}

.blog-card__date {
  font-size: 0.82rem;
  color: var(--text-muted);
  font-family: var(--font-accent);
  font-style: italic;
  margin-bottom: 0.5rem;
}

.blog-card__title {
  font-family: var(--font-heading);
  font-size: 1.1rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin-bottom: 0.5rem;
  line-height: 1.3;
}

.blog-card__title a {
  color: var(--brown);
}

.blog-card__title a:hover {
  color: var(--green);
}

.blog-card__excerpt {
  font-size: 0.92rem;
  color: var(--brown-light);
  margin-bottom: 1rem;
}

.blog-card__link {
  font-family: var(--font-heading);
  font-size: 0.82rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--green);
  font-weight: 500;
}

.blog-card__link:hover {
  color: var(--green-hover);
}

/* Catering form and grid */
.form-group {
  margin-bottom: 1.2rem;
}

.form-group label {
  display: block;
  font-family: var(--font-heading);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 0.4rem;
  color: var(--brown);
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}

/* Contact page items */
.contact-item {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  align-items: flex-start;
}

.contact-item h4 {
  margin-bottom: 0.3rem;
}

/* Section utility classes */
.section--tan {
  background: var(--cream-dark);
  padding: 5rem 0;
}

.section--cream {
  background: var(--cream);
  padding: 5rem 0;
}

/* Utility classes */
.text-center-padded {
  text-align: center;
  padding: 1.5rem;
}

.text-center-only {
  text-align: center;
}

.text-center-mt-2 {
  text-align: center;
  margin-top: 2rem;
}

.text-gold {
  color: var(--gold);
}

.text-cream {
  color: var(--cream);
}

.font-size-2rem {
  font-size: 2rem;
}

.mb-10 {
  margin-bottom: 10px;
}

.mb-12 {
  margin-bottom: 12px;
}

.img-180-cover {
  width: 180px;
  height: 180px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto 1.5rem;
}

.img-height-48 {
  height: 48px;
  width: auto;
}

.icon-gold-sm {
  color: var(--gold);
  font-size: 0.9rem;
  margin-right: 0.3rem;
}

.cta-buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

/* Error page styles */
.error-html {
  height: 100vh;
}

.error-body {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100vh;
}

.error-container {
  text-align: center;
  padding: 3rem;
}

.error-heading {
  font-size: clamp(2rem, 5vw, 3.5rem);
  margin-bottom: 1rem;
}

.error-title {
  font-size: 1.2rem;
  margin-bottom: 1.5rem;
  color: var(--brown-light);
}

.error-center {
  text-align: center;
}

/* Blog post / article styles */
.blog-post__hero {
  width: 100%;
  max-height: 500px;
  object-fit: cover;
  margin-bottom: 2rem;
}

.blog-post__meta {
  font-family: var(--font-accent);
  font-style: italic;
  color: var(--text-muted);
  font-size: 0.95rem;
  margin-bottom: 2rem;
}

.blog-post__content h2 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.blog-post__content p {
  margin-bottom: 1.2rem;
  line-height: 1.8;
}

.blog-post__content ul,
.blog-post__content ol {
  margin: 1rem 0 1.5rem 1.5rem;
  list-style: disc;
}

.blog-post__content li {
  margin-bottom: 0.5rem;
  color: var(--brown-light);
}

.blog-post__share {
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--border);
}

.blog-post__share h3 {
  margin-bottom: 1rem;
}

.blog-post__share-links {
  display: flex;
  gap: 1rem;
}

.blog-post__share-links a {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.6rem 1.2rem;
  border: 1px solid var(--border);
  font-size: 0.85rem;
  font-family: var(--font-heading);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  transition: all 0.3s;
}

.blog-post__share-links a:hover {
  background: var(--green);
  color: var(--white);
  border-color: var(--green);
}


@media (max-width: 1024px) {
  .d-grid-3col {
    grid-template-columns: repeat(2, 1fr);
  }
  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .d-grid-3col {
    grid-template-columns: 1fr;
  }
  .blog-grid {
    grid-template-columns: 1fr;
  }
  .form-row {
    grid-template-columns: 1fr;
  }
  .blog-post__share-links {
    flex-direction: column;
  }
}
