.promo-section{position:relative;overflow:hidden}.promo-bg{transition:opacity .7s}.promo-bg,.promo-decor{position:absolute;top:0;left:0;right:0;bottom:0}.promo-decor{overflow:hidden;pointer-events:none}.promo-slides{position:relative;overflow:hidden;z-index:10;cursor:grab;user-select:none;touch-action:pan-y pinch-zoom}.promo-slides:active{cursor:grabbing}.promo-content{margin:0 auto;padding:2rem 1rem;max-width:42rem;text-align:center;color:#fff}@media (min-width:768px){.promo-content{padding:3.5rem 1rem}}.promo-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}@media (min-width:768px){.promo-badge{padding:.375rem 1rem;font-size:.875rem;margin-bottom:1rem}}.promo-dot{width:.375rem;height:.375rem;border-radius:9999px}@media (min-width:768px){.promo-dot{width:.5rem;height:.5rem}}.promo-title{font-size:2.25rem;font-weight:900;letter-spacing:-.025em;line-height:1;margin-bottom:.75rem;text-shadow:0 2px 8px rgba(0,0,0,.15)}@media (min-width:640px){.promo-title{font-size:3rem}}@media (min-width:768px){.promo-title{font-size:4.5rem;margin-bottom:1rem}}.promo-subtitle{color:rgba(255,255,255,.85);font-size:.875rem;margin-bottom:1.5rem;max-width:28rem;margin-left:auto;margin-right:auto;line-height:1.625}@media (min-width:768px){.promo-subtitle{font-size:1.125rem;margin-bottom:2rem}}.promo-cta{display:inline-flex;align-items:center;gap:.5rem;background:#fff;padding:.75rem 1.5rem;border-radius:9999px;font-weight:800;font-size:1rem;text-decoration:none;box-shadow:0 20px 30px -5px rgba(0,0,0,.1),0 8px 12px -6px rgba(0,0,0,.1);transition:background .15s}@media (min-width:768px){.promo-cta{padding:1rem 2.5rem;font-size:1.25rem}}.promo-indicators{position:relative;z-index:10;display:flex;align-items:center;justify-content:center;gap:.5rem;padding-bottom:1.25rem;margin-top:-.25rem}@media (min-width:768px){.promo-indicators{padding-bottom:2rem}}.promo-dot-btn{height:.5rem;border-radius:9999px;border:none;padding:0;cursor:pointer;transition:all .3s}.promo-dot-btn[data-active=true]{width:2rem;background:#fff}.promo-dot-btn[data-active=false]{width:.5rem;background:rgba(255,255,255,.5)}