/* ============================================
   CATEGORY PAGES
   ============================================ */

/* ---- Breadcrumb ---- */
.cat-hero__breadcrumb {
  font-size: 13px;
  color: rgba(255,255,255,.65);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 6px;
  justify-content: center;
}
.cat-hero__breadcrumb a {
  color: rgba(255,255,255,.75);
  text-decoration: none;
  transition: color .15s;
}
.cat-hero__breadcrumb a:hover { color: #fff; text-decoration: underline; }

/* override catalog hero for category hero alignment */
.cat-hero--category { text-align: left; padding: 52px 0 44px; }
.cat-hero--category .cat-hero__breadcrumb { justify-content: flex-start; }
.cat-hero--category .cat-hero__stats { justify-content: flex-start; }

/* ---- Quick budget filter ---- */
.cat-quick-filter {
  background: var(--white);
  border-bottom: 1.5px solid var(--border);
  padding: 14px 0;
  position: sticky;
  top: 64px;
  z-index: 80;
}
.cat-quick-filter .container {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.cat-quick-filter > .container > span {
  font-size: 13px;
  font-weight: 700;
  color: var(--text-3);
  text-transform: uppercase;
  letter-spacing: .05em;
  margin-right: 4px;
  white-space: nowrap;
}

/* ---- Cert grid section ---- */
.section--cards { padding: 48px 0 64px; }
.section--cards .certs-grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }

/* ---- SEO text block ---- */
.cat-seo-text {
  background: #F8F7FF;
  border-top: 1.5px solid var(--border);
  padding: 64px 0;
}
.cat-seo-text__inner {
  max-width: 760px;
}
.cat-seo-text h2 {
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 800;
  margin-bottom: 20px;
  line-height: 1.25;
  color: var(--text);
}
.cat-seo-text p {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-2);
  margin-bottom: 16px;
}
.cat-seo-text p:last-child { margin-bottom: 0; }
.cat-seo-text a { color: var(--brand); text-decoration: underline; }
.cat-seo-text a:hover { color: #4338CA; }

.cat-seo-text__articles {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
}
.cat-seo-text__articles-title {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--text-3);
  margin-bottom: 12px;
}
.cat-seo-text__articles-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cat-seo-text__articles-list a {
  font-size: 14px;
  font-weight: 500;
  color: var(--brand);
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 6px;
}
.cat-seo-text__articles-list a::before {
  content: '→';
  font-weight: 700;
}
.cat-seo-text__articles-list a:hover { text-decoration: underline; }

/* ---- Related categories ---- */
.related-cats { background: var(--white); padding: 64px 0; }
.related-cats h2 {
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 800;
  margin-bottom: 32px;
  color: var(--text);
}
.categories__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}
.cat-card {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--bg);
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  padding: 18px 20px;
  text-decoration: none;
  color: var(--text);
  font-weight: 600;
  font-size: 14px;
  transition: all .18s ease;
}
.cat-card:hover {
  border-color: var(--brand);
  background: var(--brand-light);
  color: var(--brand);
  transform: translateY(-2px);
  box-shadow: var(--shadow);
}
.cat-card__icon { font-size: 28px; flex-shrink: 0; }
.cat-card__info { display: flex; flex-direction: column; gap: 2px; }
.cat-card__count { font-size: 12px; font-weight: 400; color: var(--text-3); }

/* ---- CTA banner ---- */
.cat-cta {
  background: linear-gradient(135deg, #1E1B4B 0%, #4338CA 100%);
  padding: 64px 0;
  text-align: center;
  color: var(--white);
}
.cat-cta h2 { font-size: clamp(22px, 3vw, 36px); font-weight: 800; margin-bottom: 12px; }
.cat-cta p { font-size: 16px; color: rgba(255,255,255,.8); margin-bottom: 28px; max-width: 480px; margin-left: auto; margin-right: auto; }
.cat-cta__btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

/* ---- Additional image types needed for category pages ---- */
.cert-card__img--massage { background: linear-gradient(135deg, #E0E7FF, #818CF8); }
.cert-card__img--massage::after { content: '💆'; font-size: 48px; }
.cert-card__img--float { background: linear-gradient(135deg, #BAE6FD, #38BDF8); }
.cert-card__img--float::after { content: '🛁'; font-size: 48px; }
.cert-card__img--hammam { background: linear-gradient(135deg, #FEF3C7, #F59E0B); }
.cert-card__img--hammam::after { content: '♨️'; font-size: 48px; }
.cert-card__img--helicopter { background: linear-gradient(135deg, #DBEAFE, #3B82F6); }
.cert-card__img--helicopter::after { content: '🚁'; font-size: 48px; }
.cert-card__img--parachute { background: linear-gradient(135deg, #FEE2E2, #F87171); }
.cert-card__img--parachute::after { content: '🪂'; font-size: 48px; }
.cert-card__img--driving { background: linear-gradient(135deg, #D1FAE5, #10B981); }
.cert-card__img--driving::after { content: '🏎️'; font-size: 48px; }
.cert-card__img--diving { background: linear-gradient(135deg, #CFFAFE, #22D3EE); }
.cert-card__img--diving::after { content: '🤿'; font-size: 48px; }
.cert-card__img--paintball { background: linear-gradient(135deg, #DCFCE7, #4ADE80); }
.cert-card__img--paintball::after { content: '🔫'; font-size: 48px; }
.cert-card__img--plane { background: linear-gradient(135deg, #EFF6FF, #60A5FA); }
.cert-card__img--plane::after { content: '✈️'; font-size: 48px; }
.cert-card__img--yoga { background: linear-gradient(135deg, #F0FDF4, #86EFAC); }
.cert-card__img--yoga::after { content: '🧘'; font-size: 48px; }
.cert-card__img--fitness { background: linear-gradient(135deg, #FFF7ED, #FB923C); }
.cert-card__img--fitness::after { content: '🏋️'; font-size: 48px; }
.cert-card__img--pool { background: linear-gradient(135deg, #CFFAFE, #06B6D4); }
.cert-card__img--pool::after { content: '🏊'; font-size: 48px; }
.cert-card__img--martial { background: linear-gradient(135deg, #F1F5F9, #475569); }
.cert-card__img--martial::after { content: '🥋'; font-size: 48px; }
.cert-card__img--hair { background: linear-gradient(135deg, #FDF4FF, #C084FC); }
.cert-card__img--hair::after { content: '💇'; font-size: 48px; }
.cert-card__img--cosmetology { background: linear-gradient(135deg, #FAFAFA, #E879F9); }
.cert-card__img--cosmetology::after { content: '✨'; font-size: 48px; }
.cert-card__img--tattoo { background: linear-gradient(135deg, #1E293B, #475569); }
.cert-card__img--tattoo::after { content: '🖋️'; font-size: 48px; }
.cert-card__img--wine { background: linear-gradient(135deg, #FEE2E2, #B91C1C); }
.cert-card__img--wine::after { content: '🍷'; font-size: 48px; }
.cert-card__img--brunch { background: linear-gradient(135deg, #FFFBEB, #FDE68A); }
.cert-card__img--brunch::after { content: '🥂'; font-size: 48px; }
.cert-card__img--family { background: linear-gradient(135deg, #ECFDF5, #34D399); }
.cert-card__img--family::after { content: '👨‍👩‍👧'; font-size: 48px; }
.cert-card__img--kids { background: linear-gradient(135deg, #FEF9C3, #FCD34D); }
.cert-card__img--kids::after { content: '🎠'; font-size: 48px; }
.cert-card__img--horse { background: linear-gradient(135deg, #FEF3C7, #92400E); }
.cert-card__img--horse::after { content: '🐎'; font-size: 48px; }
.cert-card__img--trampoline { background: linear-gradient(135deg, #EDE9FE, #7C3AED); }
.cert-card__img--trampoline::after { content: '🤸'; font-size: 48px; }
.cert-card__img--yacht { background: linear-gradient(135deg, #DBEAFE, #1D4ED8); }
.cert-card__img--yacht::after { content: '⛵'; font-size: 48px; }
.cert-card__img--fishing { background: linear-gradient(135deg, #D1FAE5, #065F46); }
.cert-card__img--fishing::after { content: '🎣'; font-size: 48px; }
.cert-card__img--whiskey { background: linear-gradient(135deg, #FEF3C7, #92400E); }
.cert-card__img--whiskey::after { content: '🥃'; font-size: 48px; }
.cert-card__img--pilates { background: linear-gradient(135deg, #F0FDF4, #4ADE80); }
.cert-card__img--pilates::after { content: '🤸‍♀️'; font-size: 48px; }

/* ---- Responsive ---- */
@media (max-width: 768px) {
  .cat-quick-filter { top: 56px; }
  .cat-quick-filter .container { gap: 8px; }
  .categories__grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); }
  .cat-seo-text { padding: 48px 0; }
  .related-cats { padding: 48px 0; }
  .cat-cta { padding: 48px 0; }
}
@media (max-width: 480px) {
  .cat-hero--category { padding: 40px 0 32px; }
  .categories__grid { grid-template-columns: 1fr 1fr; }
}
