/* Protech Solutions — mobile pricing polish (#10)
   Scope: tarieven.html on small screens only. */
@media (max-width: 640px) {
  /* Keep the pricing intro premium, but get users to the actual rates sooner. */
  body.pricing-mobile-polish .page-intro {
    padding-top: 42px !important;
    padding-bottom: 6px !important;
  }

  body.pricing-mobile-polish .page-intro h1 {
    font-size: clamp(2rem, 9vw, 2.65rem) !important;
    line-height: 1.08 !important;
    margin-bottom: 14px !important;
  }

  body.pricing-mobile-polish .page-intro p {
    font-size: .98rem !important;
    line-height: 1.65 !important;
  }

  /* Reduce empty vertical travel around the rate section. */
  body.pricing-mobile-polish #rates {
    padding-top: 44px !important;
    padding-bottom: 54px !important;
  }

  body.pricing-mobile-polish #rates .section-head {
    margin-bottom: 24px !important;
  }

  body.pricing-mobile-polish #rates .rates {
    gap: 14px !important;
  }

  /* The desktop side-by-side rate row is cramped on a phone.
     Stack amount and explanation so long translations stay readable. */
  body.pricing-mobile-polish .rate-card {
    padding: 22px 18px 24px !important;
    border-radius: 18px !important;
  }

  body.pricing-mobile-polish .rate-row {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    align-items: start !important;
    padding-block: 17px !important;
  }

  body.pricing-mobile-polish .rate-row:first-child {
    padding-top: 4px !important;
  }

  body.pricing-mobile-polish .rate-amount {
    min-width: 0 !important;
    font-size: clamp(1.85rem, 9vw, 2.35rem) !important;
    line-height: 1.05 !important;
  }

  body.pricing-mobile-polish .rate-amount small {
    display: inline-block !important;
    margin: 0 0 0 7px !important;
    vertical-align: middle !important;
    font-size: .69rem !important;
  }

  body.pricing-mobile-polish .rate-text b {
    font-size: .98rem !important;
    margin-bottom: 5px !important;
  }

  body.pricing-mobile-polish .rate-text span {
    display: block !important;
    font-size: .86rem !important;
    line-height: 1.55 !important;
  }

  body.pricing-mobile-polish .rate-includes {
    margin-top: 14px !important;
    padding-top: 17px !important;
    gap: 10px !important;
  }

  body.pricing-mobile-polish .rate-includes li {
    gap: 10px !important;
    font-size: .86rem !important;
    line-height: 1.5 !important;
  }

  /* Supporting cards: same content, less wasted height. */
  body.pricing-mobile-polish .rate-side {
    gap: 12px !important;
  }

  body.pricing-mobile-polish .rate-box {
    padding: 20px 18px !important;
    border-radius: 16px !important;
  }

  body.pricing-mobile-polish .rate-box svg.ico {
    width: 20px !important;
    height: 20px !important;
    margin-bottom: 10px !important;
  }

  body.pricing-mobile-polish .rate-box h4 {
    font-size: .98rem !important;
    margin-bottom: 6px !important;
  }

  body.pricing-mobile-polish .rate-box p {
    font-size: .85rem !important;
    line-height: 1.55 !important;
  }

  body.pricing-mobile-polish .pays {
    gap: 7px !important;
    margin-top: 13px !important;
  }

  body.pricing-mobile-polish .pay {
    padding: 6px 11px 6px 8px !important;
    font-size: .76rem !important;
  }

  /* This page is already the full pricing page; the self-link adds no value. */
  body.pricing-mobile-polish #rates .home-more {
    display: none !important;
  }
}
