PageSourceSearch

https://defundplannedparenthood.com/

html defundplannedparenthood.com collected 2026-10-10 01:20:36 UTC 271,110 bytes, 2,167 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta name="description" content="Pro-Life Webcast">
2<meta property="og:title" content="Webcast | Defund Planned Parenthood">
3<meta property="og:description" content="Get clarity, focus, and hope to end abortion where you live!">
4<meta property="og:image" content="https://htmlpub.com/api/library/pnsf8rvroy86i4bou6ojopz7?w=2400&amp;h=2400&amp;fit=scale-down&amp;format=auto&amp;quality=82">
5<meta property="og:image:width" content="1200">
6<meta property="og:image:height" content="630">
7<meta property="og:url" content="https://defundplannedparenthood.com/">
8<meta name="twitter:url" content="https://defundplannedparenthood.com/">
9<meta property="og:type" content="website">
10<meta property="og:site_name" content="defundplannedparenthood.com">
11<meta property="og:locale" content="en_US">
12<meta property="fb:app_id" content="4198265810445529">
13<meta name="twitter:card" content="summary_large_image">
14<meta name="twitter:title" content="Webcast | Defund Planned Parenthood">
15<meta name="twitter:description" content="Get clarity, focus, and hope to end abortion where you live!">
16<meta name="twitter:image" content="https://htmlpub.com/api/library/pnsf8rvroy86i4bou6ojopz7?w=2400&amp;h=2400&amp;fit=scale-down&amp;format=auto&amp;quality=82">
17<meta name="twitter:image:width" content="1200">
18<meta name="twitter:image:height" content="630">
19<meta name="robots" content="index, follow">
20<link rel="canonical" href="https://defundplannedparenthood.com/">
21<link rel="icon" href="https://defundplannedparenthood.com/api/library/zq1ctz3vnspinct6ggzhgtx2">
22<title>Webcast | Defund Planned Parenthood</title>
23    <meta charset="utf-8">
24    <!-- BUILT WITH LEADPAGES https://www.leadpages.com -->
25    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
26    <meta name="viewport" content="width=device-width, initial-scale=1">
27    
28    <meta name="keywords" content="">
29    
30    
31    <meta name="title" content="">
32    
33    
34    
35    
36    <meta property="og:image:type" content="image/png">
37    
38    
39    <meta name="leadpages-served-by" content="leadpages">
40    <meta name="leadpages-serving-domain" content="defundplannedparenthood.com">
41    <meta name="leadpages-legacy-pixel-domain" content="https://my.leadpages.net">
42    <meta name="leadpages-meta-id" content="a5vZjFRrzN7cYty54236qH">
43    <meta name="leadpages-edition" content="XY4XCuUCPCbZwhh7p335aa">
44    
45    <link rel="stylesheet" href="https://classic-assets.leadpages.com/static-leadpages-net/fonts/font-awesome/6.4.2/css/all.min.css" referrerpolicy="no-referrer">
46    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
47    <link rel="preload" as="style" href="https://fonts.googleapis.com/css?family=PT+Serif:300,400,500,700|Questrial:300,400,500,700">
48    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=PT+Serif:300,400,500,700|Questrial:300,400,500,700" type="text/css" referrerpolicy="no-referrer" media="print" onload="this.media='all'">
49    <style data-id="run-styles">
50      /*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*,*::before,*::after{box-sizing:border-box}html{height:100%;width:100%}html{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;background-color:#fff;box-sizing:border-box;color:#000;font-family:Roboto,sans-serif;font-size:1em;line-height:1.5;min-height:100%;position:relative}html.is-leadbox{background-color:transparent}body{min-height:100%}h1,h2,h3,h4,h1.jumbo{margin:0}p{margin:0}a{font-size:inherit}img{max-width:100%;width:100%}section{position:relative;transition:opacity .5s ease-in,min-height .5s ease-in,height .5s ease-in}.container{width:100%}.row-compose,.widget-row,.layout,.inner-column,.column{position:relative}.site-header .layout{align-items:center;min-height:64px}.column{display:flex;flex-direction:column}.inner-column{flex:1 1 auto}.inner-column:not(.area-placeholder){min-height:1px}.widget{word-wrap:break-word;padding:1vw;padding:1cqw}.leadbox .widget{padding:1vw;padding:1cqw}.bar .widget{padding:1vw;padding:1cqw}.has-background-image{background-position:center center;background-repeat:no-repeat}.has-background-size-cover{background-size:cover}.has-background-size-center{background-size:contain}.has-background-size-repeat{background-repeat:repeat}.flex-display{display:flex}.flex-direction-column{flex-direction:column}.flex-direction-column .container{min-height:1px}.flex-direction-row{flex-direction:row}.flex-justify-flex-start{justify-content:flex-start}.flex-justify-center{justify-content:center}.flex-justify-flex-end{justify-content:flex-end}[class*=section-arrow--]::before{border:solid transparent;border-color:rgba(0,0,0,0);content:"";height:0;pointer-events:none;position:absolute;width:0;z-index:1}.section-arrow--top::before{border-bottom-color:inherit;border-width:0 30px 18px;bottom:100%;left:50%;transform:translateX(-50%)}.section-arrow--bottom::before{border-top-color:inherit;border-width:18px 30px 0;left:50%;
50top:100%;transform:translateX(-50%)}.section-arrow--left::before{border-bottom-color:inherit;border-width:0 30px 24px;bottom:100%;right:50%;transform:translateX(50%)}@media(min-width: 48em){.section-arrow--left::before{border-bottom-color:transparent;border-right-color:inherit;border-width:30px 24px 30px 0;bottom:0;right:100%;top:50%;transform:translateY(-50%) translateX(0)}}.section-arrow--right::before{border-top-color:inherit;border-width:24px 30px 0;left:50%;top:100%;transform:translateX(-50%)}@media(min-width: 48em){.section-arrow--right::before{border-left-color:inherit;border-top-color:transparent;border-width:30px 0 30px 24px;left:100%;top:50%;transform:translateY(-50%) translateX(0)}}.page .is-delayed{min-height:0;height:0;opacity:0;overflow:hidden;padding-bottom:0;padding-top:0}.is-visible{height:auto;opacity:1;overflow:visible}.lp-text a,.lp-text-react a,.lp-headline a{color:inherit;text-decoration:underline}.lp-text a>span,.lp-text-react a>span,.lp-headline a>span{color:inherit;text-decoration:underline}.lp-text a:hover,.lp-text a:active,.lp-text-react a:hover,.lp-text-react a:active,.lp-headline a:hover,.lp-headline a:active{text-decoration:none}.lp-text a:hover>span,.lp-text a:active>span,.lp-text-react a:hover>span,.lp-text-react a:active>span,.lp-headline a:hover>span,.lp-headline a:active>span{text-decoration:none}.lp-blog-feed a{text-decoration:none}.lp-blog-feed a:hover,.lp-blog-feed a:active{text-decoration:none}.lp-blog-feed a:hover>span,.lp-blog-feed a:active>span{text-decoration:none}.lp-blog-feed a.pagination-arrow{color:inherit;margin:auto 40px}.lp-blog-feed a.pagination-arrow.disabled{color:inherit;pointer-events:none;opacity:.3}.lp-blog-post a{color:inherit;text-decoration:none}.lp-blog-post a>span{color:inherit;text-decoration:none}.lp-blog-post a:hover,.lp-blog-post a:active{text-decoration:none}.lp-blog-post a:hover>span,.lp-blog-post a:active>span{text-decoration:none}.lp-blog-post a.pagination-arrow{margin:auto 40px}.lp-blog-post a.pagination-arrow.disabled{pointer-events:none;opacity:.3}.lp-post-body p{min-height:18px;margin:20px 0}.lp-post-body h1,.lp-post-body h2,.lp-post-body h3,.lp-post-body h4,.lp-post-body h5,.lp-post-body h6{margin:24px 0}.lp-post-body img{width:auto}.widget-widget>iframe{max-width:100%;width:100%}.inner-composite{display:flex}.page grammarly-btn{display:none}.page .lp-form__input+span,.page .lp-form-react__input+span{display:none !important}@media(max-width: 480px){.hidden-mobile{display:none !important}}@media(min-width: 481px)and (max-width: 768px){.hidden-tablet{display:none !important}}@media(min-width: 769px){.hidden-desktop{display:none !important}}.hide-section{display:none}form .widget-column{padding-top:1vw;padding-bottom:1vw;padding-top:1cqw;padding-bottom:1cqw}form .widget-column .widget{padding-bottom:0;padding-top:0}form .widget-column .widget .lp-button-react-wrapper{margin-top:12px}form[data-form-id] button:disabled{opacity:.5;pointer-events:none;transition:opacity 7.5s ease}@keyframes animation-circular-rotate{0%{transform-origin:50% 50%}100%{transform:rotate(360deg)}}@-webkit-keyframes animation-circular-rotate{0%{transform-origin:50% 50%}100%{transform:rotate(360deg)}}@-webkit-keyframes animation-circular-progress{0%{stroke-dasharray:1px,200px;stroke-dashoffset:0px}50%{stroke-dasharray:100px,200px;stroke-dashoffset:-15px}100%{stroke-dasharray:100px,200px;stroke-dashoffset:-125px}}@keyframes animation-circular-progress{0%{stroke-dasharray:1px,200px;stroke-dashoffset:0px}50%{stroke-dasharray:100px,200px;stroke-dashoffset:-15px}100%{stroke-dasharray:100px,200px;stroke-dashoffset:-125px}}.container{margin-left:auto;margin-right:auto;max-width:1140px}.container--fluid{max-width:none}.flex{display:flex;flex-direction:row;flex-wrap:wrap;margin-left:0;margin-right:0;max-width:100%}[class*=flex__]{flex:0 0 auto;min-height:1px;padding-left:0;padding-right:0}.flex--12 .flex__item--xs-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.flex--12 .flex__item--xs-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.flex--12 .flex__item--xs-3{flex-basis:25%;max-width:25%}.flex--12 .flex__item--xs-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.flex--12 .flex__item--xs-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.flex--12 .flex__item--xs-6{flex-basis:50%;max-width:50%}.flex--12 .flex__item--xs-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.flex--12 .flex__item--xs-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.flex--12 .flex__item--xs-9{flex-basis:75%;max-width:75%}.flex--12 .flex__item--xs-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.flex--12 .flex__item--xs-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.flex--12 .flex__item--xs-12{flex-basis:100%;max-width:100%}.flex--12 .flex__offset--xs-1{margin-left:8.3333333333%}.flex--12 .flex__offset--xs-2{margin-left:16.6666666667%}.flex--12 .flex__offset--xs-3{margin-left:25%}.flex--12 .flex__offset--xs-4{margin-left:33.3333333333%}.flex--12 .flex__offset--xs-5{margin-left:41.6666666667%}.flex--12 .flex__offset--xs-6{margin-left:50%}.flex--12 .flex__offset--xs-7{margin-left:58.3333333333%}.flex--12 .flex__offset--xs-8{margin-left:66.6666666667%}.flex--12 .flex__offset--xs-9{margin-left:75%}.flex--12 .flex__offset--xs-10{margin-left:83.3333333333%}.flex--12 .flex__offset--xs-11{margin-left:91.6666666667%}.flex--10 .flex__item--xs-1{flex-basis:10%;max-width:10%}.flex--10 .flex__item--xs-2{flex-basis:20%;max-width:20%}.flex--10 .flex__item--xs-3{flex-basis:30%;max-width:30%}.flex--10 .flex__item--xs-4{flex-basis:40%;max-width:40%}.flex--10 .flex__item--xs-5{flex-basis:50%;max-width:50%}.flex--10 .flex__item--xs-6{flex-basis:60%;max-width:60%}.flex--10 .flex__item--xs-7{flex-basis:70%;max-width:70%}.flex--10 .flex__item--xs-8{flex-basis:80%;max-width:80%}.flex--10 .flex__item--xs-9{flex-basis:90%;max-width:90%}.flex--10 .flex__item--xs-10{flex-basis:100%;max-width:100%}.flex--10 .flex__offset--xs-1{margin-left:10%}.flex--10 .flex__offset--xs-2{margin-left:20%}.flex--10 .flex__offset--xs-3{margin-left:30%}.flex--10 .flex__offset--xs-4{margin-left:40%}.flex--10 .flex__offset--xs-5{margin-left:50%}.flex--10 .flex__offset--xs-6{margin-left:60%}.flex--10 .flex__offset--xs-7{margin-left:70%}.flex--10 .flex__offset--xs-8{margin-left:80%}.flex--10 .flex__offset--xs-9{margin-left:90%}.flex--xs-start{justify-content:flex-start}.flex--xs-center{justify-content:center}.flex--xs-end{justify-content:flex-end}.flex--xs-around{justify-content:space-around}.flex--xs-between{justify-content:space-between}.flex--xs-top{align-items:flex-start}.flex--xs-middle{align-items:center}.flex--xs-bottom{align-items:flex-end}.flex--xs-first{order:-1}.flex--xs-last{order:1}.flex__item--xs-auto{flex:1 1 auto}.flex__item--xs-grow{flex-grow:1}.flex__item--xs-no-grow{flex-grow:0}.flex__item--xs-shrink{flex-shrink:1}.flex__item--xs-no-shrink{flex-shrink:0}.flex__item--xs-none{flex:none}.flex--xs-inline-flex{display:inline-flex}.flex--xs-flex-nowrap{flex-wrap:nowrap}.flex--xs-flex-wrap-rev{flex-wrap:wrap-reverse}.flex--xs-horizontal-rev{flex-direction:column-reverse}.flex--xs-vertical{flex-direction:column}.flex--xs-vertical-rev{flex-direction:row-reverse}@media(min-width: 480px){.flex--12 .flex__item--sm-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.flex--12 .flex__item--sm-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.flex--12 .flex__item--sm-3{flex-basis:25%;max-width:25%}.flex--12 .flex__item--sm-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.flex--12 .flex__item--sm-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.flex--12 .flex__item--sm-6{flex-basis:50%;max-width:50%}.flex--12 .flex__item--sm-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.flex--12 .flex__item--sm-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.flex--12 .flex__item--sm-9{flex-basis:75%;max-width:75%}.flex--12 .flex__item--sm-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.flex--12 .flex__item--sm-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.flex--12 .flex__item--sm-12{flex-basis:100%;max-width:100%}.flex--12 .flex__offset--sm-1{margin-left:8.3333333333%}.flex--12 .flex__offset--sm-2{margin-left:16.6666666667%}.flex--12 .flex__offset--sm-3{margin-left:25%}.flex--12 .flex__offset--sm-4{margin-left:33.3333333333%}.flex--12 .flex__offset--sm-5{margin-left:41.6666666667%}.flex--12 .flex__offset--sm-6{margin-left:50%}.flex--12 .flex__offset--sm-7{margin-left:58.3333333333%}.flex--12 .flex__offset--sm-8{margin-left:66.6666666667%}.flex--12 .flex__offset--sm-9{margin-left:75%}.flex--12 .flex__offset--sm-10{margin-left:83.3333333333%}.flex--12 .flex__offset--sm-11{margin-left:91.6666666667%}.flex--10 .flex__item--sm-1{flex-basis:10%;max-width:10%}.flex--10 .flex__item--sm-2{flex-basis:20%;max-width:20%}.flex--10 .flex__item--sm-3{flex-basis:30%;max-width:30%}.flex--10 .flex__item--sm-4{flex-basis:40%;max-width:40%}.flex--10 .flex__item--sm-5{flex-basis:50%;max-width:50%}.flex--10 .flex__item--sm-6{flex-basis:60%;max-width:60%}.flex--10 .flex__item--sm-7{flex-basis:70%;max-width:70%}.flex--10 .flex__item--sm-8{flex-basis:80%;max-width:80%}.flex--10 .flex__item--sm-9{flex-basis:90%;max-width:90%}.flex--10 .flex__item--sm-10{flex-basis:100%;max-width:100%}.flex--10 .flex__offset--sm-1{margin-left:10%}.flex--10 .flex__offset--sm-2{margin-left:20%}.flex--10 .flex__offset--sm-3{margin-left:30%}.flex--10 .flex__offset--sm-4{margin-left:40%}.flex--10 .flex__offset--sm-5{margin-left:50%}.flex--10 .flex__offset--sm-6{margin-left:60%}.flex--10 .flex__offset--sm-7{margin-left:70%}.flex--10 .flex__offset--sm-8{margin-left:80%}.flex--10 .flex__offset--sm-9{margin-left:90%}.flex--sm-start{justify-content:flex-start}.flex--sm-center{justify-content:center}.flex--sm-end{justify-content:flex-end}.flex--sm-around{justify-content:space-around}.flex--sm-between{justify-content:space-between}.flex--sm-top{align-items:flex-start}.flex--sm-middle{align-items:center}.flex--sm-bottom{align-items:flex-end}.flex--sm-first{order:-1}.flex--sm-last{order:1}
50.flex__item--sm-auto{flex:1 1 auto}.flex__item--sm-grow{flex-grow:1}.flex__item--sm-no-grow{flex-grow:0}.flex__item--sm-shrink{flex-shrink:1}.flex__item--sm-no-shrink{flex-shrink:0}.flex__item--sm-none{flex:none}.flex--sm-inline-flex{display:inline-flex}.flex--sm-flex-nowrap{flex-wrap:nowrap}.flex--sm-flex-wrap-rev{flex-wrap:wrap-reverse}.flex--sm-horizontal-rev{flex-direction:column-reverse}.flex--sm-vertical{flex-direction:column}.flex--sm-vertical-rev{flex-direction:row-reverse}}@media(min-width: 768px){.flex--12 .flex__item--md-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.flex--12 .flex__item--md-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.flex--12 .flex__item--md-3{flex-basis:25%;max-width:25%}.flex--12 .flex__item--md-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.flex--12 .flex__item--md-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.flex--12 .flex__item--md-6{flex-basis:50%;max-width:50%}.flex--12 .flex__item--md-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.flex--12 .flex__item--md-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.flex--12 .flex__item--md-9{flex-basis:75%;max-width:75%}.flex--12 .flex__item--md-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.flex--12 .flex__item--md-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.flex--12 .flex__item--md-12{flex-basis:100%;max-width:100%}.flex--12 .flex__offset--md-1{margin-left:8.3333333333%}.flex--12 .flex__offset--md-2{margin-left:16.6666666667%}.flex--12 .flex__offset--md-3{margin-left:25%}.flex--12 .flex__offset--md-4{margin-left:33.3333333333%}.flex--12 .flex__offset--md-5{margin-left:41.6666666667%}.flex--12 .flex__offset--md-6{margin-left:50%}.flex--12 .flex__offset--md-7{margin-left:58.3333333333%}.flex--12 .flex__offset--md-8{margin-left:66.6666666667%}.flex--12 .flex__offset--md-9{margin-left:75%}.flex--12 .flex__offset--md-10{margin-left:83.3333333333%}.flex--12 .flex__offset--md-11{margin-left:91.6666666667%}.flex--10 .flex__item--md-1{flex-basis:10%;max-width:10%}.flex--10 .flex__item--md-2{flex-basis:20%;max-width:20%}.flex--10 .flex__item--md-3{flex-basis:30%;max-width:30%}.flex--10 .flex__item--md-4{flex-basis:40%;max-width:40%}.flex--10 .flex__item--md-5{flex-basis:50%;max-width:50%}.flex--10 .flex__item--md-6{flex-basis:60%;max-width:60%}.flex--10 .flex__item--md-7{flex-basis:70%;max-width:70%}.flex--10 .flex__item--md-8{flex-basis:80%;max-width:80%}.flex--10 .flex__item--md-9{flex-basis:90%;max-width:90%}.flex--10 .flex__item--md-10{flex-basis:100%;max-width:100%}.flex--10 .flex__offset--md-1{margin-left:10%}.flex--10 .flex__offset--md-2{margin-left:20%}.flex--10 .flex__offset--md-3{margin-left:30%}.flex--10 .flex__offset--md-4{margin-left:40%}.flex--10 .flex__offset--md-5{margin-left:50%}.flex--10 .flex__offset--md-6{margin-left:60%}.flex--10 .flex__offset--md-7{margin-left:70%}.flex--10 .flex__offset--md-8{margin-left:80%}.flex--10 .flex__offset--md-9{margin-left:90%}.flex--md-start{justify-content:flex-start}.flex--md-center{justify-content:center}.flex--md-end{justify-content:flex-end}.flex--md-around{justify-content:space-around}.flex--md-between{justify-content:space-between}.flex--md-top{align-items:flex-start}.flex--md-middle{align-items:center}.flex--md-bottom{align-items:flex-end}.flex--md-first{order:-1}.flex--md-last{order:1}.flex__item--md-auto{flex:1 1 auto}.flex__item--md-grow{flex-grow:1}.flex__item--md-no-grow{flex-grow:0}.flex__item--md-shrink{flex-shrink:1}.flex__item--md-no-shrink{flex-shrink:0}.flex__item--md-none{flex:none}.flex--md-inline-flex{display:inline-flex}.flex--md-flex-nowrap{flex-wrap:nowrap}.flex--md-flex-wrap-rev{flex-wrap:wrap-reverse}.flex--md-horizontal-rev{flex-direction:column-reverse}.flex--md-vertical{flex-direction:column}.flex--md-vertical-rev{flex-direction:row-reverse}}@media(min-width: 1024px){.flex--12 .flex__item--lg-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.flex--12 .flex__item--lg-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.flex--12 .flex__item--lg-3{flex-basis:25%;max-width:25%}.flex--12 .flex__item--lg-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.flex--12 .flex__item--lg-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.flex--12 .flex__item--lg-6{flex-basis:50%;max-width:50%}.flex--12 .flex__item--lg-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.flex--12 .flex__item--lg-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.flex--12 .flex__item--lg-9{flex-basis:75%;max-width:75%}.flex--12 .flex__item--lg-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.flex--12 .flex__item--lg-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.flex--12 .flex__item--lg-12{flex-basis:100%;max-width:100%}.flex--12 .flex__offset--lg-1{margin-left:8.3333333333%}.flex--12 .flex__offset--lg-2{margin-left:16.6666666667%}.flex--12 .flex__offset--lg-3{margin-left:25%}.flex--12 .flex__offset--lg-4{margin-left:33.3333333333%}.flex--12 .flex__offset--lg-5{margin-left:41.6666666667%}.flex--12 .flex__offset--lg-6{margin-left:50%}.flex--12 .flex__offset--lg-7{margin-left:58.3333333333%}.flex--12 .flex__offset--lg-8{margin-left:66.6666666667%}.flex--12 .flex__offset--lg-9{margin-left:75%}.flex--12 .flex__offset--lg-10{margin-left:83.3333333333%}.flex--12 .flex__offset--lg-11{margin-left:91.6666666667%}.flex--10 .flex__item--lg-1{flex-basis:10%;max-width:10%}.flex--10 .flex__item--lg-2{flex-basis:20%;max-width:20%}.flex--10 .flex__item--lg-3{flex-basis:30%;max-width:30%}.flex--10 .flex__item--lg-4{flex-basis:40%;max-width:40%}.flex--10 .flex__item--lg-5{flex-basis:50%;max-width:50%}.flex--10 .flex__item--lg-6{flex-basis:60%;max-width:60%}.flex--10 .flex__item--lg-7{flex-basis:70%;max-width:70%}.flex--10 .flex__item--lg-8{flex-basis:80%;max-width:80%}.flex--10 .flex__item--lg-9{flex-basis:90%;max-width:90%}.flex--10 .flex__item--lg-10{flex-basis:100%;max-width:100%}.flex--10 .flex__offset--lg-1{margin-left:10%}.flex--10 .flex__offset--lg-2{margin-left:20%}.flex--10 .flex__offset--lg-3{margin-left:30%}.flex--10 .flex__offset--lg-4{margin-left:40%}.flex--10 .flex__offset--lg-5{margin-left:50%}.flex--10 .flex__offset--lg-6{margin-left:60%}.flex--10 .flex__offset--lg-7{margin-left:70%}.flex--10 .flex__offset--lg-8{margin-left:80%}.flex--10 .flex__offset--lg-9{margin-left:90%}.flex--lg-start{justify-content:flex-start}.flex--lg-center{justify-content:center}.flex--lg-end{justify-content:flex-end}.flex--lg-around{justify-content:space-around}.flex--lg-between{justify-content:space-between}.flex--lg-top{align-items:flex-start}.flex--lg-middle{align-items:center}.flex--lg-bottom{align-items:flex-end}.flex--lg-first{order:-1}.flex--lg-last{order:1}.flex__item--lg-auto{flex:1 1 auto}.flex__item--lg-grow{flex-grow:1}.flex__item--lg-no-grow{flex-grow:0}.flex__item--lg-shrink{flex-shrink:1}.flex__item--lg-no-shrink{flex-shrink:0}.flex__item--lg-none{flex:none}.flex--lg-inline-flex{display:inline-flex}.flex--lg-flex-nowrap{flex-wrap:nowrap}.flex--lg-flex-wrap-rev{flex-wrap:wrap-reverse}.flex--lg-horizontal-rev{flex-direction:column-reverse}.flex--lg-vertical{flex-direction:column}.flex--lg-vertical-rev{flex-direction:row-reverse}}@media(min-width: 1280px){.flex--12 .flex__item--xl-1{flex-basis:8.3333333333%;max-width:8.3333333333%}.flex--12 .flex__item--xl-2{flex-basis:16.6666666667%;max-width:16.6666666667%}.flex--12 .flex__item--xl-3{flex-basis:25%;max-width:25%}.flex--12 .flex__item--xl-4{flex-basis:33.3333333333%;max-width:33.3333333333%}.flex--12 .flex__item--xl-5{flex-basis:41.6666666667%;max-width:41.6666666667%}.flex--12 .flex__item--xl-6{flex-basis:50%;max-width:50%}.flex--12 .flex__item--xl-7{flex-basis:58.3333333333%;max-width:58.3333333333%}.flex--12 .flex__item--xl-8{flex-basis:66.6666666667%;max-width:66.6666666667%}.flex--12 .flex__item--xl-9{flex-basis:75%;max-width:75%}.flex--12 .flex__item--xl-10{flex-basis:83.3333333333%;max-width:83.3333333333%}.flex--12 .flex__item--xl-11{flex-basis:91.6666666667%;max-width:91.6666666667%}.flex--12 .flex__item--xl-12{flex-basis:100%;max-width:100%}.flex--12 .flex__offset--xl-1{margin-left:8.3333333333%}.flex--12 .flex__offset--xl-2{margin-left:16.6666666667%}.flex--12 .flex__offset--xl-3{margin-left:25%}.flex--12 .flex__offset--xl-4{margin-left:33.3333333333%}.flex--12 .flex__offset--xl-5{margin-left:41.6666666667%}.flex--12 .flex__offset--xl-6{margin-left:50%}.flex--12 .flex__offset--xl-7{margin-left:58.3333333333%}.flex--12 .flex__offset--xl-8{margin-left:66.6666666667%}.flex--12 .flex__offset--xl-9{margin-left:75%}.flex--12 .flex__offset--xl-10{margin-left:83.3333333333%}.flex--12 .flex__offset--xl-11{margin-left:91.6666666667%}.flex--10 .flex__item--xl-1{flex-basis:10%;max-width:10%}.flex--10 .flex__item--xl-2{flex-basis:20%;max-width:20%}.flex--10 .flex__item--xl-3{flex-basis:30%;max-width:30%}.flex--10 .flex__item--xl-4{flex-basis:40%;max-width:40%}.flex--10 .flex__item--xl-5{flex-basis:50%;max-width:50%}.flex--10 .flex__item--xl-6{flex-basis:60%;max-width:60%}.flex--10 .flex__item--xl-7{flex-basis:70%;max-width:70%}.flex--10 .flex__item--xl-8{flex-basis:80%;max-width:80%}.flex--10 .flex__item--xl-9{flex-basis:90%;max-width:90%}.flex--10 .flex__item--xl-10{flex-basis:100%;max-width:100%}.flex--10 .flex__offset--xl-1{margin-left:10%}.flex--10 .flex__offset--xl-2{margin-left:20%}.flex--10 .flex__offset--xl-3{margin-left:30%}.flex--10 .flex__offset--xl-4{margin-left:40%}.flex--10 .flex__offset--xl-5{margin-left:50%}.flex--10 .flex__offset--xl-6{margin-left:60%}.flex--10 .flex__offset--xl-7{margin-left:70%}.flex--10 .flex__offset--xl-8{margin-left:80%}.flex--10 .flex__offset--xl-9{margin-left:90%}.flex--xl-start{justify-content:flex-start}.flex--xl-center{justify-content:center}.flex--xl-end{justify-content:flex-end}.flex--xl-around{justify-content:space-around}.flex--xl-between{justify-content:space-between}.flex--xl-top{align-items:flex-start}.flex--xl-middle{align-items:center}.flex--xl-bottom{align-items:flex-end}.flex--xl-first{order:-1}.flex--xl-last{order:1}.flex__item--xl-auto{flex:1 1 auto}.flex__item--xl-grow{flex-grow:1}.flex__item--xl-no-grow{flex-grow:0}.flex__item--xl-shrink{flex-shrink:1}.flex__item--xl-no-shrink{flex-shrink:0}.flex__item--xl-none{flex:none}.flex--xl-inline-flex{display:inline-flex}.flex--xl-flex-nowrap{flex-wrap:nowrap}.flex--xl-flex-wrap-rev{flex-wrap:wrap-reverse}.flex--xl-horizontal-rev{flex-direction:column-reverse}.flex--xl-vertical{flex-direction:column}.flex--xl-vertical-rev{flex-direction:row-reverse}}.font-scale-1{font-size:.5625rem}.font-scale-2{font-size:.625rem}.font-scale-3{font-size:.75rem}.font-scale-4{font-size:.875rem}.font-scale-5{font-size:1rem}.font-scale-6{font-size:1.125rem}.font-scale-7{font-size:1.3125rem}.font-scale-8{font-size:1.5rem}.font-scale-9{font-size:1.6875rem}.font-scale-10{font-size:1.875rem}.font-scale-11{font-size:2.0625rem}.font-scale-12{font-size:2.25rem}.font-scale-13{font-size:2.5rem}.font-scale-14{font-size:2.75rem}.font-scale-15{font-size:3rem}.font-scale-16{font-size:3.25rem}.font-scale-17{font-size:3.5rem}.font-scale-18{font-size:3.75rem}@media(min-width: 480px){.font-scale-1{font-size:.5625rem}.font-scale-2{font-size:.625rem}.font-scale-3{font-size:.75rem}.font-scale-4{font-size:.875rem}.font-scale-5{font-size:1rem}.font-scale-6{font-size:1.125rem}.font-scale-7{font-size:1.3125rem}.font-scale-8{font-size:1.5rem}.font-scale-9{font-size:1.75rem}.font-scale-10{font-size:2rem}.font-scale-11{font-size:2.375rem}.font-scale-12{font-size:2.75rem}.font-scale-13{font-size:3.125rem}.font-scale-14{font-size:3.5rem}.font-scale-15{font-size:3.875rem}.font-scale-16{font-size:4.25rem}.font-scale-17{font-size:4.625rem}.font-scale-18{font-size:5rem}}@media(min-width: 768px){.font-scale-1{font-size:.625rem}.font-scale-2{font-size:.75rem}.font-scale-3{font-size:.875rem}.font-scale-4{font-size:1rem}.font-scale-5{font-size:1.125rem}.font-scale-6{font-size:1.25rem}.font-scale-7{font-size:1.5rem}.font-scale-8{font-size:1.75rem}.font-scale-9{font-size:2rem}.font-scale-10{font-size:2.5rem}.font-scale-11{font-size:3rem}.font-scale-12{font-size:3.5rem}.font-scale-13{font-size:4rem}.font-scale-14{font-size:4.5rem}.font-scale-15{font-size:5rem}.font-scale-16{font-size:5.5rem}.font-scale-17{font-size:6rem}.font-scale-18{font-size:6.5rem}}.line-height-scale-1{line-height:.875}.line-height-scale-2{line-height:1}.line-height-scale-3{line-height:1.125}.line-height-scale-4{line-height:1.25}.line-height-scale-5{line-height:1.375}.line-height-scale-6{line-height:1.5}.line-height-scale-7{line-height:1.625}.line-height-scale-8{line-height:1.75}.line-height-scale-9{line-height:1.875}.line-height-scale-10{line-height:2}.lp-text-react p,.lp-text-react h1,.lp-text-react h2,.lp-text-react h3{min-height:1em;white-space:pre-wrap}.lp-text-react p:empty:before,.lp-text-react h1:empty:before,.lp-text-react h2:empty:before,.lp-text-react h3:empty:before{content:" ";white-space:pre}p.gutter-bottom-1,.lp-list.gutter-bottom-1{margin-bottom:0em}p.gutter-bottom-2,.lp-list.gutter-bottom-2{margin-bottom:0.25em}p.gutter-bottom-3,.lp-list.gutter-bottom-3{margin-bottom:0.4375em}
50p.gutter-bottom-4,.lp-list.gutter-bottom-4{margin-bottom:0.5em}p.gutter-bottom-5,.lp-list.gutter-bottom-5{margin-bottom:0.5625em}p.gutter-bottom-6,.lp-list.gutter-bottom-6{margin-bottom:0.625em}p.gutter-bottom-7,.lp-list.gutter-bottom-7{margin-bottom:0.6875em}p.gutter-bottom-8,.lp-list.gutter-bottom-8{margin-bottom:0.75em}p.gutter-bottom-9,.lp-list.gutter-bottom-9{margin-bottom:0.8125em}p.gutter-bottom-10,.lp-list.gutter-bottom-10{margin-bottom:0.875em}p.gutter-bottom-11,.lp-list.gutter-bottom-11{margin-bottom:0.9375em}p.gutter-bottom-12,.lp-list.gutter-bottom-12{margin-bottom:1em}p.gutter-bottom-13,.lp-list.gutter-bottom-13{margin-bottom:1.25em}p.gutter-bottom-14,.lp-list.gutter-bottom-14{margin-bottom:1.5em}h1.gutter-bottom-1,h2.gutter-bottom-1,h3.gutter-bottom-1{padding-bottom:0em}h1.gutter-bottom-2,h2.gutter-bottom-2,h3.gutter-bottom-2{padding-bottom:0.25em}h1.gutter-bottom-3,h2.gutter-bottom-3,h3.gutter-bottom-3{padding-bottom:0.4375em}h1.gutter-bottom-4,h2.gutter-bottom-4,h3.gutter-bottom-4{padding-bottom:0.5em}h1.gutter-bottom-5,h2.gutter-bottom-5,h3.gutter-bottom-5{padding-bottom:0.5625em}h1.gutter-bottom-6,h2.gutter-bottom-6,h3.gutter-bottom-6{padding-bottom:0.625em}h1.gutter-bottom-7,h2.gutter-bottom-7,h3.gutter-bottom-7{padding-bottom:0.6875em}h1.gutter-bottom-8,h2.gutter-bottom-8,h3.gutter-bottom-8{padding-bottom:0.75em}h1.gutter-bottom-9,h2.gutter-bottom-9,h3.gutter-bottom-9{padding-bottom:0.8125em}h1.gutter-bottom-10,h2.gutter-bottom-10,h3.gutter-bottom-10{padding-bottom:0.875em}h1.gutter-bottom-11,h2.gutter-bottom-11,h3.gutter-bottom-11{padding-bottom:0.9375em}h1.gutter-bottom-12,h2.gutter-bottom-12,h3.gutter-bottom-12{padding-bottom:1em}h1.gutter-bottom-13,h2.gutter-bottom-13,h3.gutter-bottom-13{padding-bottom:1.25em}h1.gutter-bottom-14,h2.gutter-bottom-14,h3.gutter-bottom-14{padding-bottom:1.5em}.lp-button{text-decoration:none}.is-bold{font-weight:700}.is-italic{font-style:italic}.is-strikethrough{text-decoration:line-through}.is-underline,.is-underline label{text-decoration:underline}.is-strikethrough.is-underline{text-decoration:line-through underline}.text-align-left{text-align:left}.text-align-right{text-align:right}.text-align-center{text-align:center}.lp-list{list-style:none;margin:0;padding:0}.lp-list.text-align-left li{padding-left:24px}.lp-list.text-align-left li::before{position:absolute}.lp-list.text-align-left.lp-list--numbered li{padding-left:30px}.lp-list.text-align-left.lp-list--icon li{padding-left:1.5em}.lp-list li{position:relative;width:100%;white-space:pre-wrap}.lp-list li:not(:last-child){margin-bottom:.5em}.lp-list li::before{display:inline-block;font-size:1em;font-weight:700}.lp-list--numbered{counter-reset:numbered}.lp-list--numbered.text-align-left li::before{left:-3px;top:1px}.lp-list--numbered.text-align-center li::before,.lp-list--numbered.text-align-right li::before{margin-right:10px}.lp-list--numbered li{counter-increment:numbered}.lp-list--numbered li::before{content:counter(numbered)}.lp-list--bullet.text-align-center li,.lp-list--bullet.text-align-right li{padding-left:12px}.lp-list--bullet li::before{content:"•";text-align:center;transform:scale(1.5);transform-origin:center right}.lp-list--checkmark.text-align-left li{padding-left:20px}.lp-list--checkmark.text-align-left li::before{left:2px;top:2px}.lp-list--checkmark.text-align-center li::before,.lp-list--checkmark.text-align-right li::before{transform:translateY(-3px)}.lp-list--checkmark li::before{content:"";font-family:"Font Awesome 5 Free";font-weight:900;transform:scale(0.85)}.lp-list--icon.text-align-center li::before,.lp-list--icon.text-align-right li::before{transform:translateY(-3px)}.lp-list--checkmark.text-align-left.font-scale-1 li{padding-left:15px}.lp-list--checkmark.text-align-left.font-scale-1 li::before{left:-4px}.lp-list--checkmark.text-align-left.font-scale-2 li{padding-left:15px}.lp-list--checkmark.text-align-left.font-scale-2 li::before{left:-4px}.lp-list--checkmark.text-align-left.font-scale-3 li{padding-left:15px}.lp-list--checkmark.text-align-left.font-scale-3 li::before{left:-4px}.lp-list--checkmark.text-align-left.font-scale-4 li::before{left:-6px}.lp-list--checkmark.text-align-left.font-scale-5 li::before{left:-6px}.lp-list--checkmark.text-align-left.font-scale-6 li::before{left:-6px}.lp-list--checkmark.text-align-left.font-scale-7 li{padding-left:25px}.lp-list--checkmark.text-align-left.font-scale-7 li::before{left:-10px}.lp-list--checkmark.text-align-left.font-scale-8 li{padding-left:25px}.lp-list--checkmark.text-align-left.font-scale-8 li::before{left:-10px}.lp-list--checkmark.text-align-left.font-scale-9 li{padding-left:25px}.lp-list--checkmark.text-align-left.font-scale-9 li::before{left:-10px}.lp-list--checkmark.text-align-left.font-scale-10 li{padding-left:25px}.lp-list--checkmark.text-align-left.font-scale-10 li::before{left:-10px}.lp-list--checkmark.text-align-left.font-scale-10 li{padding-left:35px}.lp-list--checkmark.text-align-left.font-scale-11 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-11 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-12 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-12 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-13 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-13 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-14 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-14 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-15 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-15 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-16 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-16 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-17 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-17 li::before{left:-0.1em}.lp-list--checkmark.text-align-left.font-scale-18 li{padding-left:1.05em}.lp-list--checkmark.text-align-left.font-scale-18 li::before{left:-0.1em}.lp-list--bullet.text-align-left.font-scale-1 li{padding-left:15px}.lp-list--bullet.text-align-left.font-scale-1 li::before{top:2px;left:-2px}.lp-list--bullet.text-align-left.font-scale-2 li{padding-left:15px}.lp-list--bullet.text-align-left.font-scale-2 li::before{top:2px;left:-2px}.lp-list--bullet.text-align-left.font-scale-3 li{padding-left:15px}.lp-list--bullet.text-align-left.font-scale-3 li::before{top:2px;left:-2px}.lp-list--bullet.text-align-left.font-scale-4 li{padding-left:20px}.lp-list--bullet.text-align-left.font-scale-4 li::before{left:0}.lp-list--bullet.text-align-left.font-scale-5 li{padding-left:20px}.lp-list--bullet.text-align-left.font-scale-5 li::before{left:0}.lp-list--bullet.text-align-left.font-scale-6 li{padding-left:20px}.lp-list--bullet.text-align-left.font-scale-6 li::before{left:0}.lp-list--bullet.text-align-left.font-scale-7 li::before{left:2px}.lp-list--bullet.text-align-left.font-scale-8 li::before{left:2px}.lp-list--bullet.text-align-left.font-scale-9 li::before{left:2px}.lp-list--bullet.text-align-left.font-scale-10 li{padding-left:35px}.lp-list--bullet.text-align-left.font-scale-10 li::before{left:6px}.lp-list--bullet.text-align-left.font-scale-11 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-11 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-12 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-12 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-13 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-13 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-14 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-14 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-15 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-15 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-16 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-16 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-17 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-17 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--bullet.text-align-left.font-scale-18 li{padding-left:1.05em}.lp-list--bullet.text-align-left.font-scale-18 li::before{left:.25em;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-1 li{padding-left:15px}.lp-list--numbered.text-align-left.font-scale-1 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-1 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-2 li{padding-left:15px}.lp-list--numbered.text-align-left.font-scale-2 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-2 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-3 li{padding-left:15px}.lp-list--numbered.text-align-left.font-scale-3 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-3 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-4 li{padding-left:20px}.lp-list--numbered.text-align-left.font-scale-4 li:nth-child(n+10){padding-left:30px}.lp-list--numbered.text-align-left.font-scale-4 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-5 li{padding-left:20px}.lp-list--numbered.text-align-left.font-scale-5 li:nth-child(n+10){padding-left:30px}.lp-list--numbered.text-align-left.font-scale-5 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-6 li{padding-left:20px}.lp-list--numbered.text-align-left.font-scale-6 li:nth-child(n+10){padding-left:30px}.lp-list--numbered.text-align-left.font-scale-6 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-7 li{padding-left:25px}.lp-list--numbered.text-align-left.font-scale-7 li:nth-child(n+10){padding-left:45px}.lp-list--numbered.text-align-left.font-scale-7 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-8 li{padding-left:25px}.lp-list--numbered.text-align-left.font-scale-8 li:nth-child(n+10){padding-left:45px}.lp-list--numbered.text-align-left.font-scale-8 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-9 li{padding-left:25px}.lp-list--numbered.text-align-left.font-scale-9 li:nth-child(n+10){padding-left:45px}.lp-list--numbered.text-align-left.font-scale-9 li::before{left:-3px}.lp-list--numbered.text-align-left.font-scale-10 li{padding-left:35px}.lp-list--numbered.text-align-left.font-scale-10 li:nth-child(n+10){padding-left:60px}.lp-list--numbered.text-align-left.font-scale-10 li::before{left:-2px}.lp-list--numbered.text-align-left.font-scale-11 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-11 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-11 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-12 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-12 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-12 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-13 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-13 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-13 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-14 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-14 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-14 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-15 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-15 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-15 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-16 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-16 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-16 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-17 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-17 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-17 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--numbered.text-align-left.font-scale-18 li{padding-left:1.05em}.lp-list--numbered.text-align-left.font-scale-18 li:nth-child(n+10){padding-left:1.625em}.lp-list--numbered.text-align-left.font-scale-18 li::before{left:-2px;line-height:.75em;top:.18em}.lp-list--icon.text-align-left li::before{left:-6px}.lp-list--icon.text-align-left.font-scale-1 li{padding-left:20px}.lp-list--icon.text-align-left.font-scale-2 li{padding-left:20px}.lp-list--icon.text-align-left.font-scale-3 li{padding-left:20px}.lp-list--icon.text-align-left.font-scale-7 li{padding-left:40px}.lp-list--icon.text-align-left.font-scale-8 li{padding-left:40px}.lp-list--icon.text-align-left.font-scale-9 li{padding-left:40px}.lp-list--icon.text-align-left.font-scale-10 li{padding-left:40px}.lp-list--icon.text-align-left.font-scale-10 li{padding-left:55px}.lp-list--icon.text-align-left.font-scale-11 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-12 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-13 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-14 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-15 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-16 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-17 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-18 li::before{left:-5px}@media(max-width: 480px){.lp-list--checkmark.text-align-left.font-scale-7 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-8 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-9 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-10 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-11 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-12 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-13 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-14 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-15 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-16 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-17 li::before{left:-5px}.lp-list--checkmark.text-align-left.font-scale-18 li::before{left:-5px}.lp-list--numbered.text-align-left.font-scale-1 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-2 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-3 li:nth-child(n+10){padding-left:20px}.lp-list--numbered.text-align-left.font-scale-4 li:nth-child(n+10){padding-left:25px}.lp-list--numbered.text-align-left.font-scale-5 li:nth-child(n+10){padding-left:25px}.lp-list--numbered.text-align-left.font-scale-6 li:nth-child(n+10){padding-left:25px}.lp-list--numbered.text-align-left.font-scale-7 li:nth-child(n+10){padding-left:35px}.lp-list--numbered.text-align-left.font-scale-8 li:nth-child(n+10){padding-left:35px}.lp-list--numbered.text-align-left.font-scale-9 li:nth-child(n+10){padding-left:35px}.lp-list--numbered.text-align-left.font-scale-10 li:nth-child(n+10){padding-left:40px}.lp-list--icon.text-align-left.font-scale-7 li{padding-left:28px}.lp-list--icon.text-align-left.font-scale-7 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-8 li{padding-left:28px}.lp-list--icon.text-align-left.font-scale-8 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-9 li{padding-left:28px}.lp-list--icon.text-align-left.font-scale-9 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-10 li{padding-left:35px}.lp-list--icon.text-align-left.font-scale-11 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-11 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-12 li{padding-left:1.25em}.lp-l
50ist--icon.text-align-left.font-scale-12 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-13 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-13 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-14 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-14 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-15 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-15 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-16 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-16 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-17 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-17 li::before{left:-5px}.lp-list--icon.text-align-left.font-scale-18 li{padding-left:1.25em}.lp-list--icon.text-align-left.font-scale-18 li::before{left:-5px}}[data-widget-type=lp-image-text] .composite-box,[data-widget-type=lp-calendar-text] .composite-box{align-items:stretch}[data-widget-type=lp-image-text] .composite-column-compose,[data-widget-type=lp-calendar-text] .composite-column-compose{display:flex}[data-widget-type=lp-image-text] .layout-TC .composite-column-compose,[data-widget-type=lp-image-text] .layout-BC .composite-column-compose,[data-widget-type=lp-calendar-text] .layout-TC .composite-column-compose,[data-widget-type=lp-calendar-text] .layout-BC .composite-column-compose{flex-direction:column}[data-widget-type=lp-image-text] .layout-TR .composite-row-compose,[data-widget-type=lp-image-text] .layout-CR .composite-row-compose,[data-widget-type=lp-image-text] .layout-BR .composite-row-compose,[data-widget-type=lp-image-text] .layout-TL .composite-row-compose,[data-widget-type=lp-image-text] .layout-CL .composite-row-compose,[data-widget-type=lp-image-text] .layout-BL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-TR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-CR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-BR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-TL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-CL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-BL .composite-row-compose{flex:1 1 100%;flex-direction:row}[data-widget-type=lp-image-text] .layout-TR .composite-row-compose,[data-widget-type=lp-image-text] .layout-TL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-TR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-TL .composite-row-compose{align-items:flex-start}[data-widget-type=lp-image-text] .layout-CR .composite-row-compose,[data-widget-type=lp-image-text] .layout-CL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-CR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-CL .composite-row-compose{align-items:center}[data-widget-type=lp-image-text] .layout-BR .composite-row-compose,[data-widget-type=lp-image-text] .layout-BL .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-BR .composite-row-compose,[data-widget-type=lp-calendar-text] .layout-BL .composite-row-compose{align-items:flex-end}@media(max-width: 767px){.section .composite{padding:8px}}.leadbox .section,.leadbox .page>section{padding:initial}@media(max-width: 479px){.inner-column{padding:8px}}@media(min-width: 480px)and (max-width: 767px){.inner-column{padding:12px}}/*# sourceMappingURL=page-styles.css.map *//*!* animate.css - https://animate.style/* Version - 4.1.5* Licensed under the MIT license - https://opensource.org/licenses/MIT** Copyright (c) 2024 Animate.css*/:root{--animate-duration:1s;--animate-delay:1s;--animate-repeat:1}.lp-animate__animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-duration:var(--animate-duration);animation-duration:var(--animate-duration);-webkit-animation-fill-mode:both;animation-fill-mode:both}.lp-animate__animated.lp-animate__infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.lp-animate__animated.lp-animate__repeat-1{-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-iteration-count:var(--animate-repeat);animation-iteration-count:var(--animate-repeat)}.lp-animate__animated.lp-animate__repeat-2{-webkit-animation-iteration-count:2;animation-iteration-count:2;-webkit-animation-iteration-count:calc(var(--animate-repeat)*2);animation-iteration-count:calc(var(--animate-repeat)*2)}.lp-animate__animated.lp-animate__repeat-3{-webkit-animation-iteration-count:3;animation-iteration-count:3;-webkit-animation-iteration-count:calc(var(--animate-repeat)*3);animation-iteration-count:calc(var(--animate-repeat)*3)}.lp-animate__animated.lp-animate__delay-1s{-webkit-animation-delay:1s;animation-delay:1s;-webkit-animation-delay:var(--animate-delay);animation-delay:var(--animate-delay)}.lp-animate__animated.lp-animate__delay-2s{-webkit-animation-delay:2s;animation-delay:2s;-webkit-animation-delay:calc(var(--animate-delay)*2);animation-delay:calc(var(--animate-delay)*2)}
50.lp-animate__animated.lp-animate__delay-3s{-webkit-animation-delay:3s;animation-delay:3s;-webkit-animation-delay:calc(var(--animate-delay)*3);animation-delay:calc(var(--animate-delay)*3)}.lp-animate__animated.lp-animate__delay-4s{-webkit-animation-delay:4s;animation-delay:4s;-webkit-animation-delay:calc(var(--animate-delay)*4);animation-delay:calc(var(--animate-delay)*4)}.lp-animate__animated.lp-animate__delay-5s{-webkit-animation-delay:5s;animation-delay:5s;-webkit-animation-delay:calc(var(--animate-delay)*5);animation-delay:calc(var(--animate-delay)*5)}.lp-animate__animated.lp-animate__faster{-webkit-animation-duration:.5s;animation-duration:.5s;-webkit-animation-duration:calc(var(--animate-duration)/2);animation-duration:calc(var(--animate-duration)/2)}.lp-animate__animated.lp-animate__fast{-webkit-animation-duration:.8s;animation-duration:.8s;-webkit-animation-duration:calc(var(--animate-duration)*.8);animation-duration:calc(var(--animate-duration)*.8)}.lp-animate__animated.lp-animate__slow{-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-duration:calc(var(--animate-duration)*2);animation-duration:calc(var(--animate-duration)*2)}.lp-animate__animated.lp-animate__slower{-webkit-animation-duration:3s;animation-duration:3s;-webkit-animation-duration:calc(var(--animate-duration)*3);animation-duration:calc(var(--animate-duration)*3)}@media (prefers-reduced-motion:reduce),print{.lp-animate__animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important}.lp-animate__animated[class*=Out]{opacity:0}}@-webkit-keyframes pulse{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes pulse{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.lp-animate__pulse{-webkit-animation-name:pulse;animation-name:pulse;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes headShake{0%{-webkit-transform:translateX(0);transform:translateX(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translateX(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translateX(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translateX(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translateX(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes headShake{0%{-webkit-transform:translateX(0);transform:translateX(0)}6.5%{-webkit-transform:translateX(-6px) rotateY(-9deg);transform:translateX(-6px) rotateY(-9deg)}18.5%{-webkit-transform:translateX(5px) rotateY(7deg);transform:translateX(5px) rotateY(7deg)}31.5%{-webkit-transform:translateX(-3px) rotateY(-5deg);transform:translateX(-3px) rotateY(-5deg)}43.5%{-webkit-transform:translateX(2px) rotateY(3deg);transform:translateX(2px) rotateY(3deg)}50%{-webkit-transform:translateX(0);transform:translateX(0)}}.lp-animate__headShake{-webkit-animation-name:headShake;animation-name:headShake;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}.lp-animate__heartBeat{-webkit-animation-duration:1.3s;animation-duration:1.3s;-webkit-animation-duration:calc(var(--animate-duration)*1.3);animation-duration:calc(var(--animate-duration)*1.3);-webkit-animation-name:heartBeat;animation-name:heartBeat;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes wobble{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate(-5deg);transform:translate3d(-25%,0,0) rotate(-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate(3deg);transform:translate3d(20%,0,0) rotate(3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate(-3deg);transform:translate3d(-15%,0,0) rotate(-3deg)}
5060%{-webkit-transform:translate3d(10%,0,0) rotate(2deg);transform:translate3d(10%,0,0) rotate(2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate(-1deg);transform:translate3d(-5%,0,0) rotate(-1deg)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes wobble{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate(-5deg);transform:translate3d(-25%,0,0) rotate(-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate(3deg);transform:translate3d(20%,0,0) rotate(3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate(-3deg);transform:translate3d(-15%,0,0) rotate(-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate(2deg);transform:translate3d(10%,0,0) rotate(2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate(-1deg);transform:translate3d(-5%,0,0) rotate(-1deg)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.lp-animate__flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes rubberBand{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes rubberBand{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.lp-animate__rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.9)}60%{opacity:1;-webkit-transform:scale3d(1.03,1.03,1.03);transform:scale3d(1.03,1.03,1.03)}80%{-webkit-transform:scale3d(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}.lp-animate__bounceIn{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-duration:calc(var(--animate-duration)*.75);animation-duration:calc(var(--animate-duration)*.75);-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,-3000px,0) scaleY(3);transform:translate3d(0,-3000px,0) scaleY(3)}60%{opacity:1;-webkit-transform:translate3d(0,25px,0) scaleY(.9);transform:translate3d(0,25px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,-10px,0) scaleY(.95);transform:translate3d(0,-10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,5px,0) scaleY(.985);transform:translate3d(0,5px,0) scaleY(.985)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(-3000px,0,0) scaleX(3);transform:translate3d(-3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(25px,0,0) scaleX(1);transform:translate3d(25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(-10px,0,0) scaleX(.98);transform:translate3d(-10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(5px,0,0) scaleX(.995);transform:translate3d(5px,0,0) scaleX(.995)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(3000px,0,0) scaleX(3);transform:translate3d(3000px,0,0) scaleX(3)}60%{opacity:1;-webkit-transform:translate3d(-25px,0,0) scaleX(1);transform:translate3d(-25px,0,0) scaleX(1)}75%{-webkit-transform:translate3d(10px,0,0) scaleX(.98);transform:translate3d(10px,0,0) scaleX(.98)}90%{-webkit-transform:translate3d(-5px,0,0) scaleX(.995);transform:translate3d(-5px,0,0) scaleX(.995)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:translate3d(0,3000px,0) scaleY(5);transform:translate3d(0,3000px,0) scaleY(5)}60%{opacity:1;-webkit-transform:translate3d(0,-20px,0) scaleY(.9);transform:translate3d(0,-20px,0) scaleY(.9)}75%{-webkit-transform:translate3d(0,10px,0) scaleY(.95);transform:translate3d(0,10px,0) scaleY(.95)}90%{-webkit-transform:translate3d(0,-5px,0) scaleY(.985);transform:translate3d(0,-5px,0) scaleY(.985)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes fadeIn{0%{opacity:0}
50to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lp-animate__fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lp-animate__slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes backInDown{0%{opacity:.7;-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7)}80%{opacity:.7;-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes backInDown{0%{opacity:.7;-webkit-transform:translateY(-1200px) scale(.7);transform:translateY(-1200px) scale(.7)}80%{opacity:.7;-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.lp-animate__backInDown{-webkit-animation-name:backInDown;animation-name:backInDown}@-webkit-keyframes backInLeft{0%{opacity:.7;-webkit-transform:translateX(-2000px) scale(.7);transform:translateX(-2000px) scale(.7)}80%{opacity:.7;-webkit-transform:translateX(0) scale(.7);transform:translateX(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes backInLeft{0%{opacity:.7;-webkit-transform:translateX(-2000px) scale(.7);transform:translateX(-2000px) scale(.7)}80%{opacity:.7;-webkit-transform:translateX(0) scale(.7);transform:translateX(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.lp-animate__backInLeft{-webkit-animation-name:backInLeft;animation-name:backInLeft}@-webkit-keyframes backInRight{0%{opacity:.7;-webkit-transform:translateX(2000px) scale(.7);transform:translateX(2000px) scale(.7)}80%{opacity:.7;-webkit-transform:translateX(0) scale(.7);transform:translateX(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes backInRight{0%{opacity:.7;-webkit-transform:translateX(2000px) scale(.7);transform:translateX(2000px) scale(.7)}80%{opacity:.7;-webkit-transform:translateX(0) scale(.7);transform:translateX(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.lp-animate__backInRight{-webkit-animation-name:backInRight;animation-name:backInRight}@-webkit-keyframes backInUp{0%{opacity:.7;-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7)}80%{opacity:.7;-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes backInUp{0%{opacity:.7;-webkit-transform:translateY(1200px) scale(.7);transform:translateY(1200px) scale(.7)}80%{opacity:.7;-webkit-transform:translateY(0) scale(.7);transform:translateY(0) scale(.7)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}.lp-animate__backInUp{-webkit-animation-name:backInUp;animation-name:backInUp}
51    </style>
52    <meta name="page-analytics-property" content="hLeFrF8EGnQFQHcU4U9D8W">
53    
54    
54<script type="text/javascript">
55      (function(a,c,d,b,e,f){a[d]=b;a[b]||(a[b]=function(){a[b].q=a[b].q||[];a[b].q.push(arguments)},d=c.createElement(e),d.async=!0,d.src=f,c=c.getElementsByTagName(e)[0],c.parentNode.insertBefore(d,c))})(window,document,"LeadPagesCenterObject","center","script","https://js.center.io/center.js");
56      center('create', 'hLeFrF8EGnQFQHcU4U9D8W', 'hLeFrF8EGnQFQHcU4U9D8W', {customId: 'lp-a5vZjFRrzN7cYty54236qH'});
57      center('send', 'view', 'leadpage', 'a5vZjFRrzN7cYty54236qH');
58    </script>
58
59    
60  </head>
61  <body><a href="https://pages.lpcontent.net/cdn-cgi/content?id=SaKu4kqOHWL08ZiK1dTfnt1l3BwWoO0TzW.oAINubcM-1791595235.9412918-1.2.1.1-Jt8PYjPhb0Pv4z6siAJXTuw.O3QPj12VmZjPwHRwbKyVNfz75.ITtscm91fmy_BD" aria-hidden="true" rel="nofollow noopener" style="display: none !important; visibility: hidden !important"></a>
62    
63    <div class="page-background has-background-image" data-background="/api/library/bun1zu62e3m3jbl7h49ne1xa"></div>
64    <style data-emotion-css="18p4x22 r2ag0e 119qg5r 2jofpk 1yvp6hl y5ou3l 6hau26 1pjsesg">.page-background{position:fixed;height:100vh;top:0;left:0;right:0;bottom:0;z-index:-1;background-color:rgb(26,24,54);background-size:cover;background-position:center center;background-size:cover;background-position:center center;background-repeat:no-repeat;background-image:linear-gradient(rgba(0,0,0,0), rgba(0,0,0,0)),url(/api/library/bun1zu62e3m3jbl7h49ne1xa);-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);}section{margin:0 auto;}.container{max-width:1140px;}@media (min-width:calc(1140px / 16)em){.widget{padding:calc(1140px / 100);}}h1{color:rgb(255,255,255);font-family:"PT Serif",sans-serif;font-weight:normal;font-style:normal;}h2{color:rgb(255,255,255);font-family:"PT Serif",sans-serif;font-weight:normal;font-style:normal;}h3{color:rgb(255,255,255);font-family:"PT Serif",sans-serif;font-weight:normal;font-style:normal;}p{color:rgb(255,255,255);font-family:"PT Serif",sans-serif;font-weight:bold;font-style:normal;}ul{color:rgb(255,255,255);font-family:"PT Serif",sans-serif;font-weight:bold;font-style:normal;}h1{font-size:2.5rem;}h2{font-size:1.75rem;}h3{font-size:1.25rem;}p{font-size:1.75rem;}ul{font-size:1.75rem;}.lp-list.lp-list--bullet.text-align-left li::before{left:2px;}.lp-list.lp-list--numbered.text-align-left li::before{left:-3px;}.lp-list.lp-list--numbered.text-align-left li{padding-left:25px;}.lp-list.lp-list--numbered.text-align-left li:nth-child(n + 10){padding-left:45px;}@media only screen and (max-width:480px){.lp-list.lp-list--numbered.text-align-left li:nth-child(n + 10){padding-left:35px;}}.lp-list.lp-list--icon.text-align-left li::before{left:-6px;}.lp-list.lp-list--icon.text-align-left li{padding-left:40px;}@media only screen and (max-width:480px){.lp-list.lp-list--icon.text-align-left li::before{left:-5px;}.lp-list.lp-list--icon.text-align-left li{padding-left:28px;}}.lp-list.lp-list--checkmark.text-align-left li::before{left:-10px;}.lp-list.lp-list--checkmark.text-align-left li{padding-left:25px;}@media only screen and (max-width:480px){.lp-list.lp-list--checkmark.text-align-left li::before{left:-5px;}}h1{padding-bottom:0em;}h2{padding-bottom:0em;}h3{padding-bottom:0em;}p{margin-bottom:0em;}p,.lp-list{margin-bottom:0em;}ul{margin-bottom:0em;}h1{line-height:0.875;}h2{line-height:1.25;}h3{line-height:1.375;}p{line-height:1.125;}ul{line-height:1.125;}@media (min-width:480px){h1{font-size:2rem;}}@media (min-width:768px){h1{font-size:2.5rem;}}@media (min-width:480px){h2{font-size:1.5rem;}}@media (min-width:768px){h2{font-size:1.75rem;}}@media (min-width:480px){h3{font-size:1.125rem;}}@media (min-width:768px){h3{font-size:1.25rem;}}@media (min-width:480px){p{font-size:1.5rem;}}@media (min-width:768px){p{font-size:1.75rem;}}@media (min-width:480px){ul{font-size:1.5rem;}}@media (min-width:768px){ul{font-size:1.75rem;}}.lp-alert,.lp-calendar-react .date,.lp-calendar-react .month,.lp-form-v2-input-react{font-family:"PT Serif",sans-serif;}.lp-form-v2-input-react{color:rgb(255,255,255);}@-webkit-keyframes animation-6hau26{0%{box-shadow:0px 0px 0px 0px rgb(77,169,244);}100%{box-shadow:0px 0px 0px 20px rgba(255,255,255,0);}}@keyframes animation-6hau26{0%{box-shadow:0px 0px 0px 0px rgb(77,169,244);}100%{box-shadow:0px 0px 0px 20px rgba(255,255,255,0);}}@-webkit-keyframes animation-1pjsesg{0%{background-image:linear-gradient( 135deg, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 50%, rgba(255,255,255,0) 100% );}50%{background-image:linear-gradient( 135deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0) 100% );}100%{background-image:linear-gradient( 135deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 50%, rgba(255,255,255,0.4) 100% );}}@keyframes animation-1pjsesg{0%{background-image:linear-gradient( 135deg, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0) 50%, rgba(255,255,255,0) 100% );}50%{background-image:linear-gradient( 135deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.4) 50%, rgba(255,255,255,0) 100% );}100%{background-image:linear-gradient( 135deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 50%, rgba(255,255,255,0.4) 100% );}}</style><style data-emotion-css="1o3acgz">.css-1o3acgz{background-image:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0)),url(undefined);}</style><div class="page css-1o3acgz"><style data-emotion-css="eporc3">.css-eporc3{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);background-size:cover;background-position:center center;background-repeat:no-repeat;}.css-eporc3 > .container{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.site-header .css-eporc3 > .container{padding-top:-5px;padding-right:0;
64padding-bottom:-5px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-eporc3{padding:0 50px;}@media (max-width:23.75em){.bar .css-eporc3{padding:0 25px;}}@media (min-width:71.25em){.css-eporc3 > .container{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><section class="section css-eporc3" data-guid="1ea9f9ee-c3a6-b9a6-d716-d4eb73b8bca4"><div class="container" id="header"><div class="layout flex flex--12" data-guid="dddf275c-9d95-f3b6-d36c-98c760f33598"><style data-emotion-css="vfaad">.css-vfaad{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-vfaad.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-vfaad.column > .inner-column{padding-top:11.4px;padding-right:11.4px;padding-bottom:11.4px;padding-left:11.4px;}}</style><div class="column flex__item--md-3 flex__item--xs-12 css-vfaad" data-guid="decaf448-82ab-5063-a45d-99a2896ec2d4"><style data-emotion-css="eeduzr">.css-eeduzr{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:1vw;padding-right:1vw;padding-bottom:1vw;padding-left:1vw;padding-top:1cqw;padding-right:1cqw;padding-bottom:1cqw;padding-left:1cqw;}.bar .css-eeduzr{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-eeduzr"><style data-emotion-css="47r3vg">.section--center-widgets .css-47r3vg{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}@media (max-width:767px){.bar .css-47r3vg{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}</style><div class="row flex flex--12 css-47r3vg"><style data-emotion-css="8x0d4x">.section--center-widgets .css-8x0d4x{-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;max-width:100%;}</style><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="d402471a-374f-6e44-c3b2-718dd184bd08" class="widget"><style data-emotion-css="1yltisf">.css-1yltisf{text-align:center;}</style><div class="css-1yltisf"><div><style data-emotion-css="y7ixbe">.css-y7ixbe{display:inline-block;vertical-align:middle;max-width:3089px;}@media (max-width:530px){.site-header .composite .widget .css-y7ixbe{max-width:calc(100% - 80px);}}</style><img class="lp-image-react w-d402471a-374f-6e44-c3b2-718dd184bd08 css-y7ixbe" src="/api/library/fg9pwkh8zwnf7q2160ec2k6s?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="40 Days for Life - The Beginning of the End of Abortion" style="width:100%; height:auto" fetchpriority="high" srcset="/api/library/fg9pwkh8zwnf7q2160ec2k6s?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/fg9pwkh8zwnf7q2160ec2k6s?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/fg9pwkh8zwnf7q2160ec2k6s?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/fg9pwkh8zwnf7q2160ec2k6s?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/fg9pwkh8zwnf7q2160ec2k6s?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="100vw" width="3089" height="710"></div></div></div></div></div></div></div></div></div></div></div><div class="column flex__item--md-6 flex__item--xs-12 css-vfaad" data-guid="22b570dc-d676-791d-d606-d05c1a8fb474"><div class="inner-column css-eeduzr"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="0cb478e2-6bbc-36e3-d6e8-675e99fe214e" class="widget"><style data-emotion-css="piwg9t">.css-piwg9t{position:relative;z-index:0;text-align:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;
64-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}</style><div class="lp-button-react-wrapper css-piwg9t" data-widget-type="LpButtonReact"><style data-emotion-css="rywwls">.css-rywwls{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;border-style:solid;border-width:1px;text-align:center;font-family:'Lato',sans-serif;text-shadow:none;-webkit-transition:color 0.2s linear,background 0.2s linear,border-color 0.2s linear, text-shadow 0.2s linear;transition:color 0.2s linear,background 0.2s linear,border-color 0.2s linear, text-shadow 0.2s linear;-webkit-text-decoration:none;text-decoration:none;position:relative;font-weight:bold;min-height:60px;min-width:120px;padding:20px 32px;font-family:"PT Serif",sans-serif;border-radius:4px;}.css-rywwls::before{border-radius:4px;}.css-rywwls,.css-rywwls:focus,.css-rywwls:active{border-color:rgb(77,169,244);background:rgb(77,169,244);color:rgb(255,255,255);}.css-rywwls:hover{background-color:rgb(61,134,193);border-color:rgb(61,134,193);color:rgb(255,255,255);}@media (prefers-reduced-motion:no-preference){.css-rywwls{-webkit-animation:animation-6hau26 1333.3333333333335ms infinite ease-out;animation:animation-6hau26 1333.3333333333335ms infinite ease-out;}.css-rywwls:hover{-webkit-animation:animation-1pjsesg 200ms;animation:animation-1pjsesg 200ms;}}</style><a data-widget-link="true" href="#petition" data-link-type="section" class="lp-button-react w-0cb478e2-6bbc-36e3-d6e8-675e99fe214e is-bold lp-button-react--large lp-button-react--flat lp-btn-flat font-scale-6 line-height-scale-1 css-rywwls" contenteditable="false">SIGN THE PETITION</a></div></div></div></div></div></div></div></div></div></div><div class="column flex__item--md-3 flex__item--xs-12 css-vfaad" data-guid="5337ea78-2094-6c69-fb7a-8d6ab0ba3f89"><div class="inner-column css-eeduzr"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="179da546-dc8f-2e5b-cec9-bc2a2d5d66af" class="widget"><style data-emotion-css="nrb69m">.css-nrb69m{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-content:center;-ms-flex-line-pack:center;align-content:center;}</style><div class="lp-share-react w-179da546-dc8f-2e5b-cec9-bc2a2d5d66af css-nrb69m" data-widget-type="LpShareReact"><style data-emotion-css="13bbv68">.css-13bbv68{width:48px;height:48px;-webkit-flex:0 0 auto;-ms-flex:0 0 auto;flex:0 0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:1.5rem;line-height:1;-webkit-text-decoration:none;text-decoration:none;-webkit-transition:background 0.3s ease-in-out;transition:background 0.3s ease-in-out;background-color:rgba(0,0,0,0);content:'rgba(0, 0, 0, 0)';}.css-13bbv68:hover,.css-13bbv68:focus,.css-13bbv68:active{background-color:rgba(51,51,51,0);}</style><a class="lp-share-react_item lp-share-react_item--facebook css-13bbv68" target="_blank" rel="noopener noreferrer" data-alternate-url="" data-publish-url="" data-share-type="facebook"><style data-emotion-css="4e78w1">.css-4e78w1{position:absolute;height:1px;width:1px;overflow:hidden;-webkit-clip:rect(1px 1px 1px 1px);clip:rect(1px 1px 1px 1px);-webkit-clip:rect(1px,1px,1px,1px);clip:rect(1px,1px,1px,1px);white-space:nowrap;}</style><span class="css-4e78w1">Share on Facebook</span><style data-emotion-css="pfxh9g">.css-pfxh9g{color:rgb(77,169,244) !important;}</style><i class="fab fa-facebook-f css-pfxh9g"></i></a><a class="lp-share-react_item lp-share-react_item--x-twitter css-13bbv68" target="_blank" rel="noopener noreferrer" data-alternate-url="" data-publish-url="" data-share-type="x-twitter"><span class="css-4e78w1">Share on X (Twitter)</span><i class="fab fa-x-twitter css-pfxh9g"></i></a><a class="lp-share-react_item lp-share-react_item--youtube css-13bbv68" target="_blank" rel="noopener noreferrer" data-alternate-url="" data-publish-url="" data-profile-url="https://www.youtube.com/channel/UCIuKDmVVDK1mm_iRhC01j4Q" data-share-type="youtube" data-profile-url-new-window="true"><span class="css-4e78w1">Share on Youtube</span><i class="fab fa-youtube css-pfxh9g"></i></a><a class="lp-share-react_item lp-share-react_item--instagram css-13bbv68" target="_blank" rel="noopener noreferrer" data-alternate-url="" data-publish-url="" data-profile-url="https://www.instagram.com/4
640daysforlife.official/" data-share-type="instagram" data-profile-url-new-window="true"><span class="css-4e78w1">Share on Instagram</span><i class="fab fa-instagram css-pfxh9g"></i></a></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="dousz5">.css-dousz5{background-color:rgba(0,0,0,1);border-color:rgba(0,0,0,1);background-image:linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.5)),url("/api/library/gq70cgjsdrg80bjfkueewxsh");background-size:cover;background-position:center top;background-repeat:no-repeat;min-height:90vh;}.css-dousz5 > .container{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.site-header .css-dousz5 > .container{padding-top:-5px;padding-right:0;padding-bottom:-5px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-dousz5{padding:0 50px;}@media (max-width:23.75em){.bar .css-dousz5{padding:0 25px;}}@media (min-width:71.25em){.css-dousz5 > .container{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><section class="flex-display flex-direction-column flex-justify-flex-start has-background-image has-background-size-cover section css-dousz5" data-guid="4469ea33-a6f1-ada1-09b6-2fa554627d0b" data-background="/api/library/gq70cgjsdrg80bjfkueewxsh"><div class="container" id="hero"><div class="layout flex flex--12" data-guid="925a6eff-d532-83c4-102b-18c9ef43add1"><style data-emotion-css="1f6woiw">.css-1f6woiw{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-1f6woiw.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-1f6woiw.column > .inner-column{padding-top:22.8px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-1f6woiw" data-guid="f55a21c4-2dd9-2d4d-6ec9-8238bb253663"><style data-emotion-css="pherr2">.css-pherr2{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:2vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:2cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.bar .css-pherr2{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-pherr2"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="b886928e-7f59-a57c-8e81-105588cecdb3" class="widget"><div class="lp-text-react lp-headline-react lp-animate__slower" data-widget-type="LpTextReact" data-lp-animate-widget="fadeIn" data-lp-animate-delay-widget="0" style="visibility:hidden"><p class="text-align-center font-scale-14 line-height-scale-6 gutter-bottom-1">DEFUND PLANNED PARENTHOOD</p></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="ed1cfd67-a782-6ad2-35c8-991c6bc3e547" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-9 line-height-scale-7"><span style="color: rgba(255, 255, 255, 1);"><span style="font-weight: 400">One year ago, YOU helped defund Planned Parenthood...taking away&nbsp;</span><em><span style="font-weight: 400">hundreds of millions of dollars&nbsp;</span></em><span style="font-weight: 400">from the abortion giant. But the defunding of Planned Parenthood lasted only a year.</span>&nbsp;Unless Congress acts soon, America's abortion empire will once again receive nearly a&nbsp;<em>billion</em>&nbsp;dollars a year from Uncle Sam<strong>.&nbsp;</strong><span style="font-weight: 400">Sign the petition to defund Planned Parenthood once again.</span></span></p></div></div></div></div></div></div></div></div></div></div></div><div class="layout flex flex--12" data-guid="c4bfe5e1-8b7b-7788-5191-b92202ea265d"><style data-emotion-css="c0hxug">.css-c0hxug{padding-top:0vw;padding-right:5vw;padding-bottom:0vw;padding-left:5vw;padding-top:0cqw;padding-right:5cqw;padding-bottom:0cqw;padding-left:5cqw;}@media(min-width:71.25em){.css-c0hxug.column{padding-top:0px;padding-right:57px;padding-bottom:0px;padding-left:57px;}.css-c0hxug.column > .inner-column{padding-top:11.4px;padding-right:114px;padding-bottom:11.4px;padding-left:114px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-c0hxug" data-guid="41d6541f-fb26-076e-9d93-34ca2ec38a63"><style data-emotion-css="8qq7j0">.css-8qq7j0{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:1vw;padding-right:10vw;padding-bottom:1vw;padding-left:10vw;padding-top:1cqw;padding-right:10cqw;padding-bottom:1cqw;padding-left:10cqw;}.bar .css-8qq7j0{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-8qq7j0"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="a40873a9-bd28-09ca-599a-72684a4526a8" class="widget"><style data-emotion-css="15gc0f6">.css-15gc0f6{height:6px;}
64@media (min-width:48em){.css-15gc0f6{height:-18px;}}</style><div class="lp-space-react w-a40873a9-bd28-09ca-599a-72684a4526a8 css-15gc0f6" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="2fe38c2a-d3d6-b60f-cae7-60975f8fcf76" class="widget"><div class="lp-button-react-wrapper css-piwg9t" data-widget-type="LpButtonReact"><a data-widget-link="true" href="#petition" data-link-type="section" class="lp-button-react w-2fe38c2a-d3d6-b60f-cae7-60975f8fcf76 is-bold lp-button-react--large lp-button-react--flat lp-btn-flat font-scale-6 line-height-scale-1 css-rywwls" contenteditable="false">SIGN THE PETITION</a></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="6dc3949c-812b-a706-156e-72661f598f96" class="widget"><style data-emotion-css="iry1kt">.css-iry1kt{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}</style><div class="lp-icon-react w-6dc3949c-812b-a706-156e-72661f598f96 css-iry1kt" data-widget-type="LpIconReact"><style data-emotion-css="1e8voxc">.css-1e8voxc{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:10%;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}</style><div class="lp-icon-react__container css-1e8voxc"><style data-emotion-css="naefec">.css-naefec{color:rgb(255,255,255);}</style><i class="fas fa-chevron-down lp-icon-react__icon css-naefec" aria-hidden="true"></i></div></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="28hb17">.css-28hb17{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);background-size:cover;background-position:center center;background-repeat:no-repeat;}.css-28hb17 > .container{padding-top:5vw;padding-right:5vw;padding-bottom:5vw;padding-left:5vw;padding-top:5cqw;padding-right:5cqw;padding-bottom:5cqw;padding-left:5cqw;}.site-header .css-28hb17 > .container{padding-top:20px;padding-right:0;padding-bottom:20px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-28hb17{padding:0 50px;}@media (max-width:23.75em){.bar .css-28hb17{padding:0 25px;}}@media (min-width:71.25em){.css-28hb17 > .container{padding-top:57px;padding-right:57px;padding-bottom:57px;padding-left:57px;}}</style><section class="section css-28hb17" data-guid="2409b076-4a9b-147a-9c32-47434a2bbb06"><div class="container" id="petition"><div class="layout flex flex--12" data-guid="20fcb219-ba24-963c-d0e8-4a45f3f56869"><style data-emotion-css="12b8izt">.css-12b8izt{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-12b8izt.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-12b8izt.column > .inner-column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-12b8izt" data-guid="1c871fae-9e6c-b267-4e67-51ac0f7f6706"><style data-emotion-css="c14f2p">.css-c14f2p{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.bar .css-c14f2p{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-c14f2p"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="c4d1b8c5-a99a-d0ab-5a83-bb71913e6fc2" class="widget"><div data-widget-type="LpHtmlReact">
65    <iframe sandbox="allow-forms allow-popups allow-popups-to-escape-sandbox allow-pointer-lock allow-same-origin allow-scripts allow-top-navigation" id="JotFormIFrame-250016698195160" title="Webcast 1.14.2025 &amp; Defund Planned Parenthood Petition" onload="window.parent.scrollTo(0,0)" allowtransparency="true" allow="geolocation; microphone; camera; fullscreen" src="https://form.jotform.com/250016698195160" frameborder="0" style="min-width:100%;max-width:100%;height:539px;border:none;" scrolling="no">
66    </iframe>
67    
67<script src="https://cdn.jotfor.ms/s/umd/latest/for-form-embed-handler.js"></script>
67
68    
68<script>window.jotformEmbedHandler("iframe[id='JotFormIFrame-250016698195160']", "https://form.jotform.com/")</script>
68
69    </div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="974fafd4-7a1d-0e23-a88b-8f5b269b55d4" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-1 gutter-bottom-1"><span style="color: rgba(0, 0, 0, 1);"><span style="font-weight: 400">BY SIGNING THE PETITION, YOU WILL ALSO RECEIVE THE LATEST 40 DAYS FOR LIFE NEWS, DEVOTIONALS, AND PRAYERS BY EMAIL.</span></span></p></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="q0vvus">.css-q0vvus{background-color:rgba(10,49,97,1);border-color:rgba(10,49,97,1);background-size:cover;background-position:center top;background-repeat:no-repeat;}.css-q0vvus > .container{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.site-header .css-q0vvus > .container{padding-top:-5px;padding-right:0;padding-bottom:-5px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-q0vvus{padding:0 50px;}@media (max-width:23.75em){.bar .css-q0vvus{padding:0 25px;}}@media (min-width:71.25em){.css-q0vvus > .container{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><section class="section css-q0vvus" data-lp-animate-section="fadeIn" style="visibility:hidden" data-guid="a66aa271-bee3-aef5-268c-9824adb6f855"><div class="container" id="speakers-1"><div class="layout flex flex--12" data-guid="01d2aad1-ec44-0cd7-6ae9-4486ccf6d9b2"><style data-emotion-css="12lwxu1">.css-12lwxu1{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-12lwxu1.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-12lwxu1.column > .inner-column{padding-top:57px;padding-right:11.4px;padding-bottom:57px;padding-left:57px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-12lwxu1" data-guid="e7f7ce0f-87f2-b73d-c232-93d99814deab"><style data-emotion-css="15v7lqb">.css-15v7lqb{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:5vw;padding-right:1vw;padding-bottom:5vw;padding-left:5vw;padding-top:5cqw;padding-right:1cqw;padding-bottom:5cqw;padding-left:5cqw;}.bar .css-15v7lqb{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-15v7lqb"><div class="row flex flex--12 css-47r3vg"><div class="layout-CL composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12 flex--sm-middle"><div class="widget-column flex__item--md-6 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="9ec53259-d603-4b2c-16af-7eeb7436de71" class="widget"><div class="css-1yltisf"><div><style data-emotion-css="1cg3cc6">.css-1cg3cc6{display:inline-block;vertical-align:middle;max-width:400px;}@media (max-width:530px){.site-header .composite .widget .css-1cg3cc6{max-width:calc(100% - 80px);}}</style><img class="lp-image-react w-9ec53259-d603-4b2c-16af-7eeb7436de71 css-1cg3cc6" src="/api/library/v81z464s2ay8aer75u01us2o?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="" style="width:80%" loading="lazy" srcset="/api/library/v81z464s2ay8aer75u01us2o?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/v81z464s2ay8aer75u01us2o?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/v81z464s2ay8aer75u01us2o?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/v81z464s2ay8aer75u01us2o?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/v81z464s2ay8aer75u01us2o?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="auto, 100vw"></div></div></div></div></div></div><div class="widget-column flex__item--md-6 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="9a28b4fe-d12f-b414-99ef-bf13778ba398" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><h3 class="lp-headline text-align-center font-scale-5 line-height-scale-3 gutter-bottom-5 small-subhead"><strong>Shawn Carney,</strong></h3><h3 class="lp-headline text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1 small-subhead">President and CEO of 40 Days for Life</h3><p class="text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1"></p><p class="text-align-left font-scale-4 line-height-scale-6 gutter-bottom-1"><span style="font-weight: 400">Shawn began as a volunteer in the pro-life movement while still in college. During this time, he helped lead the first ever local 40 Days for Life campaign. After graduating from college, Shawn was asked to serve as the executive director of the Coalition for Life, a local pro-life organization in Texas, made up of more than 60 churches. From its beginning, Shawn has been instrumental in growing 40 Days for Life nationally and then internationally.<br>Shawn is a regular media spokesperson, and his work has been featured on hundreds of outlets, including Fo
69x News, The Laura Ingraham Show, The Drudge Report, The Guardian, USA Today, and Christian media including The Christian Post, National Catholic Register, Sirius XM Catholic Radio, EWTN Radio, and Focus on the Family.<br>Shawn is one of the most sought-after pro-life speakers, addressing audiences coast-to-coast and internationally. Shawn and his wife Marilisa were portrayed in the 2019 major motion picture Unplanned, which tells the story of Abby Johnson's conversion as a Planned Parenthood director. Shawn is the author of four national bestselling books including The Beginning of the End of Abortion, To the Heart of the Matter, the #2 Amazon bestseller, </span><a href="https://www.40daysforlife.com/en/whattosaywhen" target="_blank" rel="noopener noreferrer" data-link-type="external">What to Say When: The Complete New Guide to Discussing Abortion</a><span style="font-weight: 400">, and </span><a href="https://www.40daysforlife.com/en/2" target="_blank" rel="noopener noreferrer" data-link-type="external">What to Say When 2: Your Proven Guide in The New Abortion Landscape<span style="font-weight: 400">.</span></a></p></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="066825c8-e378-a848-3ee8-b2e73485cb88" class="widget"><style data-emotion-css="1klih5i">.css-1klih5i{height:6px;}@media (min-width:48em){.css-1klih5i{height:48px;}}</style><div class="lp-space-react w-066825c8-e378-a848-3ee8-b2e73485cb88 css-1klih5i" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="layout-CR composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12 flex--sm-middle"><div class="widget-column flex__item--md-6 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="b024e70c-2051-6cbc-7141-c2d8ccc3effb" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><h3 class="lp-headline text-align-center font-scale-5 line-height-scale-2 gutter-bottom-4 small-subhead"><strong>Steve Karlen,</strong></h3><p class="text-align-center font-scale-4 line-height-scale-2 gutter-bottom-1"><span style="font-weight: 400">Campaign Director, 40 Days for Life</span></p><p class="text-align-center font-scale-4 line-height-scale-2 gutter-bottom-1"></p><p class="text-align-left font-scale-4 line-height-scale-6 gutter-bottom-1"><span style="font-weight: 400">40 Days for Life campaign in Madison, Wisconsin. Before long, he found himself at the center of a nationwide controversy as the health system at his alma mater, the University of Wisconsin, was secretly preparing to open a late-term abortion center on campus. Groups across the state looked to him for leadership. After nearly a year and a half, the University of Wisconsin Hospital and Clinics abandoned its plan to open an abortion facility, citing Steve and his team as the reason for the decision.<br>Steve now serves as the campaign director for 40 Days for Life, where he trains and assists local 40 Days for Life campaign leaders, co-hosts the 40 Days for Life Podcast, and edits 40 Days for Life's Day 41 magazine. He has spoken in all 50 states; Washington, DC; four Canadian provinces; and Mexico City. Steve is the author of the book This is When We Begin to Fight, the #2 Amazon bestseller, </span><a href="https://www.40daysforlife.com/en/whattosaywhen" target="_blank" rel="noopener noreferrer" data-link-type="external">What to Say When: The Complete New Guide to Discussing Abortion</a>, and <a href="https://www.40daysforlife.com/en/2" target="_blank" rel="noopener noreferrer" data-link-type="external"><u>What to Say When 2: Your Proven Guide in The New Abortion Landscape</u></a>.<span style="font-weight: 400"> Steve lives in Madison with his wife and five children.</span></p></div></div></div></div></div><div class="widget-column flex__item--md-6 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="20164d85-021d-fdc1-fe17-f40a67284a42" class="widget"><div class="css-1yltisf"><div><style data-emotion-css="156tzj2">.css-156tzj2{display:inline-block;vertical-align:middle;max-width:552px;}@media (max-width:530px){.site-header .composite .widget .css-156tzj2{max-width:calc(100% - 80px);}}</style><img class="lp-image-react w-20164d85-021d-fdc1-fe17-f40a67284a42 css-156tzj2" src="/api/library/q838c8zjp0ivj060qp4s3aip?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="" style="width:80%; height:auto" loading="lazy" srcset="/api/library/q838c8zjp0ivj060qp4s3aip?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/q838c8zjp0ivj060qp4s3aip?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/q838c8zjp0ivj060qp4s3aip?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/q838c8zjp0ivj060qp4s3aip?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/q838c8zjp0ivj060qp4s3aip?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="auto, 100vw" width="552" height="552"></div></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="15n2jkf">.css-15n2jkf{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);background-size:cover;background-position:center center;background-repeat:no-repeat;}.css-15n2jkf > .container{padding-top:3vw;padding-right:0vw;padding-bottom:3vw;padding-left:0vw;padding-top:3cqw;padding-right:0cqw;padding-bottom:3cqw;padding-left:0cqw;}.site-header .css-15n2jkf > .container{padding-top:10px;padding-right:0;padding-bottom:10px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-15n2jkf{padding:0 50px;}@media (max-width:23.75em){.bar .css-15n2jkf{padding:0 25px;}}
69@media (min-width:71.25em){.css-15n2jkf > .container{padding-top:34.2px;padding-right:0px;padding-bottom:34.2px;padding-left:0px;}}</style><section class="section css-15n2jkf" data-guid="86c80265-fb5c-553b-7053-7a3d2bba3a78"><div class="container" id="books"><div class="layout flex flex--12" data-guid="45f40945-9b35-b7e9-7616-6a5467d7ec94"><style data-emotion-css="14gjp4j">.css-14gjp4j{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-14gjp4j.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-14gjp4j.column > .inner-column{padding-top:11.4px;padding-right:34.2px;padding-bottom:11.4px;padding-left:34.2px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-14gjp4j" data-guid="81faf2a2-7864-5dec-e8b1-376dd276f40b"><style data-emotion-css="1acl3xw">.css-1acl3xw{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:1vw;padding-right:3vw;padding-bottom:1vw;padding-left:3vw;padding-top:1cqw;padding-right:3cqw;padding-bottom:1cqw;padding-left:3cqw;}.bar .css-1acl3xw{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-1acl3xw"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="bc45383d-18ff-3043-afd1-7df5e4d2a50f" class="widget"><div class="lp-space-react w-bc45383d-18ff-3043-afd1-7df5e4d2a50f css-1klih5i" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div><div class="layout-TC composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3 flex--sm-top"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="35336436-6c48-b659-3212-83f944ab3d8d" class="widget"><div class="css-1yltisf"><div><a data-widget-link="true" href="https://www.40daysforlife.com/en/whattosaywhen" target="_blank" rel="noopener noreferrer" data-link-type="external" class="lp-image-react-container lp-icon-react__icon--linked" contenteditable="false"><style data-emotion-css="1jycndq">.css-1jycndq{display:inline-block;vertical-align:middle;max-width:4000px;}@media (max-width:530px){.site-header .composite .widget .css-1jycndq{max-width:calc(100% - 80px);}}</style><img class="lp-image-react w-35336436-6c48-b659-3212-83f944ab3d8d css-1jycndq" src="/api/library/dcnuq6797vxutvdy0kuf56zz?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="" style="width:100%; height:auto" loading="lazy" srcset="/api/library/dcnuq6797vxutvdy0kuf56zz?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/dcnuq6797vxutvdy0kuf56zz?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/dcnuq6797vxutvdy0kuf56zz?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/dcnuq6797vxutvdy0kuf56zz?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/dcnuq6797vxutvdy0kuf56zz?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="auto, 100vw" width="4000" height="4000"></a></div></div></div></div></div><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="c3ca9433-55fb-cb21-19d4-7c87e771639a" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-5 line-height-scale-1 gutter-bottom-1"><span style="color: rgba(22, 41, 56, 1);"><a href="https://www.40daysforlife.com/en/whattosaywhen" target="_blank" rel="noopener noreferrer" data-link-type="external"><u>Read More</u></a></span></p></div></div></div></div></div></div></div><div class="layout-TC composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3 flex--sm-top"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="69637f5f-324c-9fe7-1999-26a2aae179e2" class="widget"><div class="css-1yltisf"><div><a data-widget-link="true" href="https://www.40daysforlife.com/en/2" target="_blank" rel="noopener noreferrer" data-link-type="external" class="lp-image-react-container lp-icon-react__icon--linked" contenteditable="false"><img class="lp-image-react w-69637f5f-324c-9fe7-1999-26a2aae179e2 css-1jycndq" src="/api/library/q56nptb8f3qwh8crspctev2d?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="" style="width:100%; height:auto" loading="lazy" srcset="/api/library/q56nptb8f3qwh8crspctev2d?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/q56nptb8f3qwh8crspctev2d?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/q56nptb8f3qwh8crspctev2d?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/q56nptb8f3qwh8crspctev2d?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/q56nptb8f3qwh8crspctev2d?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="auto, 100vw" width="4000" height="4000"></a></div></div></div></div></div><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="9d6f2be4-ad1c-1ab8-d7c1-7a14960a0176" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-5"><span style="color: rgba(22, 41, 56, 1);"><a href="https://www.40daysforlife.com/en/2" target="_blank" rel="noopener noreferrer" data-link-type="external"><u>Read More</u></a></span></p></div></div></div></div></div></div></div><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="eb279a37-b087-c882-550f-b46673ed9675" class="widget"><div class="lp-space-react w-eb279a37-b087-c882-550f-b46673ed9675 css-1klih5i" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="lq8ff1">.css-lq8ff1{background-color:rgba(22,41,56,1);border-color:rgba(22,41,56,1);background-size:cover;background-position:center center;background-repeat:no-repeat;}.css-lq8ff1 > .container{padding-top:5vw;padding-right:3vw;padding-bottom:5vw;padding-left:3vw;padding-top:5cqw;padding-right:3cqw;padding-bottom:5cqw;padding-left:3cqw;}.site-header .css-lq8ff1 > .container{padding-top:20px;padding-right:0;padding-bottom:20px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-lq8ff1{padding:0 50px;}@media (max-width:23.75em){.bar .css-lq8ff1{padding:0 25px;}}@media (min-width:71.25em){.css-lq8ff1 > .container{padding-top:57px;padding-right:34.2px;padding-bottom:57px;padding-left:34.2px;}}</style><section class="section css-lq8ff1" data-guid="a7d37245-eba1-38bf-0e9f-c02fb61f52f1"><div class="container" id="media">
69<div class="layout flex flex--12" data-guid="2e5e293d-ad42-eca6-e334-d58cc03a20a3"><div class="column flex__item--md-12 flex__item--xs-12 css-vfaad" data-guid="bef1f862-8b53-36b8-c3d8-f8811eb35323"><div class="inner-column css-eeduzr"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="c8ec1bab-5d71-7489-4311-3e12ff7d08ca" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center"><span style="color: rgba(255, 255, 255, 1);">Media Coverage to Defund Planned Parenthood</span></p></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="ed0e11ab-95f1-a468-41db-8be12679479e" class="widget"><style data-emotion-css="1i8lai6">.css-1i8lai6{height:6px;}@media (min-width:48em){.css-1i8lai6{height:-20px;}}</style><div class="lp-space-react w-ed0e11ab-95f1-a468-41db-8be12679479e css-1i8lai6" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-6 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--6"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="8926a7ef-f3d5-25f1-e71a-9c0cc4ff6268" class="widget"><style data-emotion-css="ypxerw">.css-ypxerw{position:relative;width:100%;height:0;padding-bottom:56.25%;overflow:hidden;}.css-ypxerw iframe,.css-ypxerw img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;}</style><div class="lp-video-react w-8926a7ef-f3d5-25f1-e71a-9c0cc4ff6268 css-ypxerw has-content" data-guid="8926a7ef-f3d5-25f1-e71a-9c0cc4ff6268">
69<script type="text/javascript" src="https://video.foxnews.com/v/embed.js?id=6367036684112&amp;w=466&amp;h=263"></script>
69<noscript>Watch the latest video at <a href="https://www.foxnews.com">foxnews.com</a></noscript></div></div></div></div></div></div></div><div class="composite flex__item--md-6 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--6"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="027b4f8f-9bf5-41b8-f9be-e74838ffd9a9" class="widget"><div class="lp-video-react w-027b4f8f-9bf5-41b8-f9be-e74838ffd9a9 css-ypxerw has-content" data-guid="027b4f8f-9bf5-41b8-f9be-e74838ffd9a9"><iframe width="560" height="315" src="https://www.youtube.com/embed/u7hAyLaZoKA?si=sQi8Eh6wgqIhunCM&enablejsapi=1" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe></div></div></div></div></div></div></div></div></div></div></div></div></section><style data-emotion-css="1b99xue">.css-1b99xue{background-color:rgba(0,0,0,1);border-color:rgba(0,0,0,1);background-size:cover;background-position:center center;background-repeat:no-repeat;}.css-1b99xue > .container{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}.site-header .css-1b99xue > .container{padding-top:-5px;padding-right:0;padding-bottom:-5px;padding-left:0;-webkit-transition:padding 0.03s ease;transition:padding 0.03s ease;}.bar .css-1b99xue{padding:0 50px;}@media (max-width:23.75em){.bar .css-1b99xue{padding:0 25px;}}@media (min-width:71.25em){.css-1b99xue > .container{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}}</style><section class="section css-1b99xue" data-guid="0eb9bcb9-d829-1a9d-48c6-93c57865e3a5"><div class="container" id="footer"><div class="layout flex flex--12" data-guid="514c799a-339e-53ef-a89b-44ad9ac6952f"><style data-emotion-css="147hc1i">.css-147hc1i{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-147hc1i.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-147hc1i.column > .inner-column{padding-top:11.4px;padding-right:11.4px;padding-bottom:0px;padding-left:11.4px;}}</style><div class="column flex__item--md-12 flex__item--xs-12 css-147hc1i" data-guid="7397dda2-d4c5-0102-8f62-59c14b0c1fc4"><style data-emotion-css="a9lz1d">.css-a9lz1d{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:1vw;padding-right:1vw;padding-bottom:0vw;padding-left:1vw;padding-top:1cqw;padding-right:1cqw;padding-bottom:0cqw;padding-left:1cqw;}.bar .css-a9lz1d{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-a9lz1d"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-12 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--12"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="74180a03-7bae-7533-eae3-4168c54c290d" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-6 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 1);"><span style="font-weight: 400">40 Days for Life is a nonprofit charitable organization under Section 501(c)(3) of the I.R.C.  Your contribution is tax deductible as allowed by law.</span></span></p></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="460114a1-1b3d-16be-da03-4664b0d1311f" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-6 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><span style="font-weight: 400">© 2026 40 Days for Life. All rights reserved.</span></span></p></div></div></div></div></div></div></div><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="7027e0ca-cd61-946d-fbd6-6fe102fb6f79" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-6 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><span style="font-weight: 400">4112 East 29th Street
70Bryan, TX 77802</span></span></p></div></div></div></div></div></div></div><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="07ead4db-7597-f7e4-bc8c-db5e2bec0ed5" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><span style="font-weight: 400">888-LIFE-316 (888-543-3316)</span></span></p></div></div></div></div></div></div></div><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="3da82a8f-8761-306f-a7a4-25cc432620ba" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><a href="mailto://[email protected]" target="_blank" rel="noopener noreferrer" data-link-type="external"><span style="font-weight: 400">[email protected]</span></a></span></p></div></div></div></div></div></div></div></div></div></div></div><div class="layout flex flex--12" data-guid="2ab56cc8-b597-cc5c-9198-76a7c45d2f1f"><div class="column flex__item--md-3 flex__item--xs-12 css-vfaad" data-guid="64b4d154-e909-d5cc-7ea1-790ae0671e55"><div class="inner-column css-eeduzr"></div></div><style data-emotion-css="1g6hxac">.css-1g6hxac{padding-top:0vw;padding-right:0vw;padding-bottom:0vw;padding-left:0vw;padding-top:0cqw;padding-right:0cqw;padding-bottom:0cqw;padding-left:0cqw;}@media(min-width:71.25em){.css-1g6hxac.column{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.css-1g6hxac.column > .inner-column{padding-top:0px;padding-right:11.4px;padding-bottom:0px;padding-left:11.4px;}}</style><div class="column flex__item--md-6 flex__item--xs-12 css-1g6hxac" data-guid="2106778d-80cc-568a-7558-886acfc706b4"><style data-emotion-css="yw60uj">.css-yw60uj{background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0);border-radius:0px;background-size:cover;background-position:center center;background-repeat:no-repeat;padding-top:0vw;padding-right:1vw;padding-bottom:0vw;padding-left:1vw;padding-top:0cqw;padding-right:1cqw;padding-bottom:0cqw;padding-left:1cqw;}.bar .css-yw60uj{padding-top:0;padding-bottom:0;}</style><div class="inner-column css-yw60uj"><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-6 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--6"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="47bafefc-8488-fc5e-6709-32953d11322d" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><a href="https://40daysforlife.com/privacy-policy/" target="_blank" rel="noopener noreferrer" data-link-type="external"><span style="font-weight: 400">Privacy Policy</span></a></span></p></div></div></div></div></div></div></div><div class="composite flex__item--md-6 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--6"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="52fe2871-70ec-8d37-86fe-132f9873968d" class="widget"><div class="lp-text-react lp-headline-react" data-widget-type="LpTextReact"><p class="text-align-center font-scale-4 line-height-scale-3 gutter-bottom-1"><span style="color: rgba(255, 255, 255, 0.9);"><a href="https://40daysforlife.com/eu-eea-privacy-statement/" target="_blank" rel="noopener noreferrer" data-link-type="external"><span style="font-weight: 400">EU/EEA Privacy Statement&nbsp;</span></a></span></p></div></div></div></div></div></div></div></div><div class="row flex flex--12 css-47r3vg"><div class="composite flex__item--md-2 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--2"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="9938bc5c-3f48-96b8-ca98-1a8658283695" class="widget"><div class="lp-space-react w-9938bc5c-3f48-96b8-ca98-1a8658283695 css-1klih5i" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div><div class="composite flex__item--md-7 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--7"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="2d89ea6c-8798-2704-161e-84357f380acc" class="widget"><div class="css-1yltisf"><div><a data-widget-link="true" href="https://www.40daysforlife.com" target="_blank" rel="noopener noreferrer" data-link-type="external" class="lp-image-react-container lp-icon-react__icon--linked" contenteditable="false"><img class="lp-image-react w-2d89ea6c-8798-2704-161e-84357f380acc css-y7ixbe" src="/api/library/mzge8tg5gv1z25jghpbpi15l?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82" data-image-upload-source="builder3" alt="" style="width:100%; height:auto" loading="lazy" srcset="/api/library/mzge8tg5gv1z25jghpbpi15l?w=320&amp;fit=scale-down&amp;format=auto&amp;quality=82 320w, /api/library/mzge8tg5gv1z25jghpbpi15l?w=480&amp;fit=scale-down&amp;format=auto&amp;quality=82 480w, /api/library/mzge8tg5gv1z25jghpbpi15l?w=640&amp;fit=scale-down&amp;format=auto&amp;quality=82 640w, /api/library/mzge8tg5gv1z25jghpbpi15l?w=960&amp;fit=scale-down&amp;format=auto&amp;quality=82 960w, /api/library/mzge8tg5gv1z25jghpbpi15l?w=1064&amp;fit=scale-down&amp;format=auto&amp;quality=82 1064w" sizes="auto, 100vw" width="3089" height="721"></a></div></div></div></div></div></div></div></div><div class="composite flex__item--md-3 flex__item--xs-12 css-8x0d4x"><div class="inner-composite flex flex--3"><div class="widget-column flex__item--md-12 flex__item--xs-12"><div class="widget-row flex flex--12"><div class="flex__item--md-12 flex__item--xs-12"><div data-widget-id="d8483568-2a3f-8ef1-0465-d1630c098158" class="widget"><div class="lp-space-react w-d8483568-2a3f-8ef1-0465-d1630c098158 css-1klih5i" data-widget-type="LpSpaceReact"></div></div></div></div></div></div></div></div></div></div><div class="column flex__item--md-3 flex__item--xs-12 css-vfaad" data-guid="1cb309de-c511-c6a2-7e52-87049cdfc935"><div class="inner-column css-eeduzr"></div></div></div></div></section></div>
71    
72    
73
74<script type="text/javascript" data-scriptname="TAILOR">(function(){var exports={};var module={exports: exports};"use strict";function initFunc(){console.assert(window.sup&&window.sup.Tailor,"tailor successfully loaded")}Object.defineProperty(exports,"__esModule",{value:!0}),function(t){function e(t,s){if(!t||!t.parentElement)return null;if(t.parentElement)var i=t.parentElement.querySelectorAll(s);if(i&&1===Array.prototype.filter.call(i,function(e){return e===t}).length)return t;return e(t.parentElement,s)}function s(t){var e;for(e in this.rules=[],this.readQueue=[],this.writeQueue=[],this.opts={parentSelector:"[data-widget-id]"},t)this.opts[e]=t[e]}function i(t){return parseInt(t,10)}function r(t,e){return function(s){return t(s)?e:""}}function n(t,e,s){return s=Math.round(s),(!t||s>=t)&&(!e||s<=e)}s.prototype.register=function(t){if(t&&this.isValid(t.el)){for(var e in t.classFunctions=this.parseBreakPoints(t.breakPoints),t.classNames=[],t.breakPoints)t.classNames.push(t.breakPoints[e]);this.rules.push(t),this.triggerReCalcClassNames()}},s.prototype.isValid=function(t){return!!(t&&e(t,this.opts.parentSelector))},s.prototype.parseBreakPoints=function(t){var e,s=[];for(var a in t){var o=t[a];switch(a.charAt(0)){case"<":e=n.bind(this,null,parseInt(a.slice(1),10));break;case">":e=n.bind(this,parseInt(a.slice(1),10),null);break;default:var u=a.split("-").map(i);e=n.bind(this,u[0],u[1])}s.push(r(e,o))}return s},s.prototype.triggerReCalcClassNames=function(){this.timeout&&clearTimeout(this.timeout),this.timeout=setTimeout(this.reCalcClassNames.bind(this),150)},s.prototype.stillValid=function(t){return!!this.isValid(t.el)||(this.remove(t),!1)},s.prototype.makeTasks=function(s){var i={},r=[];return i.el=s.el,i.add=s.classFunctions.reduce(function(s,n){var a,o=e(i.el,this.opts.parentSelector);a=function(e){var s=t.getComputedStyle(e,null),i=s.getPropertyValue("padding-left"),r=s.getPropertyValue("padding-right");return parseFloat(i)+parseFloat(r)}(o);var u=n(o.offsetWidth-a<t.innerWidth?o.offsetWidth-a:t.innerWidth);return u&&(r.push(u),i.el.classList.contains(u)||s.push(u)),s}.bind(this),[]),i.remove=s.classNames.filter(function(t){return-1===r.indexOf(t)&&i.el.classList.contains(t)},this),i},s.prototype.reCalcClassNames=function(){this.readQueue=this.rules.slice(0),this.writeQueue=this.readQueue.filter(this.stillValid,this).map(this.makeTasks,this),this.writeClassNames()},s.prototype.writeClassNames=function(){for(;this.writeQueue.length;){var t=this.writeQueue.pop();t.add.forEach(function(e){t.el.classList.add(e)}),t.remove.forEach(function(e){t.el.classList.remove(e)})}},s.prototype.remove=function(t){this.rules=this.rules.filter(function(e){return e!==t})},t.sup=t.sup||{},t.sup.Tailor=s,t.sup.tailor=new s,t.addEventListener("resize",t.sup.tailor.triggerReCalcClassNames.bind(t.sup.tailor))}(window),exports.default=initFunc;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 74
74
75<script type="text/javascript" data-scriptname="MAPPER">(function(){var exports={};var module={exports: exports};"use strict";function unwrapExports(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function createCommonjsModule(e,r){return e(r={exports:{}},r.exports),r.exports}Object.defineProperty(exports,"__esModule",{value:!0});var _typeof_1=createCommonjsModule(function(e){function r(t){return e.exports=r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},e.exports.__esModule=!0,e.exports.default=e.exports,r(t)}e.exports=r,e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(_typeof_1);var toPrimitive_1=createCommonjsModule(function(e){var r=_typeof_1.default;e.exports=function(e,t){if("object"!=r(e)||!e)return e;var o=e[Symbol.toPrimitive];if(void 0!==o){var n=o.call(e,t||"default");if("object"!=r(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(toPrimitive_1);var toPropertyKey_1=createCommonjsModule(function(e){var r=_typeof_1.default;e.exports=function(e){var t=toPrimitive_1(e,"string");return"symbol"==r(t)?t:t+""},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(toPropertyKey_1);var defineProperty=createCommonjsModule(function(e){e.exports=function(e,r,t){return(r=toPropertyKey_1(r))in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e},e.exports.__esModule=!0,e.exports.default=e.exports}),_defineProperty=unwrapExports(defineProperty),arrayWithHoles=createCommonjsModule(function(e){e.exports=function(e){if(Array.isArray(e))return e},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(arrayWithHoles);var iterableToArrayLimit=createCommonjsModule(function(e){e.exports=function(e,r){var t=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=t){var o,n,u,i,a=[],s=!0,p=!1;try{if(u=(t=t.call(e)).next,0===r){if(Object(t)!==t)return;s=!1}else for(;!(s=(o=u.call(t)).done)&&(a.push(o.value),a.length!==r);s=!0);}catch(e){p=!0,n=e}finally{try{if(!s&&null!=t.return&&(i=t.return(),Object(i)!==i))return}finally{if(p)throw n}}return a}},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(iterableToArrayLimit);var arrayLikeToArray=createCommonjsModule(function(e){e.exports=function(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,o=Array(r);t<r;t++)o[t]=e[t];return o},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(arrayLikeToArray);var unsupportedIterableToArray=createCommonjsModule(function(e){e.exports=function(e,r){if(e){if("string"==typeof e)return arrayLikeToArray(e,r);var t={}.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?arrayLikeToArray(e,r):void 0}},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(unsupportedIterableToArray);var nonIterableRest=createCommonjsModule(function(e){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.__esModule=!0,e.exports.default=e.exports});unwrapExports(nonIterableRest);var slicedToArray=createCommonjsModule(function(e){e.exports=function(e,r){return arrayWithHoles(e)||iterableToArrayLimit(e,r)||unsupportedIterableToArray(e,r)||nonIterableRest()},e.exports.__esModule=!0,e.exports.default=e.exports}),_slicedToArray=unwrapExports(slicedToArray);function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};
75r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function getLocationSearch(){return window.location.search||""}function getQueryString(){return getLocationSearch().replace("?","")}function serializeQueryString(e){return Object.keys(e).map(function(r){return"".concat(encodeURIComponent(r),"=").concat(encodeURIComponent(e[r]))}).join("&")}function deserializeQueryString(e){return e.split("&").reduce(function(e,r){var t=e,o=r.split("="),n=_slicedToArray(o,2),u=n[0],i=void 0===u?"":u,a=n[1],s=void 0===a?"":a;return""!==i&&""!==s&&(t[decodeURIComponent(i)]=decodeURIComponent(s)),t},{})}function getQueryValue(e){return deserializeQueryString(getQueryString())[e]}function appendToQuery(e,r){return serializeQueryString(_objectSpread(_objectSpread({},deserializeQueryString(e)),r))}function addQueriesToUrl(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(0===Object.keys(r).length)return e;var t=e.split("?"),o=_slicedToArray(t,2),n=o[0],u=o[1],i=void 0===u?"":u;if(!i)return[n].concat(serializeQueryString(r)).join("?");var a=i.split("#"),s=_slicedToArray(a,2),p=s[0],c=s[1],l=void 0===c?"":c;return p=appendToQuery(p,r),l&&(p="".concat(p,"#").concat(l)),"".concat(n,"?").concat(p)}function module$1(){window.sup||(window.sup={}),window.sup.widgetTypes||(window.sup.widgetTypes={}),window.sup.widgets||(window.sup.widgets=[]),window.sup.register=function(e,r){window.sup.widgetTypes[e]=r,window.sup.scan(e)},window.sup.scan=function(e){var r=window.sup.widgetTypes[e];if(r&&"function"==typeof r){var t=document.querySelectorAll('[data-widget-type="'.concat(e,'"]'));Array.prototype.forEach.call(t,function(e){window.sup.widgets.push(r(e))})}};var e=getQueryValue("customerToken");if(e){var r=document.querySelectorAll("[data-widget-link]");Array.prototype.forEach.call(r,function(r){r.href=addQueriesToUrl(r.href,{customerToken:e})})}}exports.default=module$1;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 75
75
76<script type="text/javascript" data-scriptname="IFRAME">(function(){var exports={};var module={exports: exports};"use strict";function initFunc(){if(window.FB||/(marketplace\/template|suppress_hero=true)/.test(window.location.href)){var e=document.querySelectorAll(".section");Array.prototype.slice.call(e).forEach(function(e){var t=e;if(t.style.minHeight&&-1!==t.style.minHeight.indexOf("vh")){var i=10*parseInt(t.style.minHeight,10);t.style.minHeight="".concat(i,"px")}})}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=initFunc;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 76
76
77<script type="text/javascript" data-scriptname="INTERSECTION_OBSERVER">(function(){var exports={};var module={exports: exports};"use strict";function initFunc(){}Object.defineProperty(exports,"__esModule",{value:!0}),function(t,e){function n(t){this.time=t.time,this.target=t.target,this.rootBounds=t.rootBounds,this.boundingClientRect=t.boundingClientRect,this.intersectionRect=t.intersectionRect||{top:0,bottom:0,left:0,right:0,width:0,height:0},this.isIntersecting=!!t.intersectionRect;var e=this.boundingClientRect,n=e.width*e.height,o=this.intersectionRect,i=o.width*o.height;this.intersectionRatio=n?Number((i/n).toFixed(4)):this.isIntersecting?1:0}function o(t,e){var n,o,i,r=e||{};if("function"!=typeof t)throw new Error("callback must be a function");if(r.root&&1!=r.root.nodeType)throw new Error("root must be an Element");this._checkForIntersections=(n=this._checkForIntersections.bind(this),o=this.THROTTLE_TIMEOUT,i=null,function(){i||(i=setTimeout(function(){n(),i=null},o))}),this._callback=t,this._observationTargets=[],this._queuedEntries=[],this._rootMarginValues=this._parseRootMargin(r.rootMargin),this.thresholds=this._initThresholds(r.threshold),this.root=r.root||null,this.rootMargin=this._rootMarginValues.map(function(t){return t.value+t.unit}).join(" ")}function i(t,e,n,o){"function"==typeof t.addEventListener?t.addEventListener(e,n,o||!1):"function"==typeof t.attachEvent&&t.attachEvent("on"+e,n)}function r(t,e,n,o){"function"==typeof t.removeEventListener?t.removeEventListener(e,n,o||!1):"function"==typeof t.detatchEvent&&t.detatchEvent("on"+e,n)}function s(t){var e;try{e=t.getBoundingClientRect()}catch(t){}return e?(e.width&&e.height||(e={top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.right-e.left,height:e.bottom-e.top}),e):{top:0,bottom:0,left:0,right:0,width:0,height:0}}function h(t,e){for(var n=e;n;){if(n==t)return!0;n=c(n)}return!1}function c(t){var e=t.parentNode;return e&&11==e.nodeType&&e.host?e.host:e&&e.assignedSlot?e.assignedSlot.parentNode:e}"IntersectionObserver"in t&&"IntersectionObserverEntry"in t&&"intersectionRatio"in t.IntersectionObserverEntry.prototype?"isIntersecting"in t.IntersectionObserverEntry.prototype||Object.defineProperty(t.IntersectionObserverEntry.prototype,"isIntersecting",{get:function(){return this.intersectionRatio>0}}):(o.prototype.THROTTLE_TIMEOUT=100,o.prototype.POLL_INTERVAL=null,o.prototype.USE_MUTATION_OBSERVER=!0,o.prototype.observe=function(t){if(!this._observationTargets.some(function(e){return e.element==t})){if(!t||1!=t.nodeType)throw new Error("target must be an Element");this._registerInstance(),this._observationTargets.push({element:t,entry:null}),this._monitorIntersections(),this._checkForIntersections()}},o.prototype.unobserve=function(t){this._observationTargets=this._observationTargets.filter(function(e){return e.element!=t}),this._observationTargets.length||(this._unmonitorIntersections(),this._unregisterInstance())},o.prototype.disconnect=function(){this._observationTargets=[],this._unmonitorIntersections(),this._unregisterInstance()},o.prototype.takeRecords=function(){var t=this._queuedEntries.slice();return this._queuedEntries=[],t},o.prototype._initThresholds=function(t){var e=t||[0];return Array.isArray(e)||(e=[e]),e.sort().filter(function(t,e,n){if("number"!=typeof t||isNaN(t)||t<0||t>1)throw new Error("threshold must be a number between 0 and 1 inclusively");return t!==n[e-1]})},o.prototype._parseRootMargin=function(t){var e=(t||"0px").split(/\s+/).map(function(t){var e=/^(-?\d*\.?\d+)(px|%)$/.exec(t);if(!e)throw new Error("rootMargin must be specified in pixels or percent");return{value:parseFloat(e[1]),unit:e[2]}});return e[1]=e[1]||e[0],e[2]=e[2]||e[0],e[3]=e[3]||e[1],e},o.prototype._monitorIntersections=function(){this._monitoringIntersections||(this._monitoringIntersections=!0,this.POLL_INTERVAL?this._monitoringInterval=setInterval(this._checkForIntersections,this.POLL_INTERVAL):(i(t,"resize",this._checkForIntersections,!0),i(e,"scroll",this._checkForIntersections,!0),this.USE_MUTATION_OBSERVER&&"MutationObserver"in t&&(this._domObserver=new MutationObserver(this._checkForIntersections),this._domObserver.observe(e,{attributes:!0,childList:!0,characterData:!0,subtree:!0}))))},o.prototype._unmonitorIntersections=function(){this._monitoringIntersections&&(this._monitoringIntersections=!1,clearInterval(this._monitoringInterval),this._monitoringInterval=null,r(t,"resize",this._checkForIntersections,!0),r(e,"scroll",this._checkForIntersections,!0),this._domObserver&&(this._domObserver.disconnect(),this._domObserver=null))},o.prototype._checkForIntersections=function(){var e=this._rootIsInDom(),o=e?this._getRootRect():{top:0,bottom:0,left:0,right:0,width:0,height:0};
77this._observationTargets.forEach(function(i){var r=i.element,h=s(r),c=this._rootContainsTarget(r),u=i.entry,a=e&&c&&this._computeTargetAndRootIntersection(r,o),l=i.entry=new n({time:t.performance&&performance.now&&performance.now(),target:r,boundingClientRect:h,rootBounds:o,intersectionRect:a});u?e&&c?this._hasCrossedThreshold(u,l)&&this._queuedEntries.push(l):u&&u.isIntersecting&&this._queuedEntries.push(l):this._queuedEntries.push(l)},this),this._queuedEntries.length&&this._callback(this.takeRecords(),this)},o.prototype._computeTargetAndRootIntersection=function(n,o){if("none"!=t.getComputedStyle(n).display){for(var i,r,h,u,a,l,p,d,g=s(n),f=c(n),_=!1;!_;){var v=null,m=1==f.nodeType?t.getComputedStyle(f):{};if("none"==m.display)return;if(f==this.root||f==e?(_=!0,v=o):f!=e.body&&f!=e.documentElement&&"visible"!=m.overflow&&(v=s(f)),v&&(i=v,r=g,h=void 0,u=void 0,a=void 0,l=void 0,p=void 0,d=void 0,h=Math.max(i.top,r.top),u=Math.min(i.bottom,r.bottom),a=Math.max(i.left,r.left),l=Math.min(i.right,r.right),d=u-h,!(g=(p=l-a)>=0&&d>=0&&{top:h,bottom:u,left:a,right:l,width:p,height:d})))break;f=c(f)}return g}},o.prototype._getRootRect=function(){var t;if(this.root)t=s(this.root);else{var n=e.documentElement,o=e.body;t={top:0,left:0,right:n.clientWidth||o.clientWidth,width:n.clientWidth||o.clientWidth,bottom:n.clientHeight||o.clientHeight,height:n.clientHeight||o.clientHeight}}return this._expandRectByRootMargin(t)},o.prototype._expandRectByRootMargin=function(t){var e=this._rootMarginValues.map(function(e,n){return"px"==e.unit?e.value:e.value*(n%2?t.width:t.height)/100}),n={top:t.top-e[0],right:t.right+e[1],bottom:t.bottom+e[2],left:t.left-e[3]};return n.width=n.right-n.left,n.height=n.bottom-n.top,n},o.prototype._hasCrossedThreshold=function(t,e){var n=t&&t.isIntersecting?t.intersectionRatio||0:-1,o=e.isIntersecting?e.intersectionRatio||0:-1;if(n!==o)for(var i=0;i<this.thresholds.length;i++){var r=this.thresholds[i];if(r==n||r==o||r<n!=r<o)return!0}},o.prototype._rootIsInDom=function(){return!this.root||h(e,this.root)},o.prototype._rootContainsTarget=function(t){return h(this.root||e,t)},o.prototype._registerInstance=function(){},o.prototype._unregisterInstance=function(){},t.IntersectionObserver=o,t.IntersectionObserverEntry=n)}(window,document),exports.default=initFunc;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
77
78
79<script type="text/javascript" data-scriptname="CONVERSION_CLICK">(function(){var exports={};var module={exports: exports};"use strict";function setup(){var e=document.querySelector('meta[name="leadpages-meta-id"]').content,t=document.querySelector('meta[name="active-route"]'),n=document.querySelectorAll("a[data-widget-link][data-conversion-click]");Array.prototype.forEach.call(n,function(n){var o="external"===n.dataset.linkType&&"_top"===n.target;n.addEventListener("click",function(c){if(window.center&&window.center.loaded){var a=t&&t.content?{customId:"site-".concat(e,":").concat(t.content)}:{};(o=o&&!n.getAttribute("data-standalone-leadbox"))&&(c.preventDefault(),a.callback=function(){window.top.location.href=n.href});try{window.center("get","identity",function(){return window.center("send","conversion",null,null,null,a)})}catch(e){o&&(window.top.location.href=n.href)}}})})}function initFunc(){"complete"===document.readyState?setup():window.addEventListener("DOMContentLoaded",setup)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=initFunc,exports.setup=setup;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 79
79
80<script type="text/javascript" data-scriptname="POWERED_BY">(function(){var exports={};var module={exports: exports};"use strict";function addPoweredBy(){var e='\n    <div id="powered-by-container" class="powered-by__container">\n      <div class="powered-by__sub_container">\n        <div class="powered-by__top_container">\n          <svg height="24" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg" style="margin-right:6px">\n            <g clip-path="url(#paint0_angular_26_506_clip_path)"><g transform="matrix(-0.00960912 0.00960912 -0.0100269 -0.0100269 19.0863 8.76573)"><foreignObject x="-1608.46" y="-1608.46" width="3216.92" height="3216.92"><div xmlns="http://www.w3.org/1999/xhtml" style="background:conic-gradient(from 90deg,rgba(255, 255, 255, 1) 0deg,rgba(255, 255, 255, 0.8) 216deg,rgba(255, 255, 255, 0) 360deg);height:100%;width:100%;opacity:1"></div></foreignObject></g></g><path fill-rule="evenodd" clip-rule="evenodd" d="M11.8138 0.000976562C10.0343 0.000976562 8.5918 1.44349 8.5918 3.22293V8.59277H19.3317V19.3326H11.8138C10.0343 19.3326 8.5918 17.8901 8.5918 16.1107V16.1108C8.5918 17.8902 10.0343 19.3327 11.8137 19.3327H24.7016C26.481 19.3327 27.9236 17.8902 27.9236 16.1108V0.000976562H11.8138Z"/>\n            <g clip-path="url(#paint1_angular_26_506_clip_path)"><g transform="matrix(0.00960912 -0.00960912 0.0100269 0.0100269 10.4945 17.3575)"><foreignObject x="-1608.46" y="-1608.46" width="3216.92" height="3216.92"><div xmlns="http://www.w3.org/1999/xhtml" style="background:conic-gradient(from 90deg,rgba(255, 255, 255, 1) 0deg,rgba(255, 255, 255, 0.9) 144deg,rgba(255, 255, 255, 0.8) 216deg,rgba(255, 255, 255, 0) 360deg);height:100%;width:100%;opacity:1"></div></foreignObject></g></g><path fill-rule="evenodd" clip-rule="evenodd" d="M3.22 8.59277C1.44164 8.59277 0 10.0344 0 11.8128V24.7026C0 26.482 1.44251 27.9245 3.22195 27.9245H16.1118C17.8901 27.9245 19.3318 26.4829 19.3318 24.7045V8.59277H19.3317V19.3326H11.8138C10.0344 19.3326 8.59186 17.8901 8.59186 16.1107V8.59277H3.22Z"/>\n            <defs><clipPath id="paint0_angular_26_506_clip_path"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.8138 0.000976562C10.0343 0.000976562 8.5918 1.44349 8.5918 3.22293V8.59277H19.3317V19.3326H11.8138C10.0343 19.3326 8.5918 17.8901 8.5918 16.1107V16.1108C8.5918 17.8902 10.0343 19.3327 11.8137 19.3327H24.7016C26.481 19.3327 27.9236 17.8902 27.9236 16.1108V0.000976562H11.8138Z"/></clipPath><clipPath id="paint1_angular_26_506_clip_path"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.22 8.59277C1.44164 8.59277 0 10.0344 0 11.8128V24.7026C0 26.482 1.44251 27.9245 3.22195 27.9245H16.1118C17.8901 27.9245 19.3318 26.4829 19.3318 24.7045V8.59277H19.3317V19.3326H11.8138C10.0344 19.3326 8.59186 17.8901 8.59186 16.1107V8.59277H3.22Z"/></clipPath></defs>\n          </svg>\n          <div class="powered-by__top_text">\n            Powered by Leadpages\n          </div>\n        </div>\n        <div class="powered-by__bottom_container">\n          <div class="powered-by__bottom_header">Turn Clicks into Customers</div>\n          <div class="powered-by__bottom_body">Create your own code-free websites, landing pages, and conversion tools with a free, 14-day trial.</div>\n          <div class="powered-by__bottom_link"><a href="https://lp.leadpages.com/powered-by-leadpages/?utm_source=Leadpages&utm_medium=customerpages&utm_campaign=powered_by" target="_blank">Get Started →</a></div>\n        </div>\n      </div>\n    </div>\n  ',n='\n    <link\n      rel="preload"\n      href="https://classic-assets.leadpages.com/static-leadpages-net/fonts/opensans/OpenSans-Regular.woff2"\n      as="font"\n      type="font/woff2"\n      crossorigin\n    />\n    <link\n      rel="preload"\n      href="https://classic-assets.leadpages.com/static-leadpages-net/fonts/opensans/OpenSans-Bold.woff2"\n      as="font"\n      type="font/woff2"\n      crossorigin\n    />\n    <link\n      href="https://classic-assets.leadpages.com/static-leadpages-net/fonts/opensans_typeset.css"\n      rel="stylesheet"\n      type="text/css"\n    />\n    <style id="powered-by-style">\n      .powered-by__container {\n        position: relative;\n        min-height: 36px;\n        background-color: #000;\n        transition: all 1s ease-in;\n      }\n      .powered-by__sub_container {\n        justify-content: flex-start;\n        flex-direction: column;\n        position: absolute;\n        transition: top .2s ease-in;\n        background-color: #000;\n        overflow: hidden;\n        top: 0px;\n        left: 0px;\n        right: 0px;\n        bottom: 0px;\n      }\n      .powered-by__container:hover .powered-by__sub_container {\n        top: -142px;\n      }\n      .powered-by__container:hover .powered-by__top_container {\n        min-height: 66px;\n      }\n      .powered-by__bottom_container {\n        flex-direction: column;\n        text-align: center;\n      }\n      .powered-by__top_container,\n      .powered-by__bottom_container,\n      .powered-by__bottom_top_bar,\n      .powered-by__container {\n        display: flex;\n        width: 100%;\n        justify-content: center;\n        align-items: center;\n        font-family: "Open Sans", "Segoe UI", Helvetica, Arial, sans-serif;\n        font-size: 14px;\n        line-height: 12px;\n        color: #FFF;\n      }\n      .powered-by__bottom_top_bar {\n        padding-bottom: 24px;\n      }\n      .powered-by__top_container {\n        transition: all .1s ease-in .1s;\n        min-height: 36px;\n      }\n      .powered-by__top_text {\n        cursor: default;\n      }\n      .powered-by__bottom_header {\n        flex-direction: column;\n        text-align: center;\n        margin-bottom: 8px;\n        font-weight: 700;\n      }\n      .powered-by__bottom_body {\n        flex-direction: column;\n        text-align: center;\n        line-height: 18px;\n        letter-spacing: 0;\n        width: 350px;\n        margin-bottom: 18px;\n      }\n      .powered-by__bottom_link a {\n        font-weight: 700;\n        font-size: 16px;\n        color: #FFF;\n        text-decoration: none;\n      }\n    </style>\n  ',t=document.getElementById("powered-by-style");t?t.outerHTML=n:document.head.insertAdjacentHTML("beforeend",n);var o=document.getElementById("powered-by-container");
80o?o.outerHTML=e:document.body.insertAdjacentHTML("beforeend",e)}function setup(){var e=!!document.cookie.split("; ").find(function(e){return"lpPoweredBy=1"===e});if(!1===e)try{e="1"===new URLSearchParams(window.location.search).get("lpPoweredBy")}catch(e){}!0===e&&addPoweredBy()}function init(){"complete"===document.readyState?setup():window.addEventListener("DOMContentLoaded",setup)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=init;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 80
80
81<script type="text/javascript" data-scriptname="REDUCE_MOTION">(function(){var exports={};var module={exports: exports};"use strict";function toggleThumbnail(e){document.querySelectorAll("iframe").forEach(function(t){var n=t.getAttribute("src");if(n){var o=t.parentElement.querySelector('[data-qa-selector="background-video-thumbnail"]'),c=function(e,t){e&&(e.style.display=t)},a=function(e){t.setAttribute("src","".concat(e,"&cb=").concat((new Date).getTime()))};n.includes("youtube.com")&&o?(c(o,e?"block":"none"),c(t,e?"none":"block")):n.includes("wistia.net")?a(n.replace(/autoPlay=(true|false)/,"autoPlay=".concat(!e))):n.includes("vimeo.com")&&a(n.replace("autoplay=".concat(e?1:0),"autoplay=".concat(e?0:1)))}})}function handleMotionPreference(){toggleThumbnail(window.matchMedia("(prefers-reduced-motion: reduce)").matches)}"undefined"!=typeof window&&(document.addEventListener("DOMContentLoaded",handleMotionPreference),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",handleMotionPreference));;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 81
81
82<script type="text/javascript" data-scriptname="DELAY_SCRIPT">"use strict";!function(){var e=document.querySelectorAll("[data-delay-display-seconds]");[].forEach.call(e,function(e){var s=e.getAttribute("data-delay-display-seconds");setTimeout(function(){e.classList.add("is-visible"),e.classList.remove("is-delayed"),e.classList.remove("hide-section"),window.sup.tailor.triggerReCalcClassNames()},1e3*s)})}();</script>
vendor: 1 bytes, line 82
82
83<script type="text/javascript" data-scriptname="IMAGE_CLICKGUARD_SCRIPT">"use strict";window.addEventListener("contextmenu",function(t){var e=t.target.getAttribute("data-image-upload-source");"shutterstock_api"!==e&&"getty_api"!==e||t.preventDefault()});</script>
vendor: 1 bytes, line 83
83
84<script type="text/javascript" data-scriptname="ANIMATE">(function(){var exports={};var module={exports: exports};"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var animateCSS=function(e,t){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"lp-animate__";if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)e.style.visibility="visible";else{var a="".concat(n).concat(t);e.parentElement.style.overflow="visible",e.setAttribute("style","visibility: hidden !important;"),i?setTimeout(function(){e.style.visibility="visible"},1e3*i):e.style.visibility="visible",e.classList.add("".concat(n,"animated"),a),e.addEventListener("animationend",function(t){t.stopPropagation(),e.classList.remove("".concat(n,"animated"),a),e.parentElement.overflow=""},{once:!0})}},handleChange=function(e,t){e.filter(function(e){return e.isIntersecting}).forEach(function(e){var i=e.intersectionRatio,n=(void 0===e.boundingClientRect.height?window.innerHeight:e.boundingClientRect.height)/window.innerHeight;if(n>1||n>.33&&i>=.5||i>=.9){var a=e.target;t.unobserve(a);var o=a.dataset.lpAnimateSection||a.dataset.lpAnimateWidget,r=Number(a.dataset.lpAnimateDelayWidget);animateCSS(a,o,r)}})},makeObserver=function(e,t){var i=new IntersectionObserver(handleChange,{root:null,rootMargin:"0px",threshold:t}),n=i.observe.bind(i),a=document.querySelectorAll(e);Array.prototype.forEach.call(a,function(e){n(e)})},setup=function(){makeObserver("[data-lp-animate-section]",[.075,.5,.9]),makeObserver("[data-lp-animate-widget]",[.075,.5,.9])},init=function(){"complete"===document.readyState?setup():window.addEventListener("DOMContentLoaded",setup)};exports.default=init;;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;}());</script>
vendor: 1 bytes, line 84
84
85<script type="text/javascript" data-scriptname="LpShareReact">(function(){var exports={};var module={exports: exports};"use strict";module.exports=function(t,e){var a={FACEBOOK:"facebook",LINKEDIN:"linkedin",X_TWITTER:"x-twitter",PINTEREST:"pinterest",INSTAGRAM:"instagram",YOUTUBE:"youtube",TIKTOK:"tiktok"};function r(t){var e=t||window.event,r={width:500,height:500,xPosition:0,yPosition:0};switch(this.getAttribute("data-share-type")){case a.FACEBOOK:r.width=585,r.height=368;break;case a.X_TWITTER:r.width=680,r.height=443;break;case a.LINKEDIN:r.width=550,r.height=476}r.xPosition=Math.floor(((window.screen.availWidth||1024)-r.width)/2),r.yPosition=Math.floor(((window.screen.availHeight||700)-r.height)/2);var i=window.open(this.href,"social","width=".concat(r.width,",height=").concat(r.height,",left=").concat(r.xPosition,",top=").concat(r.yPosition,",location=0,menubar=0,toolbar=0,status=0,scrollbars=1,resizable=1"));return i&&(i.focus(),e.preventDefault&&e.preventDefault(),e.returnValue=!1),!!i}t(function(t){if(window.sup.tailor.register({breakPoints:{">839":"lp-share-react--huge","721-838":"lp-share-react--large","539-720":"lp-share-react--medium","349-538":"lp-share-react--small","232-348":"lp-share-react--tiny"},el:t}),t&&!e){var i=t.querySelectorAll(".lp-share-react_item");Array.prototype.forEach.call(i,function(t){var e=t,i=e.getAttribute("data-profile-url");if(i){var o=e.getAttribute("data-profile-url-new-window")?"_blank":"_top";return e.setAttribute("href",i),void e.setAttribute("target",o)}var n=window.location.href;/https:\/\/my\.leadpages(?:test|)\.net\/facebook-tab-app\//.test(n)&&(n=e.getAttribute("data-publish-url"));var s=e.getAttribute("data-alternate-url")||i||n,c="";switch(e.getAttribute("data-share-type")){case a.FACEBOOK:c="https://www.facebook.com/sharer/sharer.php?u=".concat(s);break;case a.X_TWITTER:c="https://www.twitter.com/intent/tweet?url=".concat(s);break;case a.LINKEDIN:c="https://www.linkedin.com/shareArticle?mini=true&url=".concat(s);break;case a.PINTEREST:c="http://pinterest.com/pin/create/button/?url=".concat(s)}e.setAttribute("href",c),e.onclick=r})}})};;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;})(function(i){window.sup.register('LpShareReact',i)});</script>
vendor: 1 bytes, line 85
85
86<script type="text/javascript" data-scriptname="LpIconReact">(function(){var exports={};var module={exports: exports};"use strict";module.exports=function(e){var n=function(e){var n=function(){var n=e.querySelector(".lp-icon-react__container");n.querySelector(".lp-icon-react__icon").style.fontSize="".concat(n.offsetWidth/1,"px")};n(),window.addEventListener("resize",n),window.addEventListener("pageview",function(){setTimeout(function(){n()},20)})};e(function(e){n(e)})};;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;})(function(i){window.sup.register('LpIconReact',i)});</script>
vendor: 1 bytes, line 86
86
87<script type="text/javascript" data-scriptname="LpHtmlReact">(function(){var exports={};var module={exports: exports};"use strict";module.exports=function(t,l){l&&t(function(t){window.sup.tailor.register({breakPoints:{">839":"lp-html-react--huge","721-838":"lp-html-react--large","539-720":"lp-html-react--medium","349-538":"lp-html-react--small","232-348":"lp-html-react--tiny"},el:t})})};;var i=module.exports.default||module.exports;return typeof i==="function"?i.apply(null, arguments):void 0;})(function(i){window.sup.register('LpHtmlReact',i)});</script>
87
88
89    
89<script type="text/javascript">
90    (function(){performance&&performance.timing&&window.addEventListener("load",function(){return setTimeout(function(){var e=document.querySelector("meta[name='leadpages-serving-domain']");if(e||e.content!==location.hostname){var t=performance.timing;(new Image).src="https://api.leadpages.io/analytics/v1/observations/capture?version=1.7.13&origin=page-speed&kind=timer,timer,timer,timer,timer,timer,timer,timer,timer,timer&label=domain-lookup,connect,request,ttfb,response,loading,interactive,content-loaded,complete,load&value="+[t.domainLookupEnd-t.domainLookupStart,t.connectEnd-t.connectStart,t.responseStart-t.requestStart,t.responseStart-t.fetchStart,t.responseEnd-t.responseStart,t.domLoading-t.fetchStart,t.domInteractive-t.fetchStart,t.domContentLoadedEventEnd-t.fetchStart,t.domComplete-t.fetchStart,(t.loadEventEnd||t.loadEventStart)-t.fetchStart].join(",")}},0)})}());
91    </script>
91
92    
93  
94
95
96<script data-htmlpub-animate-runtime>
97(function(){
98var CANON='[data-persist-animate]';
99var LEGACY='[data-lp-animate-section],[data-lp-animate-widget]';
100var SPEED={"faster":0.5,"fast":0.8,"slow":2,"slower":3};
101var SAFE=/^[A-Za-z0-9_-]+$/;
102var KIND={"fadeIn":1,"fadeInUp":1,"fadeInDown":1,"fadeInLeft":1,"fadeInRight":1,"slideInUp":1,"slideInDown":1,"slideInLeft":1,"slideInRight":1,"bounceIn":1,"bounceInUp":1,"bounceInDown":1,"bounceInLeft":1,"bounceInRight":1,"backInUp":1,"backInDown":1,"backInLeft":1,"backInRight":1,"blurIn":1,"pulse":0,"headShake":0,"flash":0,"rubberBand":0,"heartBeat":0};
103var EDIT_IDS=["htmlpub-edit-referrer","htmlpub-edit-script"];
104var FORCE_ANIMATE_ID="htmlpub-edit-force-animate";
105var ENTRANCE=1;
106function kindOf(name){
107var kind=KIND[name];
108return kind===1||kind===0?kind:-1;
109}
110function nameOf(el){
111return el.getAttribute('data-persist-animate')||el.getAttribute('data-lp-animate-section')||el.getAttribute('data-lp-animate-widget')||'';
112}
113function delayOf(el){
114var raw=el.getAttribute('data-persist-animate-delay');
115if(raw===null)raw=el.getAttribute('data-lp-animate-delay-widget');
116var seconds=parseFloat(raw);
117return seconds>0?Math.min(seconds,5):0;
118}
119function inEditor(){
120for(var i=0;i<EDIT_IDS.length;i++)if(document.getElementById(EDIT_IDS[i]))return true;
121return false;
122}
123function forceAnimate(){return !!document.getElementById(FORCE_ANIMATE_ID);}
124function hide(el){el.style.setProperty('visibility','hidden','important');}
125function reveal(el){
126if(el.style.visibility==='hidden')el.style.removeProperty('visibility');
127}
128function restore(el,prop,value,priority){
129if(value)el.style.setProperty(prop,value,priority);
130else el.style.removeProperty(prop);
131}
132var OPEN_KEY='__lpAnimateOverflow';
133function openOverflow(parent){
134var state=parent[OPEN_KEY];
135if(state){state.count++;return;}
136parent[OPEN_KEY]={
137count:1,
138value:parent.style.getPropertyValue('overflow'),
139priority:parent.style.getPropertyPriority('overflow')};
140parent.style.setProperty('overflow','visible');
141}
142function closeOverflow(parent){
143var state=parent[OPEN_KEY];
144if(!state||--state.count>0)return;
145parent[OPEN_KEY]=null;
146restore(parent,'overflow',state.value,state.priority);
147}
148function play(el){
149var name=nameOf(el);
150if(!SAFE.test(name)){reveal(el);return;}
151var cls='lp-animate__'+name;
152var seconds=SPEED[el.getAttribute('data-persist-animate-speed')||''];
153var delay=delayOf(el);
154if(seconds)el.style.setProperty('--animate-duration',seconds+'s');
155if(delay)el.style.animationDelay=delay+'s';
156var clipped=kindOf(name)>=0&&!el.classList.contains("has-background-video");
157var parent=clipped?el.parentElement:null;
158if(parent)openOverflow(parent);
159var started=0;
160function start(ev){if(ev.target!==el)return;started=1;reveal(el);}
161function done(ev){
162if(ev&&ev.target!==el)return;
163clearTimeout(timer);
164el.removeEventListener('animationstart',start);
165el.removeEventListener('animationend',done);
166el.removeEventListener('animationcancel',done);
167el.classList.remove('lp-animate__animated',cls);
168reveal(el);
169if(seconds)el.style.removeProperty('--animate-duration');
170if(delay)el.style.animationDelay='';
171if(parent)closeOverflow(parent);
172}
173el.addEventListener('animationstart',start);
174el.addEventListener('animationend',done);
175el.addEventListener('animationcancel',done);
176el.classList.add('lp-animate__animated',cls);
177var timer=setTimeout(function(){if(!started)done();},(delay||0)*1000+1500);
178}
179function onIntersect(entries,observer){
180for(var i=0;i<entries.length;i++){
181var entry=entries[i];
182if(!entry.isIntersecting)continue;
183var viewport=window.innerHeight||1;
184var height=entry.boundingClientRect.height;
185var relative=(height>0?height:viewport)/viewport;
186var ratio=entry.intersectionRatio;
187if(relative>1||(relative>0.33&&ratio>=0.5)||ratio>=0.9){
188observer.unobserve(entry.target);
189play(entry.target);
190}}}
191function targets(){
192var selector=CANON;
193if(!document.querySelector("script[data-scriptname=\"ANIMATE\"]"))selector+=','+LEGACY;
194return document.querySelectorAll(selector);
195}
196function setup(){
197if(inEditor()&&!forceAnimate())return false;
198var nodes=targets();
199if(!nodes.length)return false;
200if((window.matchMedia&&window.matchMedia('(prefers-reduced-motion: reduce)').matches)||!window.IntersectionObserver){
201for(var r=0;r<nodes.length;r++)reveal(nodes[r]);
202return true;
203}
204var observer=new IntersectionObserver(onIntersect,{threshold:[0.075,0.5,0.9]});
205for(var i=0;i<nodes.length;i++){
206observer.observe(nodes[i]);
207if(kindOf(nameOf(nodes[i]))===ENTRANCE)hide(nodes[i]);
208}
209return true;
210}
211if(!setup()&&document.readyState==='loading'){
212document.addEventListener('DOMContentLoaded',setup);
213}
214})();
215</script>
215<script data-htmlpub-analytics>
216(function(){
217var PID="akdam4vhrug4gtusjvpf2kn3";
218var EXP_ID="";
219var EXP_VARIANT="";
220var API="/collect";
221var APP_ORIGIN="https://htmlpub.com";
222var FLUSH_INTERVAL=5000;
223var FLUSH_MAX=20;
224
225// HP-4568 consent gate. Runs onGranted() at most once, only when analytics
226// storage is permitted. See app/src/lib/analytics-consent-gate.ts.
227function hpConsent(onGranted){
228var started=false;
229function start(){if(started)return;started=true;try{onGranted();}catch(e){}}
230
231// Browser-level objection (Global Privacy Control / legacy Do-Not-Track) is
232// terminal: it is the visitor speaking directly, so no later CMP "accept all"
233// re-enables tracking for this page view. Mirrors the Customers.ai pixel gate.
234try{
235if(navigator.globalPrivacyControl===true)return;
236var dnt=navigator.doNotTrack||window.doNotTrack||navigator.msDoNotTrack;
237if(dnt==="1"||dnt===1||dnt===true)return;
238}catch(e){}
239
240// Analytics/statistics consent per whichever CMP the page carries:
241//    1 granted / 0 denied / -1 present but undecided / null no CMP detected
242function hpConsentState(){
243// Google consent mode v2 first: vendor-neutral, so a CMP writing it (directly
244// or via GTM) is authoritative even before its own JS API initialises. Last
245// write wins, matching gtag's 'default' then 'update'.
246try{
247var dl=window.dataLayer;
248if(dl&&dl.length){
249var seen=null;
250for(var i=0;i<dl.length;i++){
251var entry=dl[i];
252if(!entry||entry[0]!=="consent"||!entry[2])continue;
253var mode=entry[2].analytics_storage;
254if(mode==="granted")seen=1;else if(mode==="denied")seen=0;
255}
256if(seen!==null)return seen;
257}
258}catch(e){}
259// Cookiebot. Its object appears only once uc.js has run, so fall back to the
260// script tag it is installed as to tell "undecided" from "absent".
261try{
262var cb=window.Cookiebot||window.CookieConsent;
263if(cb&&cb.consent)return cb.consent.statistics?1:(cb.hasResponse?0:-1);
264if(document.getElementById("Cookiebot")||document.querySelector("script[src*='consent.cookiebot.com'],script[src*='consentcdn.cookiebot.com']"))return -1;
265}catch(e){}
266// OneTrust: statistics is the reserved C0002 group. OneTrust comma-pads the
267// list itself, so the delimited match cannot hit C00020. Every runtime signal
268// it exposes appears only after otSDKStub.js runs, so without the script-tag
269// fallback a blocked or async stub reads as "no CMP" and we would track — the
270// exact bug, on the pages most likely to care.
271try{
272var groups=window.OptanonActiveGroups||window.OnetrustActiveGroups;
273if(typeof groups==="string"&&groups)return groups.indexOf(",C0002,")>-1?1:0;
274if(window.OneTrust||window.Optanon||document.getElementById("onetrust-consent-sdk")||document.querySelector("script[src*='cookielaw.org'],script[src*='onetrust.com']"))return -1;
275}catch(e){}
276// CookieYes
277try{
278if(typeof window.getCkyConsent==="function"){
279var cky=window.getCkyConsent();
280if(cky&&cky.categories)return cky.categories.analytics?1:0;
281}
282if(document.querySelector("script[src*='cookieyes.com'],script[src*='cookie-script.com']"))return -1;
283}catch(e){}
284// Iubenda: purpose 4 is measurement.
285try{
286var iub=window._iub;
287if(iub&&iub.cs&&iub.cs.consent&&iub.cs.consent.purposes)return iub.cs.consent.purposes[4]?1:0;
288if(iub||document.querySelector("script[src*='iubenda.com']"))return -1;
289}catch(e){}
290return null;
291}
292
293var state=hpConsentState();
294if(state===null||state===1){start();return;}
295
296// CMP present, analytics not granted: write nothing, send nothing, and listen
297// for a later grant. The poll is a catch-all for CMPs whose event names we do
298// not know; it stops after 60s rather than running forever.
299function recheck(){if(hpConsentState()===1)start();}
300var EVENTS=["CookiebotOnAccept","CookiebotOnConsentReady","CookieConsentDeclaration","cookieyes-consent-update","consent.onetrust","OneTrustGroupsUpdated","iubenda-consent-given","hp-analytics-consent"];
301for(var evt=0;evt<EVENTS.length;evt++){try{window.addEventListener(EVENTS[evt],recheck,false);}catch(e){}}
302var polls=0;
303var timer=setInterval(function(){recheck();if(started||++polls>=120)clearInterval(timer);},500);
304}
305
306// Everything below mints an identifier or sends a beacon, so all of it waits
307// for consent. window.__hpupPushEvent is the exception: it binds synchronously
308// here and only forwards once consent arrives. Binding it late would let the
309// popup embed bundle's fallback shim (app/src/lib/popups/embed-bundle.ts,
310// registered under the same "if not already defined" test) claim the name first
311// and reroute pop-up events. Pre-consent calls are dropped, not queued — they
312// have no visitorId. SYNC with app/src/lib/analytics-tracking-script.ts.
313var hpPush=null;
314if(!window.__hpupPushEvent){window.__hpupPushEvent=function(t,p){try{if(hpPush)hpPush(t,p);}catch(e){}};}
315hpConsent(function(){
316
317function uuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(c){var r=Math.random()*16|0;return(c==="x"?r:(r&3|8)).toString(16)});}
318function getOrSet(store,key){try{var v=store.getItem(key);if(v)return v;v=uuid();store.setItem(key,v);return v;}catch(e){return uuid();}}
319
320// Full visits from a customer's own site (offsite.js, lib/funnels/external-sessions.ts)
321// arrive with _cvsid: adopt it as this tab's session when there is none yet, so
322// the visit that started there continues here as one session, then drop it from
323// the address bar. SYNC with the other copy of this script.
324try{var cvs=new URLSearchParams(location.search).get("_cvsid");if(cvs){if(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(cvs)&&!sessionStorage.getItem("_hp_sid"))sessionStorage.setItem("_hp_sid",cvs.toLowerCase());var cvu=new URL(location.href);cvu.searchParams.delete("_cvsid");history.replaceState(history.state,"",cvu.pathname+cvu.search+cvu.hash);}}catch(e){}
325var visitorId=getOrSet(localStorage,"_hp_vid");
326var sessionId=getOrSet(sessionStorage,"_hp_sid");
327
328var params=new URLSearchParams(location.search);
329var utmSource=params.get("utm_source")||undefined;
330var utmMedium=params.get("utm_medium")||undefined;
331var utmCampaign=params.get("utm_campaign")||undefined;
332// Ad-platform click IDs (conversion feedback loop) — captured like the UTMs.
333// SYNC with canonical at app/src/lib/analytics-tracking-script.ts.
334var gclid=params.get("gclid")||undefined;
335var fbclid=params.get("fbclid")||undefined;
336var msclkid=params.get("msclkid")||undefined;
337
338var vw=window.innerWidth||0;
339var vh=window.innerHeight||0;
340var ua=navigator.userAgent||"";
341var isMobileUA=/Android|iPhone|iPod|iPad|webOS|BlackBerry|IEMobile|Opera Mini/i.test(ua);
342var maxScreenDim=Math.max(screen.width||0,screen.height||0);
343var deviceType=isMobileUA?(maxScreenDim<=812||vw<768?"mobile":"tablet"):"desktop";
344
345function detectBrowser(){
346if(ua.indexOf("Edg/")>-1)return"Edge";
347if(ua.indexOf("Chrome/")>-1)return"Chrome";
348if(ua.indexOf("Safari/")>-1&&ua.indexOf("Chrome/")===-1)return"Safari";
349if(ua.indexOf("Firefox/")>-1)return"Firefox";
350return"Other";
351}
352function detectOS(){
353if(ua.indexOf("iPhone")>-1||ua.indexOf("iPad")>-1)return"iOS";
354if(ua.indexOf("Android")>-1)return"Android";
355if(ua.indexOf("Mac OS")>-1)return"macOS";
356if(ua.indexOf("Windows")>-1)return"Windows";
357if(ua.indexOf("Linux")>-1)return"Linux";
358return"Other";
359}
360var browserFamily=detectBrowser();
361var osFamily=detectOS();
362
363var buffer=[];
364function makeEvent(type,payload){
365return{pageId:PID,eventType:type,visitorId:visitorId,sessionId:sessionId,payload:payload||undefined,referrer:document.referrer||undefined,utmSource:utmSource,utmMedium:utmMedium,utmCampaign:utmCampaign,gclid:gclid,fbclid:fbclid,msclkid:msclkid,deviceType:deviceType,browserFamily:browserFamily,osFamily:osFamily,viewportWidth:vw,viewportHe
365ight:vh,experimentId:EXP_ID||undefined,experimentVariant:EXP_VARIANT||undefined,timestamp:Date.now()};
366}
367function pushEvent(type,payload){buffer.push(makeEvent(type,payload));if(buffer.length>=FLUSH_MAX)flush();}
368
369// HP-1557 — expose a single-arg helper so the popups runtime (separate IIFE,
370// no shared closure with analytics) can feed events into the same buffer.
371// Defensive: only set if not already defined so a future second analytics
372// injection doesn't clobber an in-flight handler. HP-4568: the name is bound
373// above, outside the consent gate; this is where it starts forwarding.
374hpPush=pushEvent;
375// NOTE (HP-3461): this copy deliberately does NOT register window.__hpTrack, even
376// though the app copy registers both names. checkout-script.ts guards on
377// __hpTrack, and inject.ts appends that script to every edge-served page, so
378// adding the name here would start writing checkout_started for the entire edge
379// fleet (pubhtml.com + all custom domains) where that beacon has always been a
380// no-op — beginning an ecommerce event series mid-history, and moving the derived
381// checkout_abandoned with it, from a change about page engagement. It is a real
382// gap and wants its own change with a backfill story.
383// (No backticks anywhere in this file: it is one big template literal, so a
384// backtick in a comment terminates the string. This exact comment did it once.)
385
386function readMmuid(){try{var v=localStorage.getItem("mmuid");return v&&v.length<=128?v:undefined;}catch(e){return undefined;}}
387
388function flush(){
389if(buffer.length===0)return;
390var batch=buffer.splice(0,FLUSH_MAX);
391var payload={events:batch};
392var mmuid=readMmuid();
393if(mmuid)payload.mmuid=mmuid;
394try{navigator.sendBeacon(API,JSON.stringify(payload));}catch(e){}
395}
396
397// Engaged time-on-page (HP-3592) — count a second only while the tab is
398// visible AND the visitor was active in the last 30s; emit the accrued DELTA
399// every 30 engaged seconds and on hide/pagehide. Registered BEFORE the flush
400// handlers below so the final delta lands in the buffer before the last
401// beacon fires (listener registration order = firing order).
402// SYNC with canonical at app/src/lib/analytics-tracking-script.ts.
403var dwellSec=0,dwellSent=0,dwellLastActive=Date.now();
404var DWELL_IDLE_MS=30000,DWELL_EMIT_SEC=30,DWELL_CAP_SEC=1800;
405function dwellActive(){dwellLastActive=Date.now();}
406document.addEventListener("scroll",dwellActive,{passive:true});
407document.addEventListener("mousemove",dwellActive,{passive:true});
408document.addEventListener("keydown",dwellActive,true);
409document.addEventListener("touchstart",dwellActive,{passive:true});
410document.addEventListener("click",dwellActive,true);
411function dwellEmit(){var d=dwellSec-dwellSent;if(d>0){dwellSent=dwellSec;pushEvent("dwell",{seconds:d});}}
412var dwellTimer=setInterval(function(){
413if(document.visibilityState!=="visible")return;
414if(Date.now()-dwellLastActive>DWELL_IDLE_MS)return;
415dwellSec++;
416if(dwellSec-dwellSent>=DWELL_EMIT_SEC)dwellEmit();
417if(dwellSec>=DWELL_CAP_SEC){dwellEmit();clearInterval(dwellTimer);}
418},1000);
419document.addEventListener("visibilitychange",function(){if(document.visibilityState==="hidden")dwellEmit();});
420window.addEventListener("pagehide",dwellEmit);
421
422setInterval(flush,FLUSH_INTERVAL);
423document.addEventListener("visibilitychange",function(){if(document.visibilityState==="hidden")flush();});
424window.addEventListener("pagehide",flush);
425
426pushEvent("page_view");
427
428// On-platform conversion goal ("a thank-you page I own"): report the current
429// pageId plus the visitor's experiment assignments (_hp_exp_<id> cookies) so the
430// server can count this page-view as a conversion. Fires once per session per
431// page. HP-2925 Layer 1: must fire on EVERY page, not just experiment
432// participants — a standalone "Offsite event" goal has no experiment cookie, so
433// gating on cookies means the server never gets to attribute it. The server
434// no-ops cheaply when the page is neither an experiment nor a goal target.
435// SYNC with canonical at app/src/lib/analytics-tracking-script.ts.
436(function(){
437try{
438if(!APP_ORIGIN)return;
439var guard="_hp_goal:"+PID;
440if(sessionStorage.getItem(guard))return;
441sessionStorage.setItem(guard,"1");
442var exps=[];var ck=document.cookie.split(";");
443for(var i=0;i<ck.length;i++){var kv=ck[i].split("=");var k=(kv[0]||"").trim();if(k.indexOf("_hp_exp_")===0){exps.push({id:k.slice(8),variant:decodeURIComponent((kv[1]||"").trim())});}}
444var body=JSON.stringify({pageId:PID,visitorId:visitorId,sessionId:sessionId,experiments:exps});
445var url=APP_ORIGIN+"/api/experiments/onsite-conversion";
446if(navigator.sendBeacon){navigator.sendBeacon(url,new Blob([body],{type:"text/plain"}));}
447else{fetch(url,{method:"POST",headers:{"Content-Type":"application/json"},body:body,keepalive:true}).catch(function(){});}
448}catch(e){}
449})();
450
451// HP-3461 — milestones reached WITHOUT the visitor scrolling carry {auto:1}.
452// checkScroll runs on a 1s timer regardless of input and at scrollY=0 pct is
453// just winH/docH, so any page under ~4 screens tall banked scroll_depth:25 from
454// every visitor who did nothing (a page fitting the viewport banked 100). Those
455// rows mark the session engaged in the rollup, which pushed the bounce rate of
456// every short page toward zero and inflated avgScrollDepth the same way. The
457// events still fire (that depth WAS visible, and the scroll funnel wants it);
458// the stamp lets the bounce query demand a real interaction.
459// SYNC with app/src/lib/analytics-tracking-script.ts.
460var scrollMilestones={25:false,50:false,75:false,100:false};
461var scrollUserMoved=false;
462function checkScroll(){
463var docH=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight);
464var scrollY=window.scrollY||window.pageYOffset;
465var winH=window.innerHeight;
466if(docH<=winH){if(!scrollMilestones[100]){scrollMilestones[100]=true;pushEvent("scroll_depth",{depth:100,auto:1});}return;}
467var pct=Math.round(((scrollY+winH)/docH)*100);
468[25,50,75,100].forEach(function(m){if(pct>=m&&!scrollMilestones[m]){scrollMilestones[m]=true;pushEvent("scroll_depth",scrollUserMoved?{depth:m}:{depth:m,auto:1});}});
469}
470window.addEventListener("scroll",function(){scrollUserMoved=true;checkScroll();},{passive:true});
471setTimeout(checkScroll,1000);
472
473// HP-1557 — when a click/submit happens inside a pop-up, add the popup's id +
474// name to the payload. Customers track conversions on the standard form_submit /
475// element_click types; this is just attribution metadata so the analytics surface
476// can say "this conversion came from the Welcome offer pop-up". Matches the
477// canonical data-persist-popup marker and the legacy data-htmlpub-popup one.
478function popupAttribution(node){
479var p=node&&node.closest&&node.closest("[data-persist-popup],[data-htmlpub-popup]");
480if(!p)return null;
481var nm=p.getAttribute("data-persist-popup-name");if(nm===null)nm=p.getAttribute("data-htmlpub-popup-name");
482return{popupId:p.getAttribute("id")||"",popupName:(nm||"").replace(/^\s+|\s+$/g,"")};
483}
484
485document.addEventListener("click",function(e){
486var el=e.target;
487if(!el||!el.tagName)return;
488var tag=el.tagName.toLowerCase();
489if(!(tag==="a"||tag==="button"||tag==="input"||tag==="select"||tag==="textarea"||el.getAttribute("role")==="button"||el.closest("a,button,[role=button]")))return;
490var docH=Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,1);
491var rect=el.getBoundingClientRect();
492var payload={x:Math.min(1,Math.max(0,(rect.left+rect.width/2)/(document.documentElement.clientWidth||1))),y:Math.min(1,Math.max(0,(rect.top+rect.height/2+(window.scrollY||0))/docH)),selector:el.id?"#"+el.id:tag+(el.className&&typeof el.className==="string"?"."+el.className.trim().split(/\s+/).slice(0,2).join("."):""),viewportWidth:vw,viewportHeight:vh};
493// HP-3227 — toggling "count clicks as conversions" on a button stamps
494// data-lp-conversion="<configId>" on that element, and both the rollup worker
495// and the dashboard read match a click goal by that id. This tracker never
496// reported it, so a goal whose stored selector is the placeholder
497// a[data-lp-conversion] had nothing to match on and counted zero conversions
498// forever, no matter how many buttons were toggled on. Read from the closest
499// stamped ancestor, since the click target is often an inner <span> of the CTA.
500// SYNC with app/src/lib/analytics-tracking-script.ts.
501var lpConvEl=el.closest?el.closest("[data-lp-conversion]"):null;
502var lpConvId=lpConvEl?lpConvEl.getAttribute("data-lp-conversion"):null;
503if(lpConvId)payload.lpConversion=lpConvId;
504// HP-1557 — only attribute element_click to a pop-up when the actual
505// click target is a button-shaped CTA. A click on the email input
506// inside a lead-capture popup would otherwise inflate the popup's
507// "Button clicks" count on the dashboard.
508var isCtaClick=(tag==="a"||tag==="button"||el.getAttribute("role")==="button"||(el.closest&&el.closest("a,button,[role=button]")));
509if(isCtaClick){var pa=popupAttribution(el);if(pa){payload.popupId=pa.popupId;payload.popupName=pa.popupName;}}
510// HP-3461 — two NON-IDENTIFYING facts about the clicked anchor: the host it leaves
511// for (external only) and the file extension. The selector above records only "#id"
512// or "tag.class", so a PDF link and any other button were indistinguishable and no
513// past click can be reclassified. The full href is NOT stored: pathnames carry
514// customer identity and this is the highest-volume table (see absUrl).
515// SYNC with app/src/lib/analytics-tracking-script.ts.
516var hrefEl=tag==="a"?el:(el.closest&&el.closest("a[href]"));
517var clickUrl=hrefEl?absUrl(hrefEl):null;
518var clickFacts=clickUrl?linkFacts(clickUrl):null;
519if(clickFacts&&clickFacts.external)payload.linkHost=clickFacts.host;
520if(clickFacts&&clickFacts.ext)payload.linkExt=clickFacts.ext;
521var clickKey=clickUrl?linkClickKey(clickUrl):null;
522if(clickKey)payload.linkKey=clickKey;
523pushEvent("element_click",payload);
524// Classify into a micro-conversion. Emitted ALONGSIDE the element_click, never
525// instead of it, so a classification we later decide was wrong can be re-derived.
526if(hrefEl)classifyLinkClick(hrefEl,clickUrl);
527// HP-2811 — same-tab anchor navigation races the page unload before the 5s
528// flush timer; visibilitychange/pagehide flushes are unreliable (esp. iOS
529// Safari, same-tab nav), so element_click goals for outbound CTAs (e.g. a
530// HubSpot Meetings link) see 0 conversions despite real clicks. Mirror the
531// form_submit flush pattern for anchors that will navigate this tab.
532var navAnchor=tag==="a"?el:(el.closest&&el.closest("a[href]"));
533if(navAnchor&&navAnchor.getAttribute("target")!=="_blank"&&!e.ctrlKey&&!e.metaKey&&!e.shiftKey){
534var navHref=(navAnchor.getAttribute("href")||"").replace(/^\s+/,"");
535if(navHref&&navHref.charAt(0)!=="#"&&navHref.slice(0,11).toLowerCase()!=="javascript:")flush();
536}
537},true);
538
539document.addEventListener("submit",function(e){
540var f=e.target;
541if(!f||f.tagName!=="FORM")return;
542var payload={formIdentifier:f.id||f.getAttribute("name")||"form-"+([].indexOf.call(document.forms,f))};
543var pa=popupAttribution(f);
544if(pa){payload.popupId=pa.popupId;payload.popupName=pa.popupName;}
545pushEvent("form_submit",payload);
546flush();// send now — a thank-you-page redirect may navigate away before the 5s timer, dropping the experiment conversion
547},true);
548
549// ─── HP-3461 on-page micro-conversions ──────────────────────────────────────
550// Kinds + classification rules mirror app/src/lib/analytics/page-engagement-kinds.ts
551// (the server-side reference). Literal here because this compiles to an inline
552// string and cannot import; page-engagement-kinds.test.ts asserts both script
553// copies only ever emit registered kinds.
554// SYNC with app/src/lib/analytics-tracking-script.ts.
555
556// Resolve an anchor for RULE MATCHING only — the url itself is never sent. Only
557// host + extension are reported (linkFacts): customer delivery links routinely put
558// identity in the PATH (/thank-you/jane-doe, /download/lead/8842/Invoice-Jane-Doe.pdf),
559// and AnalyticsEvent is the highest-volume table with no redaction pass and no
560// consent gate, so a stored pathname is PII a DSAR erase cannot reach.
561function absUrl(a){
562try{
563var raw=(a.getAttribute("href")||"").replace(/^\s+/,"");
564if(!raw||raw.charAt(0)==="#"||raw.slice(0,11).toLowerCase()==="javascript:")return null;
565var u=new URL(raw,location.href);
566if(u.protocol!=="http:"&&u.protocol!=="https:")return null;
567return u;
568}catch(e){return null;}
569}
570// Host + extension, derived from the WHOLE url (never a truncated copy) so a long
571// signed URL cannot lose its extension to a length cap and read as plain navigation.
572function linkFacts(u){
573var p=u.pathname.toLowerCase();
574var dot=p.lastIndexOf(".");
575var ext=dot<0?"":p.slice(dot+1);
576if(ext.length>8)ext="";
577return{host:u.hostname.toLowerCase(),ext:ext,external:u.hostname!==location.hostname};
578}
579// Stable join key for WHICH link was clicked: FNV-1a hash of the canonicalized
580// URL (lowercase host, no fragment, no trailing slash, query kept minus our own
581// runtime decoration params). The raw href is still never stored (HP-3461) —
582// the dashboard re-derives each key from the page's OWN html and joins on the
583// hash (app/src/lib/analytics/link-click-key.ts, the reference implementation;
584// its test extracts this copy and asserts they agree).
585// SYNC with app/src/lib/analytics-tracking-script.ts and lib/analytics/link-click-key.ts.
586function linkClickKey(u){
587try{
588var c=new URL(u.toString());
589c.hash="";
590c.hostname=c.hostname.toLowerCase();
591if(c.pathname.length>1&&c.pathname.slice(-1)==="/")c.pathname=c.pathname.slice(0,-1);
592if(c.search){
593var strip=["lp_click_id","lp_page_id","lp_ts","_exp","_var","_vid","_pvar","client_reference_id"];
594var kept=new URLSearchParams();
595c.searchParams.forEach(function(v,k){if(strip.indexOf(k)<0)kept.append(k,v);});
596var q=kept.toString();
597c.search=q?"?"+q:"";
598}
599var t=c.toString();
600var h=0x811c9dc5;
601for(var i=0;i<t.length;i++){h^=t.charCodeAt(i);h=Math.imul(h,0x01000193);}
602var x=(h>>>0).toString(16);
603while(x.length<8)x="0"+x;
604return x;
605}catch(e){return null;}
606}
607
608var DL_EXT=["pdf","epub","zip","csv","xlsx","xls","docx","doc","pptx","ppt","mp3","wav"];
609// calendar.google.com is deliberately ABSENT: the standard add-to-calendar button
610// is not a booking, and host-only matching cannot tell them apart, so including it
611// reported bookings on pages where nobody booked. Host entries only — this copy
612// matches on hostname, so a host/path entry could never match here.
613var BOOK_HOSTS=["calendly.com","cal.com","acuityscheduling.com"];
614
615// Every kind counts at most once PER PAGE LOAD: three clicks on the same PDF is one
616// download, and a scrubbed video cannot re-bank a quartile.
617//
618// IN-MEMORY, and it must stay that way. This used to consult sessionStorage and
619// return true from its catch block, so wherever storage throws (sandboxed iframe,
620// "block all cookies", in-app webviews, full quota) every timeupdate re-emitted
621// three quartiles — 12+/sec, which trips the collect route's 30-req/min-per-IP
622// limit and then 429s that visitor's REAL page_view / form_submit / conversion
623// beacons. A session-scoped key also outlived the page load, so a batch lost to a
624// 429 or a closed tab could never be re-reported. The server counts DISTINCT
625// SESSIONS per kind, so duplicates across page views are deduped there anyway.
626var microFired={};
627function latch(kind,id){
628var k=kind+":"+(id||"");
629if(microFired[k])return false;
630microFired[k]=true;
631return true;
632}
633function microEvent(kind,id){
634if(!latch(kind,id))return;
635pushEvent("page_engagement",id?{kind:kind,id:id}:{kind:kind});
636}
637
638function classifyLinkClick(a,u){
639try{
640if(!u)return;
641var f=linkFacts(u);
642if((a.hasAttribute&&a.hasAttribute("download"))||(f.ext&&DL_EXT.indexOf(f.ext)>-1)){
643// id is the EXTENSION, not the file name: "Invoice-Jane-Doe.pdf" is as
644// identifying as the path we refuse to store, and phase 1 renders only an
645// aggregate count.
646microEvent("file_download",f.ext||undefined);
647return;
648}
649if(!f.external)return;
650for(var i=0;i<BOOK_HOSTS.length;i++){
651var b=BOOK_HOSTS[i];
652if(f.host===b||f.host.slice(-(b.length+1))==="."+b){microEvent("booking_open",b);return;}
653}
654}catch(e){}
655}
656
657// <video> only. YouTube/Vimeo/Loom/Wistia are cross-origin iframes whose
658// playback is invisible without the provider's JS API plus an embed-URL rewrite,
659// both deferred out of phase 1 — a page whose only video is an embed reports NO
660// video kinds, which the read side must treat as "not measurable", not as 0%.
661function videoId(v){
662try{
663if(v.id)return v.id.slice(0,128);
664var src=v.currentSrc||v.getAttribute("src")||"";
665if(!src)return undefined;
666var seg=src.split("?")[0].split("/");
667return (seg[seg.length-1]||"").slice(0,128)||undefined;
668}catch(e){return undefined;}
669}
670// Autoplay policy only lets a video start by itself while MUTED, so "muted and the
671// visitor has never touched the page" is the signature of decorative playback.
672// A <video autoplay muted loop playsinline> hero fires 'play' on every load, so
673// counting it would report "100% played the video" on exactly the pages most likely
674// to have a hero video. Unmuted playback always counts: it needs a gesture.
675// mousedown as well as pointerdown: a path delivering only mouse events would
676// otherwise never set this, silently disabling the feature with nothing in the logs.
677var userGestured=false;
678function markGesture(){userGestured=true;}
679document.addEventListener("pointerdown",markGesture,true);
680document.addEventListener("mousedown",markGesture,true);
681document.addEventListener("keydown",markGesture,true);
682document.addEventListener("touchstart",markGesture,{passive:true,capture:true});
683// Decide ONCE at 'play' and LATCH on the element. Re-checking the live flag on every
684// timeupdate was a real bug found in Chrome: a decorative muted autoplay correctly
685// suppressed video_start, then one unrelated trusted keystroke flipped userGestured
686// and every later timeupdate passed — banking p25/p50/p75 for a video nobody chose
687// to watch, with NO video_start, leaving the read side dividing by a zero
688// denominator. Unmuted playback always counts: it cannot start without a gesture.
689function decidePlay(v){
690var intent=(!v.muted)||userGestured;
691try{v.__hpIntent=intent?1:0;}catch(e){}
692return intent;
693}
694// Undefined = never saw this element's 'play' (script injected mid-playback): fail
695// closed, since crediting is the direction that corrupts the headline percentage.
696function countedPlay(v){return v.__hpIntent===1;}
697// Unmuting a decorative video IS intent, and no 'play' fires for it, so re-decide.
698// Emitting video_start keeps the stream coherent: a start precedes its quartiles.
699function onVideoVolume(e){
700var v=e.target;
701if(!v||v.tagName!=="VIDEO")return;
702if(v.muted||v.paused||v.__hpIntent===1)return;
703v.__hpIntent=1;
704microEvent("video_start",videoId(v));
705}
706function onVideoTime(e){
707var v=e.target;
708if(!v||v.tagName!=="VIDEO")return;
709// Consult the LATCHED decision, never the live flag — see decidePlay.
710if(!countedPlay(v))return;
711var d=v.duration;
712// Live streams / metadata not yet loaded report 0, NaN or Infinity — a quartile
713// of an unknown duration is meaningless, so report the play and nothing more.
714if(!isFinite(d)||d<=0)return;
715var pct=(v.currentTime/d)*100;
716var id=videoId(v);
717if(pct>=25)microEvent("video_p25",id);
718if(pct>=50)microEvent("video_p50",id);
719if(pct>=75)microEvent("video_p75",id);
720// p100 comes from 'ended', not a threshold: the last timeupdate can land a
721// fraction short of duration, so a full watch would never bank it.
722}
723document.addEventListener("play",function(e){var v=e.target;if(v&&v.tagName==="VIDEO"&&decidePlay(v))microEvent("video_start",videoId(v));},true);
724document.addEventListener("timeupdate",onVideoTime,true);
725document.addEventListener("volumechange",onVideoVolume,true);
726// SYNC-START embed-video-listeners (app/edge twins pinned by page-engagement-kinds.test.ts)
727// ─── Embedded video: Vimeo (HP-3461) ────────────────────────────────────────
728// <video> is handled above by reading the element directly. A Vimeo embed is a
729// CROSS-ORIGIN iframe, so its state is unreadable — but the player reports its own
730// progress over postMessage, and needs NO change to the embed URL. A plainly pasted
731// Vimeo embed becomes measurable as-is. (YouTube is different: it is silent unless
732// enablejsapi=1 is on the URL. Handled separately.)
733//
734// Verified against live players, and two details cost an attempt each:
735//   1. SUBSCRIBE ON THE PLAYER'S ready MESSAGE, not the iframe's load event.
736//      Subscribing on load races the player's own init: the addEventListener calls
737//      are silently dropped, no ACK comes back, and no timeupdate ever arrives — it
738//      looks exactly like "Vimeo does not work".
739//   2. ATTRIBUTE BY e.source, not player_id. Vimeo only echoes a player_id if the
740//      embed URL carries one, and a customer's pasted embed has none.
741//
742// Vimeo sends OBJECTS (YouTube sends JSON strings), and timeupdate carries
743// data.percent as a 0..1 fraction, so quartiles need no arithmetic of our own.
744function vimeoHostOk(origin){
745try{
746var h=new URL(origin).hostname.toLowerCase();
747return h==="player.vimeo.com"||h==="vimeo.com"||h.slice(-10)===".vimeo.com";
748}catch(e){return false;}
749}
750// Low-cardinality, non-identifying label: the numeric video id off the embed URL,
751// prefixed so it cannot collide with a <video> filename in the tally.
752function vimeoLabel(f){
753try{
754var m=(f.getAttribute("src")||"").match(/vimeo\.com\/video\/(\d+)/);
755return m?"vimeo:"+m[1]:"vimeo";
756}catch(e){return "vimeo";}
757}
758function vimeoFrameFor(src){
759try{
760var fr=document.querySelectorAll("iframe");
761for(var i=0;i<fr.length;i++){if(fr[i].contentWindow===src)return fr[i];}
762}catch(e){}
763return null;
764}
765function vimeoSubscribe(f){
766try{
767var w=f.contentWindow;
768var evs=["play","timeupdate","ended"];
769for(var i=0;i<evs.length;i++)w.postMessage({method:"addEventListener",value:evs[i]},"*");
770}catch(e){}
771}
772window.addEventListener("message",function(e){
773try{
774if(!vimeoHostOk(e.origin))return;
775var d=e.data;
776if(!d||typeof d!=="object")return;
777var f=vimeoFrameFor(e.source);
778if(!f)return;
779if(d.event==="ready"){vimeoSubscribe(f);return;}
780var id=vimeoLabel(f);
781if(d.event==="play"){
782// Same intent rule as <video>, minus the muted check we cannot read through an
783// iframe: browser policy only permits unprompted autoplay while MUTED, so
784// "playback began before the visitor touched anything" is the decorative case.
785if(!userGestured)return;
786f.__hpEmbedCounted=1;
787microEvent("video_start",id);
788return;
789}
790if(f.__hpEmbedCounted!==1)return;
791if(d.event==="timeupdate"){
792var pct=d.data&&typeof d.data.percent==="number"?d.data.percent*100:-1;
793if(pct<0)return;
794if(pct>=25)microEvent("video_p25",id);
795if(pct>=50)microEvent("video_p50",id);
796if(pct>=75)microEvent("video_p75",id);
797// p100 comes from 'ended', as with <video>: the last timeupdate lands short.
798}else if(d.event==="ended"){
799microEvent("video_p25",id);microEvent("video_p50",id);microEvent("video_p75",id);microEvent("video_p100",id);
800}
801}catch(err){}
802});
803
804// ─── Embedded video: YouTube (HP-3461) ──────────────────────────────────────
805// YouTube is SILENT unless the embed URL carries enablejsapi=1 — verified live: a
806// plain embed answers nothing, even if we send it the handshake. So this listener
807// only hears players whose URL has that flag; adding it to customer HTML at serve
808// time is a separate commit, deliberately, because that mutates what visitors load.
809//
810// With the flag, the protocol is: post a listening message, then the player streams
811// infoDelivery with playerState, currentTime and duration.
812//
813// The handshake repeats on a timer, and the honest reason is that it catches frames
814// that appear after load (a tab, an accordion, a script-mounted embed). Whether a
815// player also STOPS streaming when we stop asking was not established: repeats are
816// answered "alreadyInitialized", which suggests the first one is what arms it. The
817// polling stays because the version with polling is the one verified to work end to
818// end, and trading that for an unverified optimisation would risk silently losing
819// every embed metric. The steady-state cost is one postMessage per api-enabled
820// frame every 2s.
821//
822// Unlike Vimeo, YouTube sends JSON STRINGS, so the payload needs parsing before it
823// looks like anything.
824//
825// playerState is YouTube's enum: -1 unstarted, 0 ended, 1 playing, 2 paused,
826// 3 buffering, 5 cued.
827function ytHostOk(origin){
828try{
829var h=new URL(origin).hostname.toLowerCase();
830return h==="www.youtube.com"||h==="youtube.com"||h==="www.youtube-nocookie.com"||h==="youtube-nocookie.com";
831}catch(e){return false;}
832}
833function ytLabel(f){
834try{
835var m=(f.getAttribute("src")||"").match(/\/embed\/([A-Za-z0-9_-]{11})/);
836return m?"youtube:"+m[1]:"youtube";
837}catch(e){return "youtube";}
838}
839function ytFrameFor(src){
840try{
841var fr=document.querySelectorAll("iframe");
842for(var i=0;i<fr.length;
842i++){if(fr[i].contentWindow===src)return fr[i];}
843}catch(e){}
844return null;
845}
846// Ask every api-enabled YouTube frame to start reporting, and keep asking. Cheap: a
847// postMessage to a frame that is not a YouTube player is simply ignored.
848function ytListen(){
849try{
850var fr=document.querySelectorAll('iframe[src*="enablejsapi=1"]');
851for(var i=0;i<fr.length;i++){
852try{fr[i].contentWindow.postMessage('{"event":"listening","id":"hp","channel":"widget"}',"*");}catch(e){}
853}
854}catch(e){}
855}
856setTimeout(ytListen,1200);
857setInterval(ytListen,2000);
858window.addEventListener("message",function(e){
859try{
860if(!ytHostOk(e.origin))return;
861var d=e.data;
862// YouTube sends strings; anything else is not its API talking.
863if(typeof d!=="string")return;
864try{d=JSON.parse(d);}catch(x){return;}
865if(!d||typeof d!=="object"||d.event!=="infoDelivery")return;
866var info=d.info;
867if(!info||typeof info!=="object")return;
868var f=ytFrameFor(e.source);
869if(!f)return;
870var id=ytLabel(f);
871var state=info.playerState;
872// Same intent rule as Vimeo and <video>, but YouTube hands us no discrete 'play'
873// event: infoDelivery repeats playerState 1 for the WHOLE of playback. So the
874// decision is made on the TRANSITION into playing and latched there, never
875// re-read. Re-reading it is precisely the bug decidePlay documents, and it is
876// reachable here in a way it is not for <video>: a muted autoplay is correctly
877// suppressed, then one unrelated trusted click (the form, alt-tab, a screenshot)
878// flips userGestured and the next state-1 update promotes a video nobody chose
879// into a counted play, quartiles and all. Latching on the transition also keeps
880// the <video> semantics that a chosen REPLAY after a decorative autoplay counts,
881// because that arrives as 2 then 1.
882var prev=f.__hpYtPrev;
883f.__hpYtPrev=state;
884if(state===1&&prev!==1){
885f.__hpEmbedCounted=userGestured?1:0;
886if(f.__hpEmbedCounted===1)microEvent("video_start",id);
887}
888if(f.__hpEmbedCounted!==1)return;
889if(state===0){
890// Ended implies every quartile, even if a throttled tab skipped an update.
891microEvent("video_p25",id);microEvent("video_p50",id);microEvent("video_p75",id);microEvent("video_p100",id);
892return;
893}
894var dur=info.duration,cur=info.currentTime;
895// A live stream reports duration 0, and a quartile of an unknown length is
896// meaningless — report the play and nothing more.
897if(typeof dur!=="number"||typeof cur!=="number"||!isFinite(dur)||dur<=0)return;
898var pct=(cur/dur)*100;
899if(pct>=25)microEvent("video_p25",id);
900if(pct>=50)microEvent("video_p50",id);
901if(pct>=75)microEvent("video_p75",id);
902// p100 comes from playerState 0, not a threshold: the final update lands short.
903}catch(err){}
904});
905// SYNC-END embed-video-listeners
906document.addEventListener("ended",function(e){
907var v=e.target;
908if(!v||v.tagName!=="VIDEO")return;
909if(!countedPlay(v))return;
910var id=videoId(v);
911// Watched to the end implies every quartile, even if a throttled background tab
912// skipped a timeupdate.
913microEvent("video_p25",id);microEvent("video_p50",id);microEvent("video_p75",id);microEvent("video_p100",id);
914},true);
915
916// ─── Scheduler widgets (HP-3461 phase 3) ────────────────────────────────────
917// An inline Calendly/Cal.com embed is a CROSS-ORIGIN iframe, so we cannot see a
918// click inside it — which is why booking_open (a click on an outbound scheduling
919// link) is absent on exactly the pages most likely to take bookings. The widget
920// broadcasts its own progress to the parent window, so we get told instead of
921// guessing. No SDK needed; Calendly posts these regardless.
922//
923// SECURITY: any frame can post a message claiming to be a booking, and this ships
924// on every published page, so the sender's ORIGIN must be a recognised scheduling
925// host AND the message must match the provider's shape. Everything else is ignored.
926// PRIVACY: only WHICH STEP is read. event.data.payload (invitee details on
927// event_scheduled) is never touched.
928// SYNC with app/src/lib/analytics-tracking-script.ts.
929function schedulerOrigin(origin){
930try{
931var h=new URL(origin).hostname.toLowerCase();
932for(var i=0;i<BOOK_HOSTS.length;i++){
933var b=BOOK_HOSTS[i];
934if(h===b||h.slice(-(b.length+1))==="."+b)return b;
935}
936}catch(e){}
937return null;
938}
939// calendly.profile_page_viewed is deliberately ignored: it fires for a profile
940// listing rather than a bookable calendar, so it would inflate the funnel's top.
941window.addEventListener("message",function(e){
942try{
943var host=schedulerOrigin(e.origin);
944if(!host)return;
945var d=e.data;
946if(!d||typeof d!=="object")return;
947// Calendly's vocabulary reads off d.event and is prefixed; Cal.com's reads off
948// d.type and is not. Verified against live widgets on both, plus Cal.com's own
949// EventDataMap in packages/embeds/embed-core/src/sdk-action-manager.ts.
950// calendly.profile_page_viewed is ignored: it fires for a profile listing rather
951// than a bookable calendar, so it would inflate the top of the funnel.
952//
953// Cal.com HAS NO time-selection event. Its full enum (27 keys) contains nothing for
954// picking a date or slot -- availabilityLoaded and slotsFetched are the widget
955// LOADING options, not a visitor choosing one. So Cal.com reports 2 of the 3 steps,
956// and booking_time_selected is left ABSENT for it rather than synthesised from the
957// booking. Fabricating it would make every Cal.com page show a flat 100% from
958// "selected" to "completed" -- a number that looks measured and is not. Absent
959// already means "not measurable here" everywhere else in this feature (see the
960// video quartiles), and the read side honours that.
961//
962// Emissions are LITERALS, one branch per step, so the sync seam in
963// page-engagement-kinds.test.ts can see them -- it caught booking_completed going
964// unverifiable when this was table-driven.
965var name=typeof d.event==="string"?d.event:(typeof d.type==="string"?d.type:null);
966if(!name)return;
967if(host==="calendly.com"){
968if(name==="calendly.event_scheduled"){
969microEvent("booking_viewed",host);
970microEvent("booking_time_selected",host);
971microEvent("booking_completed",host);
972// The booking is the outcome this exists to catch and the visitor usually leaves
973// for the confirmation, so flush rather than wait out the 5s timer.
974flush();
975}else if(name==="calendly.date_and_time_selected"){
976microEvent("booking_viewed",host);
977microEvent("booking_time_selected",host);
978}else if(name==="calendly.event_type_viewed"){
979microEvent("booking_viewed",host);
980}
981}else if(host==="cal.com"){
982// bookingSuccessfulV2 deprecates bookingSuccessful and both are still in the enum,
983// so accept either -- customers sit on different embed versions.
984if(name==="bookingSuccessfulV2"||name==="bookingSuccessful"){
985// NOTE: no booking_time_selected here. Cal.com cannot report it.
986microEvent("booking_viewed",host);
987microEvent("booking_completed",host);
988flush();
989}else if(name==="bookerViewed"){
990microEvent("booking_viewed",host);
991}
992}
993// No acuityscheduling.com branch, and there never can be one. Its embed script
994// exchanges only sizing/load/scrollTo/scrollBy/gaMeasurementId with the parent and
995// takes a Google Analytics client id INWARD — there is no booking message to hear.
996// Acuity reports outward only through its webhooks (HP-4041's inbound conversion
997// webhook is the route). A branch here would be dead code. See lib/scheduling-hosts.
998// Its origin stays accepted by the gate above, which costs nothing: an origin that
999// never speaks simply never matches.
1000}catch(err){}
1001});
1002
1003// Consent usually arrives seconds after load, so a bare load listener would
1004// never fire and rum_timing would vanish from every CMP-gated page. The
1005// navigation/paint entries report the same absolute numbers whenever read.
1006function hpRumTiming(){
1007setTimeout(function(){
1008try{
1009var perf=performance.getEntriesByType("navigation")[0];
1010if(perf){
1011var ev=makeEvent("rum_timing",{loadTimeMs:Math.round(perf.loadEventEnd-perf.startTime),ttfbMs:Math.round(perf.responseStart-perf.startTime),fcpMs:undefined});
1012var paintEntries=performance.getEntriesByType("paint");
1013for(var i=0;i<paintEntries.length;i++){if(paintEntries[i].name==="first-contentful-paint"){ev.payload.fcpMs=Math.round(paintEntries[i].startTime);break;}}
1014buffer.push(ev);
1015}
1016}catch(e){}
1017},2000);
1018}
1019if(document.readyState==="complete")hpRumTiming();else window.addEventListener("load",hpRumTiming);
1020});
1021})();
1022</script>
1022<script data-htmlpub-popups>
1023(function(){
1024"use strict";
1025
1026var SCOPE = "pathname";
1027var PAGE_ID = "akdam4vhrug4gtusjvpf2kn3";
1028
1029var DEFAULTS = {
1030  overlay:   { color: "#000000", opacity: 0.5,  clickToClose: true },
1031  close:     { enabled: true, position: "top-right", escapeToClose: true },
1032  animation: { open: "fade", close: "fade", durationMs: 250 },
1033  frequency: { visitsBefore: 0, daysCooldown: 0 }
1034};
1035
1036function parseJsonAttr(raw, fallback) {
1037  if (!raw) return fallback;
1038  try {
1039    var p = JSON.parse(raw);
1040    if (p && typeof p === "object") return p;
1041  } catch(e) {}
1042  return fallback;
1043}
1044
1045// Back-compat: pages published before the data-persist-popup* rename carry the
1046// legacy data-htmlpub-popup* names. Read canonical first, fall back to legacy.
1047// suffix is "" for the marker, "-name", "-overlay", "-target", etc.
1048function pAttr(el, suffix) {
1049  var v = el.getAttribute("data-persist-popup" + suffix);
1050  return v !== null ? v : el.getAttribute("data-htmlpub-popup" + suffix);
1051}
1052
1053function readConfig(el) {
1054  var overlay   = parseJsonAttr(pAttr(el, "-overlay"),   {});
1055  var closeCfg  = parseJsonAttr(pAttr(el, "-close"),     {});
1056  var anim      = parseJsonAttr(pAttr(el, "-animation"), {});
1057  var triggers  = parseJsonAttr(pAttr(el, "-triggers"),  {});
1058  var frequency = parseJsonAttr(pAttr(el, "-frequency"), {});
1059  return {
1060    overlay: {
1061      color:        typeof overlay.color === "string"   ? overlay.color   : DEFAULTS.overlay.color,
1062      opacity:      typeof overlay.opacity === "number" ? overlay.opacity : DEFAULTS.overlay.opacity,
1063      clickToClose: overlay.clickToClose !== false
1064    },
1065    close: {
1066      enabled:        closeCfg.enabled !== false,
1067      position:       closeCfg.position === "top-left" ? "top-left" : "top-right",
1068      escapeToClose:  closeCfg.escapeToClose !== false
1069    },
1070    animation: {
1071      open:        typeof anim.open === "string"  ? anim.open       : DEFAULTS.animation.open,
1072      close:       typeof anim.close === "string" ? anim.close      : DEFAULTS.animation.close,
1073      durationMs:  typeof anim.durationMs === "number" ? anim.durationMs : DEFAULTS.animation.durationMs
1074    },
1075    triggers: triggers,
1076    frequency: {
1077      visitsBefore: typeof frequency.visitsBefore === "number" ? frequency.visitsBefore : 0,
1078      daysCooldown: typeof frequency.daysCooldown === "number" ? frequency.daysCooldown : 0
1079    },
1080    // "none" = the marker's content owns its own chrome, so this runtime paints none of it.
1081    // Migrated Classic pop-ups: the marker holds an <iframe> whose document already draws the
1082    // mask, centring, card and close button. Nova-authored pop-ups never set it.
1083    chrome: pAttr(el, "-chrome") === "none" ? "none" : "default"
1084  };
1085}
1086
1087// ── LocalStorage helpers — scoped per pathname so two pages on the same
1088// origin track their popups independently. Wrapped in try/catch because
1089// Safari private mode + iframe sandboxing can throw on access.
1090var STORE_PREFIX = SCOPE === "popup-id" ? "_hpup:popup:" : ("_hpup:" + (location.pathname || "/") + ":");
1091function lsGet(key) {
1092  try { return localStorage.getItem(STORE_PREFIX + key); } catch(e) { return null; }
1093}
1094function lsSet(key, value) {
1095  try { localStorage.setItem(STORE_PREFIX + key, value); } catch(e) {}
1096}
1097
1098// Bump the visit counter once per pageload. Used by visitsBefore. In embed
1099// (popup-id) scope callers pass the popup id as a suffix so each standalone
1100// popup tracks its own visit count — a busy host page with two embedded popups
1101// must not let one popup's pageviews satisfy another's visitsBefore gate.
1102function recordVisit(suffix) {
1103  var key = "visits" + (suffix ? ":" + suffix : "");
1104  var prev = parseInt(lsGet(key) || "0", 10);
1105  if (!isFinite(prev) || prev < 0) prev = 0;
1106  lsSet(key, String(prev + 1));
1107  return prev + 1;
1108}
1109
1110function isEligible(cfg, popupId, currentVisit) {
1111  // visitsBefore: 0 = show on first visit. So eligible iff currentVisit > visitsBefore.
1112  if (cfg.frequency.visitsBefore > 0 && currentVisit <= cfg.frequency.visitsBefore) return false;
1113  // daysCooldown: don't reshow until N days have passed since last close.
1114  if (cfg.frequency.daysCooldown > 0) {
1115    var last = parseInt(lsGet("close:" + popupId) || "0", 10);
1116    if (last > 0) {
1117      var elapsedMs = Date.now() - last;
1118      if (elapsedMs < cfg.frequency.daysCooldown * 86400000) return false;
1119    }
1120  }
1121  return true;
1122}
1123
1124function composeRgba(color, opacity) {
1125  var hex = color.match(/^#([0-9a-f]{6})$/i);
1126  if (hex) {
1127    var n = parseInt(hex[1], 16);
1128    return "rgba(" + ((n >> 16) & 0xff) + "," + ((n >> 8) & 0xff) + "," + (n & 0xff) + "," + opacity + ")";
1129  }
1130  var rgb = color.match(/^rgb(?:a)?\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)/);
1131  if (rgb) return "rgba(" + rgb[1] + "," + rgb[2] + "," + rgb[3] + "," + opacity + ")";
1132  return "rgba(0,0,0," + opacity + ")";
1133}
1134
1135function animStart(kind) {
1136  if (kind === "slide-up")   return { opacity: 0, transform: "translate(-50%, -40%)" };
1137  if (kind === "slide-down") return { opacity: 0, transform: "translate(-50%, -60%)" };
1138  if (kind === "zoom")       return { opacity: 0, transform: "translate(-50%, -50%) scale(0.92)" };
1139  if (kind === "none")       return { opacity: 1, transform: "translate(-50%, -50%)" };
1140  return { opacity: 0, transform: "translate(-50%, -50%)" }; // fade
1141}
1142function animEnd() {
1143  return { opacity: 1, transform: "translate(-50%, -50%) scale(1)" };
1144}
1145
1146// Body scroll lock — refcounted because two popups can technically be in
1147// the open state at once (different triggers firing back-to-back). The
1148// first lock saves the body's prior overflow + padding-right and replaces
1149// them; subsequent locks just bump the count. We only restore once every
1150// popup that locked has closed, so a still-open popup keeps the page held.
1151// padding-right compensates for the scrollbar disappearing — without it,
1152// the dimmed page behind the overlay shifts right at the moment of open.
1153var _hpupLockCount = 0;
1154var _hpupSavedOverflow = "";
1155var _hpupSavedPaddingRight = "";
1156function lockBodyScroll() {
1157  if (_hpupLockCount === 0) {
1158    var scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;
1159    _hpupSavedOverflow = document.body.style.overflow || "";
1160    _hpupSavedPaddingRight = document.body.style.paddingRight || "";
1161    if (scrollbarWidth > 0) document.body.style.paddingRight = scrollbarWidth + "px";
1162    document.body.style.overflow = "hidden";
1163  }
1164  _hpupLockCount++;
1165}
1166function unlockBodyScroll() {
1167  if (_hpupLockCount === 0) return;
1168  _hpupLockCount--;
1169  if (_hpupLockCount === 0) {
1170    if (_hpupSavedOverflow) document.body.style.overflow = _hpupSavedOverflow;
1171    else document.body.style.removeProperty("overflow");
1172    if (_hpupSavedPaddingRight) document.body.style.paddingRight = _hpupSavedPaddingRight;
1173    else document.body.style.removeProperty("padding-right");
1174  }
1175}
1176
1177// Build the overlay backdrop. Returns the element. Wired with the right
1178// pointer behaviour for the popup's clickToClose setting.
1179function buildOverlay(cfg, onOverlayClick) {
1180  var ov = document.createElement("div");
1181  ov.setAttribute("data-htmlpub-popup-backdrop", "");
1182  ov.style.cssText = "position:fixed;inset:0;background:" + composeRgba(cfg.overlay.color, cfg.overlay.opacity) +
1183    ";z-index:2147483646;opacity:0;transition:opacity " + cfg.animation.durationMs + "ms ease;";
1184  if (cfg.overlay.clickToClose) ov.addEventListener("click", onOverlayClick);
1185  return ov;
1186}
1187
1188// Inject a close ✕ button if the popup doesn't already have one. We mark our
1189// injected button so re-show calls don't duplicate it.
1190function ensureCloseButton(el, cfg, onClose) {
1191  if (el.querySelector("[data-htmlpub-popup-close-btn]")) return;
1192  if (!cfg.close.enabled) return;
1193  var btn = document.createElement("button");
1194  btn.setAttribute("type", "button");
1195  btn.setAttribute("aria-label", "Close pop-up");
1196  btn.setAttribute("data-htmlpub-popup-close-btn", "");
1197  var posStyle = cfg.close.position === "top-left" ? "left:12px;" : "right:12px;";
1198  btn.style.cssText = "position:absolute;top:12px;" + posStyle +
1199    "width:28px;height:28px;border-radius:9999px;border:0;background:rgba(0,0,0,0.45);color:#fff;" +
1200    "font:16px/1 system-ui,-apple-system,sans-serif;cursor:pointer;display:flex;align-items:center;" +
1201    "justify-content:center;z-index:1;padding:0;";
1202  btn.textContent = "×";
1203  btn.addEventListener("click", function(e){ e.preventDefault(); e.stopPropagation(); onClose(); });
1204  // Ensure the popup itself is a positioning context so absolute close button
1205  // anchors to it. Cheap: only sets if not already positioned.
1206  var pos = getComputedStyle(el).position;
1207  if (pos === "static" || !pos) el.style.position = "relative";
1208  el.appendChild(btn);
1209}
1210
1211// ── Per-popup wiring ──────────────────────────────────────────────────────
1212// Each popup gets its own controller closing over its element + config +
1213// trigger cleanup so we can tear down listeners on close.
1214
1215// HP-1557 — fire an analytics event for this popup. Hands off to the
1216// analytics.ts buffer via window.__hpupPushEvent (registered there). If
1217// analytics isn't loaded for some reason we silently no-op rather than
1218// breaking the popup runtime.
1219function emitPopupEvent(eventType, popup, extras) {
1220  if (typeof window.__hpupPushEvent !== "function") return;
1221  var payload = {
1222    popupId: popup.getAttribute("id") || "",
1223    popupName: (pAttr(popup, "-name") || "").replace(/^\s+|\s+$/g, "")
1224  };
1225  // Standalone-embed pop-ups carry their page id via data-hp-popup-cuid (set by
1226  // the embed bundle) so analytics can attribute to a specific pop-up; the DOM
1227  // id in popupId is a shared name-slug. In-page pop-ups have no cuid so this
1228  // stays absent.
1229  var _hpCuid = popup.getAttribute("data-hp-popup-cuid");
1230  if (_hpCuid) payload.popupCuid = _hpCuid;
1231  if (extras && typeof extras === "object") {
1232    for (var k in extras) {
1233      if (Object.prototype.hasOwnProperty.call(extras, k)) payload[k] = extras[k];
1234    }
1235  }
1236  window.__hpupPushEvent(eventType, payload);
1237}
1238
1239// Single-open invariant: only one popup may be visible at a time.
1240// show() force-closes whatever is up before painting itself.
1241var _hpupCurrentOpen = null;
1242
1243function wirePopup(el, currentVisit) {
1244  var cfg = readConfig(el);
1245  var popupId = el.getAttribute("id") || "";
1246  if (!popupId) return;
1247  // The editor stores popups hidden via inline display:none. We never strip
1248  // that — we toggle it at show/close time so a never-shown popup stays
1249  // invisible (matching its rendered state in the DOM).
1250  var originalDisplay = el.style.display || "";
1251  var isOpen = false;
1252  var overlay = null;
1253  var keyListener = null;
1254  var sizeObserver = null;
1255  var cleanups = []; // trigger listener removers; called on first show
1256
1257  function cleanupTriggers() {
1258    for (var i = 0; i < cleanups.length; i++) {
1259      try { cleanups[i](); } catch(e) {}
1260    }
1261    cleanups = [];
1262  }
1263
1264  // Why a popup was opened — informs the parent analytics event so the
1265  // dashboard can distinguish "fired by timer" vs. "explicit user click".
1266  // Updated by callers before show() and reset to null after emit.
1267  var lastShowReason = null;
1268
1269  // HP-4147 — the overflow choice in show() is a measurement, and measurements
1270  // go stale. Content can grow AFTER open: an inline checkout's Stripe Payment
1271  // Element progressively reveals card fields and then a "Save your info"
1272  // section as the buyer types. A popup that opened short (overflow:visible, so
1273  // its shadow paints) and then grows past maxHeight spills below the viewport
1274  // instead of scrolling, and because show() locked the body scroll there is
1275  // nothing left for a touch drag to move — the Pay button becomes unreachable
1276  // and closing + reopening is the only way out (reopening re-runs show(), which
1277  // re-measures against the now-tall content and lands on "auto"). So re-decide
1278  // on every resize — but only ever upgrade to "auto", never back to "visible".
1279  //
1280  // One-way on purpose. Reverting to "visible" when content shrinks back under
1281  // maxHeight sounds harmless (it hands HP-3771 its shadow back) but it
1282  // re-releases horizontal spill that "auto" had been containing, so a wide
1283  // child paints outside the popup over the page, and it discards scrollTop,
1284  // bouncing the buyer to the top of the form. Both were measured in Chromium
1285  // at a Pixel viewport. Staying in "auto" costs only the shadow, and only for
1286  // the rest of an open in which content already exceeded the viewport: "auto"
1287  // paints no scrollbar once content fits again, it merely clips. close()
1288  // strips every inline style, so the next open re-decides from scratch.
1289  function syncOverflow() {
1290    if (!isOpen) return;
1291    // Guarded on a real change. Toggling overflow lays out a scrollbar, which
1292    // resizes content, which re-enters this observer — an unguarded write there
1293    // is a feedback loop that never settles.
1294    if (el.scrollHeight > el.clientHeight + 1 && el.style.overflow !== "auto") {
1295      el.style.overflow = "auto";
1296    }
1297  }
1298
1299  function observeSize() {
1300    if (sizeObserver || typeof ResizeObserver === "undefined") return;
1301    sizeObserver = new ResizeObserver(syncOverflow);
1302    // Observing el catches the growth that crosses maxHeight, since its own box
1303    // tracks content right up to the clamp. Observing its element children
1304    // catches growth that continues past the clamp, where el's box is pinned and
1305    // reports no resize at all — content 1px under maxHeight that then expands
1306    // would otherwise never re-decide.
1307    sizeObserver.observe(el);
1308    for (var childIndex = 0; childIndex < el.children.length; childIndex++) {
1309      sizeObserver.observe(el.children[childIndex]);
1310    }
1311  }
1312
1313  function unobserveSize() {
1314    if (!sizeObserver) return;
1315    sizeObserver.disconnect();
1316    sizeObserver = null;
1317  }
1318
1319  function show(reason) {
1320    if (isOpen) return;
1321    if (_hpupCurrentOpen && _hpupCurrentOpen !== el && typeof _hpupCurrentOpen._hpupClose === "function") {
1322      _hpupCurrentOpen._hpupClose("replaced", true);
1323    }
1324    _hpupCurrentOpen = el;
1325    isOpen = true;
1326    lastShowReason = reason || "explicit";
1327    cleanupTriggers();
1328    lockBodyScroll();
1329    // chrome:none — the content paints its own ✕ (Classic's .js-close, inside the iframe).
1330    var bare = cfg.chrome === "none";
1331    if (!bare) ensureCloseButton(el, cfg, function(){ close("close_button"); });
1332
1333    var start = animStart(cfg.animation.open);
1334    var end   = animEnd();
1335
1336    // Centered fixed positioning with a high z-index so we float above any
1337    // page content + checkout / chat widgets.
1338    el.style.display      = "block";
1339    el.style.position     = "fixed";
1340    el.style.zIndex       = "2147483647";
1341
1342    if (bare) {
1343      // Full-viewport shell. An <iframe> has no intrinsic content height (~150px, and it never
1344      // reports its content size to the parent), so the shrink-wrapped-card model below cannot
1345      // measure it — centring, the maxHeight/maxWidth clamps and the overflow logic all assume a
1346      // box that sizes to its content. Reproduce CDA's model instead: the frame fills the
1347      // viewport and the Classic document inside owns mask, centring and card.
1348      //
1349      // No transform either: every animStart transform carries translate(-50%,-50%), which
1350      // centres a card and would shove a full-viewport shell off screen. Opacity alone.
1351      el.style.top        = "0";
1352      el.style.left       = "0";
1353      el.style.width      = "100%";
1354      el.style.height     = "100%";
1355      el.style.opacity    = String(start.opacity);
1356      el.style.transition = "opacity " + cfg.animation.durationMs + "ms ease";
1357      openClassicFrame(el);
1358    } else {
1359    el.style.top          = "50%";
1360    el.style.left         = "50%";
1361    el.style.transform    = start.transform;
1362    el.style.opacity      = String(start.opacity);
1363    el.style.maxHeight    = "calc(100vh - 32px)";
1364    el.style.maxWidth     = "calc(100vw - 32px)";
1365    // HP-3771 — "auto" clips any box-shadow set on the popup's own content:
1366    // box-shadow doesn't affect layout size, so this element shrink-wraps to its
1367    // content and its own overflow then clips the shadow it should cast.
1368    //
1369    // But "visible" unconditionally is not safe either. This element is
1370    // position:fixed and centred, so content taller than maxHeight does not
1371    // clip — it spills past the viewport with no scrollbar and nothing can
1372    // reach it. A lead-capture form taller than the viewport would lose its
1373    // submit button. So decide per popup, after layout: overflow stays "auto"
1374    // only when the content genuinely overflows (scrolling wins), and is
1375    // "visible" otherwise (shadow wins). Short popups are the overwhelmingly
1376    // common case, so the shadow renders for almost everyone.
1377    //
1378    // syncOverflow re-applies this same rule for the rest of the open (HP-4147).
1379    el.style.overflow     = "visible";
1380    syncOverflow();
1381    el.style.transition   = "opacity " + cfg.animation.durationMs + "ms ease, transform " + cfg.animation.durationMs + "ms ease";
1382    }
1383
1384    if (!el.parentNode) document.body.appendChild(el);
1385    if (!bare) {
1386      // Backdrop. Inserted before the popup so the popup naturally paints on top.
1387      // chrome:none skips it — the Classic document paints its own .js-leadbox-mask, and a second
1388      // backdrop would darken the page twice.
1389      overlay = buildOverlay(cfg, function(){ close("overlay_click"); });
1390      (el.parentNode || document.body).insertBefore(overlay, el);
1391
1392      // Started only once el is attached, so the observer's first delivery measures
1393      // real geometry rather than the 0x0 of a detached node.
1394      observeSize();
1395    }
1396
1397    // Force reflow so the next style change animates from start, not jumps.
1398    /* eslint-disable-next-line no-unused-expressions */ void el.offsetWidth;
1399
1400    el.style.opacity   = String(end.opacity);
1401    if (!bare) el.style.transform = end.transform;
1402    if (overlay) overlay.style.opacity = "1";
1403
1404    if (cfg.close.escapeToClose) {
1405      keyListener = function(e) { if (e.key === "Escape") close("escape"); };
1406      document.addEventListener("keydown", keyListener);
1407    }
1408
1409    emitPopupEvent("popup_view", el, { reason: lastShowReason });
1410    lastShowReason = null;
1411  }
1412
1413  function close(reason, hard) {
1414    if (!isOpen) return;
1415    isOpen = false;
1416    emitPopupEvent("popup_dismiss", el, { reason: reason || "unknown" });
1417    var start = animStart(cfg.animation.close);
1418    el.style.opacity   = String(start.opacity);
1419    // Same reason as show(): the close transform centres a card, and applying it to a
1420    // full-viewport shell would slide it off screen instead of fading it out.
1421    if (cfg.chrome !== "none") el.style.transform = start.transform;
1422    if (overlay) overlay.style.opacity = "0";
1423
1424    if (keyListener) {
1425      document.removeEventListener("keydown", keyListener);
1426      keyListener = null;
1427    }
1428
1429    var afterAnim = function() {
1430      if (_hpupCurrentOpen === el) _hpupCurrentOpen = null;
1431      unobserveSize();
1432      el.style.display = originalDisplay || "none";
1433      el.style.removeProperty("position");
1434      el.style.removeProperty("top");
1435      el.style.removeProperty("left");
1436      el.style.removeProperty("transform");
1437      el.style.removeProperty("opacity");
1438      el.style.removeProperty("z-index");
1439      el.style.removeProperty("max-height");
1440      el.style.removeProperty("max-width");
1441      // Only the chrome:none branch sets these, and teardown must remove exactly what this show
1442      // set — a marker can legitimately carry an author's own inline width/height, and stripping
1443      // it on close would resize the pop-up the second time it opens.
1444      if (cfg.chrome === "none") {
1445        el.style.removeProperty("width");
1446        el.style.removeProperty("height");
1447      }
1448      el.style.removeProperty("overflow");
1449      el.style.removeProperty("transition");
1450      if (overlay && overlay.parentNode) overlay.parentNode.removeChild(overlay);
1451      overlay = null;
1452      // Tear down the close button — its click handler closes over THIS
1453      // show's overlay reference. Leaving it across opens means a second
1454      // show's X would call the previous close() with a stale overlay and
1455      // leave the current overlay floating.
1456      var existingBtn = el.querySelector("[data-htmlpub-popup-close-btn]");
1457      if (existingBtn && existingBtn.parentNode) existingBtn.parentNode.removeChild(existingBtn);
1458      // Release the scroll lock only after the popup is fully torn down so
1459      // the page doesn't pop back to scrollable while the close animation
1460      // is still painting.
1461      unlockBodyScroll();
1462      lsSet("close:" + popupId, String(Date.now()));
1463    };
1464    if (hard || cfg.animation.close === "none") afterAnim();
1465    else setTimeout(afterAnim, cfg.animation.durationMs);
1466  }
1467
1468  // ── Triggers ────────────────────────────────────────────────────────────
1469  // Only wire if the popup is eligible to show this pageload (frequency
1470  // rules). Click-to-open via [data-htmlpub-popup-target] always works,
1471  // regardless of eligibility — it's an explicit user action.
1472  var eligible = isEligible(cfg, popupId, currentVisit);
1473
1474  if (eligible) {
1475    var t = cfg.triggers || {};
1476
1477    if (t.timed && typeof t.timed.delaySec === "number") {
1478      var delayMs = Math.max(0, t.timed.delaySec) * 1000;
1479      var timer = setTimeout(function(){ show("timed"); }, delayMs);
1480      cleanups.push(function(){ clearTimeout(timer); });
1481    }
1482
1483    if (t.exitIntent === true) {
1484      // Mobile / touch devices don't have a meaningful "exit toward chrome"
1485      // gesture. Standard heuristic: skip if no mouse pointer is available.
1486      if (!matchMedia("(pointer: coarse)").matches) {
1487        var onMove = function(e) {
1488          if (e.clientY < 8) show("exit_intent");
1489        };
1490        document.addEventListener("mousemove", onMove);
1491        cleanups.push(function(){ document.removeEventListener("mousemove", onMove); });
1492      }
1493    }
1494
1495    if (typeof t.scrollPercent === "number" && t.scrollPercent > 0) {
1496      var threshold = Math.max(1, Math.min(100, t.scrollPercent));
1497      var onScroll = function() {
1498        var doc = document.documentElement;
1499        var scrolled = (window.scrollY || doc.scrollTop || 0);
1500        var max = (doc.scrollHeight - doc.clientHeight) || 1;
1501        var pct = (scrolled / max) * 100;
1502        if (pct >= threshold) show("scroll");
1503      };
1504      window.addEventListener("scroll", onScroll, { passive: true });
1505      cleanups.push(function(){ window.removeEventListener("scroll", onScroll); });
1506    }
1507  }
1508
1509  // Note: in-popup form submits and CTA clicks are NOT emitted as separate
1510  // popup_* events. They already fire as form_submit / element_click via
1511  // analytics.ts's global listeners, which now attach popupId + popupName
1512  // to the payload so customers can still see which pop-up the conversion
1513  // came from while continuing to track the standard goal types.
1514
1515  // Expose the show function on the element so [data-htmlpub-popup-target]
1516  // clicks (wired globally below) can find and trigger it without re-parsing
1517  // the config. _hpupShow / _hpupClose are deliberately namespaced + ugly to
1518  // avoid colliding with user code.
1519  el._hpupShow = show;
1520  el._hpupClose = close;
1521  // Returned so boot() can flush unfired trigger listeners on pagehide.
1522  return cleanupTriggers;
1523}
1524
1525// A served Classic leadbox renders INACTIVE: its controller only adds js-active to the dialog
1526// and mask when it receives an "open" message, so a frame nobody tells to open is a full-viewport
1527// sheet showing nothing.
1528//
1529// TWO WIRE FORMATS, because there are two leadbox builds in the corpus and they do NOT agree —
1530// measured across all 462 live clones on 2026-09-09, not inferred from one of them (D71):
1531//
1532//   · newer build (410 of 462): a handleMessage controller that accepts EITHER the bare string
1533//     "open" or {type:"open"}.
1534//   · OLDER build (52 of 462): a hand-rolled listener whose whole test is
1535//         window.addEventListener('message', function(e){ e && e.data && 'open' === e.data && j.open() })
1536//     read verbatim out of the served bundle. The test 'open' === e.data is a STRING identity check, so
1537//     an object payload fails it silently and that pop-up never opens.
1538//
1539// This function used to post ONLY {type:"open"}, and the comment here used to assert both builds
1540// took it. They do not: every old-build pop-up rendered a full-viewport dark sheet with an
1541// invisible modal — no error, no console message, and zero lead capture. So post BOTH forms. The
1542// duplicate is harmless in each direction: the old build ignores the object, and the newer one's
1543// open() just re-adds the class and refocuses.
1544//
1545// The string form is also what Classic's own embed.js sent, which is why the defect stayed hidden
1546// on the two pages that still carried embed.js — its copy opened correctly beside our blank one.
1547// (The close relay below had this right already: it reads Classic's bare-string "close leadbox"
1548// off the wire. Open is the direction that was guessed.)
1549//
1550// Posted on both paths because the ordering is not ours to control: if the frame is already
1551// loaded the immediate post lands, and if it is not, the load listener catches it. Opening twice
1552// is harmless — open() just re-adds the class and refocuses.
1553function openClassicFrame(el) {
1554  var frame = el.querySelector("iframe");
1555  if (!frame) return;
1556  var post = function() {
1557    // targetOrigin "*": the frame is served sandboxed, so its origin is opaque and cannot be
1558    // named. The payload is a bare open signal carrying nothing worth protecting.
1559    try {
1560      if (!frame.contentWindow) return;
1561      // String FIRST: it is the format the old build needs, and the one that was missing.
1562      frame.contentWindow.postMessage("open", "*");
1563      frame.contentWindow.postMessage({ type: "open" }, "*");
1564    } catch(e) {}
1565  };
1566  post();
1567  frame.addEventListener("load", post);
1568}
1569
1570// Global close relay. A chrome:none pop-up's ✕ lives INSIDE its iframe (Classic's .js-close), so
1571// the click is invisible to this document — the frame posts htmlpub:leadbox-close instead and we
1572// close the marker holding it. Without this the Classic card hides itself and the full-viewport
1573// iframe stays put, covering the page with an invisible sheet that swallows every click.
1574//
1575// Identify the marker by matching iframe.contentWindow against e.source, NOT by the message's
1576// uuid: a page can carry several migrated pop-ups, and a uuid can be placed more than once. This
1577// is the technique CDA's own injected handler used.
1578function handleCloseRelay(e) {
1579  if (!e || !e.data) return;
1580  // Classic's own leadbox controller posts the bare STRING "close leadbox" to window.parent when
1581  // it closes (300ms after the fade, from its close() method) — read out of the served bundle, not
1582  // guessed. It is already the wire format, so nothing needs injecting into the frame. The
1583  // namespaced form is accepted too, for anything we serve ourselves later.
1584  var type = typeof e.data === "string" ? e.data : e.data.type;
1585  if (type !== "close leadbox" && type !== "htmlpub:leadbox-close") return;
1586  var frames = document.querySelectorAll("[data-persist-popup] iframe, [data-htmlpub-popup] iframe");
1587  for (var i = 0; i < frames.length; i++) {
1588    if (frames[i].contentWindow !== e.source) continue;
1589    var marker = frames[i].closest("[data-persist-popup], [data-htmlpub-popup]");
1590    if (marker && typeof marker._hpupClose === "function") marker._hpupClose("close_relay");
1591    return;
1592  }
1593}
1594
1595// The migrated pop-up runs in a sandboxed cross-origin iframe and cannot read this page's anal
1595ytics
1596// session/visitor ids (opaque origin blocks its storage). Hand them over when the in-frame capture
1597// script asks — matching e.source to one of our own pop-up iframes so we only answer our own frames.
1598// The ids exist only once analytics consent has minted them, so with no consent nothing is sent and
1599// the ingest keeps the lead but skips the conversion event (there is no page_view session to join).
1600// The page id rides along either way, so the lead files under the page that was served, whatever
1601// URL the browser reports.
1602function handleSessionReq(e) {
1603  if (!e || !e.data || e.data.type !== "hp-popup-session-req" || !e.source) return;
1604  var frames = document.querySelectorAll("[data-persist-popup] iframe, [data-htmlpub-popup] iframe");
1605  var mine = false;
1606  for (var i = 0; i < frames.length; i++) { if (frames[i].contentWindow === e.source) { mine = true; break; } }
1607  if (!mine) return;
1608  var sid = null, vid = null;
1609  try { sid = sessionStorage.getItem("_hp_sid"); } catch(err) {}
1610  try { vid = localStorage.getItem("_hp_vid"); } catch(err) {}
1611  try { e.source.postMessage({ type: "hp-popup-session", sid: sid, vid: vid, pid: PAGE_ID }, "*"); } catch(err) {}
1612}
1613
1614// A migrated pop-up's thank-you redirect. Its frame is sandboxed with no top-navigation grant, so
1615// after capturing the lead its script asks this page to navigate. Only the clone frame the page
1616// rewrite emits may ask (an /api/serve-classic-popup/ src, absolute when the WordPress plugin
1617// re-serves the page) — not any iframe a pop-up holds, or a third-party embed could send the visitor
1618// anywhere. The src is the page's own markup, which the framed party cannot change. Only an absolute
1619// http(s) URL is followed. The
1620// ack tells the frame not to fall back to opening the page inside itself. In-page only: the embed
1621// bundle hosts native pop-ups on third-party sites, never a migrated clone.
1622function handleRedirectRelay(e) {
1623  if (!e || !e.data || e.data.type !== "hp-popup-redirect" || !e.source) return;
1624  var url = typeof e.data.url === "string" ? e.data.url : "";
1625  try { var proto = new URL(url).protocol; if (proto !== "http:" && proto !== "https:") return; } catch(err) { return; }
1626  var frames = document.querySelectorAll("[data-persist-popup] iframe, [data-htmlpub-popup] iframe");
1627  var mine = false;
1628  for (var i = 0; i < frames.length; i++) {
1629    if (frames[i].contentWindow !== e.source) continue;
1630    try { mine = new URL(frames[i].getAttribute("src") || "", location.href).pathname.indexOf("/api/serve-classic-popup/") === 0; } catch(err) {}
1631    break;
1632  }
1633  if (!mine) return;
1634  try { e.source.postMessage({ type: "hp-popup-redirect-ack" }, "*"); } catch(err) {}
1635  window.location.href = url;
1636}
1637
1638// Classic's leadbox.js appended the host page's query string to the pop-up iframe's URL, and the
1639// cloned pop-up still reads it from inside the frame: Classic's own URL-parameter hidden fields
1640// (LpInputReact data-url) and customers' scripts that copy location.href into a field for ad
1641// attribution (utm_* and fbclid were lost after migration). The rewrite emits a static src, so hand
1642// the frame the page's query here. Setting src reloads a frame that is still hidden, which nobody
1643// sees; the open post re-fires on its load. Only migrated clone frames — a native pop-up's iframe is
1644// the customer's own embed. A param the frame already carries wins, and the two the serve route
1645// reads itself are never forwarded: b picks the keyspace, fragment=1 turns lead capture off.
1646// Each pair is carried over as the page's raw bytes, not re-serialized: Classic appended
1647// location.search verbatim, and a script that copies location.href would otherwise see %20 turn
1648// into + and similar.
1649var CLASSIC_SERVE_PARAMS = { b: 1, fragment: 1 };
1650function forwardHostQuery(popups) {
1651  var search = "";
1652  try { search = window.location.search || ""; } catch(err) {}
1653  if (search.length < 2) return;
1654  var pairs = search.slice(1).split("&");
1655  for (var i = 0; i < popups.length; i++) {
1656    var frame = popups[i].querySelector("iframe");
1657    if (!frame) continue;
1658    var src = frame.getAttribute("src") || "";
1659    try {
1660      var u = new URL(src, location.href);
1661      if (u.pathname.indexOf("/api/serve-classic-popup/") !== 0) continue;
1662      var kept = [];
1663      for (var j = 0; j < pairs.length; j++) {
1664        if (!pairs[j]) continue;
1665        var k = pairs[j].split("=")[0].split("+").join(" ");
1666        try { k = decodeURIComponent(k); } catch(err) {}
1667        if (u.searchParams.has(k) || Object.prototype.hasOwnProperty.call(CLASSIC_SERVE_PARAMS, k)) continue;
1668        kept.push(pairs[j]);
1669      }
1670      if (!kept.length) continue;
1671      var hashAt = src.indexOf("#");
1672      var base = hashAt < 0 ? src : src.slice(0, hashAt);
1673      var sep = base.indexOf("?") < 0 ? "?" : (/[?&]$/.test(base) ? "" : "&");
1674      frame.setAttribute("src", base + sep + kept.join("&") + (hashAt < 0 ? "" : src.slice(hashAt)));
1675    } catch(err) {}
1676  }
1677}
1678
1679// Global click-to-open dispatcher. Targets carry [data-persist-popup-target]
1680// (or legacy [data-htmlpub-popup-target]) or href="#popup-…" (for plain anchors
1681// that the link picker auto-generated).
1682//
1683// HP-6393 fallback: a migrated Classic trigger whose only popup attribute is
1684// [data-leadbox-popup=UUID] resolves to the migrated-popup container id
1685// classic-popup-UUID, so a trigger that lost its Nova attribute during
1686// migration (or whose rewriter pass predated data-persist-popup-target being
1687// the primary attr) still opens the right popup through this runtime. The
1688// CDA inlined click handler also fires on [data-leadbox-popup] but looks up
1689// lp-classic-box-UUID, which does not exist on migrated pages, so its show()
1690// is a no-op there and Nova owns the open deterministically. On pages where
1691// the Nova attribute IS present pAttr(hit, "-target") wins first, so no
1692// double-open path is introduced for the common shape.
1693function handleTargetClick(e) {
1694  var t = e.target;
1695  if (!t || !t.closest) return;
1696  var hit = t.closest("[data-persist-popup-target], [data-htmlpub-popup-target], [data-leadbox-popup], a[href^='#popup-'], a[href^='#modal-'], a[href^='#dialog-']");
1697  if (!hit) return;
1698  var id = pAttr(hit, "-target");
1699  if (!id) {
1700    var href = hit.getAttribute("href") || "";
1701    if (href.charAt(0) === "#") id = href.slice(1);
1702  }
1703  if (!id) {
1704    var lbUuid = hit.getAttribute("data-leadbox-popup");
1705    if (lbUuid) id = "classic-popup-" + lbUuid;
1706  }
1707  if (!id) return;
1708  var popup = document.getElementById(id);
1709  if (!popup || pAttr(popup, "") === null) return;
1710  e.preventDefault();
1711  if (typeof popup._hpupShow === "function") popup._hpupShow("click_target");
1712}
1713
1714// ── Boot ──────────────────────────────────────────────────────────────────
1715
1716function flushTeardowns(list) {
1717  for (var j = 0; j < list.length; j++) {
1718    try { list[j](); } catch(e) {}
1719  }
1720}
1721
1722function boot() {
1723  if (SCOPE === "popup-id") {
1724    // Embed mode: each standalone popup ships its OWN copy of this runtime, so
1725    // a single global boot guard would make a second embedded popup bail. Wire
1726    // each popup once via a per-element marker, count visits per popup id, and
1727    // attach the global click / pagehide listeners only once across copies.
1728    var list = document.querySelectorAll("[data-persist-popup],[data-htmlpub-popup]");
1729    if (!list.length) return;
1730    if (!window.__hpupTeardowns) window.__hpupTeardowns = [];
1731    for (var n = 0; n < list.length; n++) {
1732      var pel = list[n];
1733      if (pel.__hpupWired) continue;
1734      pel.__hpupWired = true;
1735      var pt = wirePopup(pel, recordVisit(pel.getAttribute("id") || ""));
1736      if (typeof pt === "function") window.__hpupTeardowns.push(pt);
1737    }
1738    if (!window.__hpupClickWired) {
1739      window.__hpupClickWired = true;
1740      document.addEventListener("click", handleTargetClick, false);
1741      window.addEventListener("message", handleCloseRelay, false);
1742      window.addEventListener("message", handleSessionReq, false);
1743      window.addEventListener("pagehide", function(){ flushTeardowns(window.__hpupTeardowns || []); });
1744    }
1745    return;
1746  }
1747
1748  // In-page mode: one runtime per page wires every popup. Guard against
1749  // double-injection (HMR, accidental double-include).
1750  if (window.__hpupBooted) return;
1751  window.__hpupBooted = true;
1752  var popups = document.querySelectorAll("[data-persist-popup],[data-htmlpub-popup]");
1753  if (!popups.length) return;
1754  forwardHostQuery(popups);
1755  var visit = recordVisit();
1756  var teardowns = [];
1757  for (var i = 0; i < popups.length; i++) {
1758    var t = wirePopup(popups[i], visit);
1759    if (typeof t === "function") teardowns.push(t);
1760  }
1761  document.addEventListener("click", handleTargetClick, false);
1762  window.addEventListener("message", handleCloseRelay, false);
1763  window.addEventListener("message", handleSessionReq, false);
1764  window.addEventListener("message", handleRedirectRelay, false);
1765  // Flush unfired trigger listeners on pagehide.
1766  window.addEventListener("pagehide", function(){ flushTeardowns(teardowns); });
1767}
1768
1769if (document.readyState === "loading") {
1770  document.addEventListener("DOMContentLoaded", boot);
1771} else {
1772  boot();
1773}
1774
1775})();
1776</script>
1776<script data-htmlpub-countdown-runtime>
1777(function(){
1778var nodes=document.querySelectorAll('[data-htmlpub-countdown]');
1779if(!nodes.length)return;
1780function pad(n){n=String(n);return n.length<2?'0'+n:n;}
1781function hpcdParts(ms,tz){try{var f=new Intl.DateTimeFormat('en-US',{timeZone:tz,hour12:false,year:'numeric',month:'2-digit',day:'2-digit',hour:'2-digit',minute:'2-digit',second:'2-digit'}).formatToParts(new Date(ms));var o={};for(var i=0;i<f.length;i++){if(f[i].type!=='literal')o[f[i].type]=parseInt(f[i].value,10);}if(o.hour===24)o.hour=0;return o;}catch(e){return null;}}
1782function hpcdOffset(ms,tz){var p=hpcdParts(ms,tz);if(!p)return 0;return Date.UTC(p.year,p.month-1,p.day,p.hour,p.minute,p.second)-Math.floor(ms/1000)*1000;}
1783function hpcdWall(y,mo,d,h,mi,s,tz){var g=Date.UTC(y,mo,d,h,mi,s);var a=g-hpcdOffset(g,tz);var b=g-hpcdOffset(a,tz);var p=hpcdParts(b,tz);var w=new Date(g);if(p&&(p.year!==w.getUTCFullYear()||p.month!==w.getUTCMonth()+1||p.day!==w.getUTCDate()||p.hour!==w.getUTCHours()||p.minute!==w.getUTCMinutes()))return Math.max(a,b);return b;}
1784function hpcdRoll(t,rep,tz,now){if(t>now||(rep!=='daily'&&rep!=='weekly'&&rep!=='monthly'))return t;if(!hpcdParts(t,tz))tz='UTC';var p=hpcdParts(t,tz);if(!p)return t;var step=rep==='weekly'?7:1;var n,c,g=0;if(rep==='monthly'){var q=hpcdParts(now,tz)||p;n=Math.max(1,(q.year-p.year)*12+(q.month-p.month)-1);}else{n=Math.max(1,Math.floor((now-t)/(step*86400000)));}
1785for(;g<500;g++,n++){if(rep==='monthly'){var mi=p.month-1+n;var y=p.year+Math.floor(mi/12);var mo=mi%12;var dim=new Date(Date.UTC(y,mo+1,0)).getUTCDate();c=hpcdWall(y,mo,Math.min(p.day,dim),p.hour,p.minute,p.second,tz);}else{c=hpcdWall(p.year,p.month-1,p.day+n*step,p.hour,p.minute,p.second,tz);}if(c>now)return c;}return t;}
1786var flipCss=false;
1787function ensureFlipCss(){if(flipCss)return;flipCss=true;try{var st=document.createElement('style');st.setAttribute('data-htmlpub-countdown-anim','');st.textContent='@keyframes hpcdFlip{0%{transform:perspective(400px) rotateX(-90deg);opacity:.25}100%{transform:none;opacity:1}}.hpcd-flip{animation:hpcdFlip .4s ease-out}';(document.head||document.documentElement).appendChild(st);}catch(e){}}
1788function ensureEndCss(){try{if(document.querySelector('style[data-htmlpub-countdown-end]'))return;var st=document.createElement('style');st.setAttribute('data-htmlpub-countdown-end','');st.textContent='[data-persist-countdown-end="show"]:not([data-hp-cd-ended]){display:none!important}[data-persist-countdown-end="hide"][data-hp-cd-ended]{display:none!important}';(document.head||document.documentElement).appendChild(st);}catch(e){}}
1789function endTargets(node){var ref=node.getAttribute('data-persist-countdown-ref');var all=document.querySelectorAll('[data-persist-countdown-end]');var out=[];for(var i=0;i<all.length;i++){var f=all[i].getAttribute('data-persist-countdown-for');if(f?f===ref:nodes.length===1)out.push(all[i]);}return out;}
1790function applyEnd(node){if(node.getAttribute('data-htmlpub-countdown')==='fixed'&&node.getAttribute('data-persist-countdown-repeat')&&!node.getAttribute('data-redirect'))return;var t=endTargets(node);for(var i=0;i<t.length;i++)t[i].setAttribute('data-hp-cd-ended','');}
1791if(document.querySelector('[data-persist-countdown-end]'))ensureEndCss();
1792function setDigit(root,sel,val,flip){var el=root.querySelector(sel);if(!el)return;var t=pad(val);if(el.textContent===t)return;el.textContent=t;if(flip){el.classList.remove('hpcd-flip');void el.offsetWidth;el.classList.add('hpcd-flip');}}
1793function tick(node,endMs){
1794var diff=Math.max(0,endMs-Date.now());
1795var fmt=node.getAttribute('data-persist-countdown-format');
1796var flip=node.getAttribute('data-persist-countdown-anim')==='flip';
1797var s=Math.floor(diff/1000);
1798var d=0,h=0;
1799if(fmt!=='hms'&&fmt!=='ms'){d=Math.floor(s/86400);s-=d*86400;}
1800if(fmt!=='ms'){h=Math.floor(s/3600);s-=h*3600;}
1801var m=Math.floor(s/60);s-=m*60;
1802setDigit(node,'.countdown-days',d,flip);
1803setDigit(node,'.countdown-hours',h,flip);
1804setDigit(node,'.countdown-minutes',m,flip);
1805setDigit(node,'.countdown-seconds',s,flip);
1806if(diff===0){
1807applyEnd(node);
1808var redirect=node.getAttribute('data-redirect');
1809var inFrame=false;try{inFrame=window!==window.top;}catch(e){inFrame=true;}
1810if(redirect&&!inFrame){try{window.location.href=redirect;}catch(e){}}
1811return true;
1812}
1813return false;
1814}
1815function endMsFor(node){
1816var mode=node.getAttribute('data-htmlpub-countdown');
1817if(mode==='fixed'){
1818var target=node.getAttribute('data-target');
1819var t=target?Date.parse(target):NaN;
1820if(isNaN(t))return 0;
1821var rep=node.getAttribute('data-persist-countdown-repeat');
1822return rep?hpcdRoll(t,rep,node.getAttribute('data-persist-countdown-tz')||'UTC',Date.now()):t;
1823}
1824if(mode==='evergreen'){
1825var dur=parseInt(node.getAttribute('data-duration')||'0',10);
1826if(!dur)return 0;
1827var idx=Array.prototype.indexOf.call(nodes,node);
1828var base='htmlpub_cd_'+(node.getAttribute('data-persist-countdown-id')||node.id||(location.pathname+'|'+dur+'|'+idx));
1829var ver=parseInt(node.getAttribute('data-persist-countdown-reset')||'0',10)||0;
1830var key=ver>0?base+'|v'+ver:base;
1831var per=parseInt(node.getAttribute('data-persist-countdown-cycle')||'0',10)||0;
1832var cyc=0;
1833if(per>0){var anc=parseInt(node.getAttribute('data-persist-countdown-anchor')||'0',10)||0;cyc=Math.max(0,Math.floor((Date.now()/1000-anc)/per));}
1834if(cyc>0)key+='|c'+cyc;
1835if(ver>0){try{for(var li=localStorage.length-1;li>=0;li--){var lk=localStorage.key(li);if(!lk)continue;if(lk===base){localStorage.removeItem(lk);continue;}if(lk.indexOf(base+'|v')===0){var lv=lk.slice(base.length+2);if(/^[0-9]+$/.test(lv)&&parseInt(lv,10)<ver){localStorage.removeItem(lk);}}}}catch(e){}}
1836if(cyc>0){try{for(var ci=localStorage.length-1;ci>=0;ci--){var ck=localStorage.key(ci);if(!ck||ck.indexOf(base)!==0)continue;var cm=/^(?:\|v([0-9]+))?(?:\|c([0-9]+))?$/.exec(ck.slice(base.length));if(!cm)continue;if((cm[1]?parseInt(cm[1],10):0)===ver&&(cm[2]?parseInt(cm[2],10):0)<cyc)localStorage.removeItem(ck);}}catch(e){}}
1837var first=null;
1838try{first=localStorage.getItem(key);}catch(e){}
1839if(!first){first=String(Date.now());try{localStorage.setItem(key,first);}catch(e){}}
1840return parseInt(first,10)+dur*1000;
1841}
1842return 0;
1843}
1844function run(node){
1845var endMs=endMsFor(node);
1846if(!endMs)return;
1847if(node.getAttribute('data-persist-countdown-anim')==='flip')ensureFlipCss();
1848var repeats=node.getAttribute('data-htmlpub-countdown')==='fixed'&&!!node.getAttribute('data-persist-countdown-repeat')&&!node.getAttribute('data-redirect');
1849if(tick(node,endMs)&&!repeats)return;
1850var iv=setInterval(function(){if(tick(node,endMs)){if(repeats){endMs=endMsFor(node);}else{clearInterval(iv);}}},1000);
1851}
1852for(var i=0;i<nodes.length;i++){(function(node){
1853if(node.getAttribute('data-htmlpub-countdown')==='fixed'&&node.getAttribute('data-persist-countdown-hide-before')==='1'){
1854var st=Date.parse(node.getAttribute('data-persist-countdown-start')||'');
1855if(!isNaN(st)&&st>Date.now()){
1856var shown=node.style.display;node.style.display='none';
1857var wait=setInterval(function(){if(Date.now()>=st){clearInterval(wait);node.style.display=shown;run(node);}},1000);
1858return;
1859}
1860}
1861run(node);
1862})(nodes[i]);}
1863})();
1864</script>
1864<script data-text-anim-runtime>
1865(function(){
1866var nodes=document.querySelectorAll('[data-persist-text-anim]');
1867if(!nodes.length)return;
1868try{if(window.matchMedia('(prefers-reduced-motion: reduce)').matches)return;}catch(e){}
1869var KEYFRAMES={
1870fadeIn:[{opacity:0},{opacity:1}],
1871slideUp:[{opacity:0,transform:'translateY(32px)'},{opacity:1,transform:'translateY(0)'}],
1872slideDown:[{opacity:0,transform:'translateY(-32px)'},{opacity:1,transform:'translateY(0)'}],
1873slideLeft:[{opacity:0,transform:'translateX(32px)'},{opacity:1,transform:'translateX(0)'}],
1874slideRight:[{opacity:0,transform:'translateX(-32px)'},{opacity:1,transform:'translateX(0)'}],
1875zoomIn:[{opacity:0,transform:'scale(0.85)'},{opacity:1,transform:'scale(1)'}],
1876blurIn:[{opacity:0,filter:'blur(8px)'},{opacity:1,filter:'blur(0)'}],
1877bounceIn:[{offset:0,opacity:0,transform:'translateY(40px)'},{offset:0.55,opacity:1,transform:'translateY(-8px)'},{offset:0.8,transform:'translateY(4px)'},{offset:1,transform:'translateY(0)'}]
1878};
1879var DEFAULTS={duration:600,delay:0,easing:'ease-out'};
1880function readInt(el,attr,fallback,min){
1881var n=parseInt(el.getAttribute(attr)||'',10);
1882if(!isFinite(n)||n<min)return fallback;
1883return n;
1884}
1885function arm(el){
1886var type=el.getAttribute('data-persist-text-anim')||'fadeIn';
1887var frames=KEYFRAMES[type];
1888if(!frames)return null;
1889var duration=readInt(el,'data-persist-text-anim-duration',DEFAULTS.duration,1);
1890var delay=readInt(el,'data-persist-text-anim-delay',DEFAULTS.delay,0);
1891var easing=el.getAttribute('data-persist-text-anim-easing')||DEFAULTS.easing;
1892try{
1893var anim=el.animate(frames,{duration:duration,delay:delay,easing:easing,fill:'both'});
1894anim.pause();
1895anim.currentTime=0;
1896return anim;
1897}catch(e){return null;}
1898}
1899if('IntersectionObserver' in window){
1900var io=new IntersectionObserver(function(entries){
1901for(var i=0;i<entries.length;i++){
1902var en=entries[i];
1903if(!en.isIntersecting)continue;
1904io.unobserve(en.target);
1905var armed=en.target._hpTextAnim;
1906if(!armed)continue;
1907en.target._hpTextAnim=null;
1908try{armed.play();}catch(e){}
1909}
1910},{threshold:0.15});
1911for(var j=0;j<nodes.length;j++){
1912var pending=arm(nodes[j]);
1913if(!pending)continue;
1914nodes[j]._hpTextAnim=pending;
1915io.observe(nodes[j]);
1916}
1917}else{
1918for(var k=0;k<nodes.length;k++){
1919var immediate=arm(nodes[k]);
1920if(immediate)try{immediate.play();}catch(e){}
1921}
1922}
1923})();
1924</script>
1924<script data-htmlpub-nav>
1925(function(){
1926"use strict";
1927
1928function closeAllSubmenus(except) {
1929  var panels = document.querySelectorAll('[data-persist-nav-submenu-panel]');
1930  for (var i = 0; i < panels.length; i++) {
1931    var panel = panels[i];
1932    if (panel === except) continue;
1933    panel.classList.remove('is-open');
1934    var trigger = panel.__hpNavTrigger;
1935    if (trigger) trigger.setAttribute('aria-expanded', 'false');
1936  }
1937}
1938
1939function wireSubmenus() {
1940  var triggers = document.querySelectorAll('[data-persist-nav-submenu]');
1941  if (!triggers.length) return;
1942  for (var i = 0; i < triggers.length; i++) {
1943    (function(trigger) {
1944      if (trigger.__hpNavWired) return;
1945      trigger.__hpNavWired = true;
1946      var panelId = trigger.getAttribute('data-persist-nav-submenu');
1947      var panel = panelId ? document.getElementById(panelId) : (trigger.parentElement ? trigger.parentElement.querySelector('[data-persist-nav-submenu-panel]') : null);
1948      if (!panel) return;
1949      panel.__hpNavTrigger = trigger;
1950      trigger.setAttribute('aria-haspopup', 'true');
1951      trigger.setAttribute('aria-expanded', 'false');
1952      trigger.addEventListener('click', function(e) {
1953        var isOpen = panel.classList.contains('is-open');
1954        e.preventDefault();
1955        e.stopPropagation();
1956        closeAllSubmenus(isOpen ? null : panel);
1957        panel.classList.toggle('is-open', !isOpen);
1958        trigger.setAttribute('aria-expanded', isOpen ? 'false' : 'true');
1959      });
1960    })(triggers[i]);
1961  }
1962  document.addEventListener('click', function(e) {
1963    var t = e.target;
1964    if (t && t.closest && t.closest('[data-persist-nav-submenu-panel], [data-persist-nav-submenu]')) return;
1965    closeAllSubmenus(null);
1966  });
1967}
1968
1969function wireMobileMenu() {
1970  var toggles = document.querySelectorAll('[data-persist-nav-mobile-toggle], [data-persist-nav-tablet-toggle]');
1971  if (!toggles.length) return;
1972  for (var i = 0; i < toggles.length; i++) {
1973    (function(toggle) {
1974      if (toggle.__hpNavWired) return;
1975      toggle.__hpNavWired = true;
1976      var isTablet = toggle.hasAttribute('data-persist-nav-tablet-toggle');
1977      var targetId = isTablet ? toggle.getAttribute('data-persist-nav-tablet-toggle') : toggle.getAttribute('data-persist-nav-mobile-toggle');
1978      var panelSelector = isTablet ? '[data-persist-nav-tablet-panel]' : '[data-persist-nav-mobile-panel]';
1979      var panel = targetId ? document.getElementById(targetId) : (toggle.parentElement ? toggle.parentElement.querySelector(panelSelector) : null);
1980      if (!panel) return;
1981      toggle.setAttribute('aria-expanded', 'false');
1982      toggle.addEventListener('click', function(e) {
1983        var isOpen = panel.classList.contains('is-open');
1984        e.preventDefault();
1985        e.stopPropagation();
1986        if (isOpen) panel.classList.remove('is-open'); else panel.classList.add('is-open');
1987        toggle.setAttribute('aria-expanded', isOpen ? 'false' : 'true');
1988      });
1989    })(toggles[i]);
1990  }
1991}
1992
1993function wireScrollBackground() {
1994  // Every nav this system manages, not just ones with scroll-bg/blur
1995  // currently set — a page published while an OLDER build still applied
1996  // blur directly to nav carries that inline backdrop-filter baked into
1997  // its served HTML even after blur is later turned off, so the self-heal
1998  // below has to run regardless of the CURRENT attribute state.
1999  var navs = document.querySelectorAll('[data-persist-nav-id]');
2000  if (!navs.length) return;
2001  for (var i = 0; i < navs.length; i++) {
2002    (function(nav) {
2003      // Self-heal: strip a stale inline backdrop-filter baked into a page
2004      // saved before this fix (HP-3558 round 15 follow-up) — see the
2005      // dedicated blur-layer comment below for why it must never live on
2006      // nav itself.
2007      if (nav.style.getPropertyValue('backdrop-filter') || nav.style.getPropertyValue('-webkit-backdrop-filter')) {
2008        nav.style.removeProperty('backdrop-filter');
2009        nav.style.removeProperty('-webkit-backdrop-filter');
2010      }
2011      // "Transparent" (data-persist-nav-always-transparent, HP-3558 round
2012      // 16) — the non-sticky counterpart of scroll-bg above. "Useful over a
2013      // hero image" only holds if nav visually overlaps whatever follows
2014      // it, so lift it out of flow the same way Sticky's own
2015      // position:fixed/sticky already does, rather than leaving it
2016      // position:static (which just reveals blank page background above
2017      // the hero, not the hero itself — see iframe-script/utils.ts's
2018      // ensureNavScrollBackground for the matching editor-side comment).
2019      var alwaysTransparent = nav.hasAttribute('data-persist-nav-always-transparent');
2020      if (alwaysTransparent) {
2021        var navCsForOverlay = window.getComputedStyle(nav);
2022        if (!navCsForOverlay || (navCsForOverlay.position !== 'fixed' && navCsForOverlay.position !== 'sticky')) {
2023          nav.style.position = 'absolute';
2024          nav.style.top = '0px';
2025          nav.style.left = '0px';
2026          nav.style.right = '0px';
2027          if (!nav.style.zIndex) nav.style.zIndex = '1000';
2028        }
2029      }
2030      // Blur needs no scroll-reactivity — a blurred OPAQUE background
2031      // looks identical to an unblurred one, so it's simplest and correct
2032      // to apply it once, unconditionally, regardless of scroll state.
2033      // Applied to a dedicated decorative layer BEHIND nav's real
2034      // content, never to nav itself — backdrop-filter promotes whatever
2035      // element carries it into a new containing block for any
2036      // position:fixed descendant, which silently shrank the full-screen/
2037      // bottom-drawer hamburger panel (both position:fixed) down to nav's
2038      // own small box instead of the viewport when it lived on nav
2039      // directly (HP-3558 round 15 follow-up: "the full-screen hamburger
2040      // menu... ended up being covered by the next section").
2041      var blur = nav.getAttribute('data-persist-nav-scroll-blur');
2042      if (blur) {
2043        var blurLayer = nav.querySelector('[data-persist-nav-scroll-blur-layer]');
2044        if (!blurLayer) {
2045          blurLayer = document.createElement('div');
2046          blurLayer.setAttribute('data-persist-nav-scroll-blur-layer', '');
2047          // z-index:-1 required — without it, backdrop-filter's own
2048          // compositing samples nav's LATER siblings (logo/links/CTA) too,
2049          // visibly blurring them despite painting after this layer in
2050          // plain DOM order. Safe from escaping behind nav's own box into
2051          // the page below because Sticky header always sets an explicit,
2052          // non-auto nav.style.zIndex — position:fixed/sticky + a non-auto
2053          // z-index already makes nav its own stacking context.
2054          blurLayer.style.cssText = 'position:absolute;inset:0;pointer-events:none;z-index:-1;';
2055          nav.insertBefore(blurLayer, nav.firstChild);
2056          var navCs = window.getComputedStyle(nav);
2057          if (!navCs || navCs.position === 'static' || !navCs.position) nav.style.position = 'relative';
2058        }
2059        // Self-heal a layer saved before the z-index fix landed (see
2060        // iframe-script/utils.ts's ensureNavScrollBackground for the
2061        // matching editor-side comment).
2062        if (blurLayer.style.zIndex !== '-1') blurLayer.style.zIndex = '-1';
2063        blurLayer.style.setProperty('backdrop-filter', 'blur(' + blur + ')', 'important');
2064        blurLayer.style.setProperty('-webkit-backdrop-filter', 'blur(' + blur + ')', 'important');
2065      }
2066      if (alwaysTransparent) {
2067        nav.style.setProperty('background-color', 'transparent', 'important');
2068        return;
2069      }
2070      var color = nav.getAttribute('data-persist-nav-scroll-bg');
2071      if (!color || nav.__hpNavScrollWired) return;
2072      nav.__hpNavScrollWired = true;
2073      function sync() {
2074        nav.style.setProperty('background-color', window.scrollY > 24 ? color : 'transparent', 'important');
2075      }
2076      window.addEventListener('scroll', sync, { passive: true });
2077      sync();
2078    })(navs[i]);
2079  }
2080}
2081
2082function boot() {
2083  wireSubmenus();
2084  wireMobileMenu();
2085  wireScrollBackground();
2086}
2087
2088if (document.readyState === "loading") {
2089  document.addEventListener("DOMContentLoaded", boot);
2090} else {
2091  boot();
2092}
2093
2094})();
2095</script>
2095<script data-htmlpub-dtr>
2096(function(){
2097if(false)return;
2098var params=new URLSearchParams(location.search);
2099if(!params.toString())return;
2100function run(){
2101var MAX=500;
2102var replacements=[];
2103function strip(s){return s.replace(/<[^>]*>/g,"");}
2104function clean(s){try{s=decodeURIComponent(s);}catch(e){}s=strip(s);if(s.length>MAX)s=s.slice(0,MAX);return s;}
2105function replace(el,val,param){
2106if(!el||!val)return;
2107var orig=el.textContent||"";
2108var cleaned=clean(val);
2109if(cleaned===orig)return;
2110el.setAttribute("data-dtr-original",orig);
2111el.textContent=cleaned;
2112replacements.push({param:param,target:el.tagName.toLowerCase()+(el.id?"#"+el.id:""),original:orig,replacement:cleaned});
2113}
2114// 1. Explicit data-dtr attributes
2115var dtrMap={headline:"utm_headline",subheadline:"utm_subheadline",cta:"utm_cta"};
2116var explicitFound={};
2117for(var key in dtrMap){
2118var pv=params.get(dtrMap[key]);
2119if(pv){
2120var els=document.querySelectorAll('[data-dtr="'+key+'"]');
2121if(els.length>0){
2122explicitFound[key]=true;
2123for(var i=0;i<els.length;i++)replace(els[i],pv,dtrMap[key]);
2124}
2125}
2126}
2127// 2. Custom data-dtr-param attributes
2128var customEls=document.querySelectorAll("[data-dtr-param]");
2129for(var j=0;j<customEls.length;j++){
2130var pn=customEls[j].getAttribute("data-dtr-param");
2131if(pn){var cv=params.get(pn);if(cv)replace(customEls[j],cv,pn);}
2132}
2133// 3. Auto-detect fallback for standard params (only if no explicit match)
2134if(!explicitFound.headline){
2135var hv=params.get("utm_headline");
2136if(hv){var h1=document.querySelector("h1");if(h1)replace(h1,hv,"utm_headline");}
2137}
2138if(!explicitFound.subheadline){
2139var sv=params.get("utm_subheadline");
2140if(sv){var sub=document.querySelector("h2")||document.querySelector(".subtitle")||document.querySelector(".subheadline");if(sub)replace(sub,sv,"utm_subheadline");}
2141}
2142if(!explicitFound.cta){
2143var cv2=params.get("utm_cta");
2144if(cv2){var btn=document.querySelector('a.cta,button.cta,a[class*="cta"],button[class*="cta"]')||document.querySelector("a.btn,button.btn,a.button,button[type=submit]")||document.querySelector('a[href]:not([href^="#"]):not([href^="mailto"]):not([href^="tel"])>span,a[href]:not([href^="#"]):not([href^="mailto"]):not([href^="tel"])')||document.querySelector("button");if(btn)replace(btn,cv2,"utm_cta");}
2145}
2146// 4. Generic dtr_* prefix params
2147params.forEach(function(val,key){
2148if(key.indexOf("dtr_")===0){
2149var slug=key.slice(4);
2150var targets=document.querySelectorAll('[data-dtr-param="'+key+'"]');
2151if(targets.length>0){for(var k=0;k<targets.length;k++)replace(targets[k],val,key);}
2152}
2153});
2154// Fire analytics event
2155if(replacements.length===0)return;
2156var PID="akdam4vhrug4gtusjvpf2kn3";
2157var API="https://htmlpub.com"+"/api/analytics/collect";
2158function vid(){try{return localStorage.getItem("_hp_vid")||""}catch(e){return""}}
2159function sid(){try{return sessionStorage.getItem("_hp_sid")||""}catch(e){return""}}
2160var ev={pageId:PID,eventType:"dtr_applied",visitorId:vid(),sessionId:sid(),payload:{replacements:replacements},timestamp:Date.now()};
2161var body=JSON.stringify({events:[ev]});
2162try{if(navigator.sendBeacon){navigator.sendBeacon(API,new Blob([body],{type:"text/plain"}));}
2163else{fetch(API,{method:"POST",headers:{"Content-Type":"application/json"},body:body,keepalive:true}).catch(function(){});}}catch(e){}
2164}
2165if(document.readyState==="loading"){document.addEventListener("DOMContentLoaded",run);}else{run();}
2166})();
2167</script>
2167<script async="async" src="https://b.visitor-speed.com/js/93bd6a7496a3eb9f9c2d.js"></script>
2167<script>(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.innerHTML="window.__CF$cv$params={r:'a481cdb0abf2f60c',t:'MTc5MTU5NTIzNQ=='};var a=document.createElement('script');a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
2167</body></html><!-- v5.1.13 -->

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.