/* =============================================
   ACTIVITIES PAGE — REDESIGN
   ============================================= */

/* ------- STATS COUNTER BAR ------- */
.tfl-stats-bar {
  background: #fff;
  padding: 0;
  border-bottom: 1px solid #eee;
}
.tfl-stats-bar__inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  padding: 35px 0;
  flex-wrap: wrap;
}
.tfl-stats-bar__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0 40px;
}
.tfl-stats-bar__number {
  font-size: 2.4rem;
  font-weight: 700;
  color: #2d5f2d;
  line-height: 1.1;
}
.tfl-stats-bar__label {
  font-size: 0.85rem;
  color: #888;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-top: 4px;
}
.tfl-stats-bar__divider {
  width: 1px;
  height: 45px;
  background: #e0e0e0;
}
@media (max-width: 767px) {
  .tfl-stats-bar__inner {
    gap: 20px;
  }
  .tfl-stats-bar__item { padding: 0 20px; }
  .tfl-stats-bar__number { font-size: 1.8rem; }
  .tfl-stats-bar__divider { display: none; }
}

/* ------- INTRO SECTION ------- */
.tfl-act-intro {
  padding: 80px 20px;
  background: #fff;
}
.tfl-act-intro__title {
  font-size: 2.4rem;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 20px;
}
.tfl-act-intro__desc {
  font-size: 1.05rem;
  color: #555;
  line-height: 1.85;
  max-width: 720px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .tfl-act-intro__title { font-size: 1.8rem; }
  .tfl-act-intro__desc { font-size: 0.95rem; }
}

/* ------- ACTIVITY SECTIONS ------- */
.tfl-act-section {
  padding: 80px 0;
  background: #fff;
}
.tfl-act-section--alt {
  background: #f8faf9;
}

/* Section Header */
.tfl-act-section__header {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  margin-bottom: 40px;
  padding-bottom: 30px;
  border-bottom: 1px solid #eee;
}
.tfl-act-section__icon {
  width: 56px;
  height: 56px;
  min-width: 56px;
  border-radius: 14px;
  background: linear-gradient(135deg, #0e2a20 0%, #1a4a38 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #7dcea0;
  font-size: 1.3rem;
  margin-top: 2px;
}
.tfl-act-section__icon--farm {
  background: linear-gradient(135deg, #2d5f2d 0%, #4a8f4a 100%);
}
.tfl-act-section__icon--aqua {
  background: linear-gradient(135deg, #1a3d5c 0%, #2a6090 100%);
  color: #7dc4e0;
}
.tfl-act-section__icon--indoor {
  background: linear-gradient(135deg, #4a3520 0%, #7a5830 100%);
  color: #d4a96a;
}
.tfl-act-section__tag {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: #7dcea0;
  font-weight: 600;
  margin-bottom: 4px;
}
.tfl-act-section__title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 6px;
}
.tfl-act-section__subtitle {
  font-size: 0.95rem;
  color: #777;
  margin: 0;
  line-height: 1.5;
}
.tfl-act-section--alt .tfl-act-section__header {
  border-bottom-color: #e0e5e2;
}

/* Grid card variant */
.tfl-activity-card--grid {
  height: 280px;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .tfl-activity-card--grid { height: 240px; }
  .tfl-act-section { padding: 50px 0; }
  .tfl-act-section__header { flex-direction: column; gap: 12px; }
  .tfl-act-section__title { font-size: 1.5rem; }
}

/* Category-specific tag colors */
.tfl-activity-card__tag--farm {
  background: rgba(74, 143, 74, 0.2);
  color: #4a8f4a;
  border-color: rgba(74, 143, 74, 0.3);
}
.tfl-activity-card__tag--aqua {
  background: rgba(42, 96, 144, 0.2);
  color: #4a9fd4;
  border-color: rgba(42, 96, 144, 0.3);
}
.tfl-activity-card__tag--indoor {
  background: rgba(212, 169, 106, 0.2);
  color: #d4a96a;
  border-color: rgba(212, 169, 106, 0.3);
}

/* ------- CTA BOOKING SECTION ------- */
.tfl-act-cta {
  padding: 80px 0;
  background: linear-gradient(160deg, #0a1a14 0%, #0e2a20 50%, #081812 100%);
}
.tfl-act-cta__inner {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 20px;
  padding: 50px 45px;
  backdrop-filter: blur(10px);
}
.tfl-act-cta__title {
  font-size: 2rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 10px;
}
.tfl-act-cta__desc {
  color: rgba(255,255,255,0.7);
  font-size: 1rem;
  margin: 0;
  line-height: 1.6;
}
.tfl-act-cta__btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #7dcea0;
  color: #0a1a14;
  padding: 16px 36px;
  border-radius: 50px;
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}
.tfl-act-cta__btn:hover {
  background: #fff;
  color: #0a1a14;
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(125, 206, 160, 0.3);
}
.tfl-act-cta__btn i {
  transition: transform 0.3s ease;
}
.tfl-act-cta__btn:hover i {
  transform: translateX(4px);
}
@media (max-width: 767px) {
  .tfl-act-cta__inner { padding: 35px 25px; }
  .tfl-act-cta__title { font-size: 1.5rem; }
}