*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:#FFF3E0;color:#4A1012;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:'DM Serif Text',serif;font-weight:400}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}

.nav{display:flex;justify-content:space-between;align-items:center;padding:16px 60px;background:#fff;border-bottom:1px solid #F0C8A0;position:sticky;top:0;z-index:100}
.nav__brand{font-family:'DM Serif Text',serif;font-size:1.5rem;font-weight:700;color:#9E2A2B}
.nav__links{display:flex;gap:24px}.nav__links a{font-size:0.85rem;color:#D4805A;transition:color 0.3s}.nav__links a:hover{color:#9E2A2B}
.nav__cta{background:#9E2A2B;color:#fff;padding:10px 24px;border-radius:24px;font-weight:600;font-size:0.85rem;border:none;cursor:pointer}

.hero-rc{position:relative;min-height:60vh;display:flex;align-items:flex-end;overflow:hidden}
.hero-rc img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-rc::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 40%,rgba(0,0,0,0.7))}
.hero-rc__content{position:relative;z-index:2;padding:40px 60px;color:#fff}
.hero-rc h1{font-size:clamp(2rem,4vw,3rem);color:#fff;margin-bottom:8px}.hero-rc p{color:rgba(255,255,255,0.8)}

.food-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px}
.food-grid img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform 0.3s}.food-grid img:hover{transform:scale(1.05)}

.reviews-rc{padding:60px;background:#FFF3E0}
.reviews-rc h2{text-align:center;font-size:1.8rem;color:#4A1012;margin-bottom:40px}
.reviews-rc__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:900px;margin:0 auto}
.review{background:#fff;padding:24px;border-radius:12px;border:1px solid #F0C8A0}
.review__stars{color:#E09F3E;font-size:1rem;margin-bottom:8px}
.review p{font-style:italic;color:#D4805A;line-height:1.6;margin-bottom:8px;font-size:0.9rem}.review__name{font-size:0.85rem;color:#4A1012;font-weight:600}

.info-rc{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:60px;background:#FFE0B2}
.info-rc h3{font-size:1.2rem;color:#4A1012;margin-bottom:16px}.info-rc p{color:#D4805A;line-height:1.7;font-size:0.9rem}
.info-rc__hours ul{list-style:none}.info-rc__hours li{padding:6px 0;border-bottom:1px solid #F0C8A0;font-size:0.85rem;color:#D4805A;display:flex;justify-content:space-between}

@media(max-width:768px){
  .nav{padding:12px 24px}.nav__links{display:none}
  .hero-rc__content{padding:24px}.food-grid{grid-template-columns:1fr 1fr}
  .reviews-rc{padding:40px 24px}.reviews-rc__grid{grid-template-columns:1fr}
  .info-rc{grid-template-columns:1fr;padding:40px 24px}
}
.nav__links a:hover,.nav__links a.active{color:#9E2A2B}
.nav__cta:hover{background:#801F20}
.page-hdr{min-height:40vh;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#9E2A2Bdd,#801F20cc);position:relative;overflow:hidden}
.page-hdr__bg{position:absolute;inset:0}
.page-hdr__bg img{width:100%;height:100%;object-fit:cover;opacity:0.2;mix-blend-mode:luminosity}
.page-hdr__content{position:relative;z-index:2;padding:80px 40px}
.page-hdr h1{font-size:clamp(2rem,4vw,3rem);color:#fff;margin-bottom:12px}
.page-hdr p{font-size:1.1rem;color:rgba(255,255,255,0.8);max-width:560px;margin:0 auto}
.about-story{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:80px 60px;align-items:center}
.about-story__text h2{font-size:2rem;margin-bottom:16px;color:#4A1012}
.about-story__text p{font-size:1rem;color:#D4805A;line-height:1.8;margin-bottom:16px}
.about-story__img{border-radius:8px;overflow:hidden}
.about-story__img img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.about-mv{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 60px 80px}
.about-mv__card{background:#FFE0B2;padding:40px;border-radius:8px;border:1px solid #F0C8A0}
.about-mv__icon{width:48px;height:48px;background:#9E2A2B;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem;margin-bottom:16px}
.about-mv__card h3{font-size:1.3rem;margin-bottom:10px;color:#4A1012}
.about-mv__card p{font-size:0.9rem;color:#D4805A;line-height:1.7}
.about-team{padding:80px 60px;background:#FFE0B2}
.about-team h2{font-size:2rem;text-align:center;margin-bottom:8px;color:#4A1012}
.about-team__sub{text-align:center;color:#D4805A;margin-bottom:48px;font-size:1rem}
.about-team__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:900px;margin:0 auto}
.about-team__member{text-align:center}
.about-team__img{width:120px;height:120px;border-radius:50%;overflow:hidden;margin:0 auto 16px;border:3px solid #F0C8A0}
.about-team__img img{width:100%;height:100%;object-fit:cover}
.about-team__member h4{font-size:1.05rem;margin-bottom:4px;color:#4A1012}
.about-team__member span{font-size:0.8rem;color:#D4805A}
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);background:#FFF3E0;border-top:1px solid #F0C8A0;border-bottom:1px solid #F0C8A0}
.about-stat{text-align:center;padding:40px 20px;border-right:1px solid #F0C8A0}
.about-stat:last-child{border-right:none}
.about-stat__num{font-family:'DM Serif Text',serif;font-size:2.8rem;font-weight:700;color:#9E2A2B;line-height:1}
.about-stat__label{font-size:0.8rem;color:#D4805A;text-transform:uppercase;letter-spacing:0.06em;margin-top:8px}
@media(max-width:480px){.about-team__grid,.about-stats{grid-template-columns:1fr}}
.footer{background:#4A1012;color:rgba(255,255,255,0.6);padding:60px}
.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;max-width:1200px;margin:0 auto}
.footer__brand{font-family:'DM Serif Text',serif;font-size:1.4rem;color:#fff;margin-bottom:12px}
.footer__desc{font-size:0.85rem;line-height:1.7;max-width:280px}
.footer__title{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.12em;color:rgba(255,255,255,0.4);margin-bottom:16px}
.footer__links{list-style:none;display:flex;flex-direction:column;gap:10px}
.footer__links a{font-size:0.85rem;color:rgba(255,255,255,0.6);transition:color 0.3s}
.footer__links a:hover{color:#fff}
.footer__bar{border-top:1px solid rgba(255,255,255,0.1);margin-top:40px;padding-top:20px;text-align:center;font-size:0.8rem;max-width:1200px;margin-left:auto;margin-right:auto}
.svc-grid{padding:80px 60px;background:#FFF3E0}
.svc-grid h2{font-size:2rem;text-align:center;margin-bottom:8px;color:#4A1012}
.svc-grid__sub{text-align:center;color:#D4805A;margin-bottom:48px;font-size:1rem}
.svc-grid__items{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.svc-card{background:#FFE0B2;padding:36px;border-radius:8px;transition:all 0.3s;border:1px solid transparent}
.svc-card:hover{border-color:#9E2A2B;transform:translateY(-4px);box-shadow:0 12px 24px rgba(0,0,0,0.08)}
.svc-card__icon{width:48px;height:48px;background:#9E2A2B;border-radius:10px;margin-bottom:20px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.4rem}
.svc-card h3{font-size:1.15rem;margin-bottom:10px;color:#4A1012}
.svc-card p{font-size:0.9rem;color:#D4805A;line-height:1.65}
.svc-process{padding:80px 60px;background:#FFE0B2}
.svc-process h2{font-size:2rem;text-align:center;margin-bottom:48px;color:#4A1012}
.svc-process__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;max-width:1000px;margin:0 auto}
.svc-step{text-align:center;position:relative}
.svc-step__num{width:56px;height:56px;border-radius:50%;background:#9E2A2B;color:#fff;display:flex;align-items:center;justify-content:center;font-family:'DM Serif Text',serif;font-size:1.4rem;font-weight:700;margin:0 auto 16px}
.svc-step h4{font-size:1.05rem;margin-bottom:8px;color:#4A1012}
.svc-step p{font-size:0.85rem;color:#D4805A;line-height:1.6}
.svc-cta{padding:80px 60px;background:linear-gradient(135deg,#9E2A2B,  #801F20);text-align:center}
.svc-cta h2{color:#fff;font-size:2rem;margin-bottom:12px}
.svc-cta p{color:rgba(255,255,255,0.8);margin-bottom:32px;font-size:1.05rem}
.svc-cta__btn{display:inline-block;padding:16px 40px;background:#E09F3E;color:#4A1012;border-radius:6px;font-weight:600;font-size:0.95rem;border:none;cursor:pointer;transition:transform 0.2s}
.svc-cta__btn:hover{transform:translateY(-2px)}
.port-pg{padding:80px 60px;background:#FFF3E0}
.port-pg__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:40px;flex-wrap:wrap;gap:16px}
.port-pg h2{font-size:2rem;color:#4A1012}
.port-pg__filters{display:flex;gap:8px;flex-wrap:wrap}
.port-filt{padding:8px 20px;border:2px solid #F0C8A0;background:transparent;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.08em;font-weight:600;color:#D4805A;cursor:pointer;transition:all 0.2s;border-radius:4px}
.port-filt.active,.port-filt:hover{background:#9E2A2B;color:#fff;border-color:#9E2A2B}
.port-pg__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.port-pg__item{position:relative;border-radius:8px;overflow:hidden;aspect-ratio:4/3}
.port-pg__item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.port-pg__item:hover img{transform:scale(1.06)}
.port-pg__overlay{position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(0,0,0,0.75));display:flex;flex-direction:column;justify-content:flex-end;padding:24px;opacity:0;transition:opacity 0.3s}
.port-pg__item:hover .port-pg__overlay{opacity:1}
.port-pg__overlay h4{color:#fff;font-size:1.1rem;margin-bottom:4px}
.port-pg__overlay span{color:rgba(255,255,255,0.7);font-size:0.8rem}
.port-cta{padding:60px;text-align:center;background:#FFE0B2}
.port-cta h3{font-size:1.6rem;margin-bottom:12px;color:#4A1012}
.port-cta p{color:#D4805A;margin-bottom:24px}
.port-cta__btn{display:inline-block;padding:14px 36px;background:#9E2A2B;color:#fff;border-radius:6px;font-weight:600;font-size:0.9rem}
.port-cta__btn:hover{opacity:0.9}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:80px 60px}
.contact-form h2{font-size:1.6rem;margin-bottom:24px;color:#4A1012}
.contact-form__group{margin-bottom:20px}
.contact-form__label{display:block;font-size:0.8rem;color:#D4805A;margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:0.05em}
.contact-form__input{width:100%;padding:12px 16px;border:1px solid #F0C8A0;border-radius:6px;font-size:0.9rem;font-family:'Inter',sans-serif;background:#FFF3E0;color:#4A1012;outline:none;transition:border-color 0.3s}
.contact-form__input:focus{border-color:#9E2A2B}
.contact-form__textarea{width:100%;padding:12px 16px;border:1px solid #F0C8A0;border-radius:6px;font-size:0.9rem;font-family:'Inter',sans-serif;background:#FFF3E0;color:#4A1012;outline:none;min-height:140px;resize:vertical;transition:border-color 0.3s}
.contact-form__textarea:focus{border-color:#9E2A2B}
.contact-form__btn{padding:14px 40px;background:#9E2A2B;color:#fff;border:none;border-radius:6px;font-size:0.9rem;font-weight:600;cursor:pointer;transition:background 0.3s;font-family:'Inter',sans-serif}
.contact-form__btn:hover{background:#801F20}
.contact-info h2{font-size:1.6rem;margin-bottom:24px;color:#4A1012}
.contact-info__items{display:flex;flex-direction:column;gap:20px}
.contact-info__item{display:flex;gap:16px;align-items:flex-start;padding:20px;background:#FFE0B2;border-radius:8px;border:1px solid #F0C8A0}
.contact-info__icon{width:44px;height:44px;background:#9E2A2B;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex-shrink:0}
.contact-info__item h4{font-size:1rem;margin-bottom:4px;color:#4A1012}
.contact-info__item p{font-size:0.85rem;color:#D4805A;line-height:1.5}
.contact-map{height:300px;background:linear-gradient(135deg,#FFE0B2,#F0C8A0);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.contact-map::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 40px,#F0C8A044 40px,#F0C8A044 41px),repeating-linear-gradient(90deg,transparent,transparent 40px,#F0C8A044 40px,#F0C8A044 41px)}
.contact-map span{position:relative;z-index:1;font-size:0.9rem;color:#D4805A;padding:12px 24px;background:#FFF3E0;border-radius:6px;border:1px solid #F0C8A0}
.blog-pg__featured{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#FFE0B2;overflow:hidden;margin:0 60px 48px;border-radius:8px;border:1px solid #F0C8A0}
.blog-pg__featured-img{aspect-ratio:16/10;overflow:hidden}
.blog-pg__featured-img img{width:100%;height:100%;object-fit:cover}
.blog-pg__featured-body{display:flex;flex-direction:column;justify-content:center;padding:40px}
.blog-pg__featured-cat{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.12em;color:#9E2A2B;font-weight:600;margin-bottom:12px}
.blog-pg__featured h2{font-size:1.8rem;color:#4A1012;line-height:1.3;margin-bottom:12px}
.blog-pg__featured p{font-size:0.9rem;color:#D4805A;line-height:1.7;margin-bottom:20px}
.blog-pg__featured-meta{font-size:0.75rem;color:#D4805A}
.blog-pg__featured-link{display:inline-block;margin-top:16px;padding:10px 24px;background:#9E2A2B;color:#fff;border-radius:6px;font-size:0.85rem;font-weight:600}
.blog-pg__grid-section{padding:0 60px 80px}
.blog-pg__grid-section h2{font-size:1.6rem;margin-bottom:32px;color:#4A1012}
.blog-pg__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{border-radius:12px;overflow:hidden;background:#FFF3E0;border:1px solid #F0C8A0;transition:all 0.3s}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,0.06)}
.blog-card__img{aspect-ratio:16/10;overflow:hidden}
.blog-card__img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.blog-card:hover .blog-card__img img{transform:scale(1.05)}
.blog-card__body{padding:24px}
.blog-card__cat{font-size:0.7rem;text-transform:uppercase;letter-spacing:0.1em;color:#9E2A2B;font-weight:600;margin-bottom:8px}
.blog-card h3{font-size:1.05rem;line-height:1.35;margin-bottom:8px;color:#4A1012}
.blog-card p{font-size:0.85rem;color:#D4805A;line-height:1.6;margin-bottom:12px}
.blog-card__meta{display:flex;justify-content:space-between;font-size:0.75rem;color:#D4805A}
.blog-card__link{display:inline-block;font-size:0.8rem;color:#9E2A2B;font-weight:600;margin-top:8px}
.blog-more{text-align:center;padding:0 60px 80px}
.blog-more__btn{display:inline-block;padding:14px 40px;border:2px solid #F0C8A0;color:#4A1012;border-radius:6px;font-size:0.9rem;font-weight:600;transition:all 0.3s;background:transparent;cursor:pointer}
.blog-more__btn:hover{border-color:#9E2A2B;color:#9E2A2B}
/* SitePilot: mobile nav toggle */
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:inherit}
@media(max-width:768px){
  .nav-toggle{display:block}
  .nav__cta{display:none}
  .nav__links{flex-direction:column;position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(10px);padding:16px 24px;box-shadow:0 4px 12px rgba(0,0,0,0.1);gap:12px}
}
