:root{--primary: #000d27;--secondary: #1d49cc;--secondary-hover: #1c45c2;--off-black: #0a0908;--black: #000000;--grey: #bababb;--light-grey: #eaeaeb;--dark-grey: #505051;--off-white: #fafafb;--white: #ffffff;--red: #d0011b;--green: #30AB66;--font-body: "Source Serif 4", serif;--font-ui: "Inter", sans-serif;--radius-pill: 25px;--radius-btn: 7.5px;--max-width: 480px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--white);color:var(--off-black);min-height:100vh;-webkit-font-smoothing:antialiased}.funnel-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;background:var(--white)}.progress-bar-track{width:100%;height:3px;background:var(--light-grey);border-radius:5px}.progress-bar-fill{height:3px;background:var(--primary);border-radius:5px;transition:width .2s ease;will-change:width}.funnel-header{width:100%;background:var(--white)}.funnel-header-inner{max-width:var(--max-width);margin:0 auto;padding:16px;display:flex;align-items:center;justify-content:center}.funnel-logo{height:30px;width:auto}.funnel-main{flex:1;width:100%;display:flex;flex-direction:column;align-items:center;padding:32px 16px 24px}.step-content{width:100%;max-width:var(--max-width);animation:fadeUp .18s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.step-question{font-family:var(--font-ui);font-size:26px;font-weight:700;line-height:1.35;color:var(--off-black);text-align:center;margin-bottom:4px}.step-subtext{font-family:var(--font-ui);font-size:14px;color:var(--dark-grey);text-align:center;margin-top:12px;margin-bottom:12px;line-height:1.5}.options-list{display:flex;flex-direction:column;gap:10px;margin-top:20px}.option-card{background:transparent;border:1px solid var(--black);border-radius:var(--radius-pill);padding:1em;display:flex;flex-direction:row;align-items:center;cursor:pointer;transition:all .1s;width:100%;text-align:left}.option-card:hover .radio-circle{box-shadow:0 0 0 1px var(--secondary)}.radio-circle{flex-shrink:0;display:inline-block;position:relative;border-radius:50%;height:20px;width:20px;background:var(--white);border:2.5px solid transparent;box-shadow:0 0 0 1px var(--light-grey);margin-right:15px;transition:all .1s}.option-card.selected .radio-circle{background:var(--secondary);border-color:var(--white);box-shadow:0 0 0 1px var(--secondary)}.option-label{font-family:var(--font-ui);font-size:1rem;font-weight:400;color:var(--black);line-height:1.1;cursor:pointer}.text-input{width:100%;padding:14px 16px;border:1px solid var(--black);border-radius:var(--radius-pill);font-size:1rem;font-family:var(--font-body);color:var(--off-black);background:var(--white);margin-top:20px;margin-bottom:4px;outline:none;transition:border-color .15s,box-shadow .15s}.text-input:focus{box-shadow:0 0 0 1px var(--secondary);border-color:var(--secondary)}.text-input.input-error{border-color:var(--red)}.phone-input-wrap{margin-top:20px;margin-bottom:4px}.otp-sent-msg{font-family:var(--font-ui);font-size:14px;color:var(--dark-grey);margin-top:16px;text-align:center}.otp-input{text-align:center;letter-spacing:6px;font-size:22px}.btn-primary{display:block;width:100%;padding:.875em 1em;background:var(--secondary);color:var(--white);border:none;border-radius:var(--radius-btn);font-family:var(--font-ui);font-size:1rem;font-weight:600;line-height:1.25;cursor:pointer;margin-top:16px;text-align:center;transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--secondary-hover)}.btn-primary:focus{outline:none;box-shadow:0 0 0 1.5px var(--white),0 0 0 3px #005fcc}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-link{display:block;width:100%;text-align:center;background:none;border:none;color:var(--dark-grey);font-family:var(--font-ui);font-size:14px;cursor:pointer;margin-top:12px;text-decoration:underline}.btn-back{background:none;border:none;color:var(--dark-grey);font-family:var(--font-ui);font-size:15px;cursor:pointer;display:flex;align-items:center;gap:6px;padding:8px 0;margin-bottom:16px;align-self:flex-start;touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-height:44px}.btn-back:hover{color:var(--off-black)}.error-msg{font-family:var(--font-ui);color:var(--red);font-size:13px;margin-top:4px}.tcpa-text{font-family:var(--font-ui);font-size:11px;color:var(--dark-grey);line-height:1.5;margin-top:14px;text-align:center}.tcpa-text a{color:var(--dark-grey)}.funnel-footer{width:100%;padding:20px 16px 40px;display:flex;flex-direction:column;align-items:center;gap:10px}.privacy-badge{font-family:var(--font-ui);font-size:13px;color:var(--dark-grey);display:flex;align-items:center;gap:6px}.footer-links{display:flex;gap:16px}.footer-links a{font-family:var(--font-ui);font-size:12px;color:var(--dark-grey);text-decoration:underline}.disclosure{font-family:var(--font-ui);font-size:11px;color:var(--dark-grey);line-height:1.6;max-width:720px;text-align:left;margin-top:24px}.disclosure p{margin:0 0 10px}.disclosure p:last-child{margin-bottom:0}.thankyou-screen{text-align:center;padding:60px 16px;max-width:var(--max-width);margin:0 auto}.thankyou-screen h1{font-family:var(--font-ui);font-size:28px;font-weight:700;color:var(--primary);margin-bottom:12px}.thankyou-screen p{font-family:var(--font-ui);font-size:16px;color:var(--dark-grey);line-height:1.6}.spinner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--white);display:flex;align-items:center;justify-content:center;z-index:999}.spinner{width:40px;height:40px;border:3px solid var(--light-grey);border-top-color:var(--secondary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.btn-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle}.phone-input-wrap{position:relative;margin-top:20px;margin-bottom:4px}.phone-input-wrap .text-input{margin-top:0}.input-check{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--green);font-size:18px;font-weight:700;pointer-events:none;animation:popIn .2s ease}.input-error-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--red);font-size:18px;font-weight:700;pointer-events:none}@keyframes shake{0%{transform:translate(0)}15%{transform:translate(-7px)}30%{transform:translate(7px)}45%{transform:translate(-5px)}60%{transform:translate(5px)}75%{transform:translate(-3px)}90%{transform:translate(3px)}to{transform:translate(0)}}.phone-input-wrap.shake{animation:shake .6s ease}.text-input.input-verified{border-color:var(--green);box-shadow:0 0 0 1px var(--green)}@media (max-width: 480px){.step-question{font-size:22px}.funnel-main{padding:24px 16px 16px}}
