
/* ---- MAIN -------------------------------------------- */
/*                                                        */
/*    Initial                              CODE: kqplc    */
/*    Modular                              CODE: moduk    */
/*    Components                           CODE: ggjir    */
/*    Linked styles                        CODE: gilsd    */
/*    Lookups                              CODE: lokup    */
/*    Buttons                              CODE: mefqr    */
/*    Form elements and states             CODE: ogtzz    */
/*                                                        */
/* ---- PYF PAGES --------------------------------------- */
/*                                                        */
/*    Home page                            CODE: homeh    */
/*    Product landing page                 CODE: wmaph    */
/*    Terms + Privacy page                 CODE: pwmts    */
/*    About page                           CODE: xrqsp    */
/*    Contact page                         CODE: conta    */
/*    Style guide page                     CODE: styxc    */
/*                                                        */
/* ---- JOURNEY PAGES ----------------------------------- */
/*                                                        */
/*    Quote page                           CODE: lmnbd    */
/*    Calculating page                     CODE: mghwe    */
/*    Results page                         CODE: uuant    */
/*    More Info Upsell page                CODE: aasik    */
/*    Transfer page                        CODE: tzphm    */
/*                                                        */
/* ---- MISC -------------------------------------------- */
/*                                                        */
/*    Screen size dependent                CODE: sddfa    */
/*                                                        */
/* ------------------------------------------------------ */


/* ################################################################## */
/* #### Initial - CODE: kqplc ####################################### */
/* ################################################################## */


/* ---- Reset ------------------------------------- */

*,
:after,
:before {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

/* ---- Variables ------------------------------------- */

:root {
	/* Colors */
	--baby-blue: #449ad5;
	--green-tick: #2fb172;
	--green-tick-hover: #4fbd88;
	--grey-1: #F4F4F4;
	--grey-d: #ddd;
	--navy: #324451;
	--red-cta: #FE6E80;
	--red-cta-hover: #fe8493;
	--white: #fff;
	/* Pixels */
	--scrollbar-width: 0px; /* This will be overwritten by the JS */
}

/* ---- touch-action + cursor ------------------------------------- */

a,
.btn,
button,
input[type="radio"],
input[type="checkbox"],
select,
.question.calendar_icon .answer:after,
ul.features li .info,
ul.expand_collapse_section > li .head,
.upgrade_table .row .column.info details summary {
	cursor: pointer;
	touch-action: manipulation;
}

/* ---- Universal ------------------------------------- */

body,
html {
}

body {
	/*background-color: hsl(219, 94%, 94%);*/
	background-color: var(--white);
	color: var(--navy);
	display: flex;
	flex-direction: column;
	font-family: 'Montserrat', sans-serif;
	overflow-x: hidden;
	-webkit-text-size-adjust: none;
}

body[data-scroll="false"] {
	overflow: hidden;
}

.preload_transitions * {
	/* Stops transitions/animations applying on page load */
	transition: none !important;
		-webkit-transition: none !important;
		-moz-transition: none !important;
		-ms-transition: none !important;
		-o-transition: none !important;
}

input[type="email"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="text"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #bbb;
}

::selection {
	/* WebKit/Blink Browsers */
	background-color: var(--baby-blue);
	color: var(--white);
}

::-moz-selection {
	/* Gecko Browsers */
	background-color: var(--baby-blue);
	color: var(--white);
}

.container100 {
	float: left;
	position: relative;
	width: 100%;
}

.container100.quote,
.container100.results {
	background-color: var(--grey-1);
}

.container {
	margin: 0 auto;
	/*position: relative;*/
	width: calc(100% - 40px);
}

.container100 .illustration {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}


/* ################################################################## */
/* #### Modular - CODE: moduk ####################################### */
/* ################################################################## */


ul {
	display: grid;
	list-style: none;
}



/* ---- ul flex -------------------------------- */

ul.flex {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

/* ---- ul bullet point list -------------------------------- */

ul.bullet {
	float: left;
	width: 100%;
}

ul.bullet li {
	float: left;
	padding-left: 16px;
	position: relative;
	width: 100%;
}

ul.bullet li:before {
	background-color: #111;
	border-radius: 50%;
	content: '';
	height: 6px;
	position: absolute;
		top: 0;
		left: 0;
	width: 6px;
}

ul.bullet li a {
	color: var(--baby-blue);
}

/* ---- ul icons list -------------------------------- */

ul.icons {
	display: grid;
	float: left;
	list-style: none;
	width: 100%;
}

ul.icons li {

}

ul.icons li .icon {
	float: left;
	height: 32px;
	width: 32px;
}

ul.icons li .info .title {

}

ul.icons li .info .paragraphs {

}

ul.icons li .info .paragraphs p {

}

/* ---- ul icons list - blue_text_grey_border ------------------------------- */

ul.icons[data-styling="blue_text_grey_border"] {
	gap: 40px 80px;
	grid-template-columns: 1fr;
	margin-top: 50px;
}

ul.icons[data-styling="blue_text_grey_border"] li {
	border-top: 1px solid #F4F4F4;
	padding-top: 40px;
	width: 100%;
}

ul.icons[data-styling="blue_text_grey_border"] li:nth-of-type(1) {
	border-top: 0;
	padding-top: 0;
}

ul.icons[data-styling="blue_text_grey_border"] li .icon {
	display: none;
}

ul.icons[data-styling="blue_text_grey_border"] li .info {

}

ul.icons[data-styling="blue_text_grey_border"] li .info .title {
	color: #014A66;
	font-size: 20px;
	line-height: 26px;
	text-align: center;
}

ul.icons[data-styling="blue_text_grey_border"] li .info .paragraphs {
	margin-top: 10px;
}

ul.icons[data-styling="blue_text_grey_border"] li .info .paragraphs p {
	color: #324451;
	font-size: 16px;
	line-height: 24px;
	text-align: center;
}

/* ---- ul icons list - white_buttons ------------------------------- */

ul.icons[data-styling="white_buttons"] {
	gap: 32px;
	grid-template-columns: 1fr;
	margin-top: 36px;
	text-align: center;
	width: 100%;
}

ul.icons[data-styling="white_buttons"] li {
	background-color: var(--white);
	border-radius: 8px;
	box-shadow: 0px 4px 0px 0px rgba(220,220,220,0.25);
	display: none;
	gap: 12px;
	grid-template-columns: 1fr;
	justify-items: center;
	padding: 26px 20px;
	position: relative;
	text-align: center;
}

ul.icons[data-styling="white_buttons"] li[data-show-hide="show"] {
	display: grid;
}

ul.icons[data-styling="white_buttons"] li .icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 56px;
	width: 66px;
}

ul.icons[data-styling="white_buttons"] li .info {

}

ul.icons[data-styling="white_buttons"] li .info .title {
	color: var(--navy);
	font-size: 16px;
	font-weight: 600;
	line-height: 22px;
	width: 100%;
}

ul.icons[data-styling="white_buttons"] li a {
	height: 100%;
	position: absolute;
		top: 0;
		left: 0;
	width: 100%;
}

/* ---- ul icons list - red_tick_circle_list ------------------------------------- */

ul.icons[data-styling="red_tick_circle_list"] {
	display: flex;
	flex-direction: column;
	gap: 30px;
	grid-template-columns: 1fr;
	width: 100%;
	padding-top: 30px;
}

ul.icons[data-styling="red_tick_circle_list"] li {
	display: grid;
	gap: 14px;
	grid-template-columns: 36px 1fr;
}

ul.icons[data-styling="red_tick_circle_list"] li .icon {
	background-color: var(--red-cta);
	background-image: url(../img/icon_tick_white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 16px;
	border-radius: 50%;
	height: 36px;
	width: 36px;
}

ul.icons[data-styling="red_tick_circle_list"] li .info {
	padding-top: 4px;
}

ul.icons[data-styling="red_tick_circle_list"] li .info .title {
	font-size: 18px;
	line-height: 28px;
}

ul.icons[data-styling="red_tick_circle_list"] li .info .paragraphs p {
	font-size: 16px;
	line-height: 24px;
}

/* ---- Modular - stacked ------------------------------------- */

ul.icons[data-styling="stacked"] {
	display: grid;
	gap: 30px 12px;
	grid-template-columns: 1fr;
	width: 100%;
}

ul.icons[data-styling="stacked"] li {
	display: grid;
	grid-template-columns: 1fr;
}

ul.icons[data-styling="stacked"] li .icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 64px;
	width: 100%;
}

ul.icons[data-styling="stacked"] li .title {
	font-weight: 500;
	font-size: 18px;
	line-height: 27px;
	margin-top: 32px;
	width: 100%;
}

ul.icons[data-styling="stacked"] li .subtitle {
	font-size: 16px;
	line-height: 24px;
	margin-top: 8px;
	width: 100%;
}

/* ---- Modular - ul features ---------- goes on more info bar normally -------------- */

ul.features {
	display: grid;
	font-size: 14px;
	line-height: 20px;
	list-style: none;
}

ul.features li {
	display: grid;
	gap: 10px;
}

ul.features li + li {
	border-top: 1px solid #eee;
	margin-top: 12px;
	padding-top: 12px;
}

ul.features li .info {
	align-items: center;
	display: grid;
	gap: 32px;
	grid-template-columns: auto 50px;
}

ul.features li .info .right {
	display: flex;
	justify-content: space-between;
}

ul.features li .info .right .icon {
	background-image: url(../img/icon_cross_red.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 14px;
	height: 20px;
	width: 20px;
}

ul.features li[data-included="true"] .info .right .icon {
	background-image: url(../img/icon_tick_green.svg);
	background-size: 18px;
}

ul.features li .info .right .chevron {
	background-image: url(../img/chevron.svg?v=1);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 14px;
	height: 20px;
	width: 16px;
}

ul.features li[data-expanded="true"] .info .right .chevron {
	transform: rotate(180deg);
}

ul.features li .hidden {
	background-color: #f4f4f4;
	border-radius: 3px;
	display: none;
	font-size: 13px;
	padding: 10px 14px;
}

ul.features li[data-expanded="true"] .hidden {
	display: block;
}

/* ---- Modular - instalments ------------------------------------ */

.instalments {
	display: grid;
	font-size: 14px;
	gap: 0 10px;
	grid-template-columns: repeat(2, auto);
}

.instalments .left {
	text-align: right;
}

.instalments .right {
	text-align: left;
}

.instalments .total {
	font-weight: 700;
}


/* ################################################################## */
/* #### Components - CODE: ggjir ####################################### */
/* ################################################################## */




/* ---- Modular - home_generic ------------------------------------- */

.container100.home_generic {
	padding: 40px 0;
}

.container100.home_generic,
.container100.home_generic[data-bg="white"] {
	background-color: var(--white);
}

.container100.home_generic[data-bg="grey"] {
	background-color: var(--grey-1);
}

.container100.home_generic[data-bg="blue"] {
	background-color: #014A66;
}

.container100.home_generic .container {
	display: flex;
	flex-direction: column;
}

.container100.home_generic .section_heading {
	color: var(--navy);
	font-size: 28px;
	font-weight: 500;
	line-height: 36px;
	text-align: center;
	width: 100%;
}

.container100.home_generic .section_subheading {
	color: var(--navy);
	font-size: 18px;
	font-weight: 500;
	line-height: 26px;
	text-align: center;
	width: 100%;
}

.container100.home_generic .sides {
	display: flex;
	flex-direction: column;
	gap: 20px 40px;
	margin-top: 30px;
	width: 100%;
}

.container100.home_generic .sides .left_side,
.container100.home_generic .sides .right_side {
	display: flex;
	flex-direction: column;
	font-size: 24px;
	font-weight: 500;
	line-height: 30px;
}

.container100.home_generic .sides .left_side .header,
.container100.home_generic .sides .left_side .subheader {
	color: #014A66;
	font-size: 28px;
	font-weight: 700;
	line-height: 38px;
}

.container100.home_generic .sides .left_side .subheader {
	font-weight: 500;
}

.container100.home_generic .sides .right_side .paragraphs {
	color: var(--navy);
	display: flex;
	flex-direction: column;
	font-size: 18px;
	font-weight: 500;
	gap: 20px;
	line-height: 26px;
	width: 100%;
}

.container100.home_generic .sides .right_side .paragraphs p {
	width: 100%;
}

/* ---- Modular - home_generic - why_pyf ------------------------------------ */

.container100.home_generic#why_pyf {
	padding-top: 0;
}

.container100.home_generic#why_pyf .image {
	background-image: url(../img/hero_why_pyf.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-top: -120px;
	min-height: 240px;
	width: 100%;
}

.container100.home_generic#why_pyf .image img {
	opacity: 0;
	width: 100%;
}

.container100.home_generic#why_pyf .sides .left_side .header,
.container100.home_generic#why_pyf .sides .left_side .subheader,
.container100.home_generic#why_pyf .sides .right_side .paragraphs {
	color: var(--white);
}

.container100.home_generic#why_pyf .sides .left_side .header {
	font-size: 28px;
	font-weight: 500;
	line-height: 32px;
}

.container100.home_generic#why_pyf .sides .left_side .subheader {
	font-size: 18px;
	line-height: 26px;
	margin-top: 16px;
}

.container100.home_generic#why_pyf .sides .right_side .paragraphs {
	font-size: 16px;
	line-height: 24px;
}

.container100.home_generic#why_pyf .sides .right_side a.btn {
	margin-top: 34px;
	width: 220px;
}

/* ---- Modular - img_logo_list ------------------------------------- */

ul.img_logo_list {
	display: flex;
	flex-wrap: wrap;
	gap: 24px;
	justify-content: center;
	list-style-type: none;
	width: 100%;
}

ul.img_logo_list li {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

ul.img_logo_list li img {
	height: 50px;
	max-width: 200px;
	opacity: 0;
}

/* ---- Modular - Float Popup ------------------------------------- */

.float_popup {
	background-color: var(--white);
	border-radius: 5px;
	max-height: calc(100vh - 160px);
	opacity: 0;
	overflow-x: hidden;
	overflow-y: auto;
	padding: 40px;
	position: fixed;
		top: 80px;
		left: 50%;
	transition: all .3s ease;
	transform: translateX(-50%);
	visibility: hidden;
	width: 800px;
	z-index: 3;
}

.float_popup.show {
	opacity: 1;
	visibility: visible;
}

.float_popup button.btn.floating_close {
	top: 45px;
	right: 40px;
}

.float_popup .title {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 40px;
	letter-spacing: -0.5px;
	line-height: 42px;
	width: 100%;
}

.float_popup .subtitle {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 22px;
	letter-spacing: -0.5px;
	line-height: 26px;
	margin-top: 4px;
	width: 100%;
}

.float_popup .autocomplete_box {
	float: left;
	margin-top: 10px;
	width: 100%;
}

.float_popup .autocomplete_box .choices {
	float: left;
	width: 100%;
}

.float_popup .autocomplete_box .choices .choice {
	background-color: hsl(204, 14%, 32%);
	border-radius: 5px;
    color: var(--white);
    cursor: pointer;
	float: left;
	font-size: 16px;
	line-height: 22px;
	outline: none;
	padding: 6px 12px;
}

.float_popup .autocomplete_box .choices .choice + .choice {
	margin-left: 10px;
}

.float_popup .autocomplete_box .choices .choice:after {
	content: "\f217";
	float: right;
	font-family: foundation-icons;
	font-size: 10px;
	margin-left: 8px;
}

.float_popup .autocomplete_box input[type="text"] {
	border: 1px solid hsl(204, 14%, 32%);
	border-radius: 5px;
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 20px;
	height: 40px;
	line-height: 40px;
	margin-top: 14px;
	outline: none;
	padding: 0 14px;
	width: 100%;
}

.float_popup .autocomplete_box ul {
	background-color: rgba(70,84,93, 0.08);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	color: #497679;
	float: left;
	font-size: 18px;
	font-weight: normal;
	line-height: 22px;
	list-style-type: none;
	max-height: 250px;
	overflow: auto;
	width: 100%;
}

.float_popup .autocomplete_box ul li {
	cursor: pointer;
	float: left;
	padding: 10px 14px;
	position: relative;
	width: 100%;
}

.float_popup .autocomplete_box ul li:nth-of-type(even) {
	background-color: rgba(68,154,213, 0.06);
}

.float_popup .autocomplete_box ul li:hover {
	background-color: rgba(68,154,213, 1);
	color: var(--white);
}

.float_popup .autocomplete_box .ajax_spinner {
	background-image: url(../img/ajax_loader_grey.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: none;
	float: left;
	height: 48px;
	margin-top: 10px;
	width: 100%;
}

.float_popup .autocomplete_box.searching .ajax_spinner {
	display: block;
}

/* ---- Modular - bool ------------------------------------- */

.bool {
	float: left;
}

.bool .icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 24px;
	width: 24px;
}

.bool .icon,
.bool[data-included="not_included"] .icon {
	background-image: url(../img/icon_cross_red.svg);
}

.bool[data-included="included"] .icon {
	background-image: url(../img/icon_tick_green.svg);
}

.bool[data-included="add"] .icon {
	background-image: url(../img/icon_plus_red.svg);
}

.bool .text {
	float: left;
	font-size: 13px;
	letter-spacing: 0.2px;
	line-height: 16px;
	width: 100%;
}

.bool .icon + .text {
	margin-top: 8px;
}

/* ---- Modular - provider_logo ------------------------------------- */

.provider_logo {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 50px;
	position: relative;
	width: 90px;
}

/* ---- Modular - Help Text ---- MIGHT BE OUTDATED --------------------------------- */

.help_circle {
	background-color: var(--baby-blue);
	border-radius: 50%;
	color: var(--white);
	cursor: pointer;
	display: inline-block;
	font-size: 12px;
	line-height: 18px;
	margin: 0 0 0 2px;
	position: relative;
		top: -2px;
	text-align: center;
	width: 18px;
}

.help_circle:hover {
	background-color: hsl(15, 80%, 60%);
}

.help_circle:before {
	content: 'i';
}

.help_circle .help_text {
	background-color: hsl(15, 80%, 60%);
	border-radius: 3px;
	color: var(--white);
	font-size: 15px;
	letter-spacing: 0;
	line-height: 18px;
	opacity: 0;
	padding: 18px 20px;
	position: absolute;
		top: -18px;
		left: 43px;
	text-align: left;
	transition: all .3s ease;
	visibility: hidden;
	width: 370px;
	z-index: 2;
}

.help_circle .help_text.reverse {
	left: -18px;
	right: auto;
}

.help_circle:hover .help_text {
	left: 33px;
	opacity: 1;
	visibility: visible;
}

.tick {
	background-position: center;
	background-repeat: no-repeat;
	background-size: 75%;
	float: left;
	height: 26px;
	margin: 0 10px 0 0;
	width: 26px;
	background-image: url(../img/blue_tick.svg);
}

/* ---- Modular - Help Button ------------------------------------- */

.help_button {
	background-color: var(--baby-blue);
	border-radius: 50%;
	color: var(--white);
	cursor: pointer;
	display: inline-block;
	font-size: 12px;
	line-height: 18px;
	margin: 0 0 0 2px;
	position: relative;
		top: -2px;
	text-align: center;
	width: 18px;
}

.help_button:hover {
	background-color: hsl(15, 80%, 60%);
}

.help_button:before {
	content: 'i';
}

/* ---- Modular - paragraphs ------------------------------------- */

.paragraphs {
	display: flex;
	flex-direction: column;
	gap: 12px;
	width: 100%;
}

.paragraphs p {
	font-size: 18px;
	font-weight: 300;
	line-height: 26px;
	width: 100%;
}

/* ---- Modular - ul expand_collapse_section ------------------------------------- */

ul.expand_collapse_section {
	display: flex;
	flex-direction: column;
	list-style: none;
	width: 100%;
}

ul.expand_collapse_section > li {
	font-size: 18px;
	font-weight: 300;
	line-height: 26px;
	width: 100%;
}

ul.expand_collapse_section > li + li {
	border-top: 1px solid #CCCCCC;
	margin-top: 28px;
	padding-top: 28px;
}

ul.expand_collapse_section > li .head {
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr 24px;
	width: 100%;
}

ul.expand_collapse_section > li .head .label {
	font-size: 18px;
	font-weight: 500;
	line-height: 26px;
}

ul.expand_collapse_section > li .head .indicator {
	background-image: url(../img/icon_plus_expand_blue.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

ul.expand_collapse_section > li[data-expanded="true"] .head .indicator {
	background-image: url(../img/icon_minus_collapse_blue.svg);
}

ul.expand_collapse_section > li .hidden_content {
	display: none;
	width: 100%;
}

ul.expand_collapse_section > li[data-expanded="true"] .hidden_content {
	display: flex;
	flex-direction: column;
}

ul.expand_collapse_section > li .hidden_content .paragraphs p {
	font-size: 16px;
	line-height: 24px;
}

/* ---- Modular - blue_home_box ------------------------------------- */

.blue_home_box {
	background-color: #014A66;
	color: var(--white);
	float: left;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 30px;
	width: 100%;
}

.blue_home_box h1 {
	float: left;
	font-size: 24px;
	font-weight: 500;
	line-height: 30px;
	width: 100%;
}

.blue_home_box a.btn {
	margin-top: 30px;
}

/* ---- Modular - defaqto_product_rating ------------------------------------- */

.defaqto_product_rating {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	color: #aaa;
	float: left;
	font-size: 12px;
	line-height: 15px;
	height: 44px;
	position: relative;
	text-align: center;
	width: 110px;
}

.defaqto_product_rating.d0_star:before {
	content: 'Defaqto rating not available';
}

.defaqto_product_rating.d1_star {
	background-image: url(/static/general/img/defaqto/1_star.png);
}

.defaqto_product_rating.d2_star {
	background-image: url(/static/general/img/defaqto/2_star.png);
}

.defaqto_product_rating.d3_star {
	background-image: url(/static/general/img/defaqto/3_star.png);
}

.defaqto_product_rating.d4_star {
	background-image: url(/static/general/img/defaqto/4_star.png);
}

.defaqto_product_rating.d5_star {
	background-image: url(/static/general/img/defaqto/5_star.png);
}

/* ---- Modular - corner close ------------------------------------- */

.corner_close {
	background-color: hsl(204, 14%, 32%);
	border-radius: 50%;
	color: var(--white);
	cursor: pointer;
	height: 28px;
	font-family: foundation-icons;
	font-size: 16px;
	line-height: 28px;
	position: absolute;
		top: 20px;
		right: 20px;
	text-align: center;
	width: 28px;
}

.corner_close:before {
	content: "\f217";
}

/* ---- Modular - PYF Logo ------------------------------------- */

.pyf_logo {
	background-image: url(../img/site_logo.svg);
	background-position: center left;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 50px;
	position: relative;
	width: 216px;
	z-index: 1;
}

/* ---- Modular - GoCompare Logo ------------------------------------- */

.goco_logo {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-left: 1px solid rgba(87, 87, 86,0.33);
	padding-left: 8px;
	margin-left: 8px;
}

.goco_logo .text{
	font-size: 13px;
	line-height: 13px;
}

.goco_logo img {
	padding-top: 2px;
	width: 160px;
}

@media (min-width: 380px) {
	
	.goco_logo {
		padding-left: 15px;
		margin-left: 15px;
	}
	
	.goco_logo .text{
		font-size: 16px;
		line-height: 16px;
	}
	
	.goco_logo img {
		width: 190px;
	}
}


/* ---- Modular - Questions + question-group ------------------------------------ */

.question-group {
	display: grid;
	float: left;
	gap: 26px;
	grid-template-columns: 1fr;
	width: 100%;
}


/* ################################################################## */
/* #### Lookups - CODE: lokup ####################################### */
/* ################################################################## */

/* Code for JS lookup based CSS goes here to keep it isolated from rest of CSS */


/* ---- Lookups - Address ------------------------------------------ */

.question-group.address .question.house,
.question-group.address .question.house_no,
.question-group.address .question.address_1,
.question-group.address .question.address_2,
.question-group.address .question.address_3,
.question-group.address .question.picker,
.question-group.address .question.summary,
.question-group.address .question.postcode .answer button.back-to-postcode-search,
.question-group.address.not-found .question.postcode .answer button.find-address,
.question-group.address.found .question.house,
.question-group.address.found .question.house_no,
.question-group.address.found .question.postcode,
.question-group.address.completed .question.house,
.question-group.address.completed .question.house_no,
.question-group.address.completed .question.postcode {
	display: none;
}

.question-group.address.not-found .question.house,
.question-group.address.not-found .question.house_no,
.question-group.address.not-found .question.address_1,
.question-group.address.not-found .question.address_2,
.question-group.address.not-found .question.address_3,
.question-group.address.not-found .question.postcode .answer button.back-to-postcode-search,
.question-group.address.found .question.picker,
.question-group.address.completed .question.summary {
	display: block;
}

.question-group.address .question.postcode .answer button.btn.find-address,
.question-group.address .question.postcode .answer button.btn.back-to-postcode-search,
.question-group.address .question.summary .answer button.btn.change {
	clear: both;
	margin-top: 16px;
}

.question-group.address .question.picker button.btn.manual-entry {
	clear: both;
	margin-top: 6px;
}

.question-group.address .question.postcode {
	grid-row: 1;
}

.question-group.address .question.house,
.question-group.address .question.house_no {
	grid-row: 2;
}

.question-group.address .question.address_1 {
	grid-row: 3;
}

.question-group.address .question.address_2 {
	grid-row: 4;
}

.question-group.address .question.address_3 {
	grid-row: 5;
}

.question.postcode input {
	text-transform: uppercase;
}

/* ---- Lookups - Reg Lookup ------------------------------------------ */

.question-group.registration .question.reg_no,
.question-group.registration .question.vehicle_type,
.question-group.registration .question.vehicle_registered,
.question-group.registration .question.vehicle_make,
.question-group.registration .question.vehicle_model,
.question-group.registration .question.vehicle_model_year,
.question-group.registration .question.vehicle_model_date,
.question-group.registration .question.vehicle_colour,
.question-group.registration .question.vehicle_fuel,
.question-group.registration .question.vehicle_version,
.question-group.registration .question.vehicle_doors,
.question-group.registration .question.vehicle_transmission,
.question-group.registration .question.vehicle_drive_type,
.question-group.registration .question.vehicle_date_vehicle_registered,
.question-group.registration .question.vehicle_engine_cc,
.question-group.registration .question.vehicle_text,
.question-group.registration .question.summary,

.question-group.registration .question.reg_no .answer button.btn.lookup-reg,

.question-group.registration .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration .question.reg_no button.btn.manual-entry,
.question-group.registration .question.reg_no .answer button.btn.lookup-reg {
	display: none;
}

.question-group.registration[data-view="initial"] .question.reg_no,
.question-group.registration[data-view="initial"] .question.reg_no button.btn.manual-entry,
.question-group.registration[data-view="initial"] .question.reg_no .answer button.btn.lookup-reg,

.question-group.registration[data-view="searching"] .question.reg_no,
.question-group.registration[data-view="searching"] .question.reg_no button.btn.manual-entry,

.question-group.registration[data-view="found"] .question.summary,

.question-group.registration[data-view="not-found"] .question.reg_no .answer button.btn.back-to-reg,

.question-group.registration[data-view="q-type"] .question.reg_no,
.question-group.registration[data-view="q-type"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-type"] .question.vehicle_type,

.question-group.registration[data-view="q-make"] .question.reg_no,
.question-group.registration[data-view="q-make"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-make"] .question.vehicle_type,
.question-group.registration[data-view="q-make"] .question.vehicle_make,

.question-group.registration[data-view="q-model"] .question.reg_no,
.question-group.registration[data-view="q-model"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-model"] .question.vehicle_type,
.question-group.registration[data-view="q-model"] .question.vehicle_make,
.question-group.registration[data-view="q-model"] .question.vehicle_model,

.question-group.registration[data-view="q-year"] .question.reg_no,
.question-group.registration[data-view="q-year"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-year"] .question.vehicle_type,
.question-group.registration[data-view="q-year"] .question.vehicle_make,
.question-group.registration[data-view="q-year"] .question.vehicle_model,
.question-group.registration[data-view="q-year"] .question.vehicle_model_year,

.question-group.registration[data-view="q-fuel"] .question.reg_no,
.question-group.registration[data-view="q-fuel"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-fuel"] .question.vehicle_type,
.question-group.registration[data-view="q-fuel"] .question.vehicle_make,
.question-group.registration[data-view="q-fuel"] .question.vehicle_model,
.question-group.registration[data-view="q-fuel"] .question.vehicle_model_year,
.question-group.registration[data-view="q-fuel"] .question.vehicle_fuel,

.question-group.registration[data-view="q-transmission"] .question.reg_no,
.question-group.registration[data-view="q-transmission"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-transmission"] .question.vehicle_type,
.question-group.registration[data-view="q-transmission"] .question.vehicle_make,
.question-group.registration[data-view="q-transmission"] .question.vehicle_model,
.question-group.registration[data-view="q-transmission"] .question.vehicle_model_year,
.question-group.registration[data-view="q-transmission"] .question.vehicle_fuel,
.question-group.registration[data-view="q-transmission"] .question.vehicle_transmission,

.question-group.registration[data-view="q-engine"] .question.reg_no,
.question-group.registration[data-view="q-engine"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-engine"] .question.vehicle_type,
.question-group.registration[data-view="q-engine"] .question.vehicle_make,
.question-group.registration[data-view="q-engine"] .question.vehicle_model,
.question-group.registration[data-view="q-engine"] .question.vehicle_model_year,
.question-group.registration[data-view="q-engine"] .question.vehicle_fuel,
.question-group.registration[data-view="q-engine"] .question.vehicle_transmission,
.question-group.registration[data-view="q-engine"] .question.vehicle_engine_cc,

.question-group.registration[data-view="q-text"] .question.reg_no,
.question-group.registration[data-view="q-text"] .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration[data-view="q-text"] .question.vehicle_type,
.question-group.registration[data-view="q-text"] .question.vehicle_make,
.question-group.registration[data-view="q-text"] .question.vehicle_model,
.question-group.registration[data-view="q-text"] .question.vehicle_model_year,
.question-group.registration[data-view="q-text"] .question.vehicle_fuel,
.question-group.registration[data-view="q-text"] .question.vehicle_transmission,
.question-group.registration[data-view="q-text"] .question.vehicle_engine_cc,
.question-group.registration[data-view="q-text"] .question.vehicle_text {
	display: block;
}

.question-group.registration .question.reg_no input:not([disabled]) {
	text-transform: uppercase;
}

.question.reg_no[data-state="valid"] input[type="text"]:disabled,
.question.reg_no[data-state="advisory"] input[type="text"]:disabled {
	background-color: #eaeaea;
	border-color: #ccc;
}


.question-group.registration .question.reg_no .answer button.btn.lookup-reg,
.question-group.registration .question.reg_no .answer button.btn.back-to-reg,
.question-group.registration .question.summary .answer button.btn.change {
	clear: both;
	margin-top: 10px;
}

.question-group.registration .question.reg_no button.btn.manual-entry {
	clear: both;
	margin-top: 6px;
}

.question-group.registration[data-view="not-found"] .question.reg_no button.btn.manual-entry {
	display: none;
}


/* ################################################################## */
/* #### Buttons - CODE: mefqr ####################################### */
/* ################################################################## */


/* ---- button ---------------------------------------- */

.btn,
a.btn,
button.btn {
	align-items: center;
	background-color: #111;
	border: 0;
	border-radius: 58px;
	color: var(--white);
	display: flex;
	float: left;
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	font-weight: bold;
	gap: 8px;
	justify-content: center;
	line-height: 24px;
	outline: none;
	padding: 11px 34px;
	text-align: center;
	text-decoration: none;
}

.btn .icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.btn[data-icon=""] .icon {
	display: none;
}

.btn[data-icon="pen"] .icon {
	background-image: url(../img/icon_pen_red.svg);
}

.btn[data-icon="document"] .icon {
	background-image: url(../img/icon_document_red.svg);
}

.btn[data-icon="question"] .icon {
	background-image: url(../img/icon_question_mark_red.svg);
}

/* ---- Modular - button - Floating Close ------------------------------------- */

button.btn.floating_close {
	background-color: #014A66;
	border: 3px solid #fff;
	border-radius: 50%;
	color: var(--white);
	height: 38px;
	font-family: foundation-icons;
	font-size: 16px;
	line-height: 38px;
	padding: 0;
	position: absolute;
		top: 16px;
	text-align: center;
	width: 38px;
	z-index: 1;
}

button.btn.floating_close {
	right: 34px;
}

button.btn.floating_close:before {
	content: "\f217";
}

/* ---- Modular - button - text_underline --------------------------------- */

.btn[data-kind="text_underline"],
a.btn[data-kind="text_underline"],
button.btn[data-kind="text_underline"] {
	background-color: transparent;
	color: #111;
	font-size: 14px;
	font-weight: normal;
	gap: 8px;
	line-height: 20px;
	padding: 0;
	text-align: left;
	text-decoration: none;
}


.btn[data-kind="text_underline"]:hover,
a.btn[data-kind="text_underline"]:hover,
button.btn[data-kind="text_underline"]:hover {
	text-decoration: underline;
}

.btn[data-kind="text_underline"] .icon,
a.btn[data-kind="text_underline"] .icon,
button.btn[data-kind="text_underline"] .icon {
	min-height: 24px;
	width: 22px;
}

.btn[data-kind="text_underline"][data-color="red"],
a.btn[data-kind="text_underline"][data-color="red"],
button.btn[data-kind="text_underline"][data-color="red"] {
	color: var(--red-cta);
}

.btn[data-kind="text_underline"][data-color="green"],
a.btn[data-kind="text_underline"][data-color="green"],
button.btn[data-kind="text_underline"][data-color="green"] {
	color: var(--green-tick);
}

.btn[data-kind="text_underline"][data-color="blue"],
a.btn[data-kind="text_underline"][data-color="blue"],
button.btn[data-kind="text_underline"][data-color="blue"] {
	color: var(--baby-blue);
}

/* ---- Modular - button - red_text --------------------------------- */

/*
.btn.red_text,
a.btn.red_text,
button.btn.red_text {
	align-items: center;
	background-color: transparent;
	color: var(--red-cta);
	display: flex;
	float: left;
	font-size: 14px;
	font-weight: 400;
	gap: 8px;
	line-height: 18px;
	padding: 0;
	text-decoration: none;
}
*/

/*
.btn.red_text:hover,
a.btn.red_text:hover,
button.btn.red_text:hover {
	text-decoration: underline;
}
*/

/*
.btn.red_text .icon,
a.btn.red_text .icon,
button.btn.red_text .icon {
	min-height: 24px;
	width: 22px;
}
*/

/* ---- Modular - button - rounded --------------------------------- */

.btn[data-kind="rounded"],
a.btn[data-kind="rounded"],
button.btn[data-kind="rounded"] {
	background-color: #000;
	border-radius: 58px;
	color: var(--white);
	font-size: 18px;
	font-weight: bold;
	line-height: 24px;
	min-height: 46px;
	padding: 11px 34px;
	text-align: center;
	align-self: flex-start;
}

.btn[data-kind="rounded"][data-color="red"],
a.btn[data-kind="rounded"][data-color="red"],
button.btn[data-kind="rounded"][data-color="red"] {
	background-color: var(--red-cta);
}

.btn[data-kind="rounded"][data-color="red"]:hover,
a.btn[data-kind="rounded"][data-color="red"]:hover,
button.btn[data-kind="rounded"][data-color="red"]:hover {
	background-color: var(--red-cta-hover);
}

.btn[data-kind="rounded"][data-color="grey"],
a.btn[data-kind="rounded"][data-color="grey"],
button.btn[data-kind="rounded"][data-color="grey"],
.btn[data-kind="rounded"][data-color="grey"]:hover,
a.btn[data-kind="rounded"][data-color="grey"]:hover,
button.btn[data-kind="rounded"][data-color="grey"]:hover {
	background-color: #9b9b9b;
}

.btn[data-kind="rounded"][data-color="white"],
a.btn[data-kind="rounded"][data-color="white"],
button.btn[data-kind="rounded"][data-color="white"],
.btn[data-kind="rounded"][data-color="white"]:hover,
a.btn[data-kind="rounded"][data-color="white"]:hover,
button.btn[data-kind="rounded"][data-color="white"]:hover {
	background-color: #fff;
	color: #014a66;
}

/* ---- Modular - button - rectangle --------------------------------- */

.btn[data-kind="rectangle"],
a.btn[data-kind="rectangle"],
button.btn[data-kind="rectangle"] {
	background-color: #000;
	border-radius: 4px;
	color: var(--white);
	float: left;
	font-size: 18px;
	font-weight: 500;
	line-height: 24px;
	min-height: 46px;
	padding: 11px 34px;
	text-align: center;
	text-decoration: none;
}

.btn[data-kind="rectangle"][data-color="green"],
a.btn[data-kind="rectangle"][data-color="green"],
button.btn[data-kind="rectangle"][data-color="green"] {
	background-color: var(--green-tick);
}

.btn[data-kind="rectangle"][data-color="green"]:hover,
a.btn[data-kind="rectangle"][data-color="green"]:hover,
button.btn[data-kind="rectangle"][data-color="green"]:hover {
	background-color: var(--green-tick-hover);
}

/* ---- Modular - button - searching ---- this is an extra class that can be added to a button, not it's own class ------------- */

.btn.searching span.text,
a.btn.searching span.text,
button.btn.searching span.text {
	opacity: 0;
}

.btn.searching,
a.btn.searching,
button.btn.searching {
	background-image: url(../img/ajax_loader_white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px;
}


/* ################################################################## */
/* #### Form elements and states - CODE: ogtzz ###################### */
/* ################################################################## */


/* ---- multi rules - font family ----------------------------------- */

input,
select {
	font-family: 'Montserrat', sans-serif;
}

/* ---- input - text email number tel ---------------------- */

input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"] {
	background-color: var(--white);
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	color: var(--navy);
	float: left;
	font-size: 16px;
	height: 54px;
	outline: none;
	padding: 0 20px;
	width: 100%;
}

input[type="text"]:disabled,
input[type="email"]:disabled,
input[type="number"]:disabled,
input[type="tel"]:disabled {
	background-color: #eaeaea;
}

input[type="text"]::-webkit-input-placeholder,
input[type="email"]::-webkit-input-placeholder,
input[type="number"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder {
	color: #bbb;
}

/* ---- input - radio checkbox -------------------------------- */

ul.selection {
	display: grid;
	float: left;
	gap: 16px 20px;
	list-style: none;
	grid-template-columns: 1fr;
	width: 100%;
}

ul.selection li {
	float: left;
	position: relative;
	width: 100%;
}

ul.selection li input[type="radio"],
ul.selection li input[type="checkbox"] {
	height: 100%;
	opacity: 0;
	position: absolute;
		top: 0;
		left: 0;
	width: 100%;
}

ul.selection li .option {
	float: left;
}

ul.selection li input[type="radio"] + .option {
	background-color: var(--white);
	border: 1px solid #CCCCCC;
	border-radius: 8px;
	color: var(--navy);
	font-size: 16px;
	height: 100%;
	line-height: 22px;
	outline: none;
	padding: 0 20px;
	width: 100%;
}

ul.selection li input[type="radio"]:checked + .option {
	background-color: #F3FFF9;
	border-color: #2FB072;
}

ul.selection li input[type="checkbox"] + .option {
	color: var(--navy);
	font-size: 16px;
	outline: none;
	width: 100%;
}

ul.selection li input[type="checkbox"]:checked + .option {

}

ul.selection li input[type="radio"]:disabled + .option,
ul.selection li input[type="checkbox"]:disabled + .option {
	background-color: #F6F5F5;
	border-color: #ccc;
	color: #ccc;
}

ul.selection li input[type="radio"] + .option .icon {
}

ul.selection li input[type="checkbox"] + .option .icon {
	background-color: var(--white);
	border: 1px solid var(--navy);
	border-radius: 8px;
	color: var(--navy);
	float: left;
	height: 32px;
	width: 32px;
}

ul.selection li input[type="checkbox"]:checked + .option .icon {
	background-image: url(../img/icon_tick_green.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 16px;
}

ul.selection li .option .text {
	align-items: center;
	display: flex;
	float: left;
	min-height: 52px;
}

ul.selection li input[type="radio"] + .option .text {
	padding: 8px 0;
	width: 100%;
}

ul.selection li input[type="checkbox"] + .option .text {
	min-height: 32px;
	padding-left: 20px;
	width: calc(100% - 32px);
}

ul.selection li input[type="radio"] + .option .text .main {
	font-size: 16px;
	line-height: 22px;
}

/* ---- textarea ----------------------------------- */

textarea {
	border: 1px solid #ccc;
	border-radius: 5px;
	color: var(--navy);
	float: left;
	font-size: 20px;
	letter-spacing: -0.2px;
	line-height: 26px;
	max-width: 100%;
	min-height: 200px;
	min-width: 100%;
	outline: none;
	padding: 7px 14px;
	width: 100%;
}

/* ---- select ----------------------------------- */

.select {
	float: left;
	max-width: 100%;
	position: relative;
	width: 100%;
}

.select select {
	background: var(--white);
	border: 1px solid #ccc;
	border-radius: 8px;
	float: left;
	font-size: 16px;
	height: 54px;
	outline: none;
	padding-left: 20px;
	padding-right: 50px;
	position: relative;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
}

.select:after {
	border-bottom: 2px solid var(--navy);
	border-right: 2px solid var(--navy);
	content: '';
	height: 12px;
	position: absolute;
		top: calc(50% - 8px);
		right: 22px;
	transform: rotate(45deg);
	width: 12px;
	pointer-events: none;
}

/* ---- states - focus ------------------------------------ */

input[type="text"]:focus,
input[type="email"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
.select select:focus {
	border-color: var(--navy);
}


/* ################################################################## */
/* #### Home page - CODE: homeh ##################################### */
/* ################################################################## */


/* ---- other_products ------------------------------------- */

.container100.home_generic#other_products {
	padding: 30px 0;
}

.container100.home_generic#other_products .container {
	align-items: center;
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] {
	gap: 32px;
	grid-template-columns: 1fr;
	margin-top: 36px;
	text-align: center;
	width: 100%;
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li {
	background-color: var(--white);
	border: 1px solid var(--red-cta);
	border-radius: 8px;
	box-shadow: 0px 4px 0px 0px rgba(220,220,220,0.25);
	display: none;
	gap: 12px;
	grid-template-columns: 1fr;
	justify-items: center;
	padding: 26px 20px;
	text-align: center;
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li[data-show-hide="show"] {
	display: grid;
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li .icon {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 56px;
	width: 66px;
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.appliance .icon {
	background-image: url(../img/icon_gauge.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.bicycle .icon {
	background-image: url(../img/icon_bicycle.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.boiler .icon {
	background-image: url(../img/icon_boiler.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.breakdown .icon {
	background-image: url(../img/icon_breakdown.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.funerals .icon {
	background-image: url(../img/icon_leaf.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.gap .icon {
	background-image: url(../img/icon_vehicle_gap.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.gadget .icon {
	background-image: url(../img/icon_mobile_phone.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.home_emergency .icon {
	background-image: url(../img/icon_wrench.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.landlord .icon {
	background-image: url(../img/icon_keys.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.mot_servicing .icon {
	background-image: url(../img/icon_vehicle_gap.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.warranty .icon {
	background-image: url(../img/icon_vehicle_warranty.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li.wedding .icon {
	background-image: url(../img/icon_wedding_rings.svg);
}

.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] li .title {
	color: var(--navy);
	font-size: 16px;
	font-weight: 600;
	line-height: 22px;
	width: 100%;
}

.container100.home_generic#other_products button.btn.view_all {
	margin-top: 36px;
}

/* ---- reasons ------------------------------------- */

.container100.home_generic#reasons {
	background-color: var(--white);
	padding-bottom: 190px;
	padding-top: 70px;
}


/* ################################################################## */
/* #### Product landing page - CODE: wmaph ########################## */
/* ################################################################## */


/* ---- product_info ------------------------------------- */

body[data-page-type="landing"] .container100.home_generic#product_info {
	padding-bottom: 100px;
	padding-top: 0;
}

body[data-page-type="landing"] .container100.home_generic#product_info .container {
	align-items: center;
	display: flex;
	flex-direction: column;
}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="red_tick_circle_list"] {
	margin-top: 20px;
}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="red_tick_circle_list"] li {

}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="stacked"] li.clipboard .icon {
	background-image: url(../img/icon_clipboard.svg);
}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="stacked"] li.lightbulb .icon {
	background-image: url(../img/icon_lightbulb_flash.svg);
}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="stacked"] li.speech .icon {
	background-image: url(../img/icon_speech_smile.svg);
}

body[data-page-type="landing"] .container100.home_generic#product_info ul.icons[data-styling="red_tick_circle_list"] li .info .title {

}

body[data-page-type="landing"] .container100.home_generic#product_info .blue_home_box {
	width: 100%;
}

body[data-page-type="landing"] .container100.home_generic#product_info .how_to_compare {
	display: flex;
	flex-direction: column;
	gap: 40px;
	margin-top: 100px;
	text-align: center;
	width: 100%;
}

/* ---- provider_bar ------------------------------------- */

.container100.home_generic#provider_bar ul.img_logo_list {
	margin-top: 34px;
}

/* ---- to_get_a_quote ------------------------------------- */

.container100.home_generic#to_get_a_quote .container {
	align-items: center;
}

.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"] {
	margin-top: 34px;
}

.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"] li {
	align-content: start;
	border: 1px solid var(--red-cta);
	border-radius: 8px;
	gap: 20px;
	grid-template-columns: 1fr;
	padding: 30px;
}

.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"] li .info {
	display: grid;
	gap: 10px;
	padding-top: 0;
}

.container100.home_generic#to_get_a_quote a.btn {
	margin-top: 34px;
	width: 240px;
	align-self: center;
}

/* ---- faqs ------------------------------------- */

body[data-page-type="landing"] .container100.home_generic#faqs .hidden_content {
	gap: 12px;
	padding-top: 30px;
}

body[data-page-type="landing"] .container100.home_generic#faqs ul.bullet,
body[data-page-type="landing"] .container100.home_generic#faqs .paragraphs p {
	font-size: 16px;
	line-height: 24px;
}

body[data-page-type="landing"] .container100.home_generic#faqs ul.expand_collapse_section {
	margin-top: 34px;
}

body[data-page-type="landing"] .container100.home_generic#faqs ul.expand_collapse_section > li + li {
	margin-top: 32px;
	padding-top: 32px;
}

body[data-page-type="landing"] .container100.home_generic#faqs ul.bullet {
	gap: 2px;
}

body[data-page-type="landing"] .container100.home_generic#faqs ul.bullet li:before {
	height: 4px;
	top: 10px;
	width: 4px;
}

/* ---- blank_white ------------------------------------- */

body[data-page-type="landing"] .container100.home_generic#blank_white {
	background-color: var(--white);
	padding-top: 80px;
	padding-bottom: 120px;
}

/* ################################################################## */
/* #### Terms + Privacy page - CODE: pwmts ########################## */
/* ################################################################## */

.container100.home_generic#terms .container,
.container100.home_generic#privacy .container {
	gap: 12px;
}

.container100.home_generic#terms ul.bullet,
.container100.home_generic#privacy ul.bullet {
	font-size: 18px;
	font-weight: 300;
	gap: 12px;
	line-height: 1.4;
}

.container100.home_generic#terms ul.bullet li:before,
.container100.home_generic#privacy ul.bullet li:before {
	top: 8px;
}

.container100.home_generic#terms a,
.container100.home_generic#privacy a,
.container100.home_generic#about a {
	color: var(--baby-blue);
}

/* ################################################################## */
/* #### About page - CODE: xrqsp #################################### */
/* ################################################################## */


/* ---- about ------------------------------------- */

.container100.home_generic#about {

}

.container100.home_generic#about .container {
	gap: 26px;
}

.container100.home_generic#about .paragraphs.medium p {
	font-size: 22px;
	line-height: 36px;
}

.container100.home_generic#about .paragraphs.small {
	gap: 20px;
}

.container100.home_generic#about .paragraphs.small p {
	font-size: 18px;
	line-height: 30px;
}


/* ################################################################## */
/* #### Contact page - CODE: conta ################################## */
/* ################################################################## */


/* ---- contact ------------------------------------- */

.container100.home_generic#contact {

}

.container100.home_generic#contact .container {
	gap: 40px;
}

.container100.home_generic#contact .left_side {
	flex: 1;
	/*width: calc(100% - 400px - 40px);*/
}

.container100.home_generic#contact .left_side form {
	display: flex;
	flex-direction: column;
	gap: 38px;
}

.container100.home_generic#contact .right_side {
	display: flex;
	flex-direction: column;
	line-height: 24px;
}


/* ################################################################## */
/* #### Style guide page - CODE: styxc ############################## */
/* ################################################################## */

/* ################################################################## */
/* #### Quote page - CODE: lmnbd #################################### */
/* ################################################################## */


/* ---- containers ------------------------------------- */

.container100.quote {
	min-height: calc(100vh - 90px - 192px);
	padding: 40px 0;
}

.container100.quote .container {
	max-width: 680px;
}

/* ---- product_name ------------------------------------- */

.container100.quote .product_name {
	color: #f47948;
	float: left;
	font-size: 42px;
	letter-spacing: -0.5px;
	line-height: 44px;
	margin-top: 20px;
	width: 100%;
}

/* ---- Quote - Form divisions ------------------------------------ */

.form_divisions {
	display: grid;
	float: left;
	gap: 40px;
	grid-template-columns: 1fr;
	margin-top: 40px;
	width: 100%;
}

.form_division {
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
}

.form_division .division_title {
	color: var(--navy);
	font-size: 24px;
	font-weight: 500;
	line-height: 30px;
	width: 100%;
}

/* ---- Quote - Form sections ------------------------------------ */

.form_sections {
	display: grid;
	gap: 40px;
	grid-template-columns: 1fr;
	width: 100%;
}

/* ---- Quote - Form sections ------------------------------------ */

.form_section {
	clear: both;
	display: none;
	float: left;
	position: relative;
	width: 100%;
}

.form_section[data-visible="true"] {
	display: block;
}

.form_section[data-visible="true"] ~ .form_section[data-visible="true"] {
	border-top: 1px solid #ccc;
	margin-top: 0;
	padding-top: 40px;
}

.form_section.hide {
	display: none;
}

.form_section .section_title,
.form_section .section_subtitle {
	color: var(--navy);
	float: left;
	width: 100%;
}

.form_section .section_title {
	display: flex;
	font-size: 24px;
	font-weight: 500;
	justify-content: space-between;
	line-height: 30px;
}

.form_section .section_title .text {

}

.form_section .section_title button {
	background-color: transparent;
	background-image: url(../img/icon_trash_red.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border: 0;
	height: 30px;
	width: 30px;
}

.form_section.undeletable .section_title button {
	display: none;
}

.form_section .section_subtitle {
	font-size: 16px;
	line-height: 22px;
}

.form_section .section_title + .section_subtitle {
	margin-top: 10px;
}

.form_section .paragraphs {
	clear: both;
	float: left;
	margin-top: 38px;
	width: 100%;
}

.form_section .paragraphs p {
	color: var(--navy);
	float: left;
	font-size: 16px;
	line-height: 24px;
	width: 100%;
}

.form_section .paragraphs p a {
	color: var(--baby-blue);
}


/* ---- Quote - Privacy and Terms ------------------------------------- */

.container100.quote .privacy_and_terms {
	background-color: hsl(216, 94%, 95%);
	border-radius: 5px;
	color: hsl(203, 14%, 32%);
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 26px;
	margin: 24px 0 0 0;
	padding: 22px 24px;
	width: 100%;
}

.container100.quote .privacy_and_terms a {
	color: var(--baby-blue);
}

/* ---- Nav Extend ------------------------------------- */

.container100.nav_extend {
	background-color: var(--white);
	padding: 20px 0;
}

/* ---- Home and Product pages - hero_split_generic ------------------------------------- */

.container100.hero_split_generic {
	background-color: #014a66;
	color: var(--white);
	display: flex;
	flex-direction: column;
	min-height: 600px;
}

.container100.hero_split_generic .feature {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	float: left;
	width: 100%;
}

.container100.hero_split_generic .feature img {
	opacity: 0;
	width: 100%;
}
	
.container100.hero_split_generic .information {
	align-items: center;
	display: flex;
	float: left;
	justify-content: flex-end;
	width: 100%;
}

.container100.hero_split_generic .information .align {
	float: right;
	padding: 36px 30px;
	width: 100%;
}

.container100.hero_split_generic .information .align h1 {
	float: left;
	font-size: 30px;
	font-weight: 500;
	line-height: 36px;
	width: 100%;
}

.container100.hero_split_generic .information .align p.subtitle {
	float: left;
	font-size: 18px;
	font-weight: 300;
	line-height: 26px;
	margin-top: 16px;
	width: 100%;
}

.container100.hero_split_generic .information .align a.btn {
	margin-top: 26px;
}

@media (min-width: 920px) {

	.container100.hero_split_generic .feature img {
		display: none;
	}

}

/* ---- Home and Product pages - hero_split_product ------------------------------------- */

.container100.hero_split_product {
	background-color: #014a66;
	color: var(--white);
}

.container100.hero_split_product .feature {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	float: left;
	width: 100%;
}

body[data-journey="mobile_phones"] .container100.hero_split_product .feature,
body[data-journey="warranty"] .container100.hero_split_product .feature {
	background-position: top;
}

.container100.hero_split_product .feature img {
	opacity: 0;
	width: 100%;
}

.container100.hero_split_product .information {
	float: left;
	padding: 32px 30px;
	width: 100%;
	z-index: 1;
}

.container100.hero_split_product .information h1 {
	float: left;
	font-size: 24px;
	font-weight: 500;
	line-height: 30px;
	width: 100%;
}

/* ---- Hero ------------------------------------- */

.quote.transfer .container100.hero {
	align-content: center;
}

.container100.hero {
	overflow: hidden;
}

body.landing .container100.hero {
	padding: 80px 0 290px 0;
}

body.calculating .container100.hero,
body.transfer .container100.hero {
	min-height: calc(100vh - 90px - 192px);
}

body.contact .container100.hero {
	padding: 80px 0;
}

body.knowledge_base .container100.hero,
body.style_guide .container100.hero {
	padding: 80px 0;
}

.container100.hero .container {
	z-index: 1;
}

.container100.hero h1 {
	color: hsl(207, 23%, 30%);
	float: left;
	font-size: 42px;
	font-weight: normal;
	letter-spacing: -0.5px;
	line-height: 42px;
	width: 100%;
}

body.contact .container100.hero h1,
body.knowledge_base .container100.hero h1,
body.style_guide .container100.hero h1 {
	text-align: center;
}

.container100.hero p.subtitle {
	color: hsla(207, 23%, 30%, 0.8);
	float: left;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	padding: 13px 420px 0 0;
	width: 100%;
}

body.contact .container100.hero p.subtitle,
body.knowledge_base .container100.hero p.subtitle,
body.style_guide .container100.hero p.subtitle {
	padding: 18px 0 0 0;
	text-align: center;
}

.container100.hero p.subtitle strong {
	color: hsl(207, 23%, 30%);
	font-weight: normal;
}

.container100.hero p.subtitle a {
	color: var(--baby-blue);
	text-decoration: underline;
}

.container100.hero p.subtitle button[type="submit"] {
	background: transparent;
	border: 0;
	color: var(--baby-blue);
	cursor: pointer;
	display: inline;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	text-decoration: underline;
}

.container100.hero .transfer_prov_logo {
	background-position: left;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	margin: 20px 0 0 0;
	height: 60px;
	width: 100%;
}

body.privacy-and-cookies .container100.hero ul,
body.terms-and-conditions .container100.hero ul {
	color: #497679;
	float: left;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 26px;
	list-style-type: none;
	width: 100%;
}

body.privacy-and-cookies .container100.hero ul li,
body.terms-and-conditions .container100.hero ul li {
	float: left;
	margin: 13px 0 0 0;
	padding: 0 0 0 20px;
	position: relative;
	width: 100%;
}

body.privacy-and-cookies .container100.hero ul li:before,
body.terms-and-conditions .container100.hero ul li:before {
	background-color: #5b697c;
	border-radius: 50%;
	content: '';
	height: 6px;
	position: absolute;
		top: 10px;
		left: 0;
	width: 6px;
}

body.calculating .container100.hero .providers {
	float: left;
	height: 50px;
	margin: 40px 0 0 0;
	overflow: hidden;
	position: relative;
	width: 440px;
}

body.calculating .container100.hero .providers:before,
body.calculating .container100.hero .providers:after {
	content: '';
	height: 100%;
	position: absolute;
		top: 0;
	width: 40px;
	z-index: 1;
}

body.calculating .container100.hero .providers:before {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dce8ed+0,dce8ed+100&1+0,0+100 */
	background: -moz-linear-gradient(left, rgba(220,232,237,1) 0%, rgba(220,232,237,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(220,232,237,1) 0%,rgba(220,232,237,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(220,232,237,1) 0%,rgba(220,232,237,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dce8ed', endColorstr='#00dce8ed',GradientType=1 ); /* IE6-9 */

	left: 0;
}

body.calculating .container100.hero .providers:after {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dce8ed+0,dce8ed+100&0+0,1+100 */
	background: -moz-linear-gradient(left, rgba(220,232,237,0) 0%, rgba(220,232,237,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(220,232,237,0) 0%,rgba(220,232,237,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(220,232,237,0) 0%,rgba(220,232,237,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00dce8ed', endColorstr='#dce8ed',GradientType=1 ); /* IE6-9 */

	right: 0;
}

@keyframes move_prov {
    from {left: 0;}
    to {left: -3000px;}
}

body.calculating .container100.hero .providers ul {
	animation-duration: 13s;
	animation-name: move_prov;
	animation-timing-function: linear;
	float: left;
	list-style-type: none;
    padding: 0 5px;
	position: absolute;
		top: 0;
		left: 0;
	white-space: nowrap;
	width: 3000px;
}

body.calculating .container100.hero .providers ul li {
	float: left;
	margin: 0 10px;
}

body.calculating .container100.hero .providers ul li img {
    border-radius: 3px;
	float: left;
    height: 50px;
}

.container100.hero .hero_buttons {
	clear: both;
	float: left;
	margin: 26px 0 0 0;
	width: 100%;
}

.container100.hero .hero_buttons .button {
	background-color: #f47948;
	border: 0;
	border-bottom: 5px solid #ed6335;
	border-radius: 5px;
	color: var(--white);
	cursor: pointer;
	float: left;
	font-size: 20px;
	line-height: 42px;
	margin: 0 18px 0 0;
	outline: none;
	padding: 0 20px;
}

.container100.hero .hero_buttons .button.disabled {
	cursor: auto;
	filter: grayscale(1);
}

.container100.hero .button_info {
	color: hsla(207, 23%, 30%, 0.8);
	float: left;
	font-size: 15px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 20px;
	margin-top: 13px;
	padding-right: 420px;
	width: 100%;
}

.container100.hero .button_info strong {
	color: hsl(207, 23%, 30%);
	font-weight: normal;
}

/* ---- Hero Illustration ------------------------------------- */

.container100.hero_illustration {
	overflow: hidden;
}

body.index .container100.hero_illustration,
body.calculating .container100.hero_illustration {
	margin: -210px 0 0 0;
}

body.about .container100.hero_illustration,
body.privacy-and-cookies .container100.hero_illustration,
body.terms-and-conditions .container100.hero_illustration {
	padding: 0;
}

body.about .container100.hero_illustration:before,
body.privacy-and-cookies .container100.hero_illustration:before,
body.terms-and-conditions .container100.hero_illustration:before {
	background-color: #68a2a5;
	content: '';
	height: 31px;
	position: absolute;
		bottom: 0;
		left: 0;
	width: 100%;
}

body.contact .container100.hero_illustration {
	display: none;
}

body.contact.success .container100.hero_illustration {
	height: 34px;
	margin: 0;
}

.container100.hero_illustration .illustration {
	background-position: center bottom;
	float: left;
	position: relative;
	width: 100%;
}

body.site_main .container100.hero_illustration .illustration {
	background-image: url(../img/pro5.jpg);
	bottom: 0;
	left: calc(50% - 610px);
	height: 450px;
	width: 1220px;
}

body.index .container100.hero_illustration .illustration,
body.calculating .container100.hero_illustration .illustration {
	/* background-image: url(../images/funeral_hill_1b.jpg); */
	background-image: url(../images/funeral_hill_edit.svg);
	bottom: 0;
	left: calc(50% - 610px);
	height: 450px;
	width: 1220px;
}

body.index .container100.hero_illustration:before,
body.calculating .container100.hero_illustration:before {
	background-color: #6a9fa5;
	content: '';
	height: 43px;
	position: absolute;
		bottom: 0;
		left: 0;
	width: 100%;
}

body.about .container100.hero_illustration .illustration,
body.privacy-and-cookies .container100.hero_illustration .illustration,
body.terms-and-conditions .container100.hero_illustration .illustration,
body.contact .container100.hero_illustration .illustration {
	background-image: url(../images/funeral_hill_edit.svg);
	height: 300px;
	bottom: 0;
	left: calc(50% - 662px);
	width: 1324px;
}

body.knowledge_base .container100.hero_illustration .illustration {
	/* background-image: url(../images/knowledge_street.svg); */
	background-image: url(../images/funeral_hill_edit.svg);
	height: 270px;
	bottom: 0;
	left: calc(50% - 916px);
	width: 1832px;
}

body.knowledge_base .container100.hero_illustration:before {
	background-color: #68a2a5;
	content: '';
	height: 28px;
	position: absolute;
		bottom: 0;
		left: 0;
	width: 100%;
}

/* ---- Start Here Quote ------------------------------------- */

.container100.start_here_quote {
	background-color: var(--white);
	padding: 40px 0;
}

body.index .container100.start_here_quote {
	padding: 35px 0 68px 0;
	z-index: 1;
}

body.about .container100.start_here_quote,
body.privacy-and-cookies .container100.start_here_quote,
body.terms-and-conditions .container100.start_here_quote {
	background-color: var(--white);
	display: none;
	padding: 40px 0;
}

.container100.start_here_quote .start_here {
	background-image: url(../images/start_here.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 35px;
	width: 156px;
}

.container100.start_here_quote .text {
	float: left;
	font-size: 20px;
	line-height: 42px;
}

.container100.start_here_quote .right {
	float: right;
}

.container100.start_here_quote .right a .button {
	background-color: hsl(26, 82%, 60%);
	border: 0;
	border-bottom: 5px solid hsl(25, 74%, 54%);
	border-radius: 5px;
	color: var(--white);
	cursor: pointer;
	float: left;
	font-size: 20px;
	line-height: 20px;
	outline: none;
	padding: 10px 16px;
	text-align: center;
	text-decoration: none;
}

.container100.start_here_quote .need_to_insure {
	border: 1px solid var(--baby-blue);
	border-radius: 5px;
	clear: both;
	color: var(--baby-blue);
	float: left;
	font-size: 20px;
	line-height: 30px;
	margin: 20px 0 0 0;
	padding: 8px 20px;
}

.container100.start_here_quote .need_to_insure .circle {
	background-color: var(--baby-blue);
	border-radius: 50%;
	float: right;
	height: 28px;
	margin: 0 0 0 15px;
	position: relative;
	width: 28px;
}

.container100.start_here_quote .need_to_insure .circle:before {
	border-color: transparent transparent transparent var(--white);
	border-style: solid;
	border-width: 4px 0 4px 8px;
	content: '';
	height: 0;
	position: absolute;
		top: calc(50% - 4px);
		left: calc(50% - 3px);
	width: 0;
}

.container100.start_here_quote .illustration {
	float: left;
	position: relative;
	width: 100%;
}



/* ---- Save Up To ------------------------------------- */

.container100.save_up_to {
	background-color: var(--white);
	height: 230px;
	padding: 34px 0 0 0;
}

.container100.save_up_to .illustration {
	background-image: url(../images/funeral_hill_edit.svg);
	background-position: right bottom;
	background-size: 1370px auto;
	display: none;
	height: calc(100% + 54px);
	position: absolute;
		bottom: -54px;
		right: calc(50% + 15px);
	width: 780px;
}

.container100.save_up_to .center {
	padding: 0 0 0 15px;
	position: absolute;
		top: 50%;
		left: 50%;
	transform: translateY(-50%);
	width: 480px;
}

.container100.save_up_to .center .text_a {
	color: #5b697c;
	float: left;
	font-size: 30px;
	letter-spacing: 0;
	line-height: 32px;
	width: 100%;
}

.container100.save_up_to .center .text_a span {
	color: #ea5770;
}

.container100.save_up_to .center .text_b {
	color: var(--baby-blue);
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 14px;
	padding: 10px 0 0 0;
	width: 100%;
}

/* ---- Did You Know ------------------------------------- */

.container100.did_you_know {
	/*background-color: #6ea2a6;*/
	background-color: #2f4652;
	height: 284px;
	margin: 0;
	padding: 34px 0 0 0;
}

.container100.did_you_know .illustration {
	height: 250px;
	position: absolute;
		bottom: -1px;
		right: calc(50% + 15px);
	width: 502px;
}

.container100.did_you_know .illustration {
	background-image: url(../images/about_man_bike_fence.svg);
}

.container100.did_you_know .center {
	padding: 0 0 0 15px;
	position: absolute;
		top: 50%;
		left: calc(50% + 15px);
	transform: translateY(-50%);
	width: 480px;
}

.container100.did_you_know .center {
	border-left: 4px solid rgba(255,255,255,0.4);
	padding: 0 0 0 20px;
	width: 465px;
}

.container100.did_you_know .center .text_a {
	color: var(--white);
	float: left;
	font-size: 30px;
	letter-spacing: 0;
	line-height: 32px;
	width: 100%;
}

.container100.did_you_know .center .text_a span {
	color: #ea5770;
}

.container100.did_you_know .center .text_b {
	color: var(--white);
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 26px;
	padding: 10px 0 0 0;
	width: 100%;
}

/* ---- Benefit ------------------------------------- */

.container100.benefit {
	background-color: #fce7bf;
	margin: 0;
	padding: 60px 0;
}

.container100.benefit .left {
	float: left;
	width: 100%;
}

.container100.benefit .left .text_a {
	color: #497679;
	float: left;
	font-size: 30px;
	letter-spacing: 0;
	line-height: 32px;
	padding: 0;
	width: 100%;
}

.container100.benefit .left .text_b {
    color: #497679;
	float: left;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 26px;
    padding: 26px 0 0 0;
}

.container100.benefit .right {
	background-color: #497679;
	border-radius: 10px;
	float: left;
	margin: 34px 0 0 0;
	padding: 34px;
	width: 100%;
}

.container100.benefit .right .text_a {
	color: var(--white);
	float: left;
	font-size: 30px;
	letter-spacing: 0;
	line-height: 32px;
	width: 100%;
}

.container100.benefit .right .text_b {
    color: var(--white);
	float: left;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 26px;
    padding: 26px 0 0 0;
}

.container100.benefit .right ul {
	float: left;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 26px;
    list-style-type: none;
    padding: 6px 0 0 0;
}

.container100.benefit .right ul li {
    clear: both;
	float: left;
    font-size: 20px;
    font-weight: normal;
    letter-spacing: 0;
    line-height: 26px;
    margin: 20px 0 0 0;
}

.container100.benefit .right ul li a {
    color: #c0dad8;
	text-decoration: none;
}

.container100.benefit .right ul li a:before {
	background-image: url(../images/chevron.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	float: left;
	height: 26px;
	float: left;
	margin: 0 12px 0 0;
	width: 12px;
}

/* ---- Before You Continue ------------------------------------- */

.container100.before_you_continue {
	padding: 40px 0 60px 0;
}

.container100.before_you_continue .text_a {
	color: hsl(204, 14%, 32%);
	font-size: 24px;
	letter-spacing: 0;
	line-height: 30px;
}

.container100.before_you_continue ul {
	color: hsla(204, 14%, 32%, 0.8);
	float: left;
	font-size: 20px;
	line-height: 26px;
	list-style-type: none;
}

.container100.before_you_continue ul li {
	float: left;
	margin: 13px 0 0 0;
	padding: 0 0 0 20px;
	position: relative;
}

.container100.before_you_continue ul li:before {
	background-color: #ea5770;
	border-radius: 50%;
	content: '';
	height: 6px;
	position: absolute;
		top: 11px;
		left: 0;
	width: 6px;
}

.container100.before_you_continue ul .mobile_help_text {
	display: none;
}

/* ---- About + Terms + Privacy + Who Are Defaqto ------------------------------------- */

.container100.about,
.container100.terms,
.container100.privacy,
.container100.who_are_defaqto {
	padding: 60px 0;
}

.container100.about h1,
.container100.terms h1,
.container100.privacy h1,
.container100.who_are_defaqto h1 {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 42px;
	font-weight: normal;
	letter-spacing: -0.5px;
	line-height: 32px;
	width: 100%;
}

.container100.who_are_defaqto h2 {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 24px;
	letter-spacing: 0;
	line-height: 30px;
	margin-top: 30px;
	width: 100%;
}

.container100.about .medium,
.container100.terms .medium,
.container100.privacy .medium,
.container100.who_are_defaqto .medium {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 22px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	margin: 28px 0 0 0;
	width: 100%;
}

.container100.about .light,
.container100.terms .light,
.container100.privacy .light,
.container100.who_are_defaqto .light {
	color: hsla(204, 14%, 32%, 0.8);
	float: left;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	margin: 18px 0 0 0;
	width: 100%;
}

.container100.about .light a,
.container100.terms .light a,
.container100.privacy .light a,
.container100.who_are_defaqto .light a {
	color: var(--baby-blue);
	text-decoration: underline;
}

.container100.about ul,
.container100.terms ul,
.container100.privacy ul,
.container100.who_are_defaqto ul {
	color: #5b697c;
	float: left;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	list-style-type: none;
	width: 100%;
}

.container100.about ul li,
.container100.terms ul li,
.container100.privacy ul li,
.container100.who_are_defaqto ul li {
	float: left;
	margin: 18px 0 0 0;
	padding: 0 0 0 20px;
	position: relative;
	width: 100%;
}

.container100.about ul li:before,
.container100.terms ul li:before,
.container100.privacy ul li:before,
.container100.who_are_defaqto ul li:before {
	background-color: #5b697c;
	border-radius: 50%;
	content: '';
	height: 6px;
	position: absolute;
		top: 11px;
		left: 0;
	width: 6px;
}

/* ---- Contact ------------------------------------- */

.container100.contact_form {
	background-color: var(--white);
	padding: 60px 0;
}

.container100.contact_form .left_side {
	float: left;
	padding: 0 30px 0 0;
	position: relative;
	width: 54%;
	z-index: 1;
}

/* ---- Knowledge Links ------------------------------------- */

.container100.home_generic#knowledge_links .links_row {
	border-top: 1px solid #eee;
	float: left;
	margin: 60px 0 0 0;
	padding: 60px 0 0 0;
	width: 100%;
}

.container100.home_generic#knowledge_links .links_row:nth-of-type(1) {
	border-top: 0;
	margin: 0;
	padding: 0;
}

.container100.home_generic#knowledge_links .links_row .links_site_title {
	color: hsl(204, 12%, 48%);
	float: left;
	font-size: 32px;
	line-height: 26px;
	width: 100%;
}

.container100.home_generic#knowledge_links .links_row .links_column {
	float: left;
	margin: 38px 0 0 0;
	width: 298px;
}

.container100.home_generic#knowledge_links .links_row .links_column.second {
	margin: 38px 33px 0 33px;
}

.container100.home_generic#knowledge_links .links_row .links_column .links_title {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 18px;
	line-height: 24px;
	width: 100%;
}

.container100.home_generic#knowledge_links .links_row .links_column ul + .links_title {
	margin: 38px 0 0 0;
}

.container100.home_generic#knowledge_links .links_row .links_column ul {
	float: left;
	font-size: 18px;
	line-height: 24px;
	list-style-type: none;
	width: 100%;
}

.container100.home_generic#knowledge_links .links_row .links_column ul li {
	float: left;
	margin: 14px 0 0 0;
	width: 100%;
}

.container100.home_generic#knowledge_links .links_row .links_column ul li a {
	color: var(--baby-blue);
}

/* ---- Knowledge Base ------------------------------------- */

.container100.knowledge_base {
	padding: 70px 0 80px 0;
}

.container100.knowledge_base .container {
	position: static;
}

.container100.knowledge_base h1 {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 42px;
	font-weight: normal;
	letter-spacing: -0.5px;
	line-height: 44px;
	width: 100%;
}

.container100.knowledge_base .left_bar {
	float: left;
	margin: 60px 0 0 0;
	padding: 0 32px 0 0;
	width: 220px;
}

body.left_fix .container100.knowledge_base .left_bar {
	margin: 0;
	position: fixed;
		top: 32px;
}

body.left_fix_end .container100.knowledge_base .left_bar {
	margin: 0;
	position: absolute;
		bottom: 80px;
}

.container100.knowledge_base .left_bar ul {
	float: left;
	font-size: 16px;
	letter-spacing: 0;
    line-height: 22px;
	list-style-type: none;
	width: 100%;
}

.container100.knowledge_base .left_bar ul li {
	float: left;
	margin: 15px 0 0 0;
	width: 100%;
}

.container100.knowledge_base .left_bar ul li:nth-of-type(1) {
	margin: 0;
}

.container100.knowledge_base .left_bar ul li a {
	color: #f47948;
	text-decoration: none;
}

.container100.knowledge_base .right_bar {
	border-left: 1px solid #5b697c;
	float: right;
	margin: 60px 0 0 0;
	padding: 0 0 0 32px;
	width: calc(100% - 220px);
}

.container100.knowledge_base .right_bar .text_a {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 24px;
	letter-spacing: 0;
	line-height: 30px;
	padding: 30px 0 0 0;
	width: 100%;
}

.container100.knowledge_base .right_bar .text_b {
	color: #5b697c;
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 28px;
	padding: 18px 0 0 0;
	width: 100%;
}

.container100.knowledge_base .right_bar .text_b.italic {
	color: var(--baby-blue);
	font-style: italic;
}

.container100.knowledge_base .right_bar .text_b:nth-of-type(1) {
	padding: 0;
}

.container100.knowledge_base .right_bar .text_b a {
	color: var(--baby-blue);
	text-decoration: underline;
}

.container100.knowledge_base .right_bar ul {
	color: #5b697c;
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 26px;
	list-style-type: none;
	padding: 5px 0 0 0;
	width: 100%;
}

.container100.knowledge_base .right_bar ul li {
	color: #5b697c;
	float: left;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 26px;
	list-style-type: none;
	margin: 8px 0 0 0;
	padding: 0 0 0 19px;
	position: relative;
	width: 100%;
}

.container100.knowledge_base .right_bar ul li:before {
	background-color: #5b697c;
	border-radius: 50%;
	content: '';
	height: 4px;
	position: absolute;
		top: 12px;
		left: 0;
	width: 4px;
}

.container100.knowledge_base .right_bar .disclaimer {
	color: #5b697c;
	float: left;
	font-size: 16px;
	letter-spacing: 0;
	line-height: 22px;
	padding: 30px 0 0 0;
}

.container100.knowledge_base .right_bar .disclaimer strong {
	font-weight: normal;
}

/* ---- Quote - Buttons ------------------------------------- */

.container100.quote .buttons {
	float: left;
	margin-top: 40px;
	width: 100%;
}

.container100.quote .buttons button.submit {
	float: right;
}

/* ---- Quote - Tinytext ---- Used for small print etc at bottom of quote --------------------------------- */

.container100.quote .tinytext {
	float: left;
	font-size: 12px;
	line-height: 18px;
	margin: 30px 0 0 0;
	width: 100%;
}


/* ################################################################## */
/* #### Calculating - CODE: mghwe ################################### */
/* ################################################################## */


/* ---- Quote - Calculating ------------------------------------- */

.container100.calculating {
	min-height: calc(100vh - 95px - 340px - 192px);
	padding: 80px 0 0 0;
	position: relative;
}

.container100.calculating .getting_prices {
	color: #5b697c;
	float: left;
	font-size: 52px;
	letter-spacing: -1px;
	line-height: 42px;
	width: 100%;
}

.container100.calculating .providers {
	float: left;
	height: 50px;
	margin: 40px 0 0 0;
	opacity: 0.75;
	overflow: hidden;
	position: relative;
	width: 400px;
}

.container100.calculating .providers:before,
.container100.calculating .providers:after {
	content: '';
	height: 100%;
	position: absolute;
		top: 0;
	width: 50px;
	z-index: 1;
}

.container100.calculating .providers:before {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dce8ed+0,dce8ed+100&1+0,0+100 */
	background: -moz-linear-gradient(left, rgba(220,232,237,1) 0%, rgba(220,232,237,0) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(220,232,237,1) 0%,rgba(220,232,237,0) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(220,232,237,1) 0%,rgba(220,232,237,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dce8ed', endColorstr='#00dce8ed',GradientType=1 ); /* IE6-9 */

	left: 0;
}

.container100.calculating .providers:after {
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#dce8ed+0,dce8ed+100&0+0,1+100 */
	background: -moz-linear-gradient(left, rgba(220,232,237,0) 0%, rgba(220,232,237,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(220,232,237,0) 0%,rgba(220,232,237,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(220,232,237,0) 0%,rgba(220,232,237,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00dce8ed', endColorstr='#dce8ed',GradientType=1 ); /* IE6-9 */

	right: 0;
}

@keyframes move_prov {
    from {left: 0;}
    to {left: -1170px;}
}

.container100.calculating .providers ul {
	animation-duration: 24s;
	animation-name: move_prov;
	animation-timing-function: linear;
	float: left;
	list-style-type: none;
	position: absolute;
		top: 0;
		left: 0;
	white-space: nowrap;
	width: 1570px;
}

.container100.calculating .providers ul li {
	float: left;
	margin: 0 0 0 30px;
}

.container100.calculating .providers ul li img {
	float: left;
	height: 50px;
}


/* ################################################################## */
/* #### Results - CODE: uuant ####################################### */
/* ################################################################## */


/* ---- Results ------------------------------------- */

.container100.results {
	color: #333e48;
	font-size: 14px;
	line-height: 14px;
	min-height: calc(100vh - 90px - 176px);
	padding: 40px 0;
}

.container100.results .result_form_section {
	border: 1px solid #5b697c;
	border-radius: 5px;
	float: left;
	margin: 20px 0 0 0;
	padding: 12px;
	width: 100%;
}

.container100.results .result_form_section .section_title {
	color: #5b697c;
	float: left;
	font-size: 24px;
	letter-spacing: 0;
	line-height: 26px;
	margin: 12px;
}

.container100.results .result_form_section ul.summary {
	color: #5b697c;
	float: left;
	font-size: 19px;
	letter-spacing: -0.3px;
	line-height: 26px;
	list-style-type: none;
	position: relative;
	width: 100%;
}

.container100.results .result_form_section ul.summary li {
	float: left;
	margin: 6px 12px;
	padding: 0 0 0 36px;
	position: relative;
	width: calc(50% - 24px);
}

.container100.results .result_form_section ul.summary li:before {
	background-color: #da7475;
	background-image: url(../img/white_cross.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 52%;
	border-radius: 50%;
	content: '';
	float: left;
	height: 26px;
	position: absolute;
		top: 0;
		left: 0;
	width: 26px;
}

.container100.results .result_form_section ul.summary li.included:before {
	background-color: var(--baby-blue);
	background-image: url(../img/white_tick.svg);
	background-size: 65%;
}

.container100.results .result_form_section .switches {
	float: left;
	padding: 10px 0 0;
	position: relative;
	width: 100%;
}

.container100.results .result_form_section .switches .switch {
	float: left;
	line-height: 20px;
	margin: 10px 0 0 0;
	position: relative;
	width: calc(50% - 12px);
}

.container100.results .result_form_section .switches .switch:nth-of-type(even) {
	float: right;
}

.container100.results .result_form_section .switches .switch input {
	cursor: pointer;
	float: left;
	height: 100%;
	opacity: 0;
	position: absolute;
		top: 0;
		left: 0;
	width: 100%;
	z-index: 1;
}

.container100.results .result_form_section .switches .switch .toggle {
	background-color: var(--white);
	border: 2px solid #5b697c;
	border-radius: 3px;
	color: #ea5770;
	float: right;
	font-family: foundation-icons;
	font-size: 0;
	height: 26px;
	line-height: 22px;
	text-align: center;
	transition: all .2s ease;
	width: 26px;
}

.container100.results .result_form_section .switches .switch .toggle:before {
	content: "\f126";
}

.container100.results .result_form_section .switches .switch input:checked + .toggle {
	font-size: 16px;
}

.container100.results .result_form_section .switches .switch .name {
	color: #5b697c;
	float: left;
	font-size: 19px;
	letter-spacing: -0.3px;
	line-height: 26px;
	padding: 0 10px 0 0;
}

.container100.results .result_form_section .switches .switch .tooltip {
	background-color: #dd6a78;
	border-radius: 3px;
	color: var(--white);
	opacity: 0;
	padding: 18px 20px;
	position: absolute;
		top: calc(100% + 30px);
		left: -70px;
	transition: all .2s ease;
	visibility: hidden;
	width: 300px;
	z-index: 1;
}

.container100.results .demands_needs {
	background-color: hsl(204, 63%, 55%);
	border-radius: 3px;
	color: hsla(0, 0%, 100%, 0.8);
	float: left;
	font-size: 16px;
	line-height: 22px;
	min-height: 94px;
	padding: 14px 150px 14px 150px;
	position: relative;
	width: 100%;
}

.container100.results .demands_needs strong {
	color: hsl(0, 0%, 100%, 1);
	font-size: 17px;
	font-weight: normal;
	letter-spacing: -0.1px;
}

.container100.results .demands_needs .quotes_found {
	background-color: #f9c769;
	border: 3px solid var(--white);
	border-radius: 50%;
	color: var(--white);
	font-size: 14px;
	height: 110px;
	line-height: 16px;
	margin: 0;
	position: absolute;
		top: calc(50% - 55px);
		left: 20px;
	text-align: center;
	width: 110px;
}

.container100.results .demands_needs .quotes_found .center {
	padding: 0 12px;
	position: absolute;
		top: 50%;
	text-align: center;
	transform: translateY(-50%);
	width: 100%;
}

.container100.results .demands_needs .quotes_found .large {
	float: left;
	font-size: 32px;
	line-height: 24px;
	margin: 0 0 6px 0;
	width: 100%;
}

.container100.results .demands_needs .summary {
	float: left;
	width: 100%;
}

.container100.results .demands_needs ul.links {
	color: var(--white);
	font-size: 14px;
	line-height: 26px;
	list-style: none;
	margin: 0;
	position: absolute;
		top: calc(50% - 32px);
		right: 20px;
	text-align: center;
	width: 110px;
}

.container100.results .demands_needs ul.links li {
	border: 1px solid var(--white);
	border-radius: 3px;
	color: var(--white);
	float: left;
	margin: 8px 0 0 0;
	padding: 0 10px;
	width: 100%;
}

.container100.results .demands_needs ul.links a:nth-of-type(1) li {
	margin: 0;
}

.container100.results .demands_needs ul.links a:hover li {
	background-color: var(--white);
	color: hsl(204, 63%, 55%);
}

/* ---- Results - tailor_your_cover - your_cover_needs ------------------------------------ */

.container100.results .your_cover_needs_btn {
	margin-top: 20px;
}

.container100.results .your_cover_needs_btn {
	margin-top: 10px;
}

.container100.results .your_cover_needs_btn:before {
	content: "\f129";
}







.sliding_bar.filtering .questions {
	gap: 0;
}

.sliding_bar.filtering .heading,
.sliding_bar.filtering .buttons,
.sliding_bar.filtering .questions .question {
	padding-left: 20px;
	padding-right: 20px;
}

.sliding_bar.filtering .buttons {
	display: grid;
	float: left;
	gap: 8px;
	justify-items: start;
	width: 100%;
}

.sliding_bar.filtering .buttons .btn {

}

.sliding_bar.filtering .questions {
	float: left;
	width: 100%;
}

.sliding_bar.filtering .questions .question,
.sliding_bar.filtering .questions .question + .question {
	margin-top: 0;
}

.sliding_bar.filtering .questions .question {
	padding-bottom: 16px;
	padding-top: 16px;
}

.sliding_bar.filtering .questions .question + .question {
	border-top: 1px solid var(--grey-1);
}

.sliding_bar.filtering .questions .question .label {
	font-size: 15px;
	line-height: 18px;
}

.sliding_bar.filtering .questions .question .help_section {
	display: none;
}
	
.sliding_bar.filtering .questions .question .answer {
	margin-top: 10px;
}

.sliding_bar.filtering .questions .question .answer .select {

}

.sliding_bar.filtering .questions .question .answer .select select {
	height: 46px;
}

.sliding_bar.filtering .questions .question .answer ul.selection li {
	width: 100%;
}

/* ---- Results - sliding bar - more_info ------------------------------------ */

.sliding_bar.more_info .segment.blue {
	gap: 20px;
}

.sliding_bar.more_info .segment.blue .product {
	align-items: center;
	display: grid;
	gap: 20px;
	grid-template-columns: 1fr;
	justify-items: center;
	width: 100%;
}

.sliding_bar.more_info .segment.blue .provider_logo {
	background-color: #fff;
	border-radius: 3px;
	height: 60px;
	padding: 10px;
	width: 100px;
}

.sliding_bar.more_info .segment.blue .prices {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	text-align: center;
	width: 100%;
}

.sliding_bar.more_info .segment.blue .prices .price_info {
	display: grid;
	gap: 12px;
	grid-template-rows: 1fr auto;
}

.sliding_bar.more_info .segment.blue .prices .price_info a {
	justify-self: center;
}

.sliding_bar.more_info .segment.blue .prices .price_info .frequency,
.sliding_bar.more_info .segment.blue .prices .price_info .price {
	width: 100%;
}

.sliding_bar.more_info .segment.blue .prices .price_info .frequency {
	color: rgba(255,255,255,0.7);
	font-size: 13px;
	line-height: 20px;
}

.sliding_bar.more_info .segment.blue .prices .price_info .display {
	align-items: center;
	display: grid;
	gap: 4px;
	justify-content: center;
}

.sliding_bar.more_info .segment.blue .prices .price_info .display .price {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.5px;
	line-height: 24px;
}

.sliding_bar.more_info .segment.blue .prices .price_info .display .price sup {
	font-size: 18px;
}

.sliding_bar.more_info .segment.blue .prices .price_info .display .pay_less {
	font-size: 13px;
}

.sliding_bar.more_info .segment.blue .prices .price_info .instalments {
	font-size: 15px;
	gap: 2px 10px;
}

.sliding_bar.more_info .segment.blue .ipt_vat_wording,
.sliding_bar.more_info .segment.blue .validation_wording {
	background-color: rgba(255,255,255,0.06);
	border-radius: 6px;
	color: rgba(255,255,255,0.8);
	font-size: 12px;
	letter-spacing: 0.2px;
	line-height: 18px;
	margin-top: 0;
	padding: 8px 12px;
	text-align: center;
}

.sliding_bar.more_info .segment.blue .important_text {
	background-color: rgba(255,255,255,0.06);
	border-radius: 6px;
	color: rgba(255,255,255,0.8);
	display: flex;
	flex-direction: column;
	font-size: 12px;
	gap: 12px;
	letter-spacing: 0.2px;
	line-height: 18px;
	margin-top: 0;
	padding: 14px;
	text-align: center;
}

.sliding_bar.more_info .segment.white .section.about p img,
.sliding_bar.more_info .segment.white .section.defaqto p img {
	float: right;
	margin-bottom: 6px;
	margin-left: 6px;
	width: 130px;
}

.sliding_bar.more_info .segment.white .section ul.included_excluded {
	float: left;
	width: 100%;
}

/* ---- Results - sliding bar - demands_n_needs ------------------------------------ */

.sliding_bar.demands_n_needs .btn.red_text.download .icon {
	background-image: url(../img/icon_wrench.svg);
}

/* ---- Results - Sort By Select ------------------------------------ */

.container100.results .sort_by {
	margin-top: 20px;
}

/* ---- Results - Coronavirus Warning ------------------------------------ */

 .coronavirus_warning {
	background: #e66e65;
	border-radius: 3px;
	float: left;
	margin-top: 20px;
	padding: 20px 20px;
	width: 100%;
	text-align: center;
	color: var(--white);
}

 .coronavirus_warning .heading {
	float: left;
	font-size: 19px;
	font-weight: normal;
	letter-spacing: -0.5px;
	line-height: 25px;
	width: 100%;
}

 .coronavirus_warning .paragraph {
	float: left;
	font-size: 17px;
	font-weight: normal;
	letter-spacing: -0.2px;
	line-height: 22px;
	margin-top: 5px;
	width: 100%;
}

 .coronavirus_warning .paragraph span.trigger {
	cursor: pointer;
	text-decoration: underline;
}

 .coronavirus_warning .paragraph span.trigger:hover {
	color: hsl(15, 80%, 60%);
}

/* ---- Results - Loading Overlay ------------------------------------ */

.container100.loading_overlay {
	background-color: rgba(91, 105, 124,0.9);
	color: var(--white);
	height: 100%;
    opacity: 1;
	overflow: hidden;
	position: fixed;
		top: 0;
		left: 0;
	transition: all .5s ease;
    visibility: visible;
	width: 100%;
	z-index: 10;
}

body.results_loaded .container100.loading_overlay,
body.loaded#results .container100.loading_overlay {
	opacity: 0;
	visibility: hidden;
}

.container100.loading_overlay .text {
	float: left;
	font-size: 32px;
	letter-spacing: -0.2px;
	line-height: 28px;
	margin: 135px 0 0 0;
	text-align: center;
	width: 100%;
}

.container100.loading_overlay .loader {
	background-image: url(../images/three_dots_loader.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 20px;
	margin: 30px 0 0 0;
	width: 100%;
}


/* ################################################################## */
/* #### More Info Upsell - CODE: aasik ############################## */
/* ################################################################## */


/* ---- More Info Upsell ------------------------------------- */

.container100.upgrade {
	background-color: var(--grey-1);
	overflow-x: auto;
}



/* ---- More Info ------------------------------------- */

.container100.more_info_bar {
	display: none;
}


/* ################################################################## */
/* #### Transfer - CODE: tzphm ###################################### */
/* ################################################################## */


/* ---- Transfer ------------------------------------- */

.container100.transfer {
	background-image: url(../img/home_buildings.svg);
	background-position: bottom center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 530px;
	min-height: calc(100vh - 90px - 192px);
	padding: 80px 0 0 0;
	position: relative;
}

.container100.transfer .transferring {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 42px;
	letter-spacing: -0.5px;
	line-height: 42px;
	width: 100%;
}

.container100.transfer .transfer_content {
	color: #5b697c;
	float: left;
	font-size: 16px;
	line-height: 22px;
	width: 450px;
}

.container100.transfer .transfer_content img.prov_logo {
	border-radius: 3px;
	float: left;
	margin: 20px 0 0 0;
	height: 50px;
}

.container100.transfer .transfer_content .prov_logo {
	background-position: left;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	margin: 20px 0 0 0;
	height: 50px;
	width: 100%;
}

.container100.transfer .transfer_content p {
	float: left;
	margin: 10px 0 0 0;
	width: 100%;
}

.container100.transfer .transfer_content button {
	background-color: #ea5770;
	border: 0;
	border-radius: 3px;
	color: var(--white);
	cursor: pointer;
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 0 3px;
	padding: 0 6px;
}

/* ---- Extra Questions - Quote Panel ------------------------------------- */

.container100.quote .quote_panel {
	background-color: #f3f2f3;
	border-radius: 3px;
	float: right;
	margin: 30px 0 0 0;
	padding: 26px;
	width: 310px;
}

.container100.quote .quote_panel .provider_logo {
	background-image: url(https://wedding-test.protectyourfamily.co.uk/static/universal/logos/Emerald-Life.jpg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	float: left;
	height: 60px;
	position: relative;
	width: 100%;
}

.container100.quote .quote_panel .product_buy_name {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 18px;
	line-height: 21px;
	padding: 10px 0 0 0;
	text-align: left;
	width: 100%;
}

.container100.quote .quote_panel .premium {
	background-color: var(--baby-blue);
	color: var(--white);
	float: left;
	line-height: 38px;
	margin: 15px 0 0 0;
	padding: 0 26px;
	position: relative;
		left: -26px;
	width: calc(100% + 52px);
}

.container100.quote .quote_panel .premium .title {
	float: left;
	font-size: 16px;
}

.container100.quote .quote_panel .premium .amount {
	float: right;
	font-size: 22px;
	letter-spacing: 0.2px;
}

.container100.quote .quote_panel p {
	color: hsla(204, 14%, 32%, 0.8);
	float: left;
	font-size: 14px;
	line-height: 19px;
	margin: 18px 0 0 0;
	width: 100%;
}

.container100.quote .quote_panel ul.lr_list {
	float: left;
	line-height: 22px;
	list-style: none;
	margin: 6px 0 0 0;
	width: 100%;
}

.container100.quote .quote_panel ul.lr_list li {
	float: left;
	padding: 6px 0;
	width: 100%;
}

.container100.quote .quote_panel ul.lr_list li:first-child {
	padding: 0 0 6px 0;
}

.container100.quote .quote_panel ul.lr_list li:last-child {
	padding: 6px 0 0 0;
}

.container100.quote .quote_panel ul.lr_list li + li {
	border-top: 1px solid hsla(204, 14%, 32%, 0.8);
}

.container100.quote .quote_panel ul.lr_list li .side {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.container100.quote .quote_panel ul.lr_list li .side.left {
	float: left;
	font-size: 14px;
	max-width: 32%;
}

.container100.quote .quote_panel ul.lr_list li .side.right {
	float: right;
	font-size: 16px;
	max-width: 68%;
	padding: 0 0 0 5px;
}

.container100.quote .quote_panel ul.tick_list {
	float: left;
	font-size: 15px;
	line-height: 20px;
	list-style: none;
	margin: 6px 0 0 0;
	width: 100%;
}

.container100.quote .quote_panel ul.tick_list li {
	float: left;
	padding: 0 0 0 26px;
	position: relative;
	width: 100%;
}

.container100.quote .quote_panel ul.tick_list li + li {
	margin: 6px 0 0 0;
}

.container100.quote .quote_panel ul.tick_list li:before {
	background-color: hsl(204, 14%, 32%);
	background-image: url(../img/white_tick.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 66%;
	border-radius: 50%;
	content: '';
	float: left;
	height: 16px;
	position: absolute;
		top: 2px;
		left: 0;
	width: 16px;
}

.container100.quote .quote_panel ul.doc_list {
	float: left;
	font-size: 15px;
	line-height: 20px;
	list-style: none;
	margin: 6px 0 0 0;
	width: 100%;
}

.container100.quote .quote_panel ul.doc_list li {
	float: left;
	width: 100%;
}

.container100.quote .quote_panel ul.doc_list li + li {
	margin: 6px 0 0 0;
}

.container100.quote .quote_panel ul.doc_list li a {
	color: var(--baby-blue);
}

/* ---- Purchased ------------------------------------- */

.container100.quote .purchased_section {
	clear: both;
	float: left;
	margin: 30px 0 0 0;
	position: relative;
	width: calc(100% - 350px);
}

.container100.quote .tick_confirm {
	background-color: hsl(29, 90%, 70%);
	background-image: url(../img/white_tick.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 66%;
	border-radius: 50%;
	float: left;
	height: 100px;
	position: relative;
		left: calc(50% - 50px);
	width: 100px;
}

.container100.quote .purchased_section .section_title {
	color: hsl(204, 14%, 32%);
	float: left;
	font-size: 42px;
	font-weight: normal;
	letter-spacing: -0.5px;
	line-height: 42px;
	margin: 20px 0 0 0;
	width: 100%;
}

.container100.quote .purchased_section p {
	color: hsla(204, 14%, 32%, 0.8);
	float: left;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0;
	line-height: 28px;
	margin: 13px 0 0 0;
	width: 100%;
}



/* ---- jQuery UI Overwritten Styles ----------------------------- */

.ui-widget-header {
	border: 1px solid var(--baby-blue);
	background: #449ad5 50% 50% repeat-x;
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
	border: 1px solid #ea5770;
	color: #ea5770;
}

/* ---- Fonts ------------------------------------- */









/* ################################################################## */
/* #### Screen size dependent - CODE: sddfa ######################### */
/* ################################################################## */

/* These are all grouped by attribute as we should only be changing values here and not defining new ones */


@media (min-width: 440px) {

	/* ---- grid -------------------------------- */

	ul.selection {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

}



@media (min-width: 500px) {

	/* ---- grid ------------------------------- */

	ul.icons[data-styling="white_buttons"],
	.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] {
		grid-template-columns: 1fr 1fr;
	}

}

@media (min-width: 600px) {

	/* ---- border ------------------------------- */

	ul.icons[data-styling="blue_text_grey_border"] li:nth-of-type(2) {
		border-top: 0;
	}

	/* ---- gap ------------------------------- */

	ul.icons[data-styling="blue_text_grey_border"] {
		gap: 40px 80px;
	}

	/* ---- grid ------------------------------- */

	ul.icons[data-styling="blue_text_grey_border"],
	.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"] {
		grid-template-columns: 1fr 1fr;
		display: grid;
	}

	/* ---- padding ------------------------------------ */

	ul.icons[data-styling="blue_text_grey_border"] li:nth-of-type(1),
	ul.icons[data-styling="blue_text_grey_border"] li:nth-of-type(2) {
		padding-top: 0;
	}

	/* ---- width ------------------------------- */

	.container {
		width: calc(100% - 60px);
	}

}

@media (min-width: 740px) {

	/* ---- grid ------------------------------------- */

	ul.icons[data-styling="stacked"] {
		grid-template-columns: 1fr 1fr 1fr;
	}

	ul.icons[data-styling="white_buttons"],
	.container100.home_generic#other_products ul.icons[data-styling="white_buttons"] {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

}

@media (min-width: 920px) {

	/* ---- background-color --------------------------------------------------------- */

	.container100.hero_split_product .information {
		background-color: #014a66;
	}

	/* ---- font-size + line-height ------------------------------------- */

	.blue_home_box h1 {
		font-size: 30px;
		line-height: 36px;
	}

	.container100.home_generic .sides .left_side .header {
		font-size: 36px;
		line-height: 46px;
	}

	.container100.hero_split_generic .information .align h1 {
		font-size: 36px;
		line-height: 46px;
	}

	.container100.hero_split_product .information h1 {
		font-size: 28px;
		line-height: 36px;
	}

	.container100.home_generic#other_products .products .product .name {
		line-height: 24px;
	}

	.container100.quote .form_section .introduction h1 {
		font-size: 36px;
		line-height: 46px;
	}

	/* ---- flex-direction ------------------------------------- */

	.container100.home_generic .sides,
	.container100.home_generic#contact .container {
		flex-direction: row;
	}

	.container100.hero_split_generic {
		flex-direction: row;
	}

	body[data-page-type="home"] .container100.hero_split_generic,
	body[data-page-type="article"] .container100.hero_split_generic,
	body[data-page-type="about"] .container100.hero_split_generic,
	body[data-page-type="terms"] .container100.hero_split_generic,
	body[data-page-type="privacy"] .container100.hero_split_generic,
	body[data-page-type="contact"] .container100.hero_split_generic {
		flex-direction: row-reverse;
	}

	/* ---- gap --------------------------------------------------------- */

	.container100.home_generic .sides .left_side {
		gap: 10px;
	}

	.form_sections {
		gap: 60px;
	}

	/* ---- grid ------------------------------- */

	ul.icons[data-styling="red_tick_circle_list"] {
		grid-template-columns: 1fr 1fr 1fr;
	}

	/* ---- height ------------------------------------- */

	.container100.hero_split_generic .information {
		min-height: 400px;
	}

	.container100.hero_split_product .feature {
		max-height: 660px;
	}

	/* ---- margin --------------------------------------------------------- */

	.form_section[data-visible="true"] ~ .form_section[data-visible="true"] {
		margin-top: 0;
	}

	.form_section .introduction h3,
	.form_section .introduction p {
		margin-top: 20px;
	}

	.form_divisions,
	.container100.home_generic .sides {
		margin-top: 60px;
	}

	body[data-page-type="landing"] .container100.home_generic#product_info .blue_home_box {
		margin-top: -80px;
	}

	/* ---- padding --------------------------------------------------------- */

	.blue_home_box {
		padding: 40px 48px;
	}

	.container100.hero_split_generic .feature {
		padding-bottom: 0;
	}

	.container100.hero_split_generic .information .align {
		padding: 78px 60px;
	}

	.container100.hero_split_product .information {
		padding: 40px 48px;
	}

	.container100.home_generic {
		padding: 80px 0;
	}

	.container100.quote {
		padding: 80px 0;
	}

	.form_section[data-visible="true"] ~ .form_section[data-visible="true"] {
		padding-top: 60px;
	}

	/* ---- position - top bottom left right ------------------------- */

	.container100.hero_split_product .information {
		position: absolute;
			bottom: -120px;
			left: calc(50% - 480px);
	}

	/* ---- width --------------------------------------------------------- */

	.container100 .container {
		width: calc(100% - 80px);
	}

	body[data-page-type="landing"] .container100.home_generic#faqs .container {
		width: 860px;
	}

	.container100.home_generic .sides .left_side,
	.container100.home_generic .sides .right_side {
		width: 50%;
	}

	.container100.hero_split_generic .information {
		width: 100%;
	}

	.container100.hero_split_generic .feature {
		width: 100%;
	}

	.container100.hero_split_product .information {
		width: 600px;
	}

}

@media (min-width: 1024px) {

	/* ---- display ------------------------------------------------ */

	.container100.results .sort_by {
		display: none;
	}

}

@media (min-width: 1200px) {

	/* ---- grid ------------------------------------------------ */

	.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"][data-rows="4"] {
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

	.container100.home_generic#to_get_a_quote ul.icons[data-styling="red_tick_circle_list"][data-rows="3"] {
		grid-template-columns: 1fr 1fr 1fr;
	}

}

@media (min-width: 1520px) {

	/* ---- display ------------------------------------- */

	.container100.results .btn.tailor_your_cover,
	.container100.results .btn.cover_needs {
		display: none;
	}

	/* ---- padding ------------------------------------- */

	.container100.hero_split_generic .information .align {
		padding-left: 0;
	}

	/* ---- width ------------------------------------- */

	.container100 .container {
		width: 1440px;
	}

	.container100.hero_split_generic .information .align {
		width: 680px;
	}

}
