/* ===== CSS VARIABLES ===== */
:root {
  --green-dark: #1E3A0F;
  --green-mid: #2D5016;
  --green-light: #4A7C2F;
  --gold: #C4A055;
  --gold-light: #E8C87A;
  --cream: #F5EDD8;
  --cream-dark: #EAD9B8;
  --brick: #8B3A2A;
  --brown: #3C2415;
  --smoke: rgba(245,237,216,0.08);
  --shadow: 0 8px 40px rgba(30,58,15,0.25);
}

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

html { scroll-behavior: smooth; }

@font-face {
    font-family: 'dast';
    src: url('dast.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
  font-family: 'dast', 'Vazirmatn', 'Segoe UI', Tahoma, sans-serif;
  background: var(--cream);
  color: var(--brown);
  overflow-x: hidden;
}

/* ===== TEXTURE OVERLAY ===== */
body::before {
  content:'';
  position:fixed; inset:0;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='80' height='80' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
  pointer-events:none; z-index:0;
}

/* ===== NAVBAR ===== */
nav {
  position: fixed; top:0; width:100%; z-index:1000;
  background: rgba(30,58,15,0.95);
  backdrop-filter: blur(12px);
  border-bottom: 2px solid var(--gold);
  padding: 0 2rem;
  display: flex; align-items:center; justify-content:space-between;
  height: 64px;
}
.nav-logo {
  font-size: 1.5rem; font-weight:900; color: var(--gold);
  letter-spacing: 1px;
}
.nav-logo span { color: var(--cream); font-weight:300; font-size:0.85rem; display:block; margin-top:-4px; }
.nav-links { display:flex; gap:1.5rem; list-style:none; }
.nav-links a { color: var(--cream); text-decoration:none; font-size:0.9rem; font-weight:500; transition:color 0.3s; }
.nav-links a:hover { color: var(--gold); }
.nav-toggle { display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; }
.nav-toggle span { display:block; width:25px; height:2px; background:var(--cream); transition:all 0.3s; }

/* ===== HERO ===== */
.hero {
  min-height: 100vh;
  background: linear-gradient(160deg, rgba(30,58,15,0.65), rgba(13,31,5,0.8)), url('../img/home-bg.jpg');
  background-size: cover;
  background-position: top center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  padding-top: 64px;
}

@media (max-width: 768px) {
  .hero {
    background-position: 30% center; /* تنظیم نقطه کانونی برای موبایل */
  }
}

/* Rice field lines */
.hero::before {
  content:'';
  position:absolute; inset:0;
  background-image: repeating-linear-gradient(
    175deg,
    transparent,
    transparent 40px,
    rgba(74,124,47,0.08) 40px,
    rgba(74,124,47,0.08) 41px
  );
}

/* Floating leaves */
.leaf {
  position: absolute;
  width: 30px; height: 50px;
  background: radial-gradient(ellipse at 30% 40%, #8BC34A, #2D5016);
  border-radius: 0 100% 0 100%;
  opacity: 0.35;  /* از 0.15 به 0.35 */
  animation: floatLeaf linear infinite;
}

@keyframes floatLeaf {
  0%   { transform: translateY(110vh) rotate(0deg); opacity: 0; }
  10%  { opacity: 0.5; }   /* قبلاً 0.2 بود */
  90%  { opacity: 0.4; }   /* قبلاً 0.15 بود */
  100% { transform: translateY(-10vh) rotate(360deg); opacity: 0; }
}

/* Steam animation */
.steam-container {
  position:absolute; bottom:0; left:50%; transform:translateX(-50%);
  width:300px; height:200px; pointer-events:none;
}
.steam {
  position:absolute; bottom:20px;
  width:10px; height:80px;
  background: linear-gradient(to top, rgba(255,255,255,0.15), transparent);
  border-radius:50%;
  animation: steam 3s ease-in-out infinite;
}
.steam:nth-child(1){ left:30%; animation-delay:0s; }
.steam:nth-child(2){ left:50%; animation-delay:0.8s; width:7px; height:60px; }
.steam:nth-child(3){ left:70%; animation-delay:1.6s; width:12px; }
@keyframes steam {
  0%   { transform:scaleX(1) translateY(0); opacity:0; }
  20%  { opacity:0.6; }
  100% { transform:scaleX(2) translateY(-120px); opacity:0; }
}

.hero-content { position:relative; z-index:2; text-align:center; padding:2rem; }

.hero-badge {
  display:inline-block; background: var(--gold); color: var(--green-dark);
  font-size:0.75rem; font-weight:700; padding:4px 16px; border-radius:20px;
  margin-bottom:1.5rem; letter-spacing:2px;
  animation: fadeDown 0.8s ease both;
}

.hero-title {
  font-size: clamp(3rem, 10vw, 7rem);
  font-weight:900; color: var(--cream);
  line-height:1;
  animation: fadeDown 0.9s ease 0.1s both;
  text-shadow: 0 4px 30px rgba(0,0,0,0.5);
}
.hero-title .gold { color: var(--gold); }

.hero-subtitle {
  font-size: clamp(1rem, 3vw, 1.4rem);
  color: rgba(245,237,216,0.75);
  margin: 1rem 0 2rem;
  font-weight:300; line-height:1.8;
  animation: fadeDown 1s ease 0.2s both;
}

.hero-cta {
  display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;
  animation: fadeDown 1s ease 0.3s both;
}
.btn-primary {
  background: var(--gold); color: var(--green-dark);
  padding:14px 32px; border-radius:4px; text-decoration:none;
  font-weight:700; font-size:1rem; transition:all 0.3s;
  border:2px solid var(--gold);
}
.btn-primary:hover { background:transparent; color:var(--gold); }
.btn-outline {
  border:2px solid rgba(245,237,216,0.4); color:var(--cream);
  padding:14px 32px; border-radius:4px; text-decoration:none;
  font-weight:500; font-size:1rem; transition:all 0.3s;
}
.btn-outline:hover { border-color:var(--gold); color:var(--gold); }

.hero-scroll {
  position:absolute; bottom:2rem; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:8px;
  color:rgba(245,237,216,0.4); font-size:0.75rem; animation:bounce 2s infinite;
}
.hero-scroll::after {
  content:''; width:1px; height:40px;
  background:linear-gradient(to bottom, rgba(245,237,216,0.4), transparent);
}
@keyframes bounce { 0%,100%{transform:translateX(-50%) translateY(0)} 50%{transform:translateX(-50%) translateY(8px)} }

@keyframes fadeDown { from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} }

/* ===== SECTION BASE ===== */
section { position:relative; z-index:1; }

.section-header {
  text-align:center; margin-bottom:3rem;
}
.section-eyebrow {
  display:inline-block; color:var(--green-light); font-size:0.8rem;
  font-weight:700; letter-spacing:3px; text-transform:uppercase;
  margin-bottom:0.5rem;
}
.section-title {
  font-size:clamp(1.8rem,5vw,3rem); font-weight:900; color:var(--green-dark);
  position:relative; display:inline-block;
}
.section-title::after {
  content:''; position:absolute; bottom:-8px; right:0; width:60%; height:3px;
  background: linear-gradient(to left, var(--gold), transparent);
}
.section-desc {
  margin-top:1.2rem; color:#5A4030; font-size:1rem; line-height:2; max-width:600px; margin-inline:auto;
}

/* ===== ABOUT ===== */
.about {
  padding:6rem 2rem;
  background: var(--cream);
}
.about-grid {
  max-width:1100px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center;
}
.about-art {
  position:relative;
}
.about-frame {
  width: 100%;
  max-width: 592px;      /* حداکثر عرض قاب */
  max-height: 441px;     /* حداکثر ارتفاع قاب */
  aspect-ratio: 4/3;     /* نسبت ابعاد قاب (نزدیک به 592/441) */
  background: linear-gradient(135deg, var(--green-dark), var(--green-mid));
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 8rem;
  border: 3px solid var(--gold);
  position: relative;
}

.about-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;     /* تصویر کل قاب را می‌پوشاند بدون اینکه کش بیاید */
  display: block;
}

/* اگر می‌خواهید کل تصویر بدون برش دیده شود، به جای cover از contain استفاده کنید */
.about-tag {
  position:absolute; bottom:-1.5rem; left:-1.5rem;
  background:var(--brick); color:var(--cream);
  padding:1rem 1.5rem; border-radius:4px; text-align:center;
  box-shadow: var(--shadow);
}
.about-tag strong { display:block; font-size:2rem; font-weight:900; }
.about-tag span { font-size:0.75rem; opacity:0.85; }

.about-text h2 { font-size:2rem; font-weight:900; color:var(--green-dark); margin-bottom:1rem; line-height:1.4; }
.about-text p { color:#5A4030; line-height:2.2; margin-bottom:1rem; font-size:0.95rem; }
.about-features { display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin-top:1.5rem; }
.feat-item {
  display:flex; align-items:center; gap:0.75rem;
  background:rgba(45,80,22,0.06); padding:0.75rem 1rem; border-radius:4px;
  border-right:3px solid var(--gold);
}
.feat-item .icon { font-size:1.4rem; }
.feat-item span { font-size:0.85rem; font-weight:600; color:var(--green-dark); }

/* ===== MENU ===== */
.menu-section {
  padding:6rem 2rem;
  background: linear-gradient(180deg, #1E3A0F 0%, #0D1F05 100%);
}
.menu-section .section-eyebrow { color:var(--gold-light); }
.menu-section .section-title { color:var(--cream); }
.menu-section .section-title::after { background:linear-gradient(to left, var(--gold), transparent); }
.menu-section .section-desc { color:rgba(245,237,216,0.6); }

.menu-tabs {
  display:flex; gap:0.5rem; justify-content:center; flex-wrap:wrap; margin-bottom:3rem;
}
.tab-btn {
  background:transparent; border:1px solid rgba(196,160,85,0.3);
  color:rgba(245,237,216,0.6); padding:8px 20px; border-radius:4px;
  cursor:pointer; font-family:inherit; font-size:0.9rem; transition:all 0.3s;
}
.tab-btn.active, .tab-btn:hover {
  background:var(--gold); color:var(--green-dark); border-color:var(--gold); font-weight:700;
}

.menu-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:1.5rem; max-width:1100px; margin:0 auto;
}
.food-card {
  background:rgba(245,237,216,0.05); border:1px solid rgba(196,160,85,0.2);
  border-radius:4px; overflow:hidden; transition:all 0.4s;
  backdrop-filter:blur(8px);
  cursor: pointer;
  text-decoration: none;
  display: block;
  color: inherit;
}
.food-card:hover { transform:translateY(-6px); border-color:var(--gold); box-shadow:0 20px 60px rgba(0,0,0,0.4); }

.food-img{position:relative;width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,#2D5016,#1A3008);overflow:hidden}
.food-img img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}
.food-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(13,31,5,0.7),transparent);pointer-events:none}
/* ===== بج محصولات - ویژه و جذاب (سمت چپ) ===== */
.food-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 20;
    background: linear-gradient(125deg, #E25822, #C93A1A);
    color: #FFF6E0;
    font-size: 0.7rem;
    font-weight: 900;
    padding: 5px 16px;
    border-radius: 0 30px 30px 0;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    backdrop-filter: blur(2px);
    box-shadow: 0 5px 12px rgba(0,0,0,0.3), 0 0 0 1px rgba(255,200,100,0.4);
    transition: all 0.3s ease;
    font-family: inherit;
    border-left: 3px solid #FFD966;
    overflow: hidden;
}

/* انیمیشن نور چشمک‌زن (gold shimmer) */
.food-badge::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 80%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,220,100,0.4), transparent);
    transform: skewX(-20deg);
    animation: shine 3s infinite;
}

@keyframes shine {
    0% { left: -100%; }
    20% { left: 120%; }
    100% { left: 120%; }
}

/* حرکت ملایم بالا و پایین برای جلب توجه */
.food-badge {
    animation: floatBadge 2s infinite alternate ease-in-out;
}

@keyframes floatBadge {
    0% { transform: translateY(0px); }
    100% { transform: translateY(-3px); }
}

/* تغییر رنگ و سایه هنگام هاور روی کل کارت */
.food-card:hover .food-badge {
    background: linear-gradient(125deg, #F06030, #D94520);
    box-shadow: 0 8px 20px rgba(0,0,0,0.4), 0 0 0 2px rgba(255,220,100,0.8);
    transform: scale(1.02) translateY(-3px);
    letter-spacing: 1px;
}

/* اگر بج «جدید» یا « ویژه» رنگ‌های متفاوت می‌خوای، می‌تونی از کلاس زیر استفاده کنی */
.food-badge.special {
    background: linear-gradient(125deg, #D4AF37, #B8860B);
    color: #1E3A0F;
    border-left-color: #FFF2B5;
}
.food-badge.new {
    background: linear-gradient(125deg, #2E7D32, #1B5E20);
    color: #F9F6C5;
    border-left-color: #C8E6A0;
}

.food-body { padding:1.25rem; }
.food-name { font-size:1.05rem; font-weight:700; color:var(--cream); margin-bottom:0.4rem; }
.food-desc { font-size:0.8rem; color:rgba(245,237,216,0.5); line-height:1.8; margin-bottom:1rem; }
.food-footer { display:flex; justify-content:space-between; align-items:center; }
.food-price { color:var(--gold); font-weight:700; font-size:1rem; }
.food-more {
  background: transparent;
  color: var(--gold);
  border: 1px solid var(--gold);
  padding:6px 16px; border-radius:3px; font-family:inherit; font-size:0.8rem;
  font-weight:700; cursor:pointer; transition:all 0.3s;
}
.food-more:hover { background:var(--gold); color: var(--green-dark); }

/* ===== REVIEWS ===== */
.reviews-section {
  padding:6rem 2rem;
  background: var(--cream-dark);
}
.reviews-grid {
  display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:1.5rem; max-width:1100px; margin:0 auto;
}
.review-card {
  background:var(--cream); border-radius:4px; padding:1.75rem;
  box-shadow:0 4px 20px rgba(30,58,15,0.1);
  border-right:4px solid var(--green-light);
  transition:transform 0.3s;
  opacity:0; transform:translateY(30px);
}
.review-card.visible { opacity:1; transform:translateY(0); transition:all 0.6s ease; }
.review-card:hover { transform:translateY(-4px); }
.review-stars { color:var(--gold); font-size:1rem; margin-bottom:0.75rem; letter-spacing:2px; }
.review-text { color:#5A4030; font-size:0.9rem; line-height:2; margin-bottom:1rem; font-style:italic; }
.review-author { display:flex; align-items:center; gap:0.75rem; }
.review-avatar {
  width:40px; height:40px; border-radius:50%;
  background:linear-gradient(135deg,var(--green-mid),var(--green-light));
  display:flex; align-items:center; justify-content:center;
  color:var(--cream); font-weight:700; font-size:0.9rem;
}
.review-name { font-weight:700; font-size:0.9rem; color:var(--green-dark); }
.review-date { font-size:0.75rem; color:#9A8070; }
.review-source { margin-top:1rem; display:flex; align-items:center; gap:5px; color:#9A8070; font-size:0.75rem; }

/* ===== HOURS ===== */
.hours-section {
  padding:5rem 2rem;
  background: var(--green-dark);
}
.hours-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:4rem;
  max-width:900px; margin:0 auto; align-items:start;
}
.hours-section .section-title { color:var(--cream); }
.hours-section .section-eyebrow { color:var(--gold-light); }
.hours-table { width:100%; border-collapse:collapse; margin-top:1.5rem; }
.hours-table tr { border-bottom:1px solid rgba(245,237,216,0.1); }
.hours-table tr:last-child { border-bottom:none; }
.hours-table td { padding:12px 0; font-size:0.9rem; }
.hours-table .day { color:rgba(245,237,216,0.7); }
.hours-table .time { color:var(--gold); font-weight:600; text-align:left; }
.hours-table .closed { color:var(--brick); }
.hours-open-now {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(74,124,47,0.2); border:1px solid var(--green-light);
  color:var(--cream); padding:8px 16px; border-radius:20px;
  font-size:0.85rem; margin-top:1rem; transition:all 0.4s;
}
.hours-open-now.closed-status {
  background:rgba(139,58,42,0.2); border-color:var(--brick);
}
.dot-pulse {
  width:8px; height:8px; border-radius:50%; background:var(--green-light);
  animation:pulse 2s infinite; flex-shrink:0;
}
.dot-pulse.red { background:var(--brick); animation:pulseRed 2s infinite; }
@keyframes pulse    { 0%,100%{box-shadow:0 0 0 0 rgba(74,124,47,0.5)}  50%{box-shadow:0 0 0 8px rgba(74,124,47,0)} }
@keyframes pulseRed { 0%,100%{box-shadow:0 0 0 0 rgba(139,58,42,0.5)} 50%{box-shadow:0 0 0 8px rgba(139,58,42,0)} }

.contact-box {
  background:rgba(245,237,216,0.05); border:1px solid rgba(196,160,85,0.2);
  border-radius:4px; padding:2rem;
}
.contact-item {
  display:flex; align-items:flex-start; gap:1rem; margin-bottom:1.5rem;
}
.contact-item:last-child { margin-bottom:0; }
.contact-icon {
  width:40px; height:40px; background:var(--gold); border-radius:4px;
  display:flex; align-items:center; justify-content:center;
  font-size:1.1rem; flex-shrink:0;
}
.contact-label { font-size:0.7rem; color:rgba(245,237,216,0.5); text-transform:uppercase; letter-spacing:1px; }
.contact-val { color:var(--cream); font-size:0.95rem; font-weight:600; margin-top:2px; }
.contact-val a { color:inherit; text-decoration:none; }
.contact-val a:hover { color:var(--gold); }

/* ===== MAP ===== */
.map-section { padding:0; }
.map-wrapper { position:relative; }
.map-iframe {
  width:100%; height:450px; border:none; display:block;
  filter:sepia(30%) contrast(90%);
}
.map-card {
  position:absolute; top:50%; right:5%; transform:translateY(-50%);
  background:var(--green-dark); border:2px solid var(--gold);
  border-radius:4px; padding:1.5rem 2rem; max-width:280px;
  box-shadow: var(--shadow);
}
.map-card h3 { color:var(--gold); font-size:1rem; margin-bottom:0.75rem; }
.map-card p { color:rgba(245,237,216,0.8); font-size:0.85rem; line-height:1.8; }
.map-links { display:flex; flex-direction:column; gap:0.5rem; margin-top:1rem; }
.map-link {
  display:flex; align-items:center; gap:8px;
  color:var(--cream); text-decoration:none; font-size:0.85rem;
  padding:8px 12px; border-radius:3px; transition:all 0.3s;
  background:rgba(245,237,216,0.05);
}
.map-link:hover { background:var(--gold); color:var(--green-dark); }

/* ===== DOWNLOAD ===== */
.download-section {
  padding:5rem 2rem;
  background: linear-gradient(135deg, #1A3008 0%, var(--green-dark) 100%);
  text-align:center;
}
.download-section .section-title { color:var(--cream); }
.download-section .section-eyebrow { color:var(--gold-light); }
.download-section .section-desc { color:rgba(245,237,216,0.6); }

.download-cards {
  display:flex; gap:1.5rem; justify-content:center; flex-wrap:wrap; margin-top:3rem;
}
.dl-card {
  background:rgba(245,237,216,0.06); border:1px solid rgba(196,160,85,0.25);
  border-radius:8px; padding:2rem 2.5rem; text-align:center;
  transition:all 0.4s; min-width:220px;
}
.dl-card:hover { background:rgba(196,160,85,0.1); border-color:var(--gold); transform:translateY(-4px); }
.dl-icon { font-size:3rem; margin-bottom:1rem; display:block; }
.dl-name { color:var(--cream); font-weight:700; font-size:1.1rem; margin-bottom:0.25rem; }
.dl-sub { color:rgba(245,237,216,0.5); font-size:0.8rem; margin-bottom:1.5rem; }
.dl-btn {
  display:inline-block; background:var(--gold); color:var(--green-dark);
  padding:10px 28px; border-radius:4px; text-decoration:none;
  font-weight:700; font-size:0.9rem; transition:all 0.3s;
}
.dl-btn:hover { background:var(--gold-light); }
.dl-btn.pwa { background:transparent; border:1px solid var(--gold); color:var(--gold); }
.dl-btn.pwa:hover { background:var(--gold); color:var(--green-dark); cursor:pointer; }

/* ===== FOOTER ===== */
footer {
  background:var(--brown); color:rgba(245,237,216,0.6);
  text-align:center; padding:2rem;
  font-size:0.85rem; border-top:3px solid var(--gold);
}
footer .footer-logo { color:var(--gold); font-size:1.5rem; font-weight:900; margin-bottom:0.5rem; }
footer a { color:var(--gold); text-decoration:none; }

/* ===== SCROLL REVEAL ===== */
.reveal { opacity:0; transform:translateY(40px); transition:all 0.7s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }

/* ===== MOBILE NAV ===== */
@media(max-width:768px){
  .nav-links { display:none; position:fixed; top:64px; inset-inline:0;
    background:rgba(20,45,8,0.98); flex-direction:column; align-items:center;
    padding:2rem; gap:1.5rem; border-bottom:2px solid var(--gold); }
  .nav-links.open { display:flex; }
  .nav-toggle { display:flex; }
  .about-grid { grid-template-columns:1fr; gap:2rem; }
  .about-tag { bottom:-1rem; left:0; }
  .hours-grid { grid-template-columns:1fr; gap:2rem; }
  .map-card { position:relative; top:auto; right:auto; transform:none;
    max-width:100%; margin:1rem; border-radius:4px; }
  .map-wrapper { display:flex; flex-direction:column; }
  .map-iframe { height:300px; }
}

/* ===== DECORATIVE DIVIDER ===== */
.divider {
  text-align:center; padding:1rem 0; overflow:hidden;
  background:var(--cream-dark);
}
.divider svg { width:100%; height:40px; display:block; }

/* ===== افکت ویژه بخش دانلود ===== */
.download-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #1A3008 0%, var(--green-dark) 100%);
}

/* برگ‌های طلایی شناور */
.download-section .gold-leaf {
  position: absolute;
  background: radial-gradient(ellipse at 30% 40%, var(--gold-light), var(--gold));
  width: 12px;
  height: 22px;
  border-radius: 0 100% 0 100%;
  opacity: 0;
  animation: floatGoldLeaf 8s linear infinite;
  pointer-events: none;
  z-index: 0;
}

@keyframes floatGoldLeaf {
  0% {
    transform: translateY(110vh) rotate(0deg);
    opacity: 0;
  }
  10% {
    opacity: 0.3;
  }
  90% {
    opacity: 0.2;
  }
  100% {
    transform: translateY(-10vh) rotate(360deg);
    opacity: 0;
  }
}

/* موج‌های نور طلایی از پایین به بالا */
.download-section .gold-wave {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background: linear-gradient(90deg, transparent, var(--gold), var(--gold-light), var(--gold), transparent);
  animation: waveMove 3s ease-in-out infinite;
  opacity: 0.4;
  z-index: 0;
}

@keyframes waveMove {
  0%, 100% {
    transform: translateY(0);
    opacity: 0.2;
  }
  50% {
    transform: translateY(-15px);
    opacity: 0.6;
  }
}

/* کارت‌های دانلود با انیمیشن ورود و افکت درخشش حاشیه */
.dl-card {
  position: relative;
  z-index: 1;
  background: rgba(245, 237, 216, 0.08);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(196, 160, 85, 0.3);
  transition: all 0.4s cubic-bezier(0.2, 0.9, 0.4, 1.1);
  animation: cardFloat 3s infinite alternate ease-in-out;
}

.dl-card:nth-child(1) { animation-delay: 0s; }
.dl-card:nth-child(2) { animation-delay: 0.5s; }

@keyframes cardFloat {
  0% {
    transform: translateY(0px);
  }
  100% {
    transform: translateY(-8px);
  }
}

.dl-card:hover {
  transform: translateY(-12px) scale(1.02);
  border-color: var(--gold);
  box-shadow: 0 25px 45px rgba(0, 0, 0, 0.4), 0 0 20px rgba(196, 160, 85, 0.4);
}

/* آیکون‌ها با چرخش ملایم */
.dl-icon {
  display: inline-block;
  transition: transform 0.4s ease;
}

.dl-card:hover .dl-icon {
  transform: scale(1.2) rotate(5deg);
}

/* دکمه دانلود با افکت موج */
.dl-btn {
  position: relative;
  overflow: hidden;
  transition: all 0.3s ease;
  z-index: 1;
}

.dl-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
  transition: left 0.5s ease;
  z-index: -1;
}

.dl-btn:hover::before {
  left: 100%;
}

.dl-btn:active {
  transform: scale(0.97);
}

/* عنوان بخش با سایه‌نور */
.download-section .section-title {
  text-shadow: 0 0 10px rgba(196, 160, 85, 0.3);
  animation: titleGlow 3s infinite alternate;
}

@keyframes titleGlow {
  0% {
    text-shadow: 0 0 5px rgba(196, 160, 85, 0.2);
  }
  100% {
    text-shadow: 0 0 20px rgba(196, 160, 85, 0.6);
  }
}
/* کلاس دراپ شادو متحرک طلایی */
.glow-text {
  text-shadow: 0 0 20px rgba(196, 160, 85, 0.3);
  animation: titleGlow 3s infinite alternate;
}

  /* ===== FOOD PAGE SPECIFIC STYLES ===== */
  .food-hero {
    min-height: 60vh;
    background: linear-gradient(160deg, var(--green-dark) 0%, #1A3008 60%, #0D1F05 100%);
    display: flex; align-items: flex-end;
    padding-top: 64px;
    position: relative; overflow: hidden;
  }
  .food-hero::before {
    content:'';
    position:absolute; inset:0;
    background-image: repeating-linear-gradient(
      175deg, transparent, transparent 40px,
      rgba(74,124,47,0.06) 40px, rgba(74,124,47,0.06) 41px
    );
  }
  .food-hero-emoji {
    position: absolute;
    font-size: clamp(10rem, 25vw, 20rem);
    opacity: 0.12;
    left: -2rem;
    bottom: -2rem;
    line-height: 1;
    user-select: none;
  }
  .food-hero-content {
    position: relative; z-index: 2;
    padding: 3rem 2rem 3.5rem;
    max-width: 900px; margin: 0 auto; width: 100%;
  }
  .breadcrumb {
    display: flex; align-items: center; gap: 0.5rem;
    font-size: 0.8rem; color: rgba(245,237,216,0.5);
    margin-bottom: 1.5rem; flex-wrap: wrap;
  }
  .breadcrumb a { color: var(--gold); text-decoration: none; }
  .breadcrumb a:hover { text-decoration: underline; }
  .breadcrumb span { color: rgba(245,237,216,0.3); }

  .food-hero-badge {
    display: inline-block; background: var(--brick); color: var(--cream);
    font-size: 0.7rem; font-weight: 700; padding: 4px 14px; border-radius: 3px;
    margin-bottom: 1rem; letter-spacing: 1px;
  }
  .food-hero h1 {
    font-size: clamp(2rem, 6vw, 3.5rem);
    font-weight: 900; color: var(--cream);
    line-height: 1.2; margin-bottom: 1rem;
  }
  .food-hero h1 .gold { color: var(--gold); }
  .food-hero-meta {
    display: flex; gap: 1.5rem; flex-wrap: wrap; align-items: center;
    margin-top: 1.5rem;
  }
  .food-hero-price {
    font-size: 1.8rem; font-weight: 900; color: var(--gold);
  }
  .food-hero-price span {
    font-size: 1rem; color: rgba(245,237,216,0.5); font-weight: 400;
  }
  .food-tags {
    display: flex; gap: 0.5rem; flex-wrap: wrap;
  }
  .food-tag {
    background: rgba(196,160,85,0.15); border: 1px solid rgba(196,160,85,0.35);
    color: var(--gold-light); font-size: 0.75rem; padding: 4px 12px;
    border-radius: 20px; font-weight: 500;
  }

  /* ===== CONTENT AREA ===== */
  .food-content {
    background: var(--cream);
    padding: 5rem 2rem;
  }
  .food-layout {
    max-width: 1000px; margin: 0 auto;
    display: grid; grid-template-columns: 2fr 1fr; gap: 4rem;
    align-items: start;
  }

  .food-article h2 {
    font-size: 1.6rem; font-weight: 900; color: var(--green-dark);
    margin-bottom: 1rem; margin-top: 2.5rem;
    padding-right: 1rem;
    border-right: 4px solid var(--gold);
    line-height: 1.4;
  }
  .food-article h2:first-child { margin-top: 0; }
  .food-article p {
    color: #5A4030; line-height: 2.4; font-size: 1rem;
    margin-bottom: 1.2rem;
  }
  .food-article p strong {
    color: var(--green-dark); font-weight: 700;
  }

  .highlight-box {
    background: linear-gradient(135deg, rgba(45,80,22,0.06), rgba(196,160,85,0.08));
    border: 1px solid rgba(196,160,85,0.25);
    border-radius: 8px;
    padding: 1.5rem 2rem;
    margin: 2rem 0;
  }
  .highlight-box p {
    margin-bottom: 0;
    font-style: italic;
    color: var(--green-dark) !important;
    font-size: 1.05rem !important;
  }
  .highlight-box::before {
    content: '🌿';
    display: block;
    font-size: 1.5rem;
    margin-bottom: 0.75rem;
  }

  /* ===== SIDEBAR ===== */
  .food-sidebar {
    position: sticky; top: 84px;
  }

  /* کارت اطلاعات غذا */
  .sidebar-card {
    background: rgba(26, 48, 8, 0.85);
    backdrop-filter: blur(2px);
    border: 1px solid rgba(196, 160, 85, 0.4);
    border-radius: 24px;
    padding: 1.8rem;
    margin-bottom: 1.8rem;
    transition: all 0.3s ease-in-out;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
  }
  .sidebar-card:hover {
    transform: translateY(-4px);
    border-color: var(--gold);
    box-shadow: 0 20px 32px rgba(0, 0, 0, 0.3);
  }
  .sidebar-card h3 {
    font-size: 1.25rem;
    font-weight: 800;
    letter-spacing: -0.3px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1.2rem;
    border-bottom: 2px dashed rgba(196, 160, 85, 0.3);
    padding-bottom: 0.75rem;
    color: var(--gold);
  }
  .sidebar-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 0.9rem 0;
    border-bottom: 1px solid rgba(245, 237, 216, 0.08);
    transition: background 0.2s;
  }
  .sidebar-row:hover {
    background: rgba(196, 160, 85, 0.1);
    margin: 0 -0.5rem;
    padding: 0.9rem 0.5rem;
    border-radius: 12px;
  }
  .sidebar-row .label {
    font-size: 0.85rem;
    font-weight: 500;
    color: #d4c9b2;
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }
  .sidebar-row .label::before {
    font-size: 1rem;
    filter: drop-shadow(0 1px 1px rgba(0,0,0,0.3));
  }
  .sidebar-row:first-of-type .label::before { content: "💰 "; }
  .sidebar-row:nth-of-type(2) .label::before { content: "🍽️ "; }
  .sidebar-row:nth-of-type(3) .label::before { content: "🐟 "; }
  .sidebar-row:nth-of-type(4) .label::before { content: "🔥 "; }
  .sidebar-row:nth-of-type(5) .label::before { content: "🍚 "; }
  .sidebar-row:nth-of-type(6) .label::before { content: "⚠️ "; }
  .sidebar-row:nth-of-type(7) .label::before { content: "⏱️ "; }
  .sidebar-row .value {
    font-weight: 700;
    color: #f5ede8;
    background: rgba(0, 0, 0, 0.3);
    padding: 2px 8px;
    border-radius: 20px;
    font-size: 0.85rem;
  }
  .sidebar-row .value.gold {
    background: rgba(196, 160, 85, 0.2);
    color: var(--gold);
    font-size: 1.1rem;
    font-weight: 900;
    padding: 4px 12px;
  }

  /* کارت رزرو (CTA) - استایل مدرن و بدون تداخل */
  .cta-card {
    background: linear-gradient(135deg, #f5b042, #d48f2b);
    border-radius: 28px;
    padding: 2rem 1.8rem;
    text-align: center;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.25);
    transition: all 0.3s;
    border: none;
    margin-bottom: 1.8rem;
  }
  .cta-card:hover {
    transform: scale(1.02);
    box-shadow: 0 20px 35px rgba(0, 0, 0, 0.35);
  }
  .cta-card h3 {
    font-size: 1.4rem;
    font-weight: 900;
    color: #2a4512;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
  }
  .cta-card p {
    color: #3a2a1c;
    font-weight: 500;
    font-size: 0.9rem;
    margin-bottom: 1.8rem;
    opacity: 0.9;
  }
  .cta-card a {
    display: block;
    background: #1f3a0c;
    color: #ffefcf;
    padding: 12px 18px;
    border-radius: 40px;
    text-decoration: none;
    font-weight: 800;
    font-size: 0.9rem;
    transition: all 0.25s;
    margin-bottom: 0.8rem;
    letter-spacing: 0.3px;
    border: 1px solid rgba(255, 235, 170, 0.3);
  }
  .cta-card a:hover {
    background: #102505;
    transform: translateY(-2px);
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.2);
    color: #fff;
  }
  .cta-card .btn-call {
    background: rgba(31, 58, 12, 0.2);
    backdrop-filter: blur(2px);
    border: 2px solid #1f3a0c;
    color: #1f3a0c;
    font-weight: 800;
  }
  .cta-card .btn-call:hover {
    background: #1f3a0c;
    color: #ffefcf;
    border-color: #ffefcf;
  }

  /* کارت آدرس - استایل مخصوص آخرین کارت */
  .sidebar-card:last-of-type {
    text-align: right;
  }
  .sidebar-card:last-of-type h3::before {
    content: "📍 ";
    font-size: 1.2rem;
  }
  .sidebar-card:last-of-type div {
    line-height: 1.9;
    font-weight: 400;
    background: rgba(0, 0, 0, 0.2);
    padding: 12px 16px;
    border-radius: 20px;
    margin-top: 8px;
  }
  .sidebar-card:last-of-type a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--gold);
    color: var(--green-dark);
    padding: 8px 18px;
    border-radius: 40px;
    margin-top: 1rem;
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;
    transition: 0.2s;
  }
  .sidebar-card:last-of-type a:hover {
    background: #b88a2e;
    color: #0D1F05;
    padding-right: 24px;
  }

  /* ===== OTHER COMPONENTS (Ingredients, Related, etc) ===== */
  .ingredients-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
    gap: 1rem; margin-top: 1.5rem;
  }
  .ingredient-item {
    background: rgba(45,80,22,0.07); border: 1px solid rgba(45,80,22,0.15);
    border-radius: 8px; padding: 1rem; text-align: center;
  }
  .ingredient-item .ing-icon { font-size: 2rem; margin-bottom: 0.5rem; display: block; }
  .ingredient-item .ing-name { font-size: 0.8rem; font-weight: 600; color: var(--green-dark); }

  .related-section {
    background: var(--cream-dark);
    padding: 4rem 2rem;
  }
  .related-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 1.25rem; max-width: 1000px; margin: 2rem auto 0;
  }
  .related-card {
    background: white; border-radius: 8px; overflow: hidden;
    text-decoration: none; color: inherit;
    border: 1px solid rgba(45,80,22,0.1);
    transition: all 0.3s;
    display: block;
  }
  .related-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(30,58,15,0.15); }
  .related-img {
    height: 100px; background: linear-gradient(135deg, #2D5016, #1A3008);
    display: flex; align-items: center; justify-content: center;
    font-size: 3rem;
  }
  .related-body { padding: 1rem; }
  .related-name { font-size: 0.95rem; font-weight: 700; color: var(--green-dark); margin-bottom: 0.25rem; }
  .related-price { font-size: 0.85rem; color: var(--gold); font-weight: 600; }

  @media(max-width: 768px) {
    .food-layout { grid-template-columns: 1fr; gap: 2rem; }
    .food-sidebar { position: static; }
    .food-hero-meta { flex-direction: column; align-items: flex-start; gap: 1rem; }
  }
  /* ===== کارت آدرس - استایل اختصاصی و پایدار ===== */
.sidebar-card.address-card {
    text-align: right;
}
.sidebar-card.address-card h3::before {
    content: "📍 ";
    font-size: 1.2rem;
}
.sidebar-card.address-card div {
    line-height: 1.9;
    font-weight: 400;
    background: rgba(0, 0, 0, 0.2);
    padding: 12px 16px;
    border-radius: 20px;
    margin-top: 8px;
    color: rgba(245, 237, 216, 0.9);
}
.sidebar-card.address-card a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--gold);
    color: var(--green-dark);
    padding: 8px 18px;
    border-radius: 40px;
    margin-top: 1rem;
    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;
    transition: 0.2s;
}
.sidebar-card.address-card a:hover {
    background: #b88a2e;
    color: #0D1F05;
    padding-right: 24px;
}

  /* ===== استایل اختصاصی صفحه بلاگ ===== */
  .blog-hero {
    background: linear-gradient(160deg, var(--green-dark) 0%, #1A3008 60%, #0D1F05 100%);
    min-height: 40vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 120px 2rem 4rem;
    position: relative;
    margin-top: 64px;
  }
  .blog-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(175deg, transparent, transparent 40px, rgba(74,124,47,0.06) 40px, rgba(74,124,47,0.06) 41px);
  }
  .blog-hero-content {
    position: relative;
    z-index: 2;
  }
  .blog-hero h1 {
    font-size: clamp(2rem, 6vw, 3.5rem);
    font-weight: 900;
    color: var(--cream);
    margin-bottom: 1rem;
  }
  .blog-hero h1 .gold {
    color: var(--gold);
  }
  .blog-hero p {
    font-size: 1.1rem;
    color: rgba(245,237,216,0.7);
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.8;
  }

  /* بخش اصلی بلاگ */
  .blog-main {
    background: var(--cream);
    padding: 4rem 2rem;
  }
  .blog-container {
    max-width: 1200px;
    margin: 0 auto;
  }
  .blog-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 2rem;
    margin-bottom: 3rem;
  }
  .blog-card {
    background: white;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(30,58,15,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(45,80,22,0.1);
    display: flex;
    flex-direction: column;
  }
  .blog-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(30,58,15,0.15);
  }
  .blog-card-img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    background: linear-gradient(135deg, var(--green-mid), var(--green-dark));
    display: block;
  }
  .blog-card-content {
    padding: 1.5rem;
    flex: 1;
    display: flex;
    flex-direction: column;
  }
  .blog-card-category {
    font-size: 0.7rem;
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 0.5rem;
    font-weight: 700;
  }
  .blog-card-title {
    font-size: 1.25rem;
    font-weight: 900;
    color: var(--green-dark);
    margin-bottom: 0.75rem;
    line-height: 1.4;
  }
  .blog-card-excerpt {
    font-size: 0.9rem;
    color: #5A4030;
    line-height: 1.8;
    margin-bottom: 1rem;
    flex: 1;
  }
  .blog-card-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    border-top: 1px solid rgba(45,80,22,0.1);
    padding-top: 1rem;
  }
  .blog-card-date {
    font-size: 0.75rem;
    color: #9A8070;
  }
  .blog-read-more {
    background: transparent;
    border: none;
    color: var(--gold);
    font-weight: 700;
    font-size: 0.85rem;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: color 0.3s;
  }
  .blog-read-more:hover {
    color: var(--green-dark);
  }
  .blog-read-more::after {
    content: '←';
    transition: transform 0.3s;
  }
  .blog-read-more:hover::after {
    transform: translateX(-5px);
  }

  /* صفحه‌بندی */
  .pagination {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 2rem;
  }
  .page-btn {
    background: transparent;
    border: 1px solid rgba(45,80,22,0.2);
    color: var(--green-dark);
    padding: 8px 14px;
    border-radius: 4px;
    cursor: pointer;
    font-family: inherit;
    font-size: 0.9rem;
    transition: all 0.3s;
  }
  .page-btn.active {
    background: var(--gold);
    border-color: var(--gold);
    color: var(--green-dark);
    font-weight: 700;
  }
  .page-btn:hover:not(.active) {
    background: rgba(196,160,85,0.2);
    border-color: var(--gold);
  }
  .page-btn.disabled {
    opacity: 0.4;
    cursor: not-allowed;
    pointer-events: none;
  }

  @media (max-width: 768px) {
    .blog-grid {
      grid-template-columns: 1fr;
    }
    .blog-hero {
      min-height: 30vh;
      padding-top: 100px;
    }
  }