/* v105 — premium professionals banner below homepage products */
.pro-cta-section{
  padding: 8px 0 20px !important;
  background: linear-gradient(180deg,#f7f2eb 0%,#f3ede5 100%) !important;
}
.pro-cta-shell{
  width: min(calc(100% - 34px), 1680px) !important;
  margin: 0 auto !important;
}
.pro-cta{
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  padding: 24px 28px !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  text-decoration: none !important;
  background: linear-gradient(135deg, rgba(249,245,239,.98) 0%, rgba(238,229,216,.97) 50%, rgba(247,243,237,.98) 100%) !important;
  border: 1px solid rgba(79,57,38,.08) !important;
  box-shadow: 0 20px 42px rgba(53,35,20,.10), inset 0 1px 0 rgba(255,255,255,.82) !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease !important;
}
.pro-cta::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    radial-gradient(circle at 15% 50%, rgba(255,255,255,.85) 0%, rgba(255,255,255,0) 35%),
    radial-gradient(circle at 85% 30%, rgba(179,139,92,.16) 0%, rgba(179,139,92,0) 28%),
    linear-gradient(90deg, rgba(152,117,75,.07), rgba(255,255,255,0) 28%, rgba(152,117,75,.05) 100%) !important;
  pointer-events: none !important;
}
.pro-cta::after{
  content: "" !important;
  position: absolute !important;
  top: 14px !important;
  bottom: 14px !important;
  right: 150px !important;
  width: 1px !important;
  background: linear-gradient(180deg, rgba(85,61,40,0), rgba(85,61,40,.14), rgba(85,61,40,0)) !important;
}
.pro-cta:hover{
  transform: translateY(-2px) !important;
  box-shadow: 0 26px 52px rgba(53,35,20,.13), inset 0 1px 0 rgba(255,255,255,.88) !important;
  border-color: rgba(79,57,38,.14) !important;
}
.pro-cta-copy{
  position: relative !important;
  z-index: 1 !important;
  min-width: 0 !important;
}
.pro-cta-copy h2{
  margin: 0 !important;
  font-size: clamp(1.8rem, 2.8vw, 2.55rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.02em !important;
  color: #21160f !important;
}
.pro-cta-action{
  position: relative !important;
  z-index: 1 !important;
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 56px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#2d1d12 0%,#472b19 100%) !important;
  color: #fff8ef !important;
  box-shadow: 0 14px 28px rgba(31,20,11,.18) !important;
  font-size: 1rem !important;
  white-space: nowrap !important;
  transition: transform .28s ease, box-shadow .28s ease, background .28s ease !important;
}
.pro-cta:hover .pro-cta-action{
  transform: translateX(2px) !important;
  box-shadow: 0 18px 34px rgba(31,20,11,.24) !important;
  background: linear-gradient(135deg,#24160d 0%,#5a351d 100%) !important;
}
@media (max-width: 900px){
  .pro-cta{
    padding: 22px 22px !important;
    border-radius: 24px !important;
  }
  .pro-cta::after{display:none !important}
}
@media (max-width: 760px){
  .pro-cta-section{
    padding: 6px 0 16px !important;
  }
  .pro-cta-shell{
    width: min(calc(100% - 12px), 1680px) !important;
  }
  .pro-cta{
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding: 18px 16px !important;
    border-radius: 22px !important;
  }
  .pro-cta-copy h2{
    font-size: clamp(1.45rem, 7.2vw, 2.05rem) !important;
  }
  .pro-cta-action{
    width: 100% !important;
    min-height: 48px !important;
    padding: 0 18px !important;
  }
}
