/* ════════════════════════════════════════════════════════════
   Freedom Discovery — Services page (extends home.css)
   ════════════════════════════════════════════════════════════ */

/* ─── Philosophy split ─── */
.svc-split { display: grid; grid-template-columns: 1.05fr 1fr; gap: clamp(32px, 5vw, 64px); align-items: center; }
.svc-split-text .section-eyebrow { display: inline-block; margin-bottom: 14px; }
.svc-split-text h2 {
  font-size: clamp(25px, 3.6vw, 38px); font-weight: 800; color: var(--ink);
  line-height: 1.18; letter-spacing: -0.02em; margin-bottom: 18px;
}
.svc-split-text p { color: var(--body); line-height: 1.85; margin-bottom: 16px; }
.svc-split-text p strong { color: var(--ink); }
.svc-quote {
  margin-top: 24px; padding: 22px 26px; border-radius: 18px;
  background: linear-gradient(150deg, rgba(47,100,224,0.08), rgba(244,124,31,0.06));
  border-left: 4px solid var(--orange);
}
.svc-quote i { color: var(--orange); font-size: 18px; opacity: 0.6; }
.svc-quote p {
  font-family: 'Playfair Display', serif; font-style: italic;
  font-size: clamp(15px, 1.9vw, 18px); color: var(--ink); line-height: 1.6; margin: 6px 0 0;
}
.svc-split-media img {
  width: 100%; height: 100%; max-height: 460px; object-fit: cover;
  border-radius: 24px; box-shadow: 0 30px 70px rgba(8,26,77,0.18);
}
@media (max-width: 820px) { .svc-split { grid-template-columns: 1fr; gap: 40px; } }

/* ─── Trust strip ─── */
.svc-trust { background: var(--blue-deep); padding: clamp(34px, 5vw, 54px) 28px; }
.svc-trust-grid {
  max-width: 1000px; margin: 0 auto; display: flex; flex-wrap: wrap;
  justify-content: center; gap: clamp(22px, 5vw, 64px);
}
.svc-trust-item { display: flex; align-items: center; gap: 13px; color: #fff; }
.svc-trust-item i { color: var(--orange); font-size: 24px; }
.svc-trust-item span { font-size: clamp(15px, 2vw, 18px); font-weight: 700; }

/* ─── Core Training Areas catalog ─── */
.catalog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.catalog-card {
  display: flex; flex-direction: column; padding: 34px 30px;
  background: var(--white); border: 1px solid var(--line); border-radius: 22px;
  transition: transform 0.3s var(--ease), box-shadow 0.3s var(--ease), border-color 0.3s ease;
}
.catalog-card:hover {
  transform: translateY(-6px); border-color: rgba(47,100,224,0.3);
  box-shadow: 0 26px 56px rgba(8,26,77,0.13);
}
.cat-icon {
  width: 62px; height: 62px; border-radius: 16px; display: grid; place-items: center;
  font-size: 24px; color: #fff; margin-bottom: 20px;
  background: linear-gradient(150deg, var(--blue-bright), var(--blue));
  box-shadow: 0 12px 26px rgba(26,78,200,0.3);
}
.catalog-card h3 { font-size: 20px; font-weight: 800; color: var(--ink); margin-bottom: 10px; }
.cat-desc { font-size: 14px; color: var(--body); line-height: 1.7; margin-bottom: 20px; }
.cat-list { list-style: none; margin-top: auto; }
.cat-list li {
  position: relative; padding-left: 24px; font-size: 13.5px; color: var(--body);
  line-height: 1.55; margin-bottom: 11px;
}
.cat-list li i { position: absolute; left: 0; top: 3px; color: var(--orange); font-size: 12px; }

/* Custom-training CTA card */
.catalog-card.is-cta {
  background: linear-gradient(155deg, var(--blue), var(--blue-deep)); border-color: transparent;
  justify-content: center; text-align: left;
}
.catalog-card.is-cta h3 { color: #fff; }
.catalog-card.is-cta .cat-desc { color: rgba(255,255,255,0.82); margin-bottom: 24px; }
.catalog-card.is-cta .cat-icon { background: rgba(255,255,255,0.16); box-shadow: none; }
.catalog-card.is-cta .btn-primary { align-self: flex-start; }
@media (max-width: 980px) { .catalog-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .catalog-grid { grid-template-columns: 1fr; } }
