/* Sticky Sections Pro */
.pstickypro-wrap { position: relative; }
.pstickypro-section { position: sticky; top: var(--psticky-top, 0px); min-height: var(--psticky-height, 100vh); display: grid; place-items: center; overflow: clip; transition: opacity 0.2s var(--p-ease, ease); }
.pstickypro-section + .pstickypro-section { margin-top: calc(var(--psticky-overlap, 0px) * -1); }
.pstickypro-bg { position: absolute; inset: 0; background-size: cover; background-position: center; transform: translate3d(0,0,0); will-change: transform; }
.pstickypro-inner { position: relative; z-index: 2; max-width: 900px; padding: 4rem 2rem; color: #fff; text-align: center; }
.pstickypro-title { font-size: clamp(2rem, 4vw, 4rem); line-height: 1.05; font-weight: 800; text-shadow: 0 6px 24px rgba(0,0,0,.35); }
.pstickypro-text { font-size: clamp(1rem, 2.2vw, 1.25rem); opacity: .95; margin-top: 1rem; }
.pstickypro-section::after { content: ""; position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 70%, rgba(0,0,0,.0), rgba(0,0,0,.5) 70%); z-index:1; pointer-events:none; }

@media (max-width: 767px){
  .pstickypro-inner{ padding: 3rem 1rem; }
}
