/* Service detail pages */
.svc-hero{padding:130px 0 66px}
.svc-hero-ic{display:inline-block;font-size:2.6rem;line-height:1;margin-bottom:14px}
.svc-hero p{max-width:640px;margin-left:auto;margin-right:auto;font-size:1.05rem}
.svc-hero-cta{margin-top:26px;display:inline-flex}

/* clickable service cards on the home page */
.card-link{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.card-link:hover .card-more{gap:10px}
.card-more{margin-top:auto;padding-top:12px;display:inline-flex;align-items:center;gap:6px;
  color:var(--green-dark);font-weight:600;font-size:.92rem;transition:gap .2s ease}

/* mid-page CTA block */
.svc-cta{margin:44px 0 8px;padding:32px;border-radius:16px;text-align:center;
  background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff}
.svc-cta h3{color:#fff;font-size:1.4rem;margin-bottom:8px}
.svc-cta p{color:rgba(255,255,255,.75);margin-bottom:20px}
.svc-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.svc-cta .btn-ghost{border:1px solid rgba(255,255,255,.45);color:#fff;background:transparent}
.svc-cta .btn-ghost:hover{background:rgba(255,255,255,.12)}

/* related services */
.svc-rel{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;margin-top:8px}
.svc-rel-card{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid var(--gray-200,#e5e7eb);
  border-radius:12px;background:#fff;text-decoration:none;color:var(--navy);font-weight:600;font-size:.95rem;
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.svc-rel-card:hover{border-color:var(--green);transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(18,38,63,.08)}
.svc-rel-ic{font-size:1.2rem}

@media (max-width:640px){
  .svc-hero{padding:110px 0 48px}
  .svc-cta{padding:24px 18px}
  .svc-cta-btns .btn{width:100%}
}

/* Application page */
.apply-body{max-width:900px}
.apply-legend{font-size:1.1rem!important;margin:30px 0 14px!important;padding-bottom:8px;
  border-bottom:1px solid var(--gray-200,#e5e7eb);color:var(--navy)}
.apply-form .field-full{grid-column:1/-1}
.apply-form input[type=file]{padding:10px;border:1px dashed var(--gray-300,#d1d5db);border-radius:10px;
  width:100%;background:#fafafa;font-size:.94rem}
.field-hint{display:block;margin-top:5px;font-size:.82rem;color:var(--gray-400,#9ca3af)}
.req{color:#c0392b}
.apply-fineprint{margin-top:18px;font-size:.82rem;line-height:1.6;color:var(--gray-400,#9ca3af)}
.apply-fineprint a{color:var(--green-dark);text-decoration:underline}
.hp-field{display:none}
