html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; outline: 0; vertical-align: baseline; background: transparent; }

@font-face { font-family: 'gotham-black'; src: url('../../fonts/gotham-black.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'gotham-medium'; src: url('../../fonts/gotham-medium.ttf') format('truetype'); font-display: swap; }
@font-face { font-family: 'gotham-book'; src: url('../../fonts/gotham-book.ttf') format('truetype'); font-display: swap; }

html { font-size: 16px; }
*, *::before, *::after { box-sizing: border-box; }

h1, h2, h3, h4, h5, h6 { margin-bottom: 25px; }
p  { margin-bottom: 20px; }
ul, ol { margin: 0 0 3% 2.5%; }
li { margin: 0 0 2px 2.5%; }

body  { min-width: 340px; font-size: 1.25rem; font-family: 'gotham-medium', serif; color: #2e2e2e; line-height: 1.25; background-image: url(../images/eprv1_bg1.webp); background-position: center top; background-repeat: no-repeat; background-size: cover; }

.mbtm0 { margin-bottom: 0; }

.clearsides { clear: both; }
.center { text-align: center; }

.pagewrap { display: flex; min-height: 100vh; flex-direction: column; justify-content: space-between; position: relative; }
.wrapcontent { max-width: 1200px; width: 95%; margin: 0 auto; }

footer { flex-grow: 0; flex-shrink: 1; font-size: 1rem; font-family: 'gotham-book', serif; text-align: center; padding-bottom: 2%; position: relative; z-index: 10; }
footer .wrapcontent { max-width: 800px; }
.footer_logo { display: block; max-width: 102px; width: 28%; margin: 0 auto 15px;}
.footer_links { display: flex; list-style: none; justify-content: center; margin: 0 0 15px; padding: 0; }
.footer_links li { padding: 0; margin: 0; }
.footer_links li::after { content: "|"; }
.footer_links li:last-of-type::after { content: ""; }
footer a { color: #006db3; text-decoration: none; padding: 2px 10px; }
footer a:hover { background-color: #bbe0f7; }
.footer_det { font-size: 0.8125rem; }
.footer_det a { padding: 1px 2px; }
footer p { margin-bottom: 15px; }
.pg_disclaimer { max-width: 680px; width: 100%; margin: 0 auto 20px; }

.cta-button { display: flex; max-width: 750px; width: 100%; margin: 45px auto 25px; align-items:center; justify-content: center; z-index: 80; position: relative; }
.cta-button:hover { transition: all .4s ease-in-out 0s; }
.cta-button .btn-1-hp { flex-grow: 1; position: relative; }
.arrow { position: relative; z-index: -1; }
.arrow-left { flex-shrink: 0; margin-bottom: -5px; }
.arrow-right { flex-shrink: 0; transform: scaleX(-1); margin-bottom: -5px; }
.arrow span { display: inline-block; width: 25px; height: 25px; border-bottom: 5px solid #f74646; border-right: 5px solid #f74646; transform: rotate(-45deg); margin: -6px; animation: animate 2s infinite; position: relative; z-index: 10 }
.arrow span:nth-child(2) { animation-delay: -0.2s; }
.arrow span:nth-child(3) { animation-delay: -0.4s; }

@keyframes ring {
    0% { width: 30px; height: 30px; opacity: 0; }
    5% { opacity: 1; }
    95% { width: 300px; height: 300px; opacity: 0; }
    100% { width: 30px; height: 30px; }
}
@keyframes animate {
    0% {
        opacity: 0;
        transform: rotate(-45deg) translate(-20px, -20px);
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        transform: rotate(-45deg) translate(20px, 20px);
    }
}

.btn-1 { flex-basis: 440px; flex-grow: 0; flex-shrink: 1; max-width: 440px; font-size: 1.75rem; font-weight: 700; color: #ffffff; text-align: center; text-decoration: none; padding: 15px 20px; position: relative; cursor: pointer; background: linear-gradient(90deg, rgb(227 83 4) 0%, rgb(242 103 28) 100%); border-radius: 40px; box-shadow: 7px 3px 24px rgba(251, 203, 176, 0.21); transition: all 0.3s ease-in-out 0s; }

.btn-1::before { content: ''; border-radius: 80px; width: calc(100% + 20px); height: calc(100% + 20px); border: 6px solid rgb(248 124 55); box-shadow: 0 0 60px rgba(251, 203, 176, 0.21); position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0; transition: all .3s ease-in-out 0s; }
.btn-1:hover, .btn-1:focus { transform: translateY(-10px); }
.btn-1:hover::before, .btn-1:focus::before { opacity: 1; }
.btn-1::after { content: ''; width: 30px; height: 30px; border-radius: 100%; border: 6px solid rgb(253 160 109); position: absolute; z-index: -1; top: 50%; left: 50%; opacity: 0; pointer-events: none; transform: translate(-50%, -50%); animation: ring 1.5s infinite; }
.btn-1:hover::after, .btn-1:focus::after { animation: none; display: none; }

.content { flex-grow: 1; flex-shrink: 1; padding: 0; position: relative; z-index: 20;  }
.content .wrapcontent { max-width: 950px; padding: 3% 0 2%; position: relative; }

.image2 { max-width: 265px; width: 19%; position: absolute; top: 0; left: 1%; z-index: 50; }

.optinpanel { max-width: 950px; width: 100%; padding: 30px; margin: 0 auto 12%; position: relative; background: rgba(255, 255, 255, 0.44); border-radius: 15px; }
.optinpanel::before { content: ""; display: block; width: calc(100% - 24px); height: calc(100% - 24px); position: absolute; top: 12px; left: 12px; z-index: 21; background: rgba(255, 255, 255, 0.55); border-radius: 15px; }

.panel_content { max-width: 950px; width: 100%; color: #ffffff; padding: 20px 0 50px; margin: 0 auto; position: relative; z-index: 31; background: url(../images/eprv1_panelbg.webp) center top no-repeat; background-size: cover; border-radius: 15px; }
.panel_bd { padding: 0 8% 0 200px; position: relative; z-index: 55; }
.product { max-width: 340px; position: absolute; top: 3%; left: -180px; }
.product img { max-width: 340px; width: 100%; }

.headline { font-size: 3.125rem; font-family: 'gotham-black'; text-align: center; text-transform: uppercase; line-height: 1.25; letter-spacing: 1px; padding: 15px 3% 15px 5%; margin: 0 -60px 20px 8%; position: relative; }
.headline span { color: #b1e1f9; }
.headline::before { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; clip-path: polygon(25px 0%, 100% 0, 100% 100%, 0% 100%); background-color: #136993; }
.headline::after { content: ""; display: block; width: 30px; height: 30px; position: absolute; right: 0; bottom: -29px; z-index: 2; clip-path: polygon(0 0, 100% 0, 0 100%); background-color: #061a24; }

.image1 { display: block; max-width: 720px; width: 100%; margin: 0 auto -20%; position: relative; z-index: 40; }

/* Step 2 */
#step2 { display: none; }
.content .wrapcontent#step2 { padding-top: 3%; }
.content .wrapcontent#step2 .optinpanel { max-width: 822px; margin-bottom: 3%; }
#step2 .panel_content { padding-bottom: 1px; }
#step2 .headline { font-size: 2.1875rem; line-height: 1.2; padding: 20px 5%; margin: 0 -60px 30px; position: relative; background-color: #136993;  }
#step2 .headline::before { content: ""; display: block; width: 30px; height: 30px; top: auto; left: 0; bottom: -29px; z-index: 20;clip-path: polygon(0 0, 100% 0, 100% 100%); background-color: #061a24; }
#step2 .panel_bd { font-family: 'gotham-book', serif; padding: 0 8%; margin: 0 auto; }
#step2 .panel_bd p:first-child { margin-bottom: calc(20px + 2%); }

.emailbox_2, .emailbox { display: block; max-width: 440px; width: 95%; font-size: 1.375rem; padding: 15px calc(10px + 2%); box-sizing: border-box; margin: 0 auto 20px; position: relative; z-index: 85; border: #ffffff solid 2px; box-shadow: 4px 4px 5px #e1e1e1 inset; box-sizing: border-box; border-radius: 40px; }
.notedis { max-width: 480px; width: 100%; font-size: 12px; font-style: italic; text-align: center; margin: 40px auto 25px; }
.btnsubmitsp, .optin-submit { display: block; width: 1px; height: 1px; margin: 0; padding: 0; outline: 0; border: 0; visibility: hidden; }
#step2 .cta-button { font-family: 'gotham-medium', serif; margin-top: 0; }
#step2 .image1 { margin: 0 auto -10px; }


@media screen and (max-width: 1200px) {
    .panel_bd { padding-left: 210px; }
    .product { width: 280px; left: -110px; }
}

@media screen and (max-width: 1100px) {
    .image2 { width: 17%; left: 0%; }
    .headline { font-size: 2.875rem; margin-left: 5.8%; margin-right: -30px; }
    .headline::after { display: none; }
    .panel_bd { padding-left: 33%; }
    .product { width: 32%; left: -5%; }
    
    #step2 .headline { margin-left: -30px; margin-right: -30px; }
    #step2 .headline::before, #step2 .headline::after { display: none; }
}

@media screen and (max-width: 900px) {
    .content .wrapcontent { padding-top: 2.5%; }
    .headline { font-size: 2.5rem; }
    .headline::before { clip-path: polygon(15px 0%, 100% 0, 100% 100%, 0% 100%); }

    .product { width: 30%; }
    .panel_bd { padding-left: 30%; padding-right: 2.5%; }

}

@media screen and (max-width: 800px) {
    .headline { font-size: 2.125rem; }
    #step2 .headline { font-size: 2rem; }
    
    .panel_bd { font-size: 1.125rem; }
    .btn-1 { font-size: 1.625rem; }
}

@media screen and (max-width: 700px) {
    html { font-size: 15px; }
    
    .image2 { left: 0; }
    .headline { font-size: 2rem; margin-left: 5.5%; margin-right: -16px; }
    
    .optinpanel { padding: 16px; }
    .optinpanel::before { width: calc(100% - 14px); height: calc(100% - 14px); top: 7px; left: 7px; }

    .panel_bd { padding: 0 2.5%; }
    .product { display: block; width: 25%; position: relative; top: auto; left: auto; margin: 0 auto -3.5%; }
    .product img { margin-left: -14%; }

    #step2 .headline { font-size: 1.875rem; }
    .emailbox_2, .emailbox { width: 85%; padding-top: 10px; padding-bottom: 10px; }
}

@media screen and (max-width: 600px) {
    html { font-size: 14px; }
    
    .content .wrapcontent, .content .wrapcontent#step2 { padding-top: 5px; }
    .image2 { width: 12%; }
    .optinpanel { padding: 10px; }
    .optinpanel::before { width: calc(100% - 10px); height: calc(100% - 10px); top: 5px; left: 5px; }
    .panel_content { padding: 10px 3%; }
    .headline { font-size: 1.75rem; padding: 10px 3%; margin-left: 1%; margin-right: calc(-3.1% + -10px); }
    .panel_bd { font-size: 1.125rem; padding: 0 2.5%; }
    .product { width: 28%; }
    
    #step2 .headline { font-size: 1.5rem; padding: 10px 3%; margin: 0 calc(-3.1% + -10px) 10px; }
    #step2 .headline br { display: block; }
    
    .btn-1 { font-size: 1.25rem; }
    .btn-1::before { width: calc(100% + 16px); height: calc(100% + 16px); border-width: 4px; }
    
    .arrow-left, .arrow-right { margin-bottom: 0; }
    .arrow span { width: 15px; height: 15px; border-width: 3px; margin: -3px; }
    @keyframes ring {
        0% { width: 30px; height: 30px; opacity: 0; }
        5% { opacity: 1; }
        95% { width: 200px; height: 200px; opacity: 0; }
        100% { width: 30px; height: 30px; }
    }
    @keyframes animate {
        0% {
            opacity: 0;
            transform: rotate(-45deg) translate(-5px, -5px);
        }
        50% {
            opacity: 1;
        }
        100% {
            opacity: 0;
            transform: rotate(-45deg) translate(20px, 20px);
        }
    }
}

@media screen and (max-width: 500px) {
    html { font-size: 12px; }

    .headline { font-size: 1.5rem; padding-left: 5%; margin-left: 0; }
    .headline::before { clip-path: polygon(7px 0%, 100% 0, 100% 100%, 0% 100%); }

    .panel_bd p { margin-bottom: 10px; }

    .cta-button { margin-top: 20px; }
    @keyframes animate {
        0% {
            opacity: 0;
            transform: rotate(-45deg) translate(0px, 0px);
        }
        50% {
            opacity: 1;
        }
        100% {
            opacity: 0;
            transform: rotate(-45deg) translate(20px, 20px);
        }
    }
    .btn-1 { font-size: 1rem; }
    @keyframes ring {
        0% { width: 30px; height: 30px; opacity: 0; }
        5% { opacity: 1; }
        95% { width: 150px; height: 150px; opacity: 0; }
        100% { width: 30px; height: 30px; opacity: 0; }
    }
}

@media screen and (max-width: 400px) {
    .emailbox_2, .emailbox { width: 75%; min-height: 40px; font-size: 1.125rem; padding-top: 5px; padding-bottom: 5px; }
    .btn-1::before { width: calc(100% + 12px); height: calc(100% + 12px); border-width: 3px; }

    #step2 .headline { font-size: 1.25rem; }
}
