@import url('reset.css');
@import url('https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@400;600;700&family=Open+Sans:ital,wght@0,400;0,600;0,700;1,400&display=swap');
@import url('https://cdn.jsdelivr.net/gh/vaibhav111tandon/vov.css@latest/vov.css');
@import url('https://cdn.jsdelivr.net/npm/odometer.js@1.0.0/odometer.css');





/* -------------------------------------------------------------------------------
			Default Layout: 1200px. 		
------------------------------------------------------------------------------- */
html, body {width: 100%; font-size: 16px; line-height: 160%; font-family: 'Open Sans', sans-serif; font-weight: 400; color: #081F49; -webkit-font-smoothing: auto; -moz-osx-font-smoothing: auto; -webkit-text-size-adjust: 100%; height: 100%;}


h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {display: block; clear: both; font-weight: 600; font-family: 'Lexend Deca', sans-serif; line-height: 140%; margin: 0 0 30px 0; z-index: 10; letter-spacing: -0.040em;}
h1, .h1 {font-size: 60px; word-spacing: -3px; line-height: 125%;}
h2, .h2 {font-size: 50px; word-spacing: -2px; line-height: 125%;}
h3, .h3 {font-size: 35px; word-spacing: -1px; letter-spacing: -0.030em;}
h4, .h4 {font-size: 25px; letter-spacing: -0.020em;}
h5, .h5 {font-size: 20px; letter-spacing: -0.020em;}
h6, .h6 {font-size: 18px; letter-spacing: -0.015em;}


p {margin: 0 0 30px 0; display: block; clear: both; width: 100%; z-index: 10;}
a {color: #081F49; text-decoration: underline;}
strong {font-weight: 700;}
svg {display: block; fill: #081F49; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
i {margin: 0 5px 0 0;}
button {border: 0; outline: none; cursor: pointer;}
button:disabled, .button.disabled {background: #F3F6F9!important; cursor: not-allowed; -moz-animation: none!important; -o-animation: none!important; animation: none!important; opacity: 0.50; color: #081F49;}
.button.loading {padding: 10px 65px 10px 25px;}
button.loading:after, .button.loading:after {content: ''; position: absolute; top: 50%; right: 25px; transform: translateY(-50%); width: 20px; height: 20px; margin-top: -12.5px; margin-left: -12.5px; border-radius: 50%; border-top: 2px solid #FFFFFF; border-right: 2px solid transparent; animation: animation-loading 0.50s linear infinite;}
hr {display: block; clear: both; height: 2px; margin: 0 0 30px 0;}
hr.clear {background: none; margin: 0;}
.button {background: #185DDC; position: relative; color: #FFFFFF; padding: 15px 30px; cursor: pointer; font-weight: 600; z-index: 50; text-align: center; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; float: left; letter-spacing: -0.015em; font-family: 'Lexend Deca', sans-serif;}
.button.larger {padding: 20px 60px; font-size: 20px;}
.button.smaller {padding: 15px 30px;}
.button.smallest {padding: 10px 30px; font-size: 14px;}
.button.full {display: block; width: 100%;}
.button.next {float: right;}
.margin-none {margin: 0!important;}
.margin-60 {margin: 0 0 60px 0!important;}
.margin-40 {margin: 0 0 40px 0!important;}
.margin-30 {margin: 0 0 30px 0!important;}
.margin-5 {margin: 0 0 5px 0!important;}
.margin-half,
.margin-half p {margin: 0 0 15px 0!important;}
.margin-negative-15 {margin: -10px 0 15px 0!important;}
.padding-none {padding: 0!important;}
.background-blue {background: #185DDC!important;}
.background-dark-blue {background: #081F49!important;}
.background-green {background: #09BC8A!important;}
.background-dark-green {background: #079C72!important;}
.background-light-green {background: #ECFEF9!important;}
.background-yellow {background: #FFC914!important;}
.background-light-yellow {background: #FFFAEB!important;}
.background-red {background: #DD1C1A!important;}
.background-light-red {background: #FDEDED!important;}
.background-grey {background: #F3F6F9!important;}
.background-dark-grey {background: #E4EBF1!important;}
.background-darkest-grey {background: #D6E0EA!important;}
.background-white {background: #FFFFFF!important;}
.background-none {background: none!important; -webkit-box-shadow: none!important; box-shadow: none!important;}
.background-blue *, .background-green *, .background-dark-green *, .background-dark-blue *, .background-red * {color: #FFFFFF;}
.text-color-blue {color: #185DDC!important;}
.text-color-grey {color: #F3F6F9!important;}
.text-color-dark-grey {color: #E4EBF1!important;}
.text-color-darkest-grey {color: #D6E0EA!important;}
.text-color-darkest-grey-promise {color: #AEC2D6!important;}
.text-color-green {color: #09BC8A!important;}
.text-color-dark-green {color: #079C72!important;}
.text-color-yellow {color: #FFC914!important;}
.text-color-red {color: #DD1C1A!important;}
.text-color-standard {color: #081F49!important;}
.text-color-white {color: #FFFFFF!important;}
.text-size-smaller {font-size: 14px; line-height: 160%;}
.text-size-smallest {font-size: 12px; line-height: 160%;}
.text-size-smallest-promise {font-size: 10px; line-height: 160%;}
.text-size-largest {font-size: 110px;}
.text-size-pounds {display: inline-block; vertical-align: middle;}
.text-size-pence {font-size: 80%; line-height: 100%; display: inline-block; vertical-align: middle; padding: 0 2px 0 0;}
.text-inline {display: inline;}
.text-inline-block {display: inline-block; vertical-align: middle;}
.text-align-center {text-align: center;}
.text-align-left {text-align: left;}
.text-align-right {text-align: right;}
.text-style-uppercase {text-transform: uppercase;}
.text-style-lowercase {text-transform: lowercase;}
.text-style-italic {font-style: italic;}
.text-weight-400 {font-weight: 400;}
.text-weight-600 {font-weight: 600;}
.text-weight-700 {font-weight: 700;}
.text-vertical-align-middle {vertical-align: middle; display: inline-block;}
.text-capitalise-first-letter {text-transform: capitalize;}
.text-sentence-case:first-letter {text-transform: uppercase;}
.text-email-address {word-break: break-all;}
.text-base-font {font-family: 'Open Sans', sans-serif!important;}
.highlight {width: auto; display: inline-block; background-color: #FFE433; padding: 0.5em 0; -webkit-box-shadow: 1em 0px 0px #FFE433, -1em 0px 0px #FFE433; box-shadow: 1em 0px 0px #FFE433, -1em 0px 0px #FFE433; -webkit-box-decoration-break: clone; -moz-box-decoration-break: clone; box-decoration-break: clone; z-index: -1;}
.text-highlight-circle {position: relative; z-index: 5; display: inline-block;}
.text-highlight-circle:before {content: ''; z-index: -1; left: -0.25em; top: 0; border-width: 5px; border-style: solid; border-color: #FFE433; position: absolute; border-right-color: transparent; width: 100%; height: 1em; -webkit-transform: rotate(-2deg); transform: rotate(-2deg); opacity: 1; border-radius: 50%; padding: 0.1em 0.22em; opacity: 0.70; -webkit-animation: animation-in-out 1s infinite alternate; animation: animation-in-out 1s infinite alternate;}
.text-highlight-circle:after {content: ''; z-index: -1; left: -0.25em; top: 0.03em; padding: 0.1em 0.22em; border-width: 5px; border-style: solid; border-color: #FFE433; border-left-color: transparent; border-top-color: transparent; position: absolute; width: 100%; height: 1em; -webkit-transform: rotate(-2deg); transform: rotate(-2deg); opacity: 1; -moz-border-radius: 50%; border-radius: 50%; opacity: 0.90; -webkit-animation: animation-in-out 1s infinite alternate; animation: animation-in-out 1s infinite alternate;}
.link {cursor: pointer; text-decoration: underline; display: inline-block; width: auto;}
.close_modal {cursor: pointer;}
.clear {display: block; clear: both; letter-spacing: 0;}
.hide {display: none!important;}
.disable-scroll {overflow: hidden; height: 100%;}
.secure-badge {width: 80px; clear: both;}
.viewport {display: none;}
.viewport:after {content: 'Full Desktop'; color: #FFFFFF; position: fixed; bottom: 15px; right: 15px; background: red; z-index: 999; padding: 2px 15px; font-size: 8px;} 
mark {background: none; color: inherit;}
.odometer {font-family: sofia-pro, sans-serif!important;}
.select-none {-webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none;}
#selected_address {margin: 10px 0 0 0;}
.address_pull {margin: 0; clear: both; float: left; padding: 0;}
.address-field {display: block; clear: both;}
.address-field.person_1_current_address_premise_pull, 
.address-field.person_1_current_address_thoroughfare_pull {display: inline-block;}
.address-field:empty {display: none;}
.traveller {position: -webkit-sticky!important; position: sticky!important; top: 20px!important;}


.help-content,
.box {padding: 30px; background: #F3F6F9; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; margin: 5px 0 0 0; display: none;}
.help-content p {margin: 0 0 15px 0;}
.help-content p:last-of-type {margin: 0;}


.partial_form_data {padding: 15px 20px; border: 1px solid #09BC8A; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; margin: 0 0 30px 0;}


.box {background: none; display: block; clear: both; width: 100%; float: left; padding: 15px;}
.box.inline {display: table; width: auto; padding: 5px 10px;}
.box.review {padding: 75px 100px; margin: 15px 0 45px 0;}


.summary {display: block; clear: both; width: 100%; padding: 30px; margin: 30px 0 0 0; float: left; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}


.underscore svg {fill: #FFC914;}
.underscore {width: 200px; display: block; clear: both; margin: -5px 0 0 0; z-index: -1; overflow: hidden;}
.underscore:before {content: ''; position: absolute; top: 0; left: 100%; width: 100%; height: 100%; background: #FFFFFF; -webkit-animation: animation-slide-out-right 0.25s linear normal; animation: animation-slide-out-right 0.25s linear normal;}


table {border: 0; margin: 0 0 30px 0; padding: 0; width: 100%; border-bottom: 2px solid #F3F6F9; width: 100%;}
table thead {position: -webkit-sticky; position: sticky; top: 0; left: 0; z-index: 100;}
table th, table td {text-align: left;}
table thead th, table tfoot th {font-weight: 600; background: #F3F6F9; border-bottom: 2px solid #E4EBF1!important; padding: 20px!important; font-size: 12px; line-height: 160%;}
table tfoot th, table tfoot td {border-top: 2px solid #F3F6F9!important; background: none; color: #081F49;}
table tbody td {padding: 15px 20px!important; font-size: 14px; line-height: 160%; vertical-align: middle; border-top: 1px solid #D6E0EA;}
table tbody tr:first-of-type td {border-top: 0;}
table td p:last-of-type {margin: 0;}
table td .h6 {margin: 0;}
table tbody tr {border: 0; vertical-align: top;}
table tr table {margin: 0 0 5px 0; border-bottom: 0; table-layout: fixed; border-collapse: collapse;}
table tr table tr {padding: 0;}
table tr table td {vertical-align: top;}
table tr table td:last-of-type {border-right: 0;}
table tr table td, table tr table td:first-of-type, table tr table td:last-of-type {padding: 20px 30px!important;}
table tr table td ul {padding: 15px 0 0 0;}
table tr table td ul li {border-bottom: 1px solid #E4EBF1; padding: 0 0 5px 0; margin: 0 0 5px 0; float: left; width: 100%; display: block; clear: both; font-size: 14px; line-height: 160%;}
table tr table td ul li:last-of-type {border: 0; margin: 0; padding: 0;}
table.inline {border-collapse: collapse; table-layout: fixed; border: 2px solid #F3F6F9;}
table.inline .basic-list {margin: 0;}
table.inline .basic-list ul {padding: 0; margin: 0;}
table.inline .basic-list ul li {padding: 0 0 0 15px;}
table.inline .basic-list ul li:before {top: 7px; width: 5px; height: 5px;}
table.inline thead {position: relative;}
table.inline thead th, table.inline tfoot th {border-bottom: 0!important;}
table.inline tbody td {border: 0; border-right: 2px solid #F3F6F9; border-top: 2px solid #F3F6F9; vertical-align: top; font-size: 12px; line-height: 160%;}
table.inline tbody td p {margin: 0 0 10px 0;}
table.inline tbody td p:last-of-type {margin: 0;}


.logo {width: 130px; max-width: 100%; z-index: 15; margin: 0 0 60px 0;}
.logo svg .cls-2 {fill: #09BC8A; stroke: #09BC8A; stroke-width: 0;}
.logo.smaller {width: 100px; margin: 0 0 15px 0;}
.logo.mark {margin: 0 auto 30px auto; width: 150px;}
.logo.mark svg {fill: #09BC8A!important;}
.logo.mark.white svg {fill: #FFFFFF!important;}


.reviews-logo {width: 250px; display: inline-block;}
.reviews-logo .desktop {display: inline-block;}
.reviews-logo .mobile {display: none;}


.todays_date.desktop {display: block;}
.todays_date.mobile {display: none;}


.media-logo {width: 90%; max-width: 200px; margin: 0 auto;}


.wrap {width: 90%; max-width: 1200px; margin: 0 auto; z-index: 250;}
.wrap.largest {max-width: 1800px;}
.wrap.larger {max-width: 1400px;}
.wrap.smaller {max-width: 1000px;}
.wrap.smallest {max-width: 800px;}
.wrap.smallest-promise {max-width: 600px;}
.wrap:after {content: ''; display: block; clear: both;}


.spacer {height: 30px; display: block; clear: both;}
.spacer.half {height: 15px;}


.basic-list {margin: 0 0 30px 0;}
.basic-list.margin-half {margin: 0 0 15px 0;}
.basic-list ul, .basic-list ol {display: block; clear: both; padding: 0 0 0 15px;}
.basic-list ul li, .basic-list ol li {display: block; clear: both; padding: 0 0 0 25px; word-wrap: break-word; word-break: break-word;}
.basic-list ul li:before {position: absolute; top: 8px; left: 0; width: 10px; height: 10px; background: #09BC8A; content: ''; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%;}
.basic-list.text-size-smaller ul li:before {top: 6px;}
.basic-list.text-size-smallest ul li:before {top: 7px; width: 5px; height: 5px;}
.basic-list ul ul, .basic-list ol ol {padding: 5px 0 5px 25px;}
.basic-list ol li ol li {padding: 0 0 0 35px;}
.basic-list ul ul li:before {top: 11px; width: 5px; height: 5px;}
.basic-list ol {counter-reset: item;}
.basic-list ol li:before {position: absolute; top: 0; left: 0; content: counters(item, ".") " "; counter-increment: item; color: #09BC8A; margin: 0;}
.basic-list ol ol li:before {font-size: 10px; line-height: 160%; top: 5px;}
.basic-list.inline ul li, .basic-list.inline ol li {clear: none; float: left; padding: 0 0 0 15px; margin: 0 10px 0 0;}
.text-size-smallest .basic-list ol ol {margin: 0;}
.text-size-smallest .basic-list ol li {margin: 0;}
.text-size-smallest .basic-list ol li:before {top: 1px;}


.basic-list.split {float: left; width: 100%; margin: 0 0 15px 0; padding: 0 0 15px 0; border-bottom: 1px solid #D6E0EA; clear: both;}
.basic-list.split:last-of-type {border: 0; padding: 0; margin: 0;}
.basic-list.split ul {padding: 0;}
.basic-list.split li {width: calc(50% - 15px); margin: 0 15px 0 0; float: left; clear: none; padding: 0;}
.basic-list.split li:before {display: none;}


#progress_bar {display: none;}
.progress {display: block; clear: both; position: absolute; top: -60px; left: 0; width: 100%; height: 5px;}
.progress .progress-bar {width: 100%; height: 100%; background: #F3F6F9; z-index: 1; overflow: hidden; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}
.progress .progress-bar div {position: absolute; top: 0; left: 0; background: #02B6A5; z-index: 2; height: 100%; transition: all 1s ease-in-out; -webkit-transition: all 1s ease-in-out; -moz-transition: all 1s ease-in-out;}


.loading-spinner {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: 5;}
.loading-spinner:before {content: ''; position: absolute; top: 50%; left: 50%; width: 75px; height: 75px; margin-top: -37.5px; margin-left: -37.5px; border-radius: 50%; border-top: 4px solid #081F49; border-right: 4px solid transparent; animation: animation-loading 0.50s linear infinite;}
.loading-spinner.smaller:before {width: 40px; height: 40px; margin-top: -20px; margin-left: -20px;}


.loading-step {width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 250; display: none;}
.loading-step .overlay {width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: #FFFFFF; opacity: 0.75;}


.confetti-pop {width: 100%; height: 100vh; position: absolute; top: -60vh; left: 50%; transform: translateX(-50%);}
.confetti-pop #thank_you_confetti {width: 100%; height: 100%;}


.flex-container {display: flex; flex-direction: row; flex-wrap: wrap; justify-content: flex-start; z-index: 40; padding: 0;}
.flex-container .column {padding: 0 15px; flex-direction: column; z-index: 40; flex-basis: calc(100% / 1);}
.flex-container.padding-none .column {padding: 0;}
.flex-container.two-col .column {flex-basis: calc(100% / 2)!important;}
.flex-container.three-col .column {flex-basis: calc(100% / 3)!important;}
.flex-container.four-col .column {flex-basis: calc(100% / 4)!important;}


.modal {position: fixed; display: none; top: 0; left: 0; width: 100%; height: 100%; z-index: 502; overflow-y: scroll; -webkit-overflow-scrolling: touch;}
.modal:before {position: fixed; top: 0; left: 0; width: calc(100% - 17px); height: 100%; background: #F3F6F9; opacity: 0.90; content: '';}
.modal .logo {margin: 0 0 30px 0; clear: both;}
.modal .overlay {position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #FFFFFF; opacity: 0.60;}
.modal .close {width: 30px; height: 30px; line-height: 30px; position: -webkit-sticky; position: sticky; top: 15px; clear: both; float: right; background: #FFC914; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%; font-weight: 600; text-transform: uppercase; text-align: center; cursor: pointer; z-index: 150; margin: 0 0 10px 0;}
.modal .close i {margin: 0;}
.modal .flex-container {padding: 0; min-height: 100vh; width: 100%; clear: both;}
.modal .flex-container .column {padding: 30px 100px 60px 100px; background: #FFFFFF; -webkit-box-shadow: 0px 0px 90px 0px rgba(8,31,73,0.15); box-shadow: 0px 0px 90px 0px rgba(8,31,73,0.15); align-self: center;}
.modal.no-close .flex-container .column {padding: 60px 100px;}
.modal.no-close .flex-container .column .close,
.modal.no-close .flex-container .column .close_modal {display: none;}
.modal .flex-container .column:last-of-type {margin: 0;}
.modal .flex-container .column .flex-container {padding: 15px 0; min-height: auto;}
.modal .flex-container .column .flex-container .column {-webkit-box-shadow: none;  box-shadow: none; background: none; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; padding: 0; align-self: flex-start;}
.modal .flex-container .column .flex-container {justify-content: space-between;}
.modal .flex-container .column .flex-container .column hr {margin: 0 0 30px 0;}
.modal .flex-container .column .flex-container .column form {margin: 0 0 15px 0;}
.modal .flex-container .column .flex-container .column .status {display: table; width: auto;}
.modal .call-to-actions ul li {display: block; clear: both; float: left; width: 100%; margin: 0 0 10px 0;}
.modal .call-to-actions ul li .button {display: block; width: 100%;}
.modal.video_display .flex-container {height: 100%;}


.form-navigation {display: block; clear: both; width: 100%; float: left; padding: 15px 15px 0 15px;}
.form-navigation.disabled:before {content: ''; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 100; opacity: 1; backdrop-filter: grayscale(100%);}
.form-navigation .button {min-width: calc(50% - 15px);}


form {display: block; float: left; width: 100%; clear: both;}
form input, form select, form textarea {width: 100%; float: left; outline: none; -webkit-appearance: none; appearance: none; padding: 0 20px; height: 60px; font-size: 16px; color: #081F49; font-family: 'Open Sans', sans-serif; font-weight: 600; background: #FFFFFF; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; border: 1px solid #081F49;}
form input:focus, form select:focus, form textarea:focus, form .custom-checkbox + label:active {z-index: 5; -webkit-box-shadow: 0px 0px 0px 4px #09BC8A; -moz-box-shadow: 0px 0px 0px 4px #09BC8A; box-shadow: 0px 0px 0px 4px #09BC8A;}
form input:disabled {-webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none;}
form textarea {min-height: 200px; height: 200px; min-width: 100%; max-width: 100%; width: 100%; padding: 20px; resize: none;}
form select {background: none; padding: 0 40px 0 20px; background: #FFFFFF url(/assets/img/svg/select.svg) no-repeat right 20px center; -webkit-background-size: 15px; -moz-background-size: 15px; -o-background-size: 15px; background-size: 15px; cursor: pointer;}
form select::-ms-expand {display: none;}
form input[type=number]::-webkit-inner-spin-button, 
form input[type=number]::-webkit-outer-spin-button {-webkit-appearance: none; appearance: none; margin: 0;}
form label {font-family: 'Open Sans', sans-serif; display: block; clear: both; z-index: 10; margin: 0 0 15px 0;}
form .field-icon {display: block; clear: both; float: left; width: 100%;}
form .field-icon:before {position: absolute; top: 0; left: 0; color: #081F49; padding: 0 10px 0 20px; height: 60px; content: '\f154'; font: var(--fa-font-regular); text-rendering: auto; -webkit-font-smoothing: antialiased; text-align: center; line-height: 60px; font-size: 16px; z-index: 6; -webkit-border-top-left-radius: 5px; -webkit-border-bottom-left-radius: 5px; -moz-border-radius-topleft: 5px; -moz-border-radius-bottomleft: 5px; border-top-left-radius: 5px; border-bottom-left-radius: 5px;}
form .field-icon.name:before, form .field-icon.username:before {content: '\f007';}
form .field-icon.password:before {content: '\f023';}
form .field-icon.telephone_number:before {content: '\f879';}
form .field-icon.email_address:before {content: '\f0e0';}
form .field-icon.date:before {content: '\f133';}
form .field-icon.address:before {content: '\f3c5';}
form .field-icon.tenants_number:before {content: '\f0c0';}
form .field-icon.percentage:before {content: '\25';}
form .field-icon.house:before {content: '\f015';}
form .field-icon.lender:before {content: '\f19c';}
form .field-icon.id:before {content: '\e415';}
form .field-icon input {padding: 0 20px 0 50px;}
form .field {display: block; clear: both; margin: 0 0 15px 0; width: 100%; float: left;}
form .field.two {margin: 0;}
form .field.two .field {width: calc(50% - 5px); clear: none;}
form .field.two .field:first-of-type {margin: 0 5px 15px 0;}
form .field.two .field:nth-of-type(2n) {margin: 0 0 15px 5px;}
form .field.three {margin: 0;}
form .field.three .field {width: calc(33.333333% - 5px); clear: none;}
form .field.three .field:first-of-type {margin: 0 5px 15px 0;}
form .field.three .field:nth-of-type(2n) {width: calc(33.333333% - 10px); margin: 0 5px 15px 5px;}
form .field.three .field:last-of-type {margin: 0 0 15px 0; float: right;}
form .field.label-split {padding: 0; clear: none; float: left; word-wrap: break-word;}
form .field.label-split .field {margin: 0; width: 50%; clear: none; padding: 15px 15px 0 0;}
form .field.label-split .field:last-of-type {padding: 15px;}
form .field.label-split .field.field-error:last-of-type {background: #FDEDED;}
form .field.label-split .field.field-valid:last-of-type {background: #ECFEF9;}
form .field.label-split .field.field-valid:before,
form .field.label-split .field.field-error:before {width: 10px; height: 10px; position: absolute; top: -1px; right: -1px; content: ''; background: #FFFFFF; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%;}
form .field.label-split .field.field-valid:after,
form .field.label-split .field.field-error:after {content: '\f058'; font: var(--fa-font-regular); text-rendering: auto; -webkit-font-smoothing: antialiased; position: absolute; top: -5px; font-size: 12px; right: -5px; border: 0; text-align: center; color: #09BC8A; text-align: center; line-height: 100%; border: 3px solid #FFFFFF; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%; margin: 0;}
form .field.label-split .field.field-error:after {content: '\f057'; color: #DD1C1A;}
form fieldset {margin: 0; padding: 15px 0;}
form fieldset:last-of-type {border-bottom: 0;}
form .address_lookup {float: left; width: 100%; display: block; clear: both;}
form .idpc-input {text-transform: uppercase;}
form .idpc-input:placeholder-shown {text-transform: capitalize;}
form .idpc-select {margin: 15px 0 0 0; animation: animation-yellow-flash 1.5s linear 3 normal; clear: both;}
form .idpc-find-address {margin: 15px 0 0 0;}
form span.error, form .idpc-error, form .email_validation_error, form .upload_success, form label.error {display: none; width: 100%; clear: both; float: left; position: relative; font-family: 'Open Sans', sans-serif; font-weight: 600; font-size: 14px; line-height: 160%; background: #FDEDED; color: #DD1C1A; padding: 0; margin: 0 0 10px 0; z-index: 50; letter-spacing: 0; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}
form span.error:before, form .idpc-error:before, form .email_validation_error:before, form label.error:before {content: '\f071'; font: var(--fa-font-solid); text-rendering: auto; -webkit-font-smoothing: antialiased; margin: 0 10px 0 0;}
form span.error:after, form .idpc-error:after, form label.error:after, form .email_validation_error:after {display: block; clear: both; width: 100%; content: '';}
form .email_validation_error {display: none;}
form .field-error input:focus, form .field-error select:focus, form .field-error textarea:focus, form .field-error .custom-checkbox + label:active {z-index: 5; -webkit-box-shadow: 0px 0px 0px 4px #DD1C1A; -moz-box-shadow: 0px 0px 0px 4px #DD1C1A; box-shadow: 0px 0px 0px 4px #DD1C1A;}
form .field-error .custom-checkbox.standard + label {border: 0!important;}
form .suggested_fix_conditional {display: none;}
form .suggested_fix_apply:before {display: block; clear: both; width: 100%; content: '';}
form .suggested_fix_apply {margin: 10px 0; clear: both; background: #FFFFFF; color: #DD1C1A; padding: 5px 10px; display: block; cursor: pointer;}
form .suggested_fix_apply:after {background: none!important;}
form input::placeholder,
form ::placeholder {color: #081F49; text-transform: none; opacity: 0.25;}
form ul.options {display: block; clear: both; padding: 0; float: left; width: 100%;}
form ul.options.padding-top-bottom {padding: 5px 0;}
form ul.options li {width: 100%; margin: 0 0 10px 0; display: block; font-size: inherit; clear: both;}
form ul.options li:last-of-type {margin: 0;}
form .custom-checkbox {display: none;}
form .custom-checkbox + label {position: relative; cursor: pointer; outline: none; margin: 0; width: auto; color: #081F49; background: #FFFFFF; border: 1px solid #081F49; font-family: 'Open Sans', sans-serif; font-weight: 600; padding: 15px 30px 15px 50px; text-align: left; display: block; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px;}
form .custom-checkbox:disabled + label {cursor: default;}
form .custom-checkbox + label:before {width: 20px; height: 20px; line-height: 20px; -webkit-border-radius: 100%; -moz-border-radius: 100%; border-radius: 100%; position: absolute; top: 18px; left: 14px; content: ''; border: 1px solid #081F49; background: #FFFFFF;}
form .custom-checkbox:checked + label {border: 1px solid #09BC8A; color: #09BC8A;}
form .custom-checkbox:checked + label:before {-webkit-box-shadow: inset 0px 0px 0px 5px #FFFFFF; box-shadow: inset 0px 0px 0px 5px #FFFFFF; border: 1px solid #09BC8A; background: #09BC8A;}
form .step {display: none;}
form .step#step_1 {display: block;}


section,
footer {padding: 60px 0;}


section.form.min-height {min-height: 80vh; overflow: hidden;}


header {height: 80px; z-index: 300; width: 100%; border-bottom: 1px solid #F3F6F9}
header .logo {position: absolute; top: 50%; left: 5%; transform: translateY(-50%); margin: 0;}
header .reviews-logo {position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);}
header .todays_date {position: absolute; top: 50%; right: 5%; transform: translateY(-50%);}
header .wrap {height: 100%; width: 100%; max-width: 100%;}


footer {display: block; clear: both; width: 100%;}
footer .logo {width: 80px; margin: 0 0 15px 0;}
footer .logo svg {fill: #FFFFFF;}
footer * {font-size: 12px; line-height: 160%; margin: 0 0 15px 0;}
footer ul {text-align: left; display: block; clear: both; float: left; width: 100%; margin: 0;}
footer ul li {display: block; float: left; margin: 0 15px 0 0;}
footer ul li .link {margin: 0;}


@media (hover: hover) and (pointer: fine) {
.link:hover {text-decoration: none;}
form .custom-checkbox + label:hover {border: 1px solid #09BC8A;}
form .custom-checkbox + label:hover:before {-webkit-box-shadow: inset 0px 0px 0px 5px #FFFFFF; box-shadow: inset 0px 0px 0px 5px #FFFFFF; border: 1px solid #09BC8A; background: #09BC8A;}
form .custom-checkbox:disabled + label:hover {border: 1px solid #E4EBF1;}
form .custom-checkbox:checked:disabled + label:hover {border: 1px solid #09BC8A;}
.ui-state-hover {text-decoration: none; color: #185DDC; background-color: #185DDC; border: 1px solid #185DDC!important; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; cursor: pointer;}
}





/* -------------------------------------------------------------------------------
			Desktop wide
------------------------------------------------------------------------------- */
@media only screen and (min-width: 1200px) and (max-width: 1800px) {
span.viewport:after {content: 'Wide Desktop'; background: green;}

.modal .flex-container .column {padding: 40px 70px 70px 70px;}
.modal.no-close .flex-container .column {padding: 70px;}
}





/* -------------------------------------------------------------------------------
			Tablet landscape: 960px.
------------------------------------------------------------------------------- */
@media only screen and (min-width: 960px) and (max-width: 1200px) {
span.viewport:after {content: 'Tablet Landscape 960px - 1200px'; background: skyblue;}


.box.review {padding: 50px 75px; margin: 15px 0 45px 0;}


form ul.options.three li {width: calc(50% - 10px);}


.modal .flex-container .column {padding: 40px 70px 70px 70px;}
.modal.no-close .flex-container .column {padding: 70px;}
}





/* -------------------------------------------------------------------------------
			Tablet portrait: 640px.
------------------------------------------------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 960px) {
span.viewport:after {content: 'Tablet Portrait'; background: blue;}


h1, .h1 {font-size: 50px;}


.full-width-mobile {width: 100%;}


.box.review {padding: 50px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0;}


.modal {padding: 0;}
.modal .wrap {width: 100%;}
.modal .flex-container .column {padding: 30px 40px 40px 40px;}
.modal.no-close .flex-container .column {padding: 40px;}
}





/* -------------------------------------------------------------------------------
			Wide mobile: 480px.
------------------------------------------------------------------------------- */
@media only screen and (min-width: 480px) and (max-width: 768px) {
span.viewport:after {content: 'Mobile Wide'; background: purple;}


h1, .h1 {font-size: 45px; word-spacing: -2px;}
h2, .h2 {font-size: 40px; word-spacing: -1px;}
h3, .h3 {font-size: 30px; word-spacing: 0;}
h4, .h4 {font-size: 22px;}
h5, .h5 {font-size: 18px;}
h6, .h6 {font-size: 16px;}


.margin-60 {margin: 0 0 40px 0!important;}


.full-width-mobile {width: 100%;}


.box.review {padding: 40px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0;}


.basic-list.split li {width: 100%; margin: 0 0 15px 0; display: block; clear: both;}
.basic-list.split li:last-of-type {margin: 0;}


table.inline {border: 0;}
table.inline thead {border: none; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
table.inline tr {display: block; margin: 0 0 30px 0; border: 2px solid #F3F6F9;}
table.inline tbody td {display: block; border-right: 0;}
table.inline tr td:first-of-type {background: #F3F6F9;}
table.inline td::before {content: attr(data-label); display: block; clear: both; font-weight: 600; padding: 0 30px 0 0; font-size: 18px; line-height: 160%;}


.reviews-logo {width: 80px;}
.reviews-logo .desktop {display: none;}
.reviews-logo .mobile {display: inline-block;}


.todays_date.desktop {display: none;}
.todays_date.mobile {display: block;}


.underscore {width: 130px;}


.modal {padding: 0;}
.modal .wrap {width: 100%;}
.modal .content {padding: 60px 5% 30px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; min-height: 100vh;}
.modal .flex-container .column {padding: 15px 5% 40px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; align-self: flex-start;}
.modal.no-close .flex-container .column {padding: 40px 5%;}


.progress {top: -30px;}


form .field.two .field,
form .field.two .field:first-of-type,
form .field.two .field:nth-of-type(2n) {width: 100%; clear: both; margin: 0 0 15px 0;}
form .field.label-split {padding: 0;}
form .field.label-split .field {padding: 0;}
form .field.label-split .field,
form .field.label-split .field:last-of-type {width: 100%;}
form .field.label-split .field:last-of-type {padding: 15px 0;}
form fieldset {padding: 10px 30px;}


.form-navigation {padding: 0 30px 30px 30px;}
.form-navigation .button {min-width: 50%;}


section,
footer {padding: 30px 0;}


header .reviews-logo {left: auto; right: 5%; transform: translateY(-50%);}
header .todays_date {display: none;}
}





/* -------------------------------------------------------------------------------
			Mobile: 320px.
------------------------------------------------------------------------------- */
@media only screen and (max-width: 480px) {
span.viewport:after {content: 'Mobile Portrait'; background: pink;}


h1, .h1 {font-size: 40px; font-size: 9vw; font-size: max(9vw, 40px);}
h2, .h2 {font-size: 35px; word-spacing: -1px;}
h3, .h3 {font-size: 30px; word-spacing: 0;}
h4, .h4 {font-size: 22px;}
h5, .h5 {font-size: 18px;}
h6, .h6 {font-size: 16px;}


.margin-60 {margin: 0 0 40px 0!important;}


.full-width-mobile {width: 100%;}


.box.review {padding: 40px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0;}


.basic-list.split li {width: 100%; margin: 0 0 15px 0; display: block; clear: both;}
.basic-list.split li:last-of-type {margin: 0;}


table.inline {border: 0;}
table.inline thead {border: none; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px;}
table.inline tr {display: block; margin: 0 0 30px 0; border: 2px solid #F3F6F9;}
table.inline tbody td {display: block; border-right: 0;}
table.inline tr td:first-of-type {background: #F3F6F9;}
table.inline td::before {content: attr(data-label); display: block; clear: both; font-weight: 600; padding: 0 30px 0 0; font-size: 18px; line-height: 160%;}


.reviews-logo {width: 80px;}
.reviews-logo .desktop {display: none;}
.reviews-logo .mobile {display: inline-block;}


.todays_date.desktop {display: none;}
.todays_date.mobile {display: block;}


.underscore {width: 130px;}


.modal {padding: 0;}
.modal .wrap {width: 100%;}
.modal .content {padding: 60px 5% 30px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; min-height: 100vh;}
.modal .flex-container .column {padding: 15px 5% 40px 5%; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; align-self: flex-start;}
.modal.no-close .flex-container .column {padding: 40px 5%;}


.progress {top: -30px;}


form .field.two .field,
form .field.two .field:first-of-type,
form .field.two .field:nth-of-type(2n) {width: 100%; clear: both; margin: 0 0 15px 0;}
form .field.label-split {padding: 0;}
form .field.label-split .field {padding: 0;}
form .field.label-split .field,
form .field.label-split .field:last-of-type {width: 100%;}
form .field.label-split .field:last-of-type {padding: 15px 0;}
form fieldset {padding: 10px 0;}


.form-navigation {padding: 0 0 30px 0;}
.form-navigation .button {min-width: 50%;}


section,
footer {padding: 30px 0;}


header .reviews-logo {left: auto; right: 5%; transform: translateY(-50%);}
}





/* -------------------------------------------------------------------------------
			Animations
------------------------------------------------------------------------------- */
.animation-in-out {-webkit-animation: animation-in-out 1s infinite alternate; animation: animation-in-out 1s infinite alternate;}
.animation-green-flash-infinite {-webkit-animation: animation-green-flash 1.5s linear infinite normal; animation: animation-green-flash 1.5s linear infinite normal;}
.animation-yellow-flash-infinite {-webkit-animation: animation-yellow-flash 1.5s linear infinite normal; animation: animation-yellow-flash 1.5s linear infinite normal;}
.animation-black-flash-infinite {-webkit-animation: animation-black-flash 1.5s linear infinite normal; animation: animation-black-flash 1.5s linear infinite normal;}
@keyframes animation-in-out {
	0% {
	  transform: scale(1.1) rotate(0deg);
	}
	100% {
	  transform: scale(1) rotate(-2deg);
	}
}
@-webkit-keyframes animation-in-out {
	0% {
	  transform: scale(1.1) rotate(0deg);
	}
	100% {
	  transform: scale(1) rotate(-2deg);
	}
}
@-webkit-keyframes animation-yellow-flash {
	0%   {-webkit-box-shadow: 0 0 0 0 rgba(255,201,20,1);}
	70%  {-webkit-box-shadow: 0 0 0 10px rgba(255,201,20,0);}
	100% {-webkit-box-shadow: 0 0 0 0 rgba(255,201,20,0);}
}
@keyframes animation-yellow-flash {
	0%   {-moz-box-shadow: 0 0 0 0 rgba(255,201,20,1); box-shadow: 0 0 0 0 rgba(255,201,20,1);}
	70%  {-moz-box-shadow: 0 0 0 10px rgba(255,201,20,0); box-shadow: 0 0 0 15px rgba(255,201,20,0);}
	100% {-moz-box-shadow: 0 0 0 0 rgba(255,201,20,0); box-shadow: 0 0 0 0 rgba(255,201,20,0);}
}
@-webkit-keyframes animation-green-flash {
	0%   {-webkit-box-shadow: 0 0 0 0 rgba(9,188,138,1);}
	70%  {-webkit-box-shadow: 0 0 0 10px rgba(9,188,138,0);}
	100% {-webkit-box-shadow: 0 0 0 0 rgba(9,188,138,0);}
}
@keyframes animation-green-flash {
	0%   {-moz-box-shadow: 0 0 0 0 rgba(9,188,138,1); box-shadow: 0 0 0 0 rgba(9,188,138,1);}
	70%  {-moz-box-shadow: 0 0 0 10px rgba(9,188,138,0); box-shadow: 0 0 0 15px rgba(9,188,138,0);}
	100% {-moz-box-shadow: 0 0 0 0 rgba(9,188,138,0); box-shadow: 0 0 0 0 rgba(9,188,138,0);}
}
@-webkit-keyframes animation-black-flash {
	0%   {-webkit-box-shadow: 0 0 0 0 rgba(8,31,73,1);}
	70%  {-webkit-box-shadow: 0 0 0 10px rgba(8,31,73,0);}
	100% {-webkit-box-shadow: 0 0 0 0 rgba(8,31,73,0);}
}
@keyframes animation-black-flash {
	0%   {-moz-box-shadow: 0 0 0 0 rgba(8,31,73,1); box-shadow: 0 0 0 0 rgba(8,31,73,1);}
	70%  {-moz-box-shadow: 0 0 0 10px rgba(8,31,73,0); box-shadow: 0 0 0 15px rgba(8,31,73,0);}
	100% {-moz-box-shadow: 0 0 0 0 rgba(8,31,73,0); box-shadow: 0 0 0 0 rgba(8,31,73,0);}
}
@keyframes animation-loading {
	from {transform: rotate(0deg);}
	to {transform: rotate(360deg);}
}