.cta-banner__slim{padding:1.6rem 2rem}.cta-banner__half{padding:11.8rem 2rem 8rem;position:relative}.cta-banner__half:before{background:var(--white);content:"";height:29.8rem;left:0;max-height:100%;position:absolute;right:0;top:0;z-index:1}@media (max-width:767px){.cta-banner__half{padding-top:7rem}.cta-banner__half:before{height:16.1rem}.cta-banner__half .cta-banner__bg{height:28.7rem}}.cta-banner__half .content-wrapper--medium{max-width:90.8rem}.cta-banner__default{padding:0 2rem}.cta-banner__default .cta-banner__bg{height:39.8rem;overflow:hidden}.cta-banner__slim .cta-banner__bg{flex:0 1 40rem;height:100%}.cta-banner__default .cta-banner__content{margin:0 auto;max-width:100%;padding:5rem 2rem;text-align:center}.cta-banner__default:has(.cta-banner__bg) .cta-banner__content{box-shadow:5px 4px 21px -1px rgba(0,0,0,.12);margin:-20rem auto 0;width:70rem}.cta-banner__default .cta-banner__content.has-bg{padding:8rem 2rem}.cta-banner__default .cta-banner__content.has-bg .cta-banner__text{margin:0 auto 2rem;max-width:75.4rem;width:100%}.cta-banner__slim .cta-banner__content{flex:1}.cta-banner__slim .button__label{white-space:nowrap}.cta-banner__text :last-child{margin-bottom:0}.cta-banner__full{color:var(--white);padding:20rem 2rem}@media (max-width:767px){.cta-banner__full{padding:8rem 2rem}}.cta-banner__full h2{color:var(--white)}.cta-banner__full .cta-banner__content{max-width:45rem}.cta-banner__full .cta-banner__bg{bottom:0;left:0;right:0;top:0}.cta-banner__full .cta-banner__bg:after{background:linear-gradient(89.47deg,rgba(0,0,0,.8) -1.35%,transparent 80.08%);bottom:0;content:"";left:0;position:absolute;right:0;top:0;z-index:1}@media (max-width:767px){.cta-banner__slim{border-radius:0;margin:0 -2rem;padding:0;width:calc(100% + 4rem)}.cta-banner__slim .content-wrapper{gap:0}.cta-banner__slim .cta-banner__content{gap:var(--gap);padding:5rem 3rem;text-align:center}.cta-banner__bg{flex:unset!important}}@media (max-width:800px){.cta-banner__default .cta-banner__bg{margin-left:-2rem;margin-right:-2rem;width:calc(100% + 4rem)}.cta-banner__default:has(.cta-banner__bg) .cta-banner__content{margin-bottom:-7rem;transform:translateY(-10rem)}}@media (max-width:767px){.cta-banner:not(:has(.cta-banner__bg)){margin:0 -2rem;padding:0;width:calc(100% + 4rem)}.cta-banner:not(:has(.cta-banner__bg)) .cta-banner__content{padding-left:3rem;padding-right:3rem}}