/* =============================================
   Orchard Direct — 合并公共样式
   作用：导航、reveal 动画、wave canvas、统计数字、
         按钮光泽、页脚链接、社交图标、卡片悬浮、
         产品筛选、新闻筛选、产品详情页等
   ============================================= */

:root {
  --fruit-primary: #0D6E6E;
  --fruit-primary-dark: #0A4F4F;
  --fruit-accent: #F28C38;
  --fruit-accent-warm: #F5A623;
  --fruit-background: #0D6E6E;
  --fruit-foreground: #FFFFFF;
  --fruit-card: #FFFFFF;
  --fruit-card-foreground: #2C1810;
  --fruit-muted: #F28C38;
  --fruit-muted-foreground: rgba(255,255,255,0.7);
  --fruit-border: #1B5E20;
  --fruit-ring: #F28C38;
  --fruit-radius-sm: 0.375rem;
  --fruit-radius-md: 0.75rem;
  --fruit-radius-lg: 1.25rem;
}

.font-display { font-family: 'Playfair Display', Georgia, serif; }
.font-body { font-family: 'DM Sans', system-ui, -apple-system, sans-serif; }

/* Tailwind v4 语义 token 兜底 */
.bg-background { background-color: var(--fruit-background); }
.text-foreground { color: var(--fruit-foreground); }
.bg-card { background-color: var(--fruit-card); }
.text-card { color: var(--fruit-card); }
.bg-primary { background-color: var(--fruit-primary); }
.text-primary { color: var(--fruit-primary); }
.bg-muted { background-color: var(--fruit-muted); }
.text-muted { color: var(--fruit-muted); }
.bg-muted-foreground { background-color: var(--fruit-muted-foreground); }
.text-muted-foreground { color: var(--fruit-muted-foreground); }
.border-border { border-color: var(--fruit-border); }

/* 无滚动条工具类 */
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

/* Lucide 图标兼容 */
[data-icon] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: currentColor;
}

/* Logo 叶子装饰 */
.logo-leaf {
  position: absolute;
  top: -7px;
  right: -3px;
  width: 10px;
  height: 10px;
  background: #F28C38;
  border-radius: 0 50% 50% 50%;
  transform: rotate(-45deg);
  pointer-events: none;
}

/* 导航链接下划线动画 */
.nav-link::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 0;
  height: 2px;
  border-radius: 1px;
  background: #F28C38;
  transition: width 0.3s ease;
}
.nav-link:hover::after { width: 100%; }

/* 当前页导航高亮：常驻下划线 */
.nav-current::after { width: 100%; }

/* 滚动入场动画 */
.reveal {
  opacity: 0;
  transform: translateY(120px);
}
.reveal.from-left { transform: translateX(-120px); }
.reveal.from-right { transform: translateX(120px); }
@media (max-width: 1023px) {
  .reveal.from-left, .reveal.from-right { transform: translateY(60px); }
}
.reveal.visible {
  animation: revealIn 0.9s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes revealIn {
  to { opacity: 1; transform: translate(0, 0); }
}

/* 交互式 canvas 波浪 */
.wave-canvas { display: block; width: 100%; height: 100%; }

/* Hero 逐行入场 */
.hero-line {
  opacity: 0;
  transform: translateY(60px) scale(0.9);
  animation: heroUp 0.9s cubic-bezier(0.34,1.56,0.64,1) forwards;
}
.hero-line:nth-child(1) { animation-delay: 0.1s; }
.hero-line:nth-child(2) { animation-delay: 0.25s; }
.hero-line:nth-child(3) { animation-delay: 0.4s; }
.hero-line:nth-child(4) { animation-delay: 0.55s; }
@keyframes heroUp { to { opacity: 1; transform: translateY(0) scale(1); } }

/* 头部飞入：logo 从左、菜单从右 */
.nav-fly-left {
  opacity: 0;
  transform: translateX(-60px);
  animation: navFlyIn 0.8s cubic-bezier(0.22,1,0.36,1) forwards;
  animation-delay: 0.1s;
}
.nav-fly-right {
  opacity: 0;
  transform: translateX(60px);
  animation: navFlyIn 0.8s cubic-bezier(0.22,1,0.36,1) forwards;
  animation-delay: 0.25s;
}
@keyframes navFlyIn { to { opacity: 1; transform: translateX(0); } }

/* 产品卡片悬浮 */
.product-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.product-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px -12px rgba(44,24,16,0.25);
}
.product-card .p-emoji {
  transition: transform 0.4s cubic-bezier(0.34,1.56,0.64,1);
}
.product-card:hover .p-emoji {
  transform: scale(1.25) rotate(-6deg);
}

/* 品牌卡片悬浮 */
.brand-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.brand-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px -8px rgba(0,0,0,0.18);
}

/* 新闻卡片悬浮 */
.news-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.news-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px -8px rgba(44,24,16,0.12);
}
.news-card .news-img {
  transition: transform 0.6s cubic-bezier(0.22,1,0.36,1);
}
.news-card:hover .news-img {
  transform: scale(1.06);
}

/* 承诺卡片悬浮 */
.commit-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.commit-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 48px -8px rgba(44,24,16,0.2);
}

/* 购买渠道卡片悬浮 */
.where-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.where-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px -8px rgba(44,24,16,0.12);
}

/* 按钮光泽扫过 */
.btn-shine {
  position: relative;
  overflow: hidden;
}
.btn-shine::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
  transition: left 0.5s ease;
}
.btn-shine:hover::after { left: 120%; }

/* 关于我们图片容器 */
.about-img {
  overflow: hidden;
  border-radius: 1.25rem;
}
.about-img img {
  transition: transform 0.8s cubic-bezier(0.22,1,0.36,1);
}
.about-img:hover img {
  transform: scale(1.05);
}

/* 导航栏滚动后变实底 */
.nav-scrolled {
  background: rgba(10,79,79,0.97) !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.2);
}

/* 页脚链接 */
.flink {
  display: inline-block;
  transition: color 0.2s, padding-left 0.3s;
}
.flink:hover {
  padding-left: 4px;
  color: #F28C38 !important;
}

/* 社交图标悬浮 */
.social-icon:hover {
  background: rgba(242,140,56,0.3) !important;
}

/* 统计数字样式 */
.stat-num {
  color: #fff;
  font-weight: 800;
  font-size: 2.5rem;
  line-height: 1;
  font-family: 'Playfair Display', serif;
}

/* 装饰横线 */
.accent-bar {
  width: 48px;
  height: 3px;
  border-radius: 2px;
  background: #F28C38;
}

/* Produce 页：橙色背景区域统计数字颜色 */
.stats-on-orange .stat-num { color: #2C1810; }

/* Produce 页：分类筛选标签 */
.filter-tag {
  background: rgba(255,255,255,0.2);
  color: #FFFFFF;
  cursor: pointer;
  transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;
  border: none;
}
.filter-tag:hover {
  background: rgba(255,255,255,0.35);
  transform: translateY(-2px);
}
.filter-tag.active {
  background: #FFFFFF;
  color: #2C1810;
}

/* News 页：分类筛选按钮 */
.filter-btn {
  background: #F3F4F6;
  color: #2C1810;
  cursor: pointer;
  transition: background 0.3s ease, transform 0.3s ease;
}
.filter-btn.active {
  background: #F28C38;
  color: #FFFFFF;
}
.filter-btn:not(.active):hover {
  background: #E5E7EB;
  transform: translateY(-1px);
}

/* Produce 页：产品规格项与分隔线 */
.spec-item { border-right: 1px solid currentColor; }
.spec-item:last-child { border-right: none; }

/* Pears 详情页：产品详情折叠面板 */
.detail-panel {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.detail-panel:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px -6px rgba(44,24,16,0.1);
}
.detail-toggle {
  cursor: pointer;
  transition: background-color 0.2s ease;
}
.detail-toggle:hover {
  background-color: rgba(13,110,110,0.03);
}
.detail-toggle:focus-visible {
  outline: 2px solid #F28C38;
  outline-offset: -2px;
}
.detail-panel.open .toggle-icon {
  transform: rotate(180deg);
}
.detail-content {
  will-change: max-height;
}

/* Pears 详情页：可售月份图表 */
.availability-bar {
  background-color: transparent;
  border: 1px dashed rgba(255,255,255,0.5);
}
.availability-bar.active {
  background-color: #ffffff;
  border: none;
}
      /* 产地标签 */
      .origin-badge {
        display: inline-block;
        font-family: 'DM Sans', system-ui, sans-serif;
        font-size: 0.95rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        padding: 0.25rem 0.75rem;
        border-radius: 9999px;
        white-space: nowrap;
      }
      .origin-badge.teal-bg {  color: #FFFFFF; }
      .origin-badge.yellow-bg { color: #FFFFFF; }
/* 展开后隐藏 See Details 按钮 */
.see-details-hidden { display: none !important; }

/* 产品详情页：特征卡片悬浮 */
.feature-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.feature-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px -8px rgba(44,24,16,0.12);
}

/* 产品详情页：大图 emoji 悬浮 */
.p-emoji {
  transition: transform 0.6s cubic-bezier(0.34,1.56,0.64,1);
}
.aspect-square:hover .p-emoji {
  transform: scale(1.08) rotate(-3deg);
}

/* =============================================
   新增：Brand / Contact / News / Grow 页面工具类
   ============================================= */

/* 品牌页分区块，用于 JS 滚动动画定位 */
.brand-section {
  position: relative;
}

/* 联系表单统一样式 */
.contact-form .form-input {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid rgba(44,24,16,0.15);
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
  font-size: 0.9375rem;
  color: #2C1810;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  outline: none;
}
.contact-form .form-input:focus {
  border-color: #F28C38;
  box-shadow: 0 0 0 3px rgba(242,140,56,0.15);
}
.contact-form .form-input::placeholder {
  color: rgba(44,24,16,0.35);
}
.contact-form textarea.form-input {
  resize: vertical;
  min-height: 6rem;
}

/* 联系信息卡片 */
.info-card {
  transition: transform 0.35s cubic-bezier(0.22,1,0.36,1), box-shadow 0.35s cubic-bezier(0.22,1,0.36,1);
}
.info-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 16px 40px -8px rgba(44,24,16,0.1);
}

/* 新闻卡片：图片链接区域也参与悬浮缩放 */
.news-card a:has(.news-img) {
  display: block;
  overflow: hidden;
}

/* 时间线组件（How We Grow 等页面可复用） */
.timeline {
  position: relative;
  padding-left: 2rem;
}
.timeline::before {
  content: '';
  position: absolute;
  left: 0.5rem;
  top: 0.5rem;
  bottom: 0.5rem;
  width: 2px;
  background: linear-gradient(180deg, #F28C38, #0D6E6E);
  border-radius: 1px;
}
.timeline-item {
  position: relative;
  padding-bottom: 2rem;
}
.timeline-item:last-child {
  padding-bottom: 0;
}
.timeline-item::before {
  content: '';
  position: absolute;
  left: -1.75rem;
  top: 0.25rem;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #F28C38;
  border: 2px solid #FFFFFF;
  box-shadow: 0 0 0 2px rgba(242,140,56,0.3);
}
.timeline-item.active::before {
  background: #0D6E6E;
  box-shadow: 0 0 0 4px rgba(13,110,110,0.15);
}

/* 产品详情页：展开后隐藏 See Details 按钮 */
.see-details-hidden {
  display: none !important;
}

/* 包装规格表格基础样式 */
.package-table {
  border-collapse: collapse;
  width: 100%;
}

/* 富文本容器：数据库输出的纯 HTML 表格自动套用 package-table 样式
   使用方式：<div class="package-richtext">{$content|raw}</div>
   后台编辑器只需写普通 <table><tr><td>，无需任何 class 或 style */
.package-richtext {
  font-family: 'DM Sans', system-ui, -apple-system, sans-serif;
  font-size: 0.875rem;
  color: rgba(255,255,255,0.9);
}
/* 分组小标题（如 One layer Giftbox） */
.package-richtext h3,
.package-richtext h4 {
  font-size: 0.875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #F28C38;
  margin-bottom: 0.75rem;
}
/* 每个分组容器之间留白 */
.package-richtext h3 + .overflow-x-auto,
.package-richtext h3 + table,
.package-richtext h4 + .overflow-x-auto,
.package-richtext h4 + table {
  margin-bottom: 1.5rem;
}
/* 表格本体：text-align 继承自父级，由模板层控制对齐方向
   - 产品 1（左布局）：默认 left
   - 产品 2（右布局）：<div class="package-richtext lg:text-right"> 即可让表头单元格右对齐 */
.package-richtext table {
  border-collapse: collapse;
  width: 100%;
  text-align: inherit;
}
.package-richtext thead tr {
  border-bottom: 1px solid rgba(255,255,255,0.3);
}
.package-richtext tbody tr {
  border-bottom: 1px solid rgba(255,255,255,0.15);
}
.package-richtext tbody tr:last-child {
  border-bottom: none;
}
.package-richtext th {
  padding: 0.5rem 1rem 0.5rem 0;
  font-weight: 600;
  color: #FFFFFF;
  text-align: inherit;
}
.package-richtext td {
  padding: 0.5rem 1rem 0.5rem 0;
}
/* 最后一列去掉右 padding，贴右对齐 */
.package-richtext th:last-child,
.package-richtext td:last-child {
  padding-right: 0;
}
/* 标记为强调的单元格（如 Open box Gift box） */
.package-richtext td strong,
.package-richtext strong td {
  color: #FFFFFF;
  font-weight: 600;
}
.package-richtext p img{margin: 0 auto;border-radius: var(--radius-2xl);}
/* 多行文本截断兜底（兼容 Tailwind 未开启 line-clamp 的情况） */
.line-clamp-2,
.line-clamp-4 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-2 { -webkit-line-clamp: 2; }
.line-clamp-4 { -webkit-line-clamp: 4; }


 .accent-bar {
          width: 48px;
          height: 3px;
          border-radius: 2px;
          background: #F28C38;
        }
        .btn-shine {
          position: relative;
          overflow: hidden;
        }
        .btn-shine::after {
          content: '';
          position: absolute;
          top: 0;
          left: -100%;
          width: 60%;
          height: 100%;
          background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
          transition: left 0.5s ease;
        }
        .btn-shine:hover::after { left: 120%; }
        .see-details-hidden {
          display: none !important;
        }