/* Tech Outplacement Page CSS v1.6 - IT Pros Philadelphia */

/* Hide default WP page elements */
.page-id-10873 .wp-block-post-title,
.page-id-10873 h1.entry-title,
.page-id-10873 .entry-header { display:none!important; }
.page-id-10873 main.wp-block-group > *:not(#itp-site-footer):not(.itp-op-wrap) { display:none!important; }

/* Base wrapper — break out of WP content width constraint */
.itp-op-wrap {
  font-family: 'Plus Jakarta Sans', Inter, system-ui, sans-serif !important;
  overflow-x: hidden !important;
  background: #0B0E14 !important;
  color: #e8eaed !important;
  /* Full-viewport-width breakout from constrained content column */
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── Announcement bar — truly full-width ── */
.itp-op-announce {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 11px 24px !important;
  background: rgba(30,144,255,0.1) !important;
  border-bottom: 1px solid rgba(30,144,255,0.22) !important;
  text-align: center !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #1E90FF !important;
  margin: 0 !important;
}
.itp-op-announce svg {
  flex-shrink: 0 !important;
  width: 15px !important;
  height: 15px !important;
}

/* ── Hero — matches homepage hero style ── */
.itp-op-hero {
  position: relative !important;
  min-height: 580px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  width: 100% !important;
  /* Same background approach as homepage hero */
  background-image: url('https://www.itprosphilly.com/wp-content/uploads/2026/03/Philadelphia-PA.jpeg') !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.itp-op-hero-bg {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(11,14,20,0.78) !important;
  z-index: 1 !important;
}
.itp-op-hero-overlay {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(11,14,20,0.45) 0%, rgba(11,14,20,0.92) 100%) !important;
  z-index: 1 !important;
}
.itp-op-hero-inner {
  position: relative !important;
  z-index: 2 !important;
  padding: 80px 40px !important;
  text-align: center !important;
  max-width: 900px !important;
  width: 100% !important;
  margin: 0 auto !important;
}
.itp-op-hero-label {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #1E90FF !important;
  margin-bottom: 20px !important;
  display: block !important;
}
h1.itp-op-h1 {
  font-size: clamp(2.8rem, 6.5vw, 4.2rem) !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
  color: #fff !important;
  margin: 0 0 24px !important;
  letter-spacing: -0.02em !important;
}
.itp-op-accent { color: #1E90FF !important; font-style: italic !important; }
.itp-op-hero-sub {
  font-size: clamp(1rem, 2vw, 1.15rem) !important;
  color: #9aa0a6 !important;
  line-height: 1.7 !important;
  max-width: 620px !important;
  margin: 0 auto 36px !important;
}
.itp-op-hero-btns {
  display: flex !important;
  gap: 16px !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
}

/* ── Stats bar ── */
.itp-op-stats {
  display: flex !important;
  justify-content: center !important;
  gap: 48px !important;
  flex-wrap: wrap !important;
  padding: 40px 24px !important;
  background: rgba(255,255,255,0.02) !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.itp-op-stat { text-align: center !important; }
.itp-op-stat-num {
  font-size: 2.5rem !important;
  font-weight: 800 !important;
  color: #1E90FF !important;
  line-height: 1 !important;
  display: block !important;
}
.itp-op-stat-label {
  font-size: 0.85rem !important;
  color: #9aa0a6 !important;
  margin-top: 4px !important;
  display: block !important;
}

/* ── Content sections ── */
.itp-op-section {
  padding: 72px 40px !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}
.itp-op-section-center { text-align: center !important; }
.itp-op-label {
  font-size: 0.72rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #1E90FF !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
  display: block !important;
}
h2.itp-op-h2 {
  font-size: clamp(1.8rem, 4vw, 2.6rem) !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 16px !important;
  line-height: 1.15 !important;
}
h3.itp-op-h3 {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin: 0 0 10px !important;
}
.itp-op-section-sub {
  color: #9aa0a6 !important;
  font-size: 1.05rem !important;
  line-height: 1.65 !important;
  max-width: 640px !important;
  margin: 0 auto 40px !important;
}

/* ── Cards ── */
.itp-op-cards {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 24px !important;
  margin-top: 40px !important;
}
.itp-op-card {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 16px !important;
  padding: 28px !important;
  backdrop-filter: blur(10px) !important;
}
.itp-op-icon-wrap {
  width: 48px !important;
  height: 48px !important;
  background: rgba(30,144,255,0.12) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 16px !important;
  flex-shrink: 0 !important;
}
.itp-op-icon-wrap svg {
  width: 24px !important;
  height: 24px !important;
  max-width: 24px !important;
  max-height: 24px !important;
}
.itp-op-card-body { color: #9aa0a6 !important; font-size: 0.95rem !important; line-height: 1.6 !important; }

/* ── Divider / steps ── */
.itp-op-divider {
  background: linear-gradient(135deg, #0d1b2e, #111827) !important;
  padding: 72px 40px !important;
  text-align: center !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
}
.itp-op-steps {
  display: flex !important;
  flex-direction: column !important;
  gap: 28px !important;
  margin-top: 40px !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
}
.itp-op-step {
  display: flex !important;
  gap: 20px !important;
  align-items: flex-start !important;
}
.itp-op-step-num {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: #1E90FF !important;
  color: #fff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  flex-shrink: 0 !important;
}
.itp-op-step-body { color: #9aa0a6 !important; font-size: 0.95rem !important; line-height: 1.6 !important; margin-top: 6px !important; }

/* ── Compare ── */
.itp-op-compare {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 24px !important;
  margin-top: 32px !important;
}
@media (max-width: 640px) {
  .itp-op-compare { grid-template-columns: 1fr !important; }
}
.itp-op-compare-bad {
  background: rgba(239,68,68,0.08) !important;
  border: 1px solid rgba(239,68,68,0.2) !important;
  border-radius: 16px !important;
  padding: 28px !important;
}
.itp-op-compare-good {
  background: rgba(30,144,255,0.08) !important;
  border: 1px solid rgba(30,144,255,0.2) !important;
  border-radius: 16px !important;
  padding: 28px !important;
}

/* ── Lists ── */
.itp-op-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 16px 0 0 !important;
}
.itp-op-list li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid rgba(255,255,255,0.06) !important;
  line-height: 1.5 !important;
  font-size: 0.95rem !important;
  color: #e8eaed !important;
}
.itp-op-list li:last-child { border-bottom: none !important; }
.itp-op-list li svg {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  flex-shrink: 0 !important;
  margin-top: 1px !important;
  display: block !important;
}
.itp-op-list li span { flex: 1 !important; }

/* ── CTA box ── */
.itp-op-cta-box {
  background: linear-gradient(135deg, rgba(30,144,255,0.12), rgba(30,144,255,0.04)) !important;
  border: 1px solid rgba(30,144,255,0.25) !important;
  border-radius: 20px !important;
  padding: 56px 40px !important;
  text-align: center !important;
  margin: 40px 0 !important;
}

/* ── Buttons ── */
.itp-op-btn-primary {
  display: inline-block !important;
  background: #1E90FF !important;
  color: #fff !important;
  padding: 14px 28px !important;
  border-radius: 8px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  font-size: 1rem !important;
  margin: 8px !important;
}
.itp-op-btn-secondary {
  display: inline-block !important;
  border: 2px solid rgba(255,255,255,0.25) !important;
  color: #fff !important;
  padding: 12px 28px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  font-size: 1rem !important;
  margin: 8px !important;
}

/* ── Mobile ── */
@media (max-width: 768px) {
  .itp-op-hero-inner { padding: 60px 20px 48px !important; }
  .itp-op-stats { gap: 28px !important; }
  .itp-op-section { padding: 48px 20px !important; }
  .itp-op-divider { padding: 48px 20px !important; }
  .itp-op-cards { grid-template-columns: 1fr !important; }
  .itp-op-cta-box { padding: 40px 20px !important; }
}
