@charset "UTF-8";
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }

audio, canvas, video { display: inline-block; }

audio:not([controls]) { display: none; height: 0; }

[hidden], template { display: none; }

html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

body { margin: 0; }

a { background: transparent; }

/** Address `outline` inconsistency between Chrome and other browsers. */
a:focus { outline: thin dotted; }

/** Improve readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }

h1 { font-size: 2em; margin: 0.67em 0; }

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

dfn { font-style: italic; }

hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }

mark { background: #ff0; color: #000; }

code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }

pre { white-space: pre-wrap; }

q { quotes: "\201C" "\201D" "\2018" "\2019"; }

small { font-size: 80%; }

sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

img { border: 0; }

svg:not(:root) { overflow: hidden; }

figure { margin: 0; }

fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

legend { border: 0; /* 1 */ padding: 0; /* 2 */ }

button, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ }

button, input { line-height: normal; }

button, select { text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ }

button[disabled], html input[disabled] { cursor: default; }

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ }

table { border-collapse: collapse; border-spacing: 0; }

.icons-sprite, .site-header .share-tel-wrapper .tel:before, .contact-strip .tel:before, .site-nav .site-search .input-submit, .cta-grid .cta-box.cta-box-chat:after, .cta-grid-alt .cta-box.cta-box-chat:after, .cta-grid .cta-box.cta-box-email:after, .cta-grid-alt .cta-box.cta-box-email:after, .cta-grid .cta-box.cta-box-faq:after, .cta-grid-alt .cta-box.cta-box-faq:after, .team-grid .team-slider .flex-prev, .team-grid .team-slider .flex-next { background-image: url('/img/icons-sf79fe45fcc.png'); background-repeat: no-repeat; }

@font-face { font-family: 'icons'; src: url("fonts/icons.eot?tlxeqd"); src: url("fonts/icons.eot?#iefixtlxeqd") format("embedded-opentype"), url("fonts/icons.woff?tlxeqd") format("woff"), url("fonts/icons.ttf?tlxeqd") format("truetype"), url("fonts/icons.svg?tlxeqd#icons") format("svg"); font-weight: normal; font-style: normal; }
.icon-arrow-left:before, .icon-arrow-right:after, .cta:after, .slicknav_nav .mega-nav .mega-nav-column .cta:after, .mortgage-calculator-form .input-submit:after, .cta-alt:after, .cta-strip:after, .mortgage-calculator-results .quote a:after, .slicknav_arrow:after, .cta-grid .cta-box .text:after, .cta-grid-alt .cta-box .text:after, .product-grid .product:after, .icon-googleplus:before, .icon-facebook:before, .icon-twitter:before, .icon-youtube:before, .icon-linkedin:before, .icon-phone:before, .team-grid .contact .tel:before, .profile-contact .tel:before, .icon-email:before, .team-grid .contact .email:before, .profile-contact .email:before, .icon-error:before, .enquiry-form .row .error-message:before { font-family: 'icons'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.icon-arrow-left:before { content: "\e607"; }

.icon-arrow-right:after, .cta:after, .slicknav_nav .mega-nav .mega-nav-column .cta:after, .mortgage-calculator-form .input-submit:after, .cta-alt:after, .cta-strip:after, .mortgage-calculator-results .quote a:after, .slicknav_arrow:after, .cta-grid .cta-box .text:after, .cta-grid-alt .cta-box .text:after, .product-grid .product:after { content: "\e605"; }

.icon-googleplus:before { content: "\e600"; }

.icon-facebook:before { content: "\e601"; }

.icon-twitter:before { content: "\e602"; }

.icon-youtube:before { content: "\e603"; }

.icon-linkedin:before { content: ""; }

.icon-phone:before, .team-grid .contact .tel:before, .profile-contact .tel:before { content: "\e604"; }

.icon-email:before, .team-grid .contact .email:before, .profile-contact .email:before { content: "\e606"; }

.icon-error:before, .enquiry-form .row .error-message:before { content: "\e609"; }

html { font-size: 87.5%; line-height: 1.42857; }

body { font-family: 'Open Sans', sans-serif; color: #3c4a54; }

.georgia, blockquote:before { font-family: Georgia, sans-serif; }

a { text-decoration: none; color: #235391; }
a:hover { color: #3c6eb4; }

.cta-alt, .cta-strip, .mortgage-calculator-results .quote a, .article-strip .breadcrumbs a, .pagination a, .team-grid .contact .email, .news-list a, .news-list-home a { color: #e10015; }
.cta-alt:hover, .cta-strip:hover, .mortgage-calculator-results .quote a:hover, .article-strip .breadcrumbs a:hover, .pagination a:hover, .team-grid .contact .email:hover, .news-list a:hover, .news-list-home a:hover { color: #8c0000; }

p { margin: 0 0 1em 0; }

.text-medium, h3, .heading-medium, .heading-medium-light, .standfirst, .page-intro .article-meta, .homepage-text .standfirst, .best-product-table th, .heading-highlight, .article-content-text h2, .article-content-text h3, .homepage-text h2, .homepage-text h3, .team-description-grid .heading, .repayment-calculator .result, .mega-nav, .details-table .col-1, .details-table .large, .profile-contact, .homepage-banner .homepage-tabs, .homepage-intro-content .intro { font-size: 20px; font-size: 1.42857rem; }

.text-large, h2, .heading-large, .heading-large-light, .page-intro .heading { font-size: 34px; font-size: 2.42857rem; line-height: 1.23529; }

h2, .heading-large, .heading-large-light, .page-intro .heading { margin: 0 0 0.29412em 0; }

.heading-large-light, .page-intro .heading { font-weight: normal; }

h3, .heading-medium, .heading-medium-light, .standfirst, .page-intro .article-meta, .homepage-text .standfirst, .best-product-table th, .heading-highlight, .article-content-text h2, .article-content-text h3, .homepage-text h2, .homepage-text h3, .team-description-grid .heading, .repayment-calculator .result { margin: 0 0 0.9em; line-height: 1.3; }

.heading-medium-light, .standfirst, .page-intro .article-meta, .homepage-text .standfirst, .best-product-table th { font-weight: normal; }

.heading-highlight, .article-content-text h2, .article-content-text h3, .homepage-text h2, .homepage-text h3 { display: inline-block; margin-left: -20px; padding: 5px 20px; background: #1e5a8c; color: #fff; }

.cta, .slicknav_nav .mega-nav .mega-nav-column .cta, .mortgage-calculator-form .input-submit { display: inline-block; font-size: 1rem; color: #fff; font-weight: bold; padding: 10px 40px 10px 20px; min-width: 150px; text-transform: uppercase; background: #235391; position: relative; color: #fff; }
.cta:after, .slicknav_nav .mega-nav .mega-nav-column .cta:after, .mortgage-calculator-form .input-submit:after { position: absolute; right: 20px; bottom: 12px; }
.cta:hover, .slicknav_nav .mega-nav .mega-nav-column .cta:hover, .mortgage-calculator-form .input-submit:hover { background: #3c6eb4; color: #fff; cursor: pointer; }

button.cta, .slicknav_nav .mega-nav .mega-nav-column button.cta, .mortgage-calculator-form button.input-submit { border: 0; }

.cta-alt, .cta-strip, .mortgage-calculator-results .quote a { display: inline-block; font-size: 1rem; font-weight: bold; min-width: 170px; padding: 10px 40px 10px 0; text-transform: uppercase; position: relative; }
.cta-alt:after, .cta-strip:after, .mortgage-calculator-results .quote a:after { position: absolute; right: 20px; bottom: 12px; }

.cta-strip { border-top: 1px solid #ccc; display: block; }

.cta-list { list-style: none; padding: 0; margin: 0; }
.cta-list li { margin: 11px 0 0 0; }
.cta-list li:first-child { margin: 0; }
.cta-list li .cta, .cta-list li .slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .cta-list li .cta, .cta-list li .mortgage-calculator-form .input-submit, .mortgage-calculator-form .cta-list li .input-submit { display: block; }

blockquote { margin: 0; padding: 0; }
blockquote:before { content: "\201C"; display: block; color: #235391; font-size: 150px; line-height: 120px; height: 50px; }
blockquote .quote { font-style: italic; color: #1e5a8c; font-size: 1.78571em; line-height: 1.28; margin: 0 0 0.4em 0; }

/* Mobile Menu Core Style
*/
.slicknav_btn { position: relative; display: block; vertical-align: middle; float: right; line-height: 1.125em; cursor: pointer; }

.slicknav_menu .slicknav_menutxt { display: block; line-height: 1.188em; float: left; }

.slicknav_menu .slicknav_icon { float: left; margin: 0.188em 0 0 0.438em; }

.slicknav_menu .slicknav_no-text { margin: 0; }

.slicknav_menu .slicknav_icon-bar { display: block; height: 9px; width: 45px; }

.slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar { margin-top: 0.188em; }

.slicknav_nav { clear: both; }

.slicknav_nav ul, .slicknav_nav li { display: block; }

.slicknav_nav .slicknav_arrow { font-size: 0.8em; margin: 0 0 0 0.4em; }

.slicknav_nav .slicknav_item { cursor: pointer; }

.slicknav_nav .slicknav_row { display: block; }

.slicknav_nav a { display: block; }

.slicknav_nav .slicknav_item a, .slicknav_nav .slicknav_parent-link a { display: inline; }

.slicknav_menu:before, .slicknav_menu:after { content: " "; display: table; }

.slicknav_menu:after { clear: both; }

/* IE6/7 support */
.slicknav_menu { *zoom: 1; }

/* User Default Style Change the following styles to modify the appearance of the menu.
*/
/* Button */
.slicknav_btn { position: absolute; top: 40px; right: 20px; text-decoration: none; }

/* Button Text */
.slicknav_menu .slicknav_menutxt { color: #FFF; font-weight: bold; }

.slicknav_menu { font-size: 16px; margin: 0 0 10px 0; }
.slicknav_menu .slicknav_collapsed .slicknav_icon-bar { background: #235391; }
.slicknav_menu .slicknav_open:after { content: ''; position: absolute; height: 100px; padding: 20px; top: -20px; left: -20px; right: -20px; background: #8296aa; z-index: -1; }
.slicknav_menu .slicknav_open .slicknav_icon-bar { background: #3c6eb4; }

.slicknav_nav { color: #fff; margin: 0; padding: 0; font-size: 0.875em; width: 100%; background: #8296aa; position: absolute; top: 100px; left: 0; z-index: 10; }

.slicknav_nav, .slicknav_nav ul { list-style: none; overflow: hidden; }

.slicknav_nav ul { padding: 0; margin: 0; }

.slicknav_nav a { padding: 20px; text-align: center; text-decoration: none; color: #fff; font-size: 18px; font-size: 1.28571rem; font-weight: 700; text-transform: uppercase; }

.slicknav_nav .slicknav_item a, .slicknav_nav .slicknav_parent-link a { padding: 0; margin: 0; }

.slicknav_nav .slicknav_txtnode { margin-left: 15px; }

.slicknav_row > a { border: 0; }

.slicknav_parent ul a { padding: 5px 5px 5px 30px; margin: 0 0 1px 0; background: #a3aeb8; text-align: left; font-size: 15px; font-size: 1.07143rem; }
.slicknav_parent ul li:last-child a { border: 0; }

/* ========================================================================== Grid ========================================================================== */
/* Example uses:  <div class="grid"> <div class="grid__cell unit-1-2"></div> <div class="grid__cell unit-1-2"></div> <div class="grid__cell unit-1-3"></div> <div class="grid__cell unit-1-3"></div> </div>  <div class="grid grid--center"> <div class="grid__cell unit-1-3"></div> <div class="grid__cell unit-1-3"></div> </div> */
/* Grid core ========================================================================== */
/** Grid container Must only contain `.grid` or `.grid__cell` components as children.  1. Adjustment for child element margins. 2. Ensure consistent default alignment/ 3. Remove inter-unit whitespace that appears between `inline-block` child elements. Work for all non-monospace font-families.  If you're using a monospace base font, you will need to set the `grid` font-family to `sans-serif` and then redeclare the monospace font on the `grid__cell` objects. 4. Protect against WebKit bug with optimizelegibility. */
.grid { display: block; padding: 0; margin: 0 -5px; /* 1 */ text-align: left; /* 2 */ letter-spacing: -0.31em; /* 3 */ text-rendering: optimizespeed; /* 4 */ }

/** Opera hack */
.opera:-o-prefocus, .grid { word-spacing: -0.43em; /* 3 */ }

/** Child `grid` object adjustments Used for more complex fixed-fluid hybrid grids. */
.grid > .grid { overflow: hidden; margin-right: 0; margin-left: 0; }

/** Grid units No explicit width by default. Apply `.unit-x-y` classes.  1. Fundamentals of the non-float grid layout mechanism. 2. Apply grid gutter. 3. Controls vertical positioning of units. 4. Keeps content correctly aligned with the grid direction. 5. Reset text defaults. */
.grid__cell { -moz-box-sizing: border-box; box-sizing: border-box; width: 100%; display: inline-block; /* 1 */ margin: 0; padding: 0 5px; /* 2 */ vertical-align: top; /* 3 */ text-align: left; /* 4 */ letter-spacing: normal; /* 5 */ word-spacing: normal; /* 5 */ text-rendering: auto; /* 5 */ }

/* Grid modifiers ========================================================================== */
/** Modifier: horizontally center all grid units Allows for automatic unit centering irrespective of the number of units in the grid. */
.grid--center { text-align: center; }

/** Modifier: align horizontally all grid units to the left */
.grid--left { text-align: left; }

/** Modifier: align horizontally all grid units to the right */
.grid--right { text-align: right; }

/* Grid cell modifiers ========================================================================== */
/** Modifier: horizontally center one unit Set a specific unit to be horizontally centered. Doesn't affect any other units. Can still contain a child `grid` object. */
.grid__cell--center { display: block; margin: 0 auto; }

/** Modifier: align horizontally one unit to the left Set a specific unit to be horizontally on the left. Doesn't affect any other units. Can still contain a child `grid` object. */
.grid__cell--left { display: block; margin-right: auto; }

/** Modifier: align horizontally one unit to the right Set a specific unit to be horizontally on the right. Doesn't affect any other units. Can still contain a child `grid` object. */
.grid__cell--right { display: block; margin-left: auto; }

@media (min-width: 960px) { /* Proportional units ========================================================================== */
  /*  Specify the proportional width of an object. Primarily for, but not limited to, use with `.grid__cell` components. Intentional redundancy build into each set of unit classes. */
  .unit-1-2--desktop, .unit-2-4--desktop, .unit-6-12--desktop { width: 50%; }
  .unit-1-3--desktop, .unit-4-12--desktop { width: 33.33333%; }
  .unit-2-3--desktop, .unit-8-12--desktop { width: 66.66667%; }
  .unit-1-4--desktop, .unit-3-12--desktop { width: 25%; }
  .unit-3-4--desktop, .unit-9-12--desktop { width: 75%; }
  .unit-1-12--desktop { width: 8.33333%; }
  .unit-2-12--desktop { width: 16.66667%; }
  .unit-5-12--desktop { width: 41.66667%; }
  .unit-7-12--desktop { width: 58.33333%; }
  .unit-10-12--desktop { width: 83.33333%; }
  .unit-11-12--desktop { width: 91.66667%; } }
@media (min-width: 480px) and (max-width: 959px) { /* Proportional units ========================================================================== */
  /*  Specify the proportional width of an object. Primarily for, but not limited to, use with `.grid__cell` components. Intentional redundancy build into each set of unit classes. */
  .unit-1-2--tablet, .unit-2-4--tablet, .unit-6-12--tablet { width: 50%; }
  .unit-1-3--tablet, .unit-4-12--tablet { width: 33.33333%; }
  .unit-2-3--tablet, .unit-8-12--tablet { width: 66.66667%; }
  .unit-1-4--tablet, .unit-3-12--tablet { width: 25%; }
  .unit-3-4--tablet, .unit-9-12--tablet { width: 75%; }
  .unit-1-12--tablet { width: 8.33333%; }
  .unit-2-12--tablet { width: 16.66667%; }
  .unit-5-12--tablet { width: 41.66667%; }
  .unit-7-12--tablet { width: 58.33333%; }
  .unit-10-12--tablet { width: 83.33333%; }
  .unit-11-12--tablet { width: 91.66667%; } }
@media (max-width: 479px) { /* Proportional units ========================================================================== */
  /*  Specify the proportional width of an object. Primarily for, but not limited to, use with `.grid__cell` components. Intentional redundancy build into each set of unit classes. */
  .unit-1-2--mobile, .unit-2-4--mobile, .unit-6-12--mobile { width: 50%; }
  .unit-1-3--mobile, .unit-4-12--mobile { width: 33.33333%; }
  .unit-2-3--mobile, .unit-8-12--mobile { width: 66.66667%; }
  .unit-1-4--mobile, .unit-3-12--mobile { width: 25%; }
  .unit-3-4--mobile, .unit-9-12--mobile { width: 75%; }
  .unit-1-12--mobile { width: 8.33333%; }
  .unit-2-12--mobile { width: 16.66667%; }
  .unit-5-12--mobile { width: 41.66667%; }
  .unit-7-12--mobile { width: 58.33333%; }
  .unit-10-12--mobile { width: 83.33333%; }
  .unit-11-12--mobile { width: 91.66667%; } }
/* @media (min-width: 320px) and (max-width: 480px){
	@include griddle-build( 2 3 4 12 , "--xsmall");
	} */
.grid img { max-width: 100%; }

.inner-area, .main-content { margin: 0 auto; max-width: 1070px; padding: 10px 20px 0 20px; }

.image-full-width img { width: 100%; }

.site-header .share-tel-wrapper .tel, .contact-strip .tel { font-weight: bold; color: #e10015; display: inline-block; font-size: 24px; font-size: 1.71429rem; }
.site-header .share-tel-wrapper .tel:before, .contact-strip .tel:before { content: ''; background-position: 0 -336px; height: 26px; width: 26px; display: inline-block; margin: 0 5px 0 0; }

.site-header { margin: 0 auto; max-width: 1070px; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; position: relative; background: #ffffff; z-index: 101; }
@media (min-width: 879px) { .site-header.stuck { position: fixed; top: 0; z-index: 100; max-width: 100%; -moz-box-shadow: gray 2px 2px 10px; -webkit-box-shadow: gray 2px 2px 10px; box-shadow: gray 2px 2px 10px; }
  .site-header.stuck .wrap { max-width: 1070px; position: relative; margin: 0 auto; } }
.site-header .inner { padding: 20px 20px 0 20px; }
@media (min-width: 879px) { .site-header .inner { padding: 20px; } }
@media (min-width: 1030px) { .site-header .inner { padding: 20px 0; } }
.site-header .logo { display: block; line-height: 1; margin: 0; }
.site-header .logo .logo-image { display: block; }
.site-header .logo .logo-image-alt { display: none; }
.site-header .logo a { display: block; margin: 0 0 -10px 0; }
.site-header .share-tel-wrapper { overflow: hidden; *zoom: 1; position: absolute; width: 365px; top: 10px; right: 20px; }
@media (min-width: 1030px) { .site-header .share-tel-wrapper { right: 0; } }
.site-header .share-tel-wrapper .tel, .site-header .share-tel-wrapper .share { display: table; height: 40px; }
.site-header .share-tel-wrapper .tel a, .site-header .share-tel-wrapper .share span { display: table-cell; vertical-align: middle; }
.site-header .share-tel-wrapper .tel { text-align: right; float: right; }
.site-header .share-tel-wrapper .tel a { color: #e10015; cursor: default; }
.site-header .share-tel-wrapper .tel:before { background: url("../img/icons-sa8cd574b57.png") no-repeat 0 0; content: ''; background-position: 0 -140px; height: 32px; width: 26px; display: inline-block; margin: 0 5px 0 0; }
@media (max-width: 879px) { .site-header .share-tel-wrapper .tel:before { display: none; } }
@media (max-width: 879px) { .site-header .share-tel-wrapper .tel { font-size: 20px; font-size: 1.42857rem; } }
@media (max-width: 879px) { .site-header .share-tel-wrapper .share span { display: none; } }
.site-header .share-tel-wrapper .share a { display: table-cell; vertical-align: middle; }
.site-header .share-tel-wrapper .share a img { margin-right: 3px; }
@media (max-width: 879px) { .site-header .share-tel-wrapper { position: relative; padding: 0 20px 20px 20px; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; right: 0; } }
@media (max-width: 600px) { .site-header { padding: 0px; } }

.site-nav { text-transform: uppercase; text-align: right; width: 100%; margin: -46px 0 0 0; }
@media (max-width: 959px) { .site-nav { margin: -40px 0 0 0; } }
.site-nav .site-search, .site-nav ul, .site-nav li { display: inline-block; }
.site-nav .site-search { position: relative; margin-top: 20px; width: 100%; }
.site-nav .site-search .input-text { -webkit-appearance: none; border-radius: 0; border: solid 1px #ebebeb; width: 140px; margin: 0 30px 0 0; padding: 5px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
@media (max-width: 879px) { .site-nav .site-search .input-text { width: 100%; } }
.site-nav .site-search .input-submit { -webkit-appearance: none; border-radius: 0; position: absolute; right: 0; top: 0; padding: 0; border: 0; background-position: 0 -146px; height: 30px; width: 30px; text-indent: -9999em; }
@media (min-width: 880px) { .site-nav .site-search { width: 170px; } }
@media (max-width: 879px) { .site-nav .site-search { width: 100%; margin-top: 50px; } }
.site-nav ul { font-weight: bold; list-style: none; display: none; }
@media (min-width: 880px) { .site-nav ul { display: inline; } }
.site-nav li { margin: 0 40px 0 0; }
.site-nav a { color: #235391; text-decoration: none; }
.site-nav a:hover { color: #3c6eb4; }

.mega-nav { display: none; position: absolute; padding: 30px 0; background: #8296aa; color: #fff; left: 0; right: 0; top: 100%; z-index: 2; }
.mega-nav.toggle { display: block; position: relative; }
.mega-nav .mega-nav-grid { display: table; width: 100%; }
.mega-nav .mega-nav-column { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; float: left; width: 25%; padding: 0 20px; border-left: 1px solid #1e5a8c; }
@media (max-width: 959px) { .mega-nav .mega-nav-column { width: 25%; } }
@media (max-width: 880px) { .mega-nav .mega-nav-column { width: 100%; } }
.mega-nav .mega-nav-column:first-child { border: 0; }
.mega-nav ul { padding: 0; margin: 0 0 40px 0; list-style: none; font-size: 1rem; width: 90%; }
@media (max-width: 959px) { .mega-nav ul { width: 100%; } }
.mega-nav li { margin: 0 0 1em 0; }
.mega-nav a { color: inherit; display: block; }
.mega-nav a:hover, .mega-nav a.selected { color: #235391; }
.mega-nav a.cta:hover, .slicknav_nav .mega-nav .mega-nav-column a.cta:hover, .mega-nav .mortgage-calculator-form a.input-submit:hover, .mortgage-calculator-form .mega-nav a.input-submit:hover { color: #ffffff; }
.mega-nav.on { display: block; }

.mega-nav-toggle { z-index: 2; position: relative; }
.mega-nav-toggle.on { color: #fff !important; }
.mega-nav-toggle.on::before { content: ''; position: absolute; display: block; height: 120px; padding: 20px; top: -20px; left: -20px; right: -20px; bottom: 0px; background: #8296aa; z-index: -1; }

.site-header .site-nav ul li a.selected { color: #37465a; }

.slicknav_nav .mega-nav .mega-nav-column { border-left: none; border-right: none; border-bottom: solid 1px #235391; padding: 20px; }
.slicknav_nav .mega-nav .mega-nav-column ul li a { font-weight: 100; text-transform: capitalize; padding: 0; text-align: left; }
.slicknav_nav .mega-nav .mega-nav-column .cta-list { margin-top: 8px; }
.slicknav_nav .mega-nav .mega-nav-column li { margin: 0.7em 0; }
.slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .mortgage-calculator-form .input-submit, .mortgage-calculator-form .slicknav_nav .mega-nav .mega-nav-column .input-submit { display: block; width: auto; }

@media (min-width: 880px) { .mobile-nav { display: none; } }

.site-footer { padding: 0 0 20px 0; background: #ebebeb; }
.site-footer .grid__cell { vertical-align: middle; }
.site-footer .logo { text-align: right; }
.site-footer .logo img { width: 150px; height: auto; }
.site-footer .footer-nav ul { list-style: none; padding: 0; margin: 0; }
.site-footer .footer-nav li { display: inline-block; margin: 10px 40px 10px 0; font-weight: bold; }
.site-footer .footer-nav a { color: inherit; }
.site-footer .social-follow { background: #dcdcdc; padding: 16px; text-align: right; margin: 0 0 10px 0; }
@media (max-width: 600px) { .site-footer .social-follow { text-align: center; } }
@media (max-width: 600px) { .site-footer .social-follow .inner-area .social-links .label, .site-footer .social-follow .main-content .social-links .label { display: none; } }
.site-footer .legal { border-top: 1px solid #ccc; margin: 10px 0 0 0; padding: 20px 0 0 0; position: relative; }
.site-footer .legal .text { max-width: 880px; color: #8c8c8c; }
@media (min-width: 900px) { .site-footer .legal .logo-nacfb { position: absolute; bottom: 0; right: 0; } }

.main-content { background: #f5f5f5; padding: 20px; }

.article-strip { position: relative; min-height: 40px; }
.article-strip .breadcrumbs { padding: 10px 20px; }
.article-strip .breadcrumbs a { font-weight: bold; }
.article-strip .breadcrumbs a, .article-strip .breadcrumbs span { display: inline-block; white-space: nowrap; padding: 0 5px 0 0; }
.article-strip .social-share { position: absolute; right: 0; top: 0; }

.page-intro-grid .grid__cell { vertical-align: bottom; }
.page-intro-grid .cta, .page-intro-grid .slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .page-intro-grid .cta, .page-intro-grid .mortgage-calculator-form .input-submit, .mortgage-calculator-form .page-intro-grid .input-submit, .page-intro-grid .cta-strip, .page-intro-grid .cta-alt, .page-intro-grid .cta-strip, .page-intro-grid .mortgage-calculator-results .quote a, .mortgage-calculator-results .quote .page-intro-grid a { margin: 30px 0 0 0; }

.page-intro, .page-intro-sidebar { padding: 20px; }

.page-intro { max-width: 690px; }

.pagination-strip { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; margin: 0 0 20px 0; }
.pagination-strip .grid__cell { vertical-align: middle; }

.pagination { text-align: right; text-transform: uppercase; margin: 6px 0; }
.pagination ul { margin: 0; }
.pagination li { padding: 0 5px; }
.pagination a { font-weight: bold; color: #e10015; }
.pagination a.active_page { color: #235391; }
.pagination a.no_more { display: none; }
.pagination .previous_link, .pagination .page_link, .pagination .next_link { padding: 0 5px; }

.back-link { border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; padding: 10px 20px; text-transform: uppercase; font-weight: bold; }

.rate-selector { padding: 10px 0; }
.rate-selector select, .rate-selector label { display: inline-block; }
@media (max-width: 480px) { .rate-selector select, .rate-selector label { text-align: center; display: block; margin-bottom: 10px; } }
.rate-selector select { text-transform: uppercase; width: 240px; }
@media (max-width: 480px) { .rate-selector select { width: 100%; } }

@media (max-width: 600px) { .grid .center { text-align: center; } }

.hide-on-mobile { display: none; }

.product-cell, .product-cell-wide { float: left; width: 50%; margin: 0 0 1em 0; }

@media (min-width: 960px) { .hide-on-mobile { display: block; }
  .hide-on-desktop { display: none; }
  .product-cell, .product-cell-wide { width: 14.03509%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 15px; margin: 0; }
  dt .product-cell, dt .product-cell-wide { clear: left; }
  .product-cell .value, .product-cell-wide .value { display: block; height: 2.8em; }
  .product-cell-wide { width: 21.92982%; } }
.dtdl-table .table-title { list-style-type: none; text-align: left; font-weight: 100; font-size: 19px; font-size: 1.35714rem; background-color: #dcdcdc; vertical-align: top; color: #3c4a54; margin: 0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.dtdl-table .table-title .product-cell, .dtdl-table .table-title .product-cell-wide { border-right: solid 1px white; height: 5.5em; }
@media (min-width: 960px) { .dtdl-table .table-title { padding: 0 215px 0 0; overflow: hidden; *zoom: 1; } }
.dtdl-table .product-title { color: #235391; font-weight: 700; font-size: 21px; font-size: 1.5rem; margin: 0 0 1em 0; }
.dtdl-table .cta.detail-link, .dtdl-table .slicknav_nav .mega-nav .mega-nav-column .detail-link.cta, .slicknav_nav .mega-nav .mega-nav-column .dtdl-table .detail-link.cta, .dtdl-table .mortgage-calculator-form .detail-link.input-submit, .mortgage-calculator-form .dtdl-table .detail-link.input-submit { color: #e10015; background: none; padding: 0; margin: 0 0 15px 0; }
.dtdl-table .cta.detail-link:after, .dtdl-table .slicknav_nav .mega-nav .mega-nav-column .detail-link.cta:after, .slicknav_nav .mega-nav .mega-nav-column .dtdl-table .detail-link.cta:after, .dtdl-table .mortgage-calculator-form .detail-link.input-submit:after, .mortgage-calculator-form .dtdl-table .detail-link.input-submit:after { font-size: 30px; bottom: 0; right: 0; }
.dtdl-table .cta, .dtdl-table .slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .dtdl-table .cta, .dtdl-table .mortgage-calculator-form .input-submit, .mortgage-calculator-form .dtdl-table .input-submit { width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.dtdl-table dl { margin: 0px; overflow: hidden; *zoom: 1; font-weight: 700; color: #3c4a54; }
.dtdl-table dl dt, .dtdl-table dl dd { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.dtdl-table .product { padding: 20px; }
.dtdl-table .product:nth-child(2n) { background: #fff; }
@media (min-width: 960px) { .dtdl-table .product { display: table; width: 100%; padding: 15px 0; } }
@media (min-width: 960px) { .dtdl-table .product-detail { display: table-cell; vertical-align: top; } }
@media (min-width: 960px) { .dtdl-table .product-links { display: table-cell; width: 215px; padding: 15px 20px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; vertical-align: top; } }
.dtdl-table .overall-cost dt, .dtdl-table .overall-cost dd { width: 50%; float: left; margin: 0 0 1em 0; }
.dtdl-table .overall-cost dt { clear: left; }
@media (min-width: 960px) { .dtdl-table .overall-cost { border-top: 1px solid #ccc; padding: 20px 0 0 0; clear: both; text-align: center; margin: 0 0 1em 0; }
  .dtdl-table .overall-cost dt, .dtdl-table .overall-cost dd { float: none; width: auto; display: inline; } }

.floatingMenu { list-style-type: none; margin: 0; padding: 0; width: 120px; position: absolute; top: 420px; right: 0px; z-index: 50; }
.floatingMenu li a { display: block; background: #235391; color: #ffffff; text-align: center; padding: 10px; text-transform: uppercase; font-weight: 700; border-bottom: 1px solid #ffffff; }
.floatingMenu li a:hover { background: #3c6eb4; }
@media (max-width: 1330px) { .floatingMenu { display: none; } }

.pagination .label, .social-links .label, .awards-strip .label, .lenders-strip .label, .pagination ul, .social-links ul, .awards-strip ul, .lenders-strip ul, .pagination li, .social-links li, .awards-strip li, .lenders-strip li { display: inline-block; vertical-align: middle; }
.pagination ul, .social-links ul, .awards-strip ul, .lenders-strip ul { list-style: none; padding: 0; }

.tab-navigation { font-size: 15px; font-size: 1.07143rem; }
.tab-navigation ul { list-style: none; margin: 0; padding: 0; display: block; overflow: hidden; *zoom: 1; }
.tab-navigation li { float: left; padding: 10px 0 0 0; width: 100%; }
@media (min-width: 960px) { .tab-navigation li { width: 16.66667%; } }
.tab-navigation a { border-left: 1px solid #fff; display: block; background: #37465a; color: #fff; padding: 10px 20px; }
@media (min-width: 960px) { .tab-navigation a { height: 65px; } }
.tab-navigation a:hover { background: #235391; }
.tab-navigation a.selected { background: #fff; color: #3c4a54; }
@media (min-width: 960px) { .tab-navigation a.selected { padding-top: 20px; margin-top: -10px; } }
.tab-navigation li:first-child a { border: 0; }

.social-links { display: inline-block; margin-bottom: 15px; }
.social-links ul { display: inline-block; margin: 0; }
.social-links .label { margin: 0 10px 0 0; font-size: 20px; }
.social-links a { display: block; width: 40px; color: #fff; text-align: center; font-size: 20px; padding: 5px 0; }
.social-links a.icon-facebook { background: #3c5999; }
.social-links a.icon-twitter { background: #14a5e0; }
.social-links a.icon-linkedin { background: #3c91cd; }
.social-links a.icon-youtube { background: #eb321f; }
.social-links a.icon-googleplus { background: #dd4b39; }
.social-follow .social-links a { font-size: 23px; line-height: 23px; padding: 10px 0; }
.social-share .social-links a { width: 32px; padding: 6px 0; font-size: 20px; line-height: 20px; }

.social-share { text-align: right; }

.awards-strip { padding: 13px 0 0 0; text-align: center; font-size: 20px; background: #fff; padding: 15px 0; }
.awards-strip img { max-width: 100%; }
.awards-strip .label { margin: 0 20px 0 0; font-size: 20px; }
.awards-strip ul { margin: 0; }
.awards-strip li { box-sizing: border-box; padding: 0 20px; width: 20%; }
@media (min-width: 800px) { .awards-strip li { width: 180px; } }
@media (max-width: 600px) { .awards-strip { display: none; } }

.cta-grid, .cta-grid-alt { margin: 20px 0 10px 0; }
.cta-grid .cta-box, .cta-grid-alt .cta-box { background: #8296aa; color: #fff; height: 100px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; line-height: 1; position: relative; padding: 0 0 0 110px; margin-bottom: 10px; }
@media (max-width: 600px) { .cta-grid .cta-box, .cta-grid-alt .cta-box { padding: 0 0 0 30px; } }
.cta-grid .cta-box:hover, .cta-grid-alt .cta-box:hover { background: #9baabe; }
.cta-grid .cta-box .text, .cta-grid-alt .cta-box .text { vertical-align: middle; display: inline-block; width: 90%; }
.cta-grid .cta-box .text:after, .cta-grid-alt .cta-box .text:after { position: absolute; right: 20px; top: 50%; font-size: 40px; margin: -20px 0 0 0; }
.cta-grid .cta-box .line-1, .cta-grid-alt .cta-box .line-1 { font-size: 20px; font-size: 1.42857rem; }
.cta-grid .cta-box .line-2, .cta-grid-alt .cta-box .line-2 { font-size: 34px; font-size: 2.42857rem; font-weight: bold; }
.cta-grid .cta-box:before, .cta-grid-alt .cta-box:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }
.cta-grid .cta-box:after, .cta-grid-alt .cta-box:after { content: ''; position: absolute; top: 50%; left: 55px; }
@media (max-width: 600px) { .cta-grid .cta-box:after, .cta-grid-alt .cta-box:after { display: none; left: 0px; } }
.cta-grid .cta-box.cta-box-chat:after, .cta-grid-alt .cta-box.cta-box-chat:after { margin: -25.5px 0 0 -32.5px; background-position: 0 0; height: 51px; width: 65px; }
.cta-grid .cta-box.cta-box-email:after, .cta-grid-alt .cta-box.cta-box-email:after { margin: -21.5px 0 0 -32.5px; background-position: 0 -51px; height: 43px; width: 65px; }
.cta-grid .cta-box.cta-box-faq:after, .cta-grid-alt .cta-box.cta-box-faq:after { margin: -26px 0 0 -26px; background-position: 0 -94px; height: 52px; width: 52px; }

.cta-grid-alt .cta-box { background: #1e5a8c; padding: 0 20px; }
.cta-grid-alt .cta-box .text { max-width: 230px; font-size: 20px; font-size: 1.42857rem; }

.links-grid, .product-grid, .team-grid, .news-list-home { margin: 20px 0; }
.links-grid header, .product-grid header, .team-grid header, .news-list-home header { position: relative; padding: 0 20px 10px 20px; }
@media (min-width: 600px) { .links-grid header, .product-grid header, .team-grid header, .news-list-home header { padding: 0 200px 0 20px; } }
.links-grid .view-more, .product-grid .view-more, .team-grid .view-more, .news-list-home .view-more { position: absolute; bottom: 0; right: 20px; text-transform: uppercase; font-weight: bold; color: #e10015; }
@media (max-width: 600px) { .links-grid .view-more, .product-grid .view-more, .team-grid .view-more, .news-list-home .view-more { position: relative; left: 0px; } }
.links-grid .view-more:hover, .product-grid .view-more:hover, .team-grid .view-more:hover, .news-list-home .view-more:hover { color: #8c0000; }

.links-grid .links-grid-item { background: #fff; margin: 0 0 20px 0; }
.links-grid .links-grid-item > a { color: inherit; display: block; padding: 20px; }
.links-grid .links-grid-item > a .image { margin: -20px; }
.links-grid .links-grid-item > a .image > img { display: block; width: 100%; }
.links-grid .links-grid-item .iframe { position: relative; padding: 0 0 60% 0; width: 100%; }
.links-grid .links-grid-item .iframe iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.contact-strip { text-align: center; margin-top: 28px; margin-bottom: 40px; }
.contact-strip .heading-medium-light, .contact-strip .standfirst, .contact-strip .page-intro .article-meta, .page-intro .contact-strip .article-meta, .contact-strip .best-product-table th, .best-product-table .contact-strip th { display: inline-block; vertical-align: middle; margin: 0 0.5em 0 0; }
.contact-strip .tel { vertical-align: middle; display: inline-block; font-size: 30px; font-size: 2.14286rem; margin: 0 0.3em 0 0; cursor: default; }

.link-panel-grid { margin: 20px 0; }
@media (max-width: 959px) { .link-panel-grid.mb .grid .grid__cell { margin-bottom: 15px; } }
.link-panel-grid .link-panel-rates { background: #fff; min-height: 80px; padding: 20px 20px 40px 20px; position: relative; margin: 0 0 20px 0; }
.link-panel-grid .link-panel-rates .rate, .link-panel-grid .link-panel-rates .rate-apr { line-height: 1; font-size: 40px; font-size: 2.85714rem; margin: 0 0 5px 0; }
.link-panel-grid .link-panel-rates .rate { color: #e10015; font-weight: bold; padding: 0 5px 0 0; }
.link-panel-grid .link-panel-rates .info { font-style: italic; }
.link-panel-grid .link-panel-rates .apr { font-size: 20px; font-size: 1.42857rem; }
.link-panel-grid .link-panel-rates .view-details { position: absolute; bottom: 0; height: 40px; border-top: 1px solid #ccc; left: 20px; right: 20px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 10px 0 0 0; color: #e10015; font-weight: bold; text-transform: uppercase; }
.link-panel-grid .link-panel-article { background: #fff; margin: 0 0 20px 0; }
.link-panel-grid .link-panel-article .heading { margin: 0; }
.link-panel-grid .link-panel-article > a { color: inherit; min-height: 85px; padding: 15px 15px 40px 15px; position: relative; display: block; }
.link-panel-grid .link-panel-article > a:hover .cta-strip { color: #8c0000; }
.link-panel-grid .link-panel-article .cta-strip { position: absolute; left: 15px; bottom: 0; right: 15px; color: #e10015; }

.lenders-strip { background: #fff; padding: 20px; margin: 20px 0; }
@media (max-width: 700px) { .lenders-strip { display: none; } }
.lenders-strip ul { margin: 0; }
@media (max-width: 1024px) { .lenders-strip ul { width: 100%; } }
@media (min-width: 960px) { .lenders-strip .label { margin: 8px 40px 0 0; float: left; } }
.lenders-strip .lender-slides { overflow: hidden; }
@media (max-width: 1024px) { .lenders-strip li { width: 19.3%; } }
.lenders-strip li img { display: block; width: 100%; }

.disclaimer-strip { background: #fff; padding: 30px 20px; margin: 20px 0; }
.disclaimer-strip .text { margin: 0 auto; text-align: center; }

.product-grid { margin: 30px 0; }
.product-grid header { border-bottom: 1px solid #ccc; }
.product-grid .product { border-top: 1px solid #ccc; margin: -1px 0 0 0; display: block; min-height: 50px; padding: 30px 20px 5px 20px; color: inherit; position: relative; }
.product-grid .product:after { position: absolute; right: 20px; top: 50px; color: #e10015; font-size: 40px; font-size: 2.85714rem; }
@media (max-width: 600px) { .product-grid .product:after { top: 25px; } }
.product-grid .product h3 { color: #e10015; margin: 0 0 0.5em 0; }
.product-grid .product .text { max-width: 430px; padding: 0 40px 0 0; }
@media (max-width: 600px) { .product-grid .product .text p { display: none; } }
.product-grid .product:hover h3, .product-grid .product:hover:after { color: #8c0000; }

.promos-grid { margin: 20px 0; }
.promos-grid img, .promos-grid a { display: block; }

.twoup img { width: 100%; display: none; margin-bottom: 15px; }
@media (min-width: 960px) { .twoup img.desktop { display: block; } }
@media (min-width: 600px) and (max-width: 959px) { .twoup img.tablet { display: block; } }
@media (min-width: 320px) and (max-width: 599px) { .twoup img.mobile { display: block; } }

.theeup img { width: 100%; }

.newsletter-promo { margin: 20px 0; }
.newsletter-promo img { display: none; width: 100%; }
@media (min-width: 960px) { .newsletter-promo img.desktop { display: block; } }
@media (min-width: 600px) and (max-width: 959px) { .newsletter-promo img.tablet { display: block; } }
@media (min-width: 320px) and (max-width: 599px) { .newsletter-promo img.mobile { display: block; } }

.anchor-fix { margin: 0 0 140px 0; }

.team-description-grid { background: #fff; padding: 20px 0 0 0; margin: 0 0 40px 0; }
.team-description-grid .team-description { margin: 0 20px 20px 20px; }
.team-description-grid .heading { margin: 0 0 0.5em 0; }
.team-description-grid .text { min-height: 7em; }
.anchor-fix .team-description-grid { margin-bottom: -130px; }

.team-grid { margin: 30px 0; overflow: hidden; }
.team-grid .team-member { background: #fff; margin: 0 0 20px 0; }
.team-grid .team-member .image img { width: 100%; }
.team-grid .text { padding: 30px 20px; min-height: 9em; position: relative; }
.team-grid h3 { margin: 0 0 0.2em 0; }
.team-grid .title { margin: 0; }
.team-grid .contact { position: absolute; bottom: 30px; left: 20px; font-weight: bold; }
.team-grid .contact a { color: inherit; }
.team-grid .contact .tel:before, .team-grid .contact .tel span, .team-grid .contact .email:before, .team-grid .contact .email span { display: inline-block; vertical-align: middle; }
.team-grid .contact .tel:before, .team-grid .contact .email:before { font-size: 1.3em; margin: 0 0.2em 0 0; }
.team-grid .contact .tel { display: block; cursor: default; color: #e10015; }
.team-grid .contact .email:before, .team-grid .contact .email span { display: inline; }
.team-grid .contact .email span { word-wrap: break-all; }
.anchor-fix .team-grid { padding-top: 130px; margin-bottom: -130px; }
.team-grid .team-slider { overflow: hidden; *zoom: 1; position: relative; margin: 0 -5px; }
.team-grid .team-slider .slides { margin: 0; padding: 0; list-style: none; }
.team-grid .team-slider .slide { width: 25%; float: left; }
.team-grid .team-slider .slide img { max-width: 100%; }
.team-grid .team-slider .slide .team-member { margin: 0 5px; }
.team-grid .team-slider .flex-direction-nav { margin: 0; padding: 0; list-style: none; }
.team-grid .team-slider .flex-prev, .team-grid .team-slider .flex-next { position: absolute; top: 50px; }
html.no-touch .team-grid .team-slider .flex-prev, html.no-touch .team-grid .team-slider .flex-next { display: none; }
.team-grid .team-slider .flex-disabled.flex-prev, .team-grid .team-slider .flex-disabled.flex-next { display: none !important; }
html.no-touch .team-grid .team-slider:hover .flex-prev, html.no-touch .team-grid .team-slider:hover .flex-next { display: block; }
.team-grid .team-slider .flex-prev { left: 5px; background-position: 0 -176px; height: 80px; width: 40px; }
.team-grid .team-slider .flex-next { right: 5px; background-position: 0 -256px; height: 80px; width: 40px; }

.news-list ul, .news-list-home ul { margin: 0; list-style: none; padding: 0; }
.news-list li, .news-list-home li { border-top: 1px solid #ccc; }
.news-list h3, .news-list-home h3 { margin: 0 0 0.3em 0; }
.news-list .article-meta, .news-list-home .article-meta { margin: 0 0 0.3em 0; }
.news-list .category, .news-list-home .category { font-weight: bold; }
.news-list .text, .news-list-home .text { max-width: 710px; }

.news-list { background: #fff; padding: 10px 20px; margin: 0 0 20px 0; }
.news-list li { padding: 20px 0; }
.news-list li:first-child { border: 0; }
.news-list article { overflow: hidden; *zoom: 1; }
.news-list .image { float: left; margin: 0 20px 10px 0; }
.news-list .text { overflow: hidden; }
@media (max-width: 600px) { .news-list .text p { display: none; } }

.news-list-intro { padding: 15px 0 40px 0; border-bottom: 1px solid #ccc; }

.news-list-home { margin: 30px 0 0 0; }
.news-list-home li { padding: 20px; }
@media (max-width: 600px) { .news-list-home li article p { display: none; } }

.article-content { background: #fff; margin: 0 0 20px 0; padding-right: 15px; }
.article-content .details { margin: 0 0 0 20px; }
@media (min-width: 960px) { .article-content { padding: 30px 0; } }

.details-table { width: 100%; }
.details-table td { padding: 10px 0; border-top: 1px solid #ccc; vertical-align: top; }
.details-table tr:first-child td { border-top: 0; }
@media (min-width: 768px) { .details-table .col-1, .details-table .col-1-small { padding-right: 20px; }
  .details-table .col-1 .text, .details-table .col-1-small .text { max-width: 220px; }
  .details-table .col-2 .text { max-width: 450px; } }
@media (max-width: 767px) { .details-table .col-1, .details-table .col-1-small, .details-table .col-2 { display: block; border: 0; padding: 0; }
  .details-table .col-1, .details-table .col-1-small { margin: 0 0 5px 0; }
  .details-table tr { display: block; padding: 10px 0; border-bottom: 1px solid #ccc; } }

.article-content-text { padding: 20px; position: relative; }
.grid__cell .article-content-text:after { content: ''; border-right: 1px solid #ccc; position: absolute; height: 100%; top: 0; right: -5px; }
@media (max-width: 959px) { .grid__cell .article-content-text:after { border: none; } }
.article-content-text h2, .article-content-text h3 { margin-top: 1em; }
.article-content-text h2:first-child, .article-content-text h3:first-child { margin-top: 0; }

.article-content-intro { background: #fff; padding: 30px 20px 5px 20px; }

.article-sidebar { position: relative; max-width: 310px; margin: 0 0 0 20px; }
.article-sidebar .image { margin: 0 0 10px 0; }
.article-sidebar .image img { width: 100%; }

.profile-contact { color: #1e5a8c; }
.profile-contact a { color: inherit; }
.profile-contact .tel, .profile-contact .email { display: block; }
.profile-contact .tel:before, .profile-contact .tel span, .profile-contact .email:before, .profile-contact .email span { vertical-align: middle; word-wrap: break-word; width: 100%; }
.profile-contact .tel:before, .profile-contact .email:before { font-size: 1.3em; margin: 0 0.2em 0 0; }
.profile-contact .tel { cursor: default; }

.cookiebar { padding: 10px 0 20px 0; background: #f5f5f5; }
.cookiebar .inner-area, .cookiebar .main-content { padding: 0; }
.cookiebar .text { padding: 10px 0; }
.cookiebar .links { max-width: 260px; display: inline-block; text-align: left; }
.cookiebar .links .cta, .cookiebar .links .slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .cookiebar .links .cta, .cookiebar .links .mortgage-calculator-form .input-submit, .mortgage-calculator-form .cookiebar .links .input-submit, .cookiebar .links .cta-alt, .cookiebar .links .cta-strip, .cookiebar .links .mortgage-calculator-results .quote a, .mortgage-calculator-results .quote .cookiebar .links a { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; width: 100%; }

.homepage-banner { width: 100%; height: 300px; overflow: hidden; text-align: center; position: relative; }
.homepage-banner img { top: 0; position: absolute; width: 2000px; margin: 0 0 0 -1000px; left: 50%; }
.homepage-banner .text { max-width: 876px; padding: 0 20px; margin: 50px auto; position: relative; color: #fff; display: inline-block; vertical-align: middle; }
@media screen and (max-width: 37.5em) { .homepage-banner .text p { display: none; } }
.homepage-banner .homepage-tabs { position: absolute; bottom: 0; left: 0; right: 0; text-align: center; font-weight: bold; color: #fff; text-transform: uppercase; }
.homepage-banner .homepage-tabs a { display: block; width: 100%; background: #37465a; color: #fff; padding: 6px 0; text-align: center; }
.homepage-banner .homepage-tabs a.selected { color: #37465a; background: #f5f5f5; }
.homepage-banner .homepage-tabs a:hover { background: #235391; color: #fff; }

.homepage-intro { margin: 20px 0; }

.homepage-intro-content { background: #fff; padding: 30px 0; }
.homepage-intro-content .intro { padding: 0 20px; }
.homepage-intro-content .key-features { border-left: 1px solid #ccc; padding: 10px 20px; }
.homepage-intro-content .key-features h3 { font-size: 26px; font-size: 1.85714rem; }
.homepage-intro-content .key-features ul { padding: 0 0 0 20px; list-style-position: outside; }
.homepage-intro-content .key-features li { margin: 0 0 1em 0; }
@media (max-width: 959px) { .homepage-intro-content .key-features { border-left: none; border-top: 1px solid #ccc; margin-top: 25px; padding-top: 15px; padding-bottom: 0px; } }

.homepage-text { margin: 20px 0; background: #fff; padding: 30px 20px; }
.homepage-text h2, .homepage-text h3 { margin-top: 1em; }
.homepage-text h2:first-child, .homepage-text h3:first-child { margin-top: 0; }

.mortgage-calculator-form { background: #8296aa; padding: 0 0 10px 0; margin: 0 0 20px 0; }
.mortgage-calculator-form label { color: #fff; display: block; margin-bottom: 4px; }
.mortgage-calculator-form .grid__cell { vertical-align: bottom; margin-bottom: 20px; }
.mortgage-calculator-form .input-text { -webkit-appearance: none; border-radius: 0; width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; height: 39px; padding: 0 10px; border: 0; -moz-appearance: none; -webkit-appearance: none; }
.mortgage-calculator-form .input-submit { border: 0; width: 100%; min-width: 0; }

.mortgage-calculator-results { margin: 0 0 20px 0; overflow: auto; }
.mortgage-calculator-results table { width: 100%; }
.mortgage-calculator-results th { background: #ebebeb; border-left: 1px solid #fff; }
.mortgage-calculator-results td { background: #fff; border-left: 1px solid #ebebeb; }
.mortgage-calculator-results th, .mortgage-calculator-results td { padding: 5px 10px; }
.mortgage-calculator-results .quote a { width: auto; min-width: 0; }

.best-product-table table { width: 100%; text-align: left; }
.best-product-table th { background: #ebebeb; border-left: 1px solid #fff; }
.best-product-table th:first-child { border: 0; }
@media (max-width: 600px) { .best-product-table th.hideme { display: none; } }
.best-product-table th, .best-product-table td { vertical-align: top; padding: 20px; width: 20%; }
@media (max-width: 600px) { .best-product-table th.hideme, .best-product-table td.hideme { display: none; } }
.best-product-table tr:nth-child(2n) { background: #fff; }

.input-select, .input-text { border: 1px solid #ccc; padding: 10px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; width: 290px; max-width: 100%; }
@media (max-width: 959px) { .input-select, .input-text { width: 100%; } }

.enquiry-form { background: #fff; padding: 30px 20px; }
.enquiry-form .enquiry-form-fields { max-width: 710px; border-right: 1px solid #ccc; }
@media (max-width: 959px) { .enquiry-form .enquiry-form-fields { border-right: 0; } }
.enquiry-form .label, .enquiry-form .input { display: inline-block; vertical-align: top; width: 95%; }
.enquiry-form .label { font-size: 18px; font-size: 1.28571rem; width: 250px; margin: 0 20px 0 0; }
.enquiry-form .label.label-small { font-size: 1rem; }
.enquiry-form .label .req { color: #e10015; }
.enquiry-form .row { margin: 0 0 25px 0; position: relative; }
.enquiry-form .row.error .input-text { background: #ffdcdc; border-color: red; }
.enquiry-form .row .error-message { position: absolute; left: 100%; top: 10px; max-width: 260px; min-width: 140px; padding: 25px 0 0 20px; color: #e10015; }
.enquiry-form .row .error-message span { display: inline-block; }
.enquiry-form .row .error-message:before { font-size: 1.2em; display: inline-block; vertical-align: middle; padding: 0 5px 0 0; }
@media (max-width: 959px) { .enquiry-form .row .error-message { position: relative; left: 0; padding: 0; } }
.enquiry-form .row .radio-option { display: inline-block; margin: 0 0 0 20px; }
.enquiry-form .row .radio-option:first-child { margin: 0; }
.enquiry-form .row .radio-option label, .enquiry-form .row .radio-option input { display: inline-block; vertical-align: middle; }
.enquiry-form .row .radio-option input { margin: 0 0 0 5px; }
.enquiry-form textarea { width: 280px; }
@media (max-width: 600px) { .enquiry-form textarea { width: 90%; } }

.repayment-calculator { background: #8296aa; color: #fff; padding: 25px 20px 20px 20px; min-height: 210px; margin: 0 0 20px 0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
.repayment-calculator h2 { margin: 0; }
.repayment-calculator .input-text { padding: 10px; text-transform: uppercase; border: 0; }
.repayment-calculator .intro-and-options { overflow: hidden; *zoom: 1; margin: 0 0 20px 0; }
.repayment-calculator .intro { float: left; }
.repayment-calculator .options { float: right; }
.repayment-calculator .options input { vertical-align: middle; }
.repayment-calculator .options label { margin: 0 5px 0 10px; }
.repayment-calculator .fields { margin-bottom: 10px; }
.repayment-calculator .fields .input-text { margin: 0 0 10px 0; }
.repayment-calculator .cta, .repayment-calculator .slicknav_nav .mega-nav .mega-nav-column .cta, .slicknav_nav .mega-nav .mega-nav-column .repayment-calculator .cta, .repayment-calculator .mortgage-calculator-form .input-submit, .mortgage-calculator-form .repayment-calculator .input-submit { width: 100%; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; min-width: 0; }
.repayment-calculator .result { font-weight: bold; margin: 0; }
