/* Generated CSS classes for the specialty services section so the CSP can block inline styles. */
.csp-s137{padding:70px 20px !important;background:#f8f9fa !important}
.csp-s138{text-align:center !important;margin-bottom:48px !important}
.csp-s139{display:inline-block !important;background:#e8f5e9 !important;color:#1E9E3E !important;font-size:12px !important;font-weight:800 !important;letter-spacing:1px !important;text-transform:uppercase !important;padding:6px 16px !important;border-radius:20px !important;margin-bottom:12px !important}
.csp-s140{font-size:2.2rem !important;font-weight:900 !important;color:#1a1a2e !important;margin-bottom:12px !important}
.csp-s141{color:#6b7280 !important;font-size:1.05rem !important;max-width:600px !important;margin:0 auto !important;line-height:1.7 !important}
.csp-s142{background:white !important;border-radius:20px !important;box-shadow:0 4px 24px rgba(0,0,0,0.08) !important;overflow:hidden !important;max-width:900px !important;margin:0 auto !important}
.csp-s143{background:linear-gradient(135deg,#1E9E3E,#2DC653) !important;padding:28px 32px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;flex-wrap:wrap !important;gap:12px !important}
.csp-s144{font-size:1.6rem !important;font-weight:900 !important;color:white !important;margin-bottom:4px !important}
.csp-s145{color:rgba(255,255,255,0.85) !important;font-size:1rem !important}
.csp-s146{font-size:1.3rem !important;color:white !important}
.csp-s147{background:white !important;color:#1E9E3E !important;font-weight:800 !important;font-size:14px !important;padding:12px 24px !important;border-radius:12px !important;text-decoration:none !important;white-space:nowrap !important}
.csp-s148{padding:28px 32px !important}
.csp-s149{color:#4b5563 !important;font-size:1rem !important;line-height:1.8 !important;margin-bottom:24px !important}
.csp-s150{color:#4b5563 !important;font-size:0.97rem !important;line-height:1.8 !important;margin-bottom:28px !important}
.csp-s151{font-size:1.1rem !important;font-weight:800 !important;color:#1a1a2e !important;margin-bottom:16px !important}
.csp-s152{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:16px !important}
.csp-s153{border:2px solid #e5e7eb !important;border-radius:14px !important;padding:20px !important;position:relative !important}
.csp-s154{background:#e8f5e9 !important;color:#1E9E3E !important;font-size:11px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:0.5px !important;padding:4px 10px !important;border-radius:20px !important;display:inline-block !important;margin-bottom:10px !important}
.csp-s155{font-size:1.8rem !important;font-weight:900 !important;color:#1a1a2e !important;margin-bottom:4px !important}
.csp-s156{font-size:1rem !important;color:#6b7280 !important;font-weight:600 !important}
.csp-s157{font-size:13px !important;color:#6b7280 !important;line-height:1.6 !important;margin:0 !important}
.csp-s158{border:2px solid #2DC653 !important;border-radius:14px !important;padding:20px !important;position:relative !important;box-shadow:0 0 0 1px #2DC653 !important}
.csp-s159{background:#2DC653 !important;color:white !important;font-size:11px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:0.5px !important;padding:4px 10px !important;border-radius:20px !important;display:inline-block !important;margin-bottom:10px !important}
.csp-s160{border:2px solid #e5e7eb !important;border-radius:14px !important;padding:20px !important}
.csp-s161{background:#fff3e0 !important;color:#e65100 !important;font-size:11px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:0.5px !important;padding:4px 10px !important;border-radius:20px !important;display:inline-block !important;margin-bottom:10px !important}
.csp-s162{background:#f0fdf4 !important;border-left:4px solid #2DC653 !important;border-radius:0 10px 10px 0 !important;padding:14px 18px !important;margin-top:24px !important}
.csp-s163{font-size:13px !important;color:#374151 !important;margin:0 !important;line-height:1.6 !important}
.csp-s164{display:flex !important;gap:12px !important;margin-top:24px !important;flex-wrap:wrap !important}
.csp-s165{background:#2DC653 !important;color:white !important;font-weight:800 !important;font-size:14px !important;padding:13px 24px !important;border-radius:12px !important;text-decoration:none !important}
.csp-s166{background:white !important;color:#1E9E3E !important;font-weight:800 !important;font-size:14px !important;padding:13px 24px !important;border-radius:12px !important;text-decoration:none !important;border:2px solid #2DC653 !important}
.csp-s167{background:white !important;border-radius:20px !important;box-shadow:0 4px 24px rgba(0,0,0,0.08) !important;overflow:hidden !important;max-width:900px !important;margin:32px auto 0 !important}
.csp-s168{background:linear-gradient(135deg,#1D7ED8,#3b9edd) !important;padding:28px 32px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;flex-wrap:wrap !important;gap:12px !important}
.csp-s169{background:white !important;color:#1D7ED8 !important;font-weight:800 !important;font-size:14px !important;padding:12px 24px !important;border-radius:12px !important;text-decoration:none !important;white-space:nowrap !important}
.csp-s170{background:#fff3e0 !important;border-left:4px solid #F76B1C !important;border-radius:0 10px 10px 0 !important;padding:14px 18px !important;margin-bottom:20px !important;display:flex !important;align-items:flex-start !important;gap:10px !important}
.csp-s171{font-size:1.2rem !important}
.csp-s172{font-size:14px !important;color:#374151 !important;margin:0 !important;line-height:1.6 !important}
.csp-s173{color:#4b5563 !important;font-size:0.97rem !important;line-height:1.8 !important;margin-bottom:24px !important}
.csp-s174{font-size:1.05rem !important;font-weight:800 !important;color:#1a1a2e !important;margin-bottom:14px !important}
.csp-s175{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(200px,1fr)) !important;gap:10px !important;margin-bottom:24px !important}
.csp-s176{display:flex !important;align-items:center !important;gap:8px !important;font-size:14px !important;color:#374151 !important}
.csp-s177{color:#2DC653 !important;font-weight:800 !important}
.csp-s178{border:2px solid #e5e7eb !important;border-radius:14px !important;padding:20px !important;display:inline-block !important;margin-bottom:24px !important}
.csp-s179{font-size:11px !important;font-weight:800 !important;text-transform:uppercase !important;letter-spacing:0.5px !important;color:#6b7280 !important;margin-bottom:6px !important}
.csp-s180{font-size:2rem !important;font-weight:900 !important;color:#1a1a2e !important}
.csp-s181{font-size:13px !important;color:#6b7280 !important;margin-top:4px !important}
.csp-s182{background:#f0f7ff !important;border-left:4px solid #1D7ED8 !important;border-radius:0 10px 10px 0 !important;padding:14px 18px !important;margin-bottom:24px !important}
.csp-s183{display:inline-block !important;background:#1D7ED8 !important;color:white !important;font-weight:800 !important;font-size:14px !important;padding:13px 24px !important;border-radius:12px !important;text-decoration:none !important}

/* ================================================================
   GOLDKNOCK PROMO BANNER — added for coming soon launch page
   ================================================================ */

.gk-promo-section {
  padding: 64px 0;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #060a13 0%, #0d1424 60%, #06090e 100%);
  border-top: 1px solid rgba(244,165,34,0.18);
  border-bottom: 1px solid rgba(244,165,34,0.18);
}

.gk-promo-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(244,165,34,0.45), transparent);
}

.gk-promo-section::after {
  content: '';
  position: absolute;
  width: 500px;
  height: 260px;
  top: 50%;
  left: 25%;
  transform: translateY(-50%);
  background: radial-gradient(ellipse, rgba(244,165,34,0.07) 0%, transparent 70%);
  pointer-events: none;
  filter: blur(40px);
}

.gk-promo-inner {
  display: flex;
  align-items: center;
  gap: 36px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

.gk-promo-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(244,165,34,0.1);
  border: 1px solid rgba(244,165,34,0.32);
  color: #F4A522;
  padding: 8px 20px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  white-space: nowrap;
  flex-shrink: 0;
}

.gk-promo-badge::before {
  content: '';
  width: 7px;
  height: 7px;
  background: #F4A522;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: 0 0 8px #F4A522;
  animation: gk-promo-pulse 2.2s ease-in-out infinite;
}

@keyframes gk-promo-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.35; transform: scale(0.75); }
}

.gk-promo-content {
  flex: 1;
  min-width: 220px;
}

.gk-promo-title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: clamp(28px, 4.5vw, 46px);
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 10px;
  color: #ffffff;
  text-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

.gk-promo-title span {
  background: linear-gradient(180deg, #fff3c4 0%, #F4A522 38%, #c07818 78%, #8b5a0a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  filter: drop-shadow(0 2px 6px rgba(244,165,34,0.3));
}

.gk-promo-sub {
  font-size: 15px;
  color: rgba(255,255,255,0.62);
  line-height: 1.65;
  max-width: 500px;
}

.gk-promo-btn {
  display: inline-block;
  background: linear-gradient(135deg, #fff3a8 0%, #F4A522 42%, #c97a1c 100%);
  color: #06090e;
  padding: 15px 34px;
  border-radius: 8px;
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.02em;
  text-decoration: none;
  white-space: nowrap;
  flex-shrink: 0;
  box-shadow: 0 4px 20px rgba(244,165,34,0.32),
              inset 0 1px 0 rgba(255,243,168,0.5),
              inset 0 -1px 0 rgba(139,90,10,0.2);
  transition: transform 0.2s cubic-bezier(0.4,0,0.2,1),
              box-shadow 0.2s cubic-bezier(0.4,0,0.2,1);
}

.gk-promo-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 32px rgba(244,165,34,0.48),
              inset 0 1px 0 rgba(255,243,168,0.65);
}

@media (max-width: 768px) {
  .gk-promo-section {
    padding: 48px 0;
  }
  .gk-promo-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
  }
  .gk-promo-btn {
    align-self: stretch;
    text-align: center;
  }
}
