@charset "UTF-8";
/*------------------------------------*\
    $PALETTE
\*------------------------------------*/
/*------------------------------------*\
    app.css
\*------------------------------------*/
/**
 * Here we pull in some variables, include the inuit.css framework, then add our
 * project-specific components afterwards. This file is solely for linking all stylesheets together.
 * Use core.scss
 */
/* Inuit.css */
/*------------------------------------*\
    $BASE
\*------------------------------------*/
/**
/**
 * Base font-family.
 */
/*------------------------------------*\
    $RESPONSIVE
\*------------------------------------*/
/**
 * Using `inline-block` means that the grid items need their whitespace removing
 * in order for them to work correctly. Set the following to true if you are
 * going to achieve this by manually removing/commenting out any whitespace in
 * your HTML yourself.
 *
 * Setting this to false invokes a hack which cannot always be guaranteed,
 * please see the following for more detail:
 *
 * github.com/csswizardry/csswizardry-grids/commit/744d4b23c9d2b77d605b5991e54a397df72e0688
 * github.com/csswizardry/inuit.css/issues/170#issuecomment-14859371
 */
/*------------------------------------*\
    $BRAND
\*------------------------------------*/
/**
 * Brand stuff
 */
/**
 * How big would you like round corners to be by default?
 */
/*------------------------------------*\
    $OBJECTS AND ABSTRACTIONS
\*------------------------------------*/
/**
 * Which objects and abstractions would you like to use?
 */
/*------------------------------------*\
    $FRAMEWORK
\*------------------------------------*/
/**
 * inuit.css will work these next ones out for use within the framework.
 *
 * Assign our `$base-line-height` to a new spacing var for more transparency.
 */
/*------------------------------------*\
    $Ember Power Select
\*------------------------------------*/
.ember-basic-dropdown {
  position: relative; }

.ember-basic-dropdown, .ember-basic-dropdown-content, .ember-basic-dropdown-content * {
  box-sizing: border-box; }

.ember-basic-dropdown-content {
  position: absolute;
  width: auto;
  z-index: 1000;
  background-color: #ffffff; }

.ember-basic-dropdown-content--left {
  left: 0; }

.ember-basic-dropdown-content--right {
  right: 0; }

.ember-basic-dropdown-overlay {
  position: fixed;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 10;
  top: 0;
  left: 0;
  pointer-events: none; }

.ember-basic-dropdown-content-wormhole-origin {
  display: inline; }

.ember-power-select-dropdown * {
  box-sizing: border-box; }

.ember-power-select-trigger {
  position: relative;
  border-top: 2px solid #d8d8d8;
  border-bottom: 2px solid #d8d8d8;
  border-right: 2px solid #d8d8d8;
  border-left: 2px solid #d8d8d8;
  border-radius: 2px;
  background-color: #ffffff;
  line-height: 3;
  overflow-x: hidden;
  text-overflow: ellipsis;
  min-height: 3em;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
  color: inherit;
  /* Minimum clearfix for modern browsers */ }
  .ember-power-select-trigger:after {
    content: "";
    display: table;
    clear: both; }

.ember-power-select-trigger:focus,
.ember-power-select-trigger--active {
  border-top: 2px solid #5A99E2;
  border-bottom: 2px solid #5A99E2;
  border-right: 2px solid #5A99E2;
  border-left: 2px solid #5A99E2;
  box-shadow: none;
  outline: none; }

.ember-basic-dropdown-trigger--below.ember-power-select-trigger[aria-expanded="true"],
.ember-basic-dropdown-trigger--in-place.ember-power-select-trigger[aria-expanded="true"] {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.ember-basic-dropdown-trigger--above.ember-power-select-trigger[aria-expanded="true"] {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.ember-power-select-placeholder {
  color: #999999;
  display: block;
  overflow-x: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }

.ember-power-select-status-icon {
  position: absolute;
  display: inline-block;
  width: 0;
  height: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-style: solid;
  border-width: 7px 4px 0 4px;
  border-color: #d8d8d8 transparent transparent transparent; }
  .ember-basic-dropdown-trigger[aria-expanded="true"] .ember-power-select-status-icon {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg); }

.ember-power-select-clear-btn {
  position: absolute;
  cursor: pointer; }

.ember-power-select-trigger-multiple-input {
  font-family: inherit;
  font-size: inherit;
  border: none;
  display: inline-block;
  line-height: inherit;
  -webkit-appearance: none;
  outline: none;
  padding: 0;
  float: left;
  background-color: transparent;
  text-indent: 2px;
  /* There's a browser bug where this selectos cannot be chained with commas */ }
  .ember-power-select-trigger-multiple-input:disabled {
    background-color: #eeeeee; }
  .ember-power-select-trigger-multiple-input:-ms-input-placeholder {
    opacity: 1;
    color: #999999; }
  .ember-power-select-trigger-multiple-input::placeholder {
    opacity: 1;
    color: #999999; }
  .ember-power-select-trigger-multiple-input::-webkit-input-placeholder {
    opacity: 1;
    color: #999999; }
  .ember-power-select-trigger-multiple-input::-moz-placeholder {
    opacity: 1;
    color: #999999; }
  .ember-power-select-trigger-multiple-input::-ms-input-placeholder {
    opacity: 1;
    color: #999999; }

.ember-power-select-multiple-options {
  padding: 0;
  margin: 0; }

.ember-power-select-multiple-option {
  border: 1px solid gray;
  border-radius: 2px;
  color: #333333;
  background-color: #e4e4e4;
  padding: 0 4px;
  display: inline-block;
  line-height: 1.45;
  float: left;
  margin: 2px 0 2px 3px; }

.ember-power-select-multiple-remove-btn {
  cursor: pointer; }
  .ember-power-select-multiple-remove-btn:not(:hover) {
    opacity: 0.5; }

.ember-power-select-search {
  padding: 4px; }

.ember-power-select-search-input {
  border: 2px solid #d8d8d8;
  border-radius: 0;
  width: 100%;
  font-size: inherit;
  line-height: inherit;
  padding: 0 5px; }
  .ember-power-select-search-input:focus {
    border: 2px solid #5A99E2;
    box-shadow: none;
    outline: none; }

.ember-power-select-dropdown {
  border-left: 2px solid #5A99E2;
  border-right: 2px solid #5A99E2;
  line-height: 3;
  border-radius: 2px;
  box-shadow: none;
  overflow: hidden;
  color: inherit; }

.ember-power-select-dropdown.ember-basic-dropdown-content--above {
  border-top: 2px solid #5A99E2;
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0; }

.ember-power-select-dropdown.ember-basic-dropdown-content--below, .ember-power-select-dropdown.ember-basic-dropdown-content--in-place {
  border-top: none;
  border-bottom: 2px solid #5A99E2;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.ember-power-select-dropdown.ember-basic-dropdown-content--in-place {
  width: 100%; }

.ember-power-select-options {
  list-style: none;
  margin: 0;
  padding: 0;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none; }
  .ember-power-select-options[role="listbox"] {
    overflow-y: auto;
    /* in firefox in windows this can cause a word-break issue. Try `overflow-y: scroll` if that happens */
    -webkit-overflow-scrolling: touch;
    max-height: 21em; }

.ember-power-select-option {
  cursor: pointer;
  padding: 0 15px; }

.ember-power-select-group[aria-disabled="true"] {
  color: #999999;
  cursor: not-allowed; }

.ember-power-select-group[aria-disabled="true"] .ember-power-select-option,
.ember-power-select-option[aria-disabled="true"] {
  color: #999999;
  pointer-events: none;
  cursor: not-allowed; }

.ember-power-select-option[aria-selected="true"] {
  background-color: #FF647D; }

.ember-power-select-option[aria-current="true"] {
  background-color: #fafafa;
  color: #FF647D; }

.ember-power-select-group-name {
  cursor: default;
  font-weight: bold; }

.ember-power-select-trigger[aria-disabled=true] {
  background-color: #eeeeee; }

.ember-power-select-trigger {
  padding: 0 2rem 0 0; }

.ember-power-select-selected-item, .ember-power-select-placeholder {
  margin-left: 8px; }

.ember-power-select-status-icon {
  right: 5px; }

.ember-power-select-clear-btn {
  right: 25px; }

.ember-power-select-group .ember-power-select-group .ember-power-select-group-name {
  padding-left: 45px; }

.ember-power-select-group .ember-power-select-group .ember-power-select-option {
  padding-left: 75px; }

.ember-power-select-group .ember-power-select-option {
  padding-left: 45px; }

.ember-power-select-group .ember-power-select-group-name {
  padding-left: 15px; }

.ember-power-select-trigger[dir=rtl] {
  padding: 0 0 0 16px; }
  .ember-power-select-trigger[dir=rtl] .ember-power-select-selected-item, .ember-power-select-trigger[dir=rtl] .ember-power-select-placeholder {
    margin-right: 8px; }
  .ember-power-select-trigger[dir=rtl] .ember-power-select-multiple-option {
    float: right; }
  .ember-power-select-trigger[dir=rtl] .ember-power-select-trigger-multiple-input {
    float: right; }
  .ember-power-select-trigger[dir=rtl] .ember-power-select-status-icon {
    left: 5px;
    right: initial; }
  .ember-power-select-trigger[dir=rtl] .ember-power-select-clear-btn {
    left: 25px;
    right: initial; }

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group .ember-power-select-group-name {
  padding-right: 45px; }

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group .ember-power-select-option {
  padding-right: 75px; }

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-option {
  padding-right: 45px; }

.ember-power-select-dropdown[dir=rtl] .ember-power-select-group .ember-power-select-group-name {
  padding-right: 15px; }

/*------------------------------------*\
    INUIT.CSS
\*------------------------------------*/
/*!*
 *
 * inuitcss.com -- @inuitcss -- @csswizardry
 *
 */
/**
 * inuit.css acts as a base stylesheet which you should extend with your own
 * theme stylesheet.
 *
 * inuit.css aims to do the heavy lifting; sorting objects and abstractions,
 * design patterns and fiddly bits of CSS, whilst leaving as much design as
 * possible to you. inuit.css is the scaffolding to your decorator.
 *
 * This stylesheet is heavily documented and contains lots of comments, please
 * take care to read and refer to them as you build. For further support please
 * tweet at @inuitcss.
 *
 * Owing to the amount of comments please only ever use minified CSS in
 * production. This file is purely a dev document.
 *
 * The table of contents below maps to section titles of the same name, to jump
 * to any section simply run a find for $[SECTION-TITLE].
 *
 * Most objects and abstractions come with a chunk of markup that you should be
 * able to paste into any view to quickly see how the CSS works in conjunction
 * with the correct HTML.
 *
 * inuit.css is written to this standard: github.com/csswizardry/CSS-Guidelines
 *
 * LICENSE
 *
 * Copyright 2013 Harry Roberts
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * Thank you for choosing inuit.css. May your web fonts render perfectly.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * CONTENTS............You’re reading it!
 * WARNING.............Here be dragons!
 * IMPORTS.............Begin importing the sections below
 *
 * MIXINS..............Super-simple Sass stuff
 * NORMALIZE...........normalize.css
 * RESET...............Set some defaults
 * CLEARFIX............
 * SHARED..............Shared declarations
 *
 * MAIN................High-level elements like `html`, `body`, etc.
 * LISTS...............
 * IMAGES..............
 * TABLES..............
 *
 * GRIDS...............Fluid, proportional and nestable grids
 * COLUMNS.............CSS3 columns
 * NAV.................A simple abstraction to put a list in horizontal nav mode
 * PAGINATION..........Very stripped back, basic paginator
 * BREADCRUMB..........Simple breadcrumb trail object
 * MEDIA...............Media object
 * ISLAND..............Boxed off content
 * BLOCK-LIST..........Blocky lists of content
 * SPLIT...............A simple split-in-two object
 * LOZENGES............Basic lozenge styles
 * RULES...............Horizontal rules
 * STATS...............Simple stats object
 * GREYBOX.............Wireframing styles
 *
 * WIDTHS..............Width classes for use alongside the grid system etc.
 * BRAND...............Helper class to apply brand treatment to elements
 * HELPER..............A series of helper classes to use arbitrarily
 * DEBUG...............Enable to add visual flags for debugging purposes
 */
/*------------------------------------*\
    $WARNING
\*------------------------------------*/
/*
 * inuit.css, being an OO framework, works in keeping with the open/closed
 * principle. The variables you set previously are now being used throughout
 * inuit.css to style everything we need for a base. Any custom styles SHOULD
 * NOT be added or modified in inuit.css directly, but added via your theme
 * stylesheet as per the open/closed principle:
 *
 * csswizardry.com/2012/06/the-open-closed-principle-applied-to-css
 *
 * Try not to edit any CSS beyond this point; if you find you need to do so
 * it is a failing of the framework so please tweet at @inuitcss.
 */
/*------------------------------------*\
    $IMPORTS
\*------------------------------------*/
/**
 * Generic utility styles etc.
 */
/*------------------------------------*\
    $DEFAULTS
\*------------------------------------*/
/**
 * inuit.css’ default variables. Redefine these in your `_vars.scss` file (found
 * in the inuit.css-web-template) to override them.
 */
/*------------------------------------*\
    $DEBUG
\*------------------------------------*/
/**
 * Debug mode will visually highlight any potential markup/accessibility quirks
 * in the browser. Set to `true` or `false`.
 */
/*------------------------------------*\
    $BASE
\*------------------------------------*/
/**
 * Base stuff
 */
/**
 * Base font-family.
 */
/**
 * Default colour for objects’ borders etc.
 */
/*------------------------------------*\
    $RESPONSIVE
\*------------------------------------*/
/**
 * Using `inline-block` means that the grid items need their whitespace removing
 * in order for them to work correctly. Set the following to true if you are
 * going to achieve this by manually removing/commenting out any whitespace in
 * your HTML yourself.
 *
 * Setting this to false invokes a hack which cannot always be guaranteed,
 * please see the following for more detail:
 *
 * github.com/csswizardry/csswizardry-grids/commit/744d4b23c9d2b77d605b5991e54a397df72e0688
 * github.com/csswizardry/inuit.css/issues/170#issuecomment-14859371
 */
/**
 * Define your breakpoints. The first value is the prefix that shall be used for
 * your classes (e.g. `.palm--one-half`), the second value is the media query
 * that the breakpoint fires at.
 */
/*------------------------------------*\
    $BRAND
\*------------------------------------*/
/**
 * Brand stuff
 */
/**
 * How big would you like round corners to be by default?
 */
/*------------------------------------*\
    $OBJECTS AND ABSTRACTIONS
\*------------------------------------*/
/**
 * Which objects and abstractions would you like to use?
 */
/*------------------------------------*\
    $FRAMEWORK
\*------------------------------------*/
/**
 * inuit.css will work these next ones out for use within the framework.
 *
 * Assign our `$base-line-height` to a new spacing var for more transparency.
 */
/*------------------------------------*\
    $MIXINS
\*------------------------------------*/
/**
 * Create a fully formed type style (sizing and vertical rhythm) by passing in a
 * single value, e.g.:
 *
   `@include font-size(10px);`
 *
 * Thanks to @redclov3r for the `line-height` Sass:
 * twitter.com/redclov3r/status/250301539321798657
 */
/**
 * Style any number of headings in one fell swoop, e.g.:
 *
   .foo{
       @include headings(1, 3){
           color:#BADA55;
       }
    }
 *
 * With thanks to @lar_zzz, @paranoida, @rowanmanning and ultimately
 * @thierrylemoulec for refining and improving my initial mixin.
 */
/**
 * Force overly long spans of text to truncate, e.g.:
 *
   `@include truncate(100%);`
 *
 * Where `$truncation-boundary` is a united measurement.
 */
/**
 * CSS arrows!!! But... before you read on, you might want to grab a coffee...
 *
 * This mixin creates a CSS arrow on a given element. We can have the arrow
 * appear in one of 12 locations, thus:
 *
 *       01    02    03
 *    +------------------+
 * 12 |                  | 04
 *    |                  |
 * 11 |                  | 05
 *    |                  |
 * 10 |                  | 06
 *    +------------------+
 *       09    08    07
 *
 * You pass this position in along with a desired arrow color and optional
 * border color, for example:
 *
 * `@include arrow(top, left, red)`
 *
 * for just a single, red arrow, or:
 *
 * `@include arrow(bottom, center, red, black)`
 *
 * which will create a red triangle with a black border which sits at the bottom
 * center of the element. Call the mixin thus:
 *
   .foo{
       background-color:#BADA55;
       border:1px solid #ACE;
       @include arrow(top, left, #BADA55, #ACE);
   }
 *
 */
/**
 * Media query mixin.
 *
 * It’s not great practice to define solid breakpoints up-front, preferring to
 * modify your design when it needs it, rather than assuming you’ll want a
 * change at ‘mobile’. However, as inuit.css is required to take a hands off
 * approach to design decisions, this is the closest we can get to baked-in
 * responsiveness. It’s flexible enough to allow you to set your own breakpoints
 * but solid enough to be frameworkified.
 *
 * We define some broad breakpoints in our vars file that are picked up here
 * for use in a simple media query mixin. Our options are:
 *
 * palm
 * lap
 * lap-and-up
 * portable
 * desk
 * desk-wide
 *
 * Not using a media query will, naturally, serve styles to all devices.
 *
 * `@include media-query(palm){ [styles here] }`
 *
 * We work out your end points for you:
 */
/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/*
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/*
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block; }

/*
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/*
 * Address styling not present in IE 8/9.
 */
[hidden] {
  display: none; }

/* ==========================================================================
   Base
   ========================================================================== */
/*
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 2 */ }

/*
 * Remove default margin.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/*
 * 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; }

/* ==========================================================================
   Typography
   ========================================================================== */
/*
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/*
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/*
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic; }

/*
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0; }

/*
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/*
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em; }

/*
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap; }

/*
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

/*
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/*
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/*
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0; }

/*
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/*
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/*
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/*
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/*
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

/*
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/*
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/*
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/*
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/*
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box; }

/*
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/*
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

/*------------------------------------*\
    $RESET
\*------------------------------------*/
/**
 * A more considered reset; more of a restart...
 * As per: csswizardry.com/2011/10/reset-restarted
 */
/**
* Let’s make the box model all nice, shall we...?
*/
*, *:before, *:after {
  box-sizing: border-box; }

/**
 * The usual...
 */
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
dl, dd, ol, ul,
form, fieldset, legend,
table, th, td, caption,
hr {
  margin: 0;
  padding: 0; }

/**
 * Give a help cursor to elements that give extra info on `:hover`.
 */
abbr[title], dfn[title] {
  cursor: help; }

/**
 * Remove underlines from potentially troublesome elements.
 */
u, ins {
  text-decoration: none; }

/**
 * Apply faux underline via `border-bottom`.
 */
ins {
  border-bottom: 1px solid; }

/**
 * So that `alt` text is visually offset if images don’t load.
 */
img {
  font-style: italic; }

/**
 * Give form elements some cursor interactions...
 */
label,
input,
textarea,
button,
select,
option {
  cursor: pointer; }

.text-input:active,
.text-input:focus,
textarea:active,
textarea:focus {
  cursor: text;
  outline: none; }

/*------------------------------------*\
    $CLEARFIX
\*------------------------------------*/
/**
 * Micro clearfix, as per: css-101.org/articles/clearfix/latest-new-clearfix-so-far.php
 * Extend the clearfix class with Sass to avoid the `.cf` class appearing over
 * and over in your markup.
 */
.cf:after, .nav:after, .media:after, .island:after,
.islet:after, .stat-group:after, .checkbox:after, .checkbox__wrap:after, .quote-form__togglable-input:after {
  content: "";
  display: table;
  clear: both; }

/*------------------------------------*\
    $SHARED
\*------------------------------------*/
/**
 * Where `margin-bottom` is concerned, this value will be the same as the
 * base line-height. This allows us to keep a consistent vertical rhythm.
 * As per: csswizardry.com/2012/06/single-direction-margin-declarations
 */
/**
 * Base elements
 */
h1, h2, h3, h4, h5, h6, hgroup,
ul, ol, dl,
blockquote, p, address,
table,
fieldset, figure,
pre,
.media,
.island,
.islet {
  margin-bottom: 20px;
  margin-bottom: 1.25rem; }
  .islet h1, .islet h2, .islet h3, .islet h4, .islet h5, .islet h6, .islet hgroup, .islet
  ul, .islet ol, .islet dl, .islet
  blockquote, .islet p, .islet address, .islet
  table, .islet
  fieldset, .islet figure, .islet
  pre, .islet
  .media, .islet
  .island, .islet
  .islet {
    margin-bottom: 10px;
    margin-bottom: 0.625rem; }

/**
 * Doubled up `margin-bottom` helper class.
 */
.landmark {
  margin-bottom: 40px;
  margin-bottom: 2.5rem; }

/**
 * `hr` elements only take up a few pixels, so we need to give them special
 * treatment regarding vertical rhythm.
 */
hr {
  margin-bottom: 18px;
  margin-bottom: 1.125rem; }

/**
 * Where `margin-left` is concerned we want to try and indent certain elements
 * by a consistent amount. Define that amount once, here.
 */
ul, ol, dd {
  margin-left: 40px;
  margin-left: 2.5rem; }

/**
 * Base styles; unclassed HTML elements etc.
 */
/*------------------------------------*\
    $MAIN
\*------------------------------------*/
html {
  font: 1em/1.5 "AkzidenzGroteskPro", Helvetica, sans-serif;
  overflow-y: scroll;
  min-height: 100%; }

/*------------------------------------*\
    $IMAGES
\*------------------------------------*/
/**
 * Demo: jsfiddle.net/inuitcss/yMtur
 */
/**
 * Fluid images.
 */
img {
  max-width: 100%; }

/**
 * Rounded images.
 */
.img--round {
  border-radius: 2px; }

/**
 * Image placement variations.
 */
.img--right {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px; }

.img--left {
  float: left;
  margin-right: 20px;
  margin-bottom: 20px; }

.img--center {
  display: block;
  margin-right: auto;
  margin-bottom: 20px;
  margin-left: auto; }

/**
 * Keep your images on your baseline.
 *
 * Please note, these will not work too nicely with fluid images and will
 * distort when resized below a certain width. Use with caution.
 */
.img--short {
  height: 100px; }

.img--medium {
  height: 200px; }

.img--tall {
  height: 300px; }

/**
 * Images in `figure` elements.
 */
figure > img {
  display: block; }

/*------------------------------------*\
    $LISTS
\*------------------------------------*/
/**
 * Remove vertical spacing from nested lists.
 */
li > ul,
li > ol {
  margin-bottom: 0; }

/**
 * Have a numbered `ul` without the semantics implied by using an `ol`.
 */
/*ul*/
.numbered-list {
  list-style-type: decimal; }

/*------------------------------------*\
    $TABLES
\*------------------------------------*/
/**
 * We have a lot at our disposal for making very complex table constructs, e.g.:
 *
   <table class="table--bordered  table--striped  table--data">
       <colgroup>
           <col class=t10>
           <col class=t10>
           <col class=t10>
           <col>
       </colgroup>
       <thead>
           <tr>
               <th colspan=3>Foo</th>
               <th>Bar</th>
           </tr>
           <tr>
               <th>Lorem</th>
               <th>Ipsum</th>
               <th class=numerical>Dolor</th>
               <th>Sit</th>
           </tr>
       </thead>
       <tbody>
           <tr>
               <th rowspan=3>Sit</th>
               <td>Dolor</td>
               <td class=numerical>03.788</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>32.210</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>47.797</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <th rowspan=2>Sit</th>
               <td>Dolor</td>
               <td class=numerical>09.640</td>
               <td>Lorem</td>
           </tr>
           <tr>
               <td>Dolor</td>
               <td class=numerical>12.117</td>
               <td>Lorem</td>
           </tr>
       </tbody>
   </table>
 *
 */
table {
  width: 100%; }

th,
td {
  padding: 5px;
  text-align: left; }
  @media screen and (min-width: 480px) {
    th,
    td {
      padding: 10px; } }

/**
 * Cell alignments
 */
[colspan] {
  text-align: center; }

[colspan="1"] {
  text-align: left; }

[rowspan] {
  vertical-align: middle; }

[rowspan="1"] {
  vertical-align: top; }

.numerical {
  text-align: right; }

/**
 * In the HTML above we see several `col` elements with classes whose numbers
 * represent a percentage width for that column. We leave one column free of a
 * class so that column can soak up the effects of any accidental breakage in
 * the table.
 */
.t5 {
  width: 5%; }

.t10 {
  width: 10%; }

.t12 {
  width: 12.5%; }

/* 1/8 */
.t15 {
  width: 15%; }

.t20 {
  width: 20%; }

.t25 {
  width: 25%; }

/* 1/4 */
.t30 {
  width: 30%; }

.t33 {
  width: 33.333%; }

/* 1/3 */
.t35 {
  width: 35%; }

.t37 {
  width: 37.5%; }

/* 3/8 */
.t40 {
  width: 40%; }

.t45 {
  width: 45%; }

.t50 {
  width: 50%; }

/* 1/2 */
.t55 {
  width: 55%; }

.t60 {
  width: 60%; }

.t62 {
  width: 62.5%; }

/* 5/8 */
.t65 {
  width: 65%; }

.t66 {
  width: 66.666%; }

/* 2/3 */
.t70 {
  width: 70%; }

.t75 {
  width: 75%; }

/* 3/4*/
.t80 {
  width: 80%; }

.t85 {
  width: 85%; }

.t87 {
  width: 87.5%; }

/* 7/8 */
.t90 {
  width: 90%; }

.t95 {
  width: 95%; }

/**
 * Bordered tables
 */
.table--bordered th,
.table--bordered td {
  border: 1px solid #ccc; }
  .table--bordered th:empty,
  .table--bordered td:empty {
    border: none; }

.table--bordered thead tr:last-child th {
  border-bottom-width: 2px; }

.table--bordered tbody tr th:last-of-type {
  border-right-width: 2px; }

/**
 * Striped tables
 */
.table--striped tbody tr:nth-of-type(odd) {
  background-color: #ffc;
  /* Override this color in your theme stylesheet */ }

/**
 * Data table
 */
.table--data {
  font: 12px/1.5 sans-serif; }

/**
 * Objects and abstractions
 */
/*------------------------------------*\
    $GRIDS
\*------------------------------------*/
/**
 * Fluid and nestable grid system. It is necessary to comment out, or otherwise
 * remove, the whitespace from between grid items, e.g.:
 *
   <div class="grid">

       <div class="grid__item  one-third">
           <p>One third grid</p>
       </div><!--

    --><div class="grid__item  two-thirds">
           <p>Two thirds grid</p>
       </div><!--

    --><div class="grid__item  one-half">
           <p>One half grid</p>
       </div><!--

    --><div class="grid__item  one-quarter">
           <p>One quarter grid</p>
       </div><!--

    --><div class="grid__item  one-quarter">
           <p>One quarter grid</p>
       </div>

   </div>
 *
 * Demo: jsfiddle.net/inuitcss/CLYUC
 *
 */
/**
 * Grid wrapper
 */
.grid {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -20px; }

/**
     * Very infrequently occuring grid wrappers as children of grid wrappers.
     */
.grid > .grid {
  margin-left: 0; }

/**
     * Grid
     */
.grid__item {
  display: inline-block;
  padding-left: 20px;
  vertical-align: top;
  width: 100%;
  box-sizing: border-box; }

/**
 * Reversed grids allow you to structure your source in the opposite order to
 * how your rendered layout will appear. Extends `.grid`.
 */
.grid--rev {
  direction: rtl;
  text-align: left; }
  .grid--rev > .grid__item {
    direction: ltr;
    text-align: left; }

/**
 * Gutterless grids have all the properties of regular grids, minus any spacing.
 * Extends `.grid`.
 */
.grid--full {
  margin-left: 0; }
  .grid--full > .grid__item {
    padding-left: 0; }

/**
 * Align the entire grid to the right. Extends `.grid`.
 */
.grid--right {
  text-align: right; }
  .grid--right > .grid__item {
    text-align: left; }

/**
 * Centered grids align grid items centrally without needing to use push or pull
 * classes. Extends `.grid`.
 */
.grid--center {
  text-align: center; }
  .grid--center > .grid__item {
    text-align: left; }

/**
 * Align grid cells vertically (`.grid--middle` or `.grid--bottom`). Extends
 * `.grid`.
 */
.grid--middle > .grid__item {
  vertical-align: middle; }

.grid--bottom > .grid__item {
  vertical-align: bottom; }

/**
 * Create grids with narrower gutters. Extends `.grid`.
 */
.grid--narrow {
  margin-left: -10px; }
  .grid--narrow > .grid__item {
    padding-left: 10px; }

/**
 * Create grids with wider gutters. Extends `.grid`.
 */
.grid--wide {
  margin-left: -40px; }
  .grid--wide > .grid__item {
    padding-left: 40px; }

/*------------------------------------*\
    $COLUMNS
\*------------------------------------*/
/**
 * Here we can set elements in columns of text using CSS3, e.g.:
 *
   <p class=text-cols--2>
 *
 * Demo: jsfiddle.net/inuitcss/E26Yd
 *
 */
.text-cols--2, .text-cols--3, .text-cols--4, .text-cols--5 {
  column-gap: base-spacing-unit; }

.text-cols--2 {
  column-count: 2; }

.text-cols--3 {
  column-count: 3; }

.text-cols--4 {
  column-count: 4; }

.text-cols--5 {
  column-count: 5; }

/*------------------------------------*\
    $NAV
\*------------------------------------*/
/**
 * Nav abstraction as per: csswizardry.com/2011/09/the-nav-abstraction
 * When used on an `ol` or `ul`, this class throws the list into horizontal mode
 * e.g.:
 *
   <ul class=nav>
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 * Demo: jsfiddle.net/inuitcss/Vnph4
 *
 */
.nav {
  list-style: none;
  margin-left: 0; }
  .nav > li,
  .nav > li > a {
    display: inline-block;
    *display: inline;
    zoom: 1; }

/**
 * `.nav--stacked` extends `.nav` and throws the list into vertical mode, e.g.:
 *
   <ul class="nav  nav--stacked">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--stacked > li {
  display: list-item; }
  .nav--stacked > li > a {
    display: block; }

/**
 * `.nav--banner` extends `.nav` and centres the list, e.g.:
 *
   <ul class="nav  nav--banner">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--banner {
  text-align: center; }

/**
 * Give nav links a big, blocky hit area. Extends `.nav`, e.g.:
 *
   <ul class="nav  nav--block">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 */
.nav--block {
  line-height: 1;
  /**
     * Remove whitespace caused by `inline-block`.
     */
  letter-spacing: -0.31em;
  word-spacing: -0.43em;
  white-space: nowrap; }
  .nav--block > li {
    letter-spacing: normal;
    word-spacing: normal; }
    .nav--block > li > a {
      padding: 10px; }

/**
 * Force a nav to occupy 100% of the available width of its parent. Extends
 * `.nav`, e.g.:
 *
   <ul class="nav  nav--fit">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 * Thanks to @pimpl for this idea!
 */
.nav--fit {
  display: table;
  width: 100%; }
  .nav--fit > li {
    display: table-cell; }
    .nav--fit > li > a {
      display: block; }

/**
 * Make a list of keywords. Extends `.nav`, e.g.:
 *
   `<ul class="nav  nav--keywords>`
 *
 */
.nav--keywords > li:after {
  content: "\002C" "\00A0"; }

.nav--keywords > li:last-child:after {
  display: none; }

/*------------------------------------*\
    $BREADCRUMB
\*------------------------------------*/
/**
 * Simple breadcrumb styling to apply to (ordered) lists. Extends `.nav`, e.g.:
 *
   <ol class="nav  breadcrumb">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>The Board</a></li>
       <li class=current><a href=#>Directors</a></li>
   </ol>
 *
 * Demo: jsfiddle.net/inuitcss/rkAY9
 *
 */
.breadcrumb > li + li:before {
  content: "\00BB" "\00A0"; }

/**
 * For denoting a path-like structure, GitHub style, e.g.:
 *
   <ol class="nav  breadcrumb--path">
       <li class=breadcrumb__root><a href=#>inuit.css</a></li>
       <li><a href=#>inuit.css</a></li>
       <li><a href=#>partials</a></li>
       <li class=current><a href=#>objects</a></li>
   </ol>
 *
 */
.breadcrumb--path > li + li:before {
  content: "\002F" "\00A0"; }

/**
 * Assign a delimiter on the fly through a data attribute, e.g.:
 *
   <ol class="nav  breadcrumb">
       <li><a href=#>Home</a></li>
       <li data-breadcrumb="|"><a href=#>About</a></li>
       <li data-breadcrumb="|"><a href=#>The Board</a></li>
       <li data-breadcrumb="|" class=current><a href=#>Directors</a></li>
   </ol>
 *
 */
.breadcrumb > li + li[data-breadcrumb]:before {
  content: attr(data-breadcrumb) " "; }

/**
 * Denote the root of the tree.
 */
.breadcrumb__root {
  font-weight: bold; }

/*------------------------------------*\
    $MEDIA
\*------------------------------------*/
/**
 * Place any image- and text-like content side-by-side, as per:
 * stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code
 * E.g.:
 *
   <div class=media>
       <img src=http://placekitten.com/200/300 alt="" class=media__img>
       <p class=media__body>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
       sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
   </div>
 *
 * Demo: jsfiddle.net/inuitcss/cf4Qs
 *
 */
.media {
  display: block; }

.media__img {
  float: left;
  margin-right: 20px; }

/**
     * Reversed image location (right instead of left).
     */
.media__img--rev {
  float: right;
  margin-left: 20px; }

.media__img img,
.media__img--rev img {
  display: block; }

.media__body {
  overflow: hidden; }

.media__body,
.media__body > :last-child {
  margin-bottom: 0; }

/**
     * `.img`s in `.islet`s need an appropriately sized margin.
     */
.islet .media__img {
  margin-right: 10px; }

.islet .media__img--rev {
  margin-left: 10px; }

/*------------------------------------*\
    $ISLAND
\*------------------------------------*/
/**
 * Simple, boxed off content, as per: csswizardry.com/2011/10/the-island-object
 * E.g.:
 *
   <div class=island>
       I am boxed off.
   </div>
 *
 * Demo: jsfiddle.net/inuitcss/u8pV3
 *
 */
.island,
.islet {
  display: block; }

.island {
  padding: 20px; }

.island > :last-child,
.islet > :last-child {
  margin-bottom: 0; }

/**
 * Just like `.island`, only smaller.
 */
.islet {
  padding: 10px; }

/*------------------------------------*\
    $BLOCK-LIST
\*------------------------------------*/
/**
 * Create big blocky lists of content, e.g.:
 *
   <ul class=block-list>
      <li>Foo</li>
      <li>Bar</li>
      <li>Baz</li>
      <li><a href=# class=block-list__link>Foo Bar Baz</a></li>
   </ul>
 *
 * Extend this object in your theme stylesheet.
 *
 * Demo: jsfiddle.net/inuitcss/hR57q
 *
 */
.block-list,
.block-list > li {
  border: 0 solid #ccc; }

.block-list {
  list-style: none;
  margin-left: 0;
  border-top-width: 1px; }
  .block-list > li {
    border-bottom-width: 1px;
    padding: 10px; }

.block-list__link {
  display: block;
  padding: 10px;
  margin: -10px; }

/*------------------------------------*\
    $SPLIT
\*------------------------------------*/
/**
 * Simple split item for creating two elements floated away from one another,
 * e.g.:
 *
   <dl class=split>
       <dt class=split__title>Burger and fries</dt>
       <dd>&pound;5.99</dd>
       <dt class=split__title>Fillet steak</dt>
       <dd>&pound;19.99</dd>
       <dt class=split__title>Ice cream</dt>
       <dd>&pound;2.99</dd>
   </dl>
 *
   <ol class="split  results">
       <li class=first><b class=split__title>1st place</b> Bob</li>
       <li class=second><b class=split__title>2nd place</b> Lilly</li>
       <li class=third><b class=split__title>3rd place</b> Ted</li>
   </ol>​
 *
 * Demo: jsfiddle.net/inuitcss/9gZW7
 *
 */
.split {
  text-align: right;
  list-style: none;
  margin-left: 0; }

.split__title {
  text-align: left;
  float: left;
  clear: left; }

/*------------------------------------*\
    $LOZENGES
\*------------------------------------*/
/**
 * Create pill- and lozenge-like runs of text, e.g.:
 *
   <p>This <span class=pill>here</span> is a pill!</p>
 *
   <p>This <span class=loz>here</span> is also a lozenge!</p>
 *
 * Pills have fully rounded ends, lozenges have only their corners rounded.
 *
 * Demo: jsfiddle.net/inuitcss/N3pGm
 *
 */
.pill, .loz {
  display: inline-block;
  /**
     * These numbers set in ems mean that, at its narrowest, a lozenge will be
     * the same width as the `line-height` set on the `html` element.
     * This allows us to use the `.loz` in almost any `font-size` we wish.
     */
  min-width: 1.0em;
  padding-right: 0.25em;
  padding-left: 0.25em;
  /* =1.50em */
  text-align: center;
  background-color: #ccc;
  color: #fff;
  /* Override this color in your theme stylesheet */
  /**
     * Normally we’d use border-radius:100%; but instead here we just use an
     * overly large number; `border-radius:100%;` would create an oval on
     * non-square elements whereas we just want to round the ends of an element.
     */
  border-radius: 100px; }

.loz {
  border-radius: 2px; }

/*------------------------------------*\
    $RULES
\*------------------------------------*/
/**
 * Horizontal rules, extend `hr`.
 *
 * Demo: jsfiddle.net/inuitcss/L6GuZ
 *
 */
.rule {
  color: #ccc;
  border: none;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  margin-bottom: 19px;
  margin-bottom: 1.1875rem; }

/**
 * Dotted rules
 */
.rule--dotted {
  border-bottom-style: dotted; }

/**
 * Dashed rules
 */
.rule--dashed {
  border-bottom-style: dashed; }

/**
 * Ornamental rules. Places a § over the rule.
 */
.rule--ornament {
  position: relative;
  /**
    * Pass in an arbitrary ornament though a data attribute, e.g.:
    *
      <hr class="rule  rule--ornament" data-ornament="!">
    *
    */ }
  .rule--ornament:after {
    content: "\00A7";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    line-height: 0;
    text-align: center; }
  .rule--ornament[data-ornament]:after {
    content: attr(data-ornament); }

/*------------------------------------*\
     $STATS
 \*------------------------------------*/
/**
  * Simple object to display key–value statistic-like information, e.g.:
  *
    <div class=stat-group>
        <dl class=stat>
            <dt class=stat__title>Tweets</dt>
            <dd class=stat__value>27,740</dd>
        </dl>

        <dl class=stat>
            <dt class=stat__title>Following</dt>
            <dd class=stat__value>11,529</dd>
        </dl>

        <dl class=stat>
            <dt class=stat__title>Followers</dt>
            <dd class=stat__value>12,105</dd>
        </dl>
    </div>
  *
  * Demo: jsfiddle.net/inuitcss/Bpwu6
  *
  */
.stat-group {
  margin-left: -20px; }

.stat {
  float: left;
  margin-left: 20px;
  display: -ms-flexbox;
  display: -moz-flex;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }

.stat__title {
  order: 2;
  -ms-flex-order: 2; }

.stat__value {
  margin-left: 0;
  order: 1;
  -ms-flex-order: 1; }

/*------------------------------------*\
    $GREYBOX
\*------------------------------------*/
/**
 * Quickly throw together greybox wireframes. Use in conjunction with other
 * inuit.css objects to create simple greybox prototypes, e.g.:
 *
   <div class="island  greybox  greybox--medium">Header</div>

   <ul class="nav  nav--fit  nav--block  greybox">
       <li><a href=#>Home</a></li>
       <li><a href=#>About</a></li>
       <li><a href=#>Portfolio</a></li>
       <li><a href=#>Contact</a></li>
   </ul>
 *
 * The beauty of combining the greyboxing with inuit.css objects is that any
 * prototyping can quickly be converted into/used as production code.
 *
 * For a more complete prototyping framework, consider Adam Whitcroft’s Proto:
 * adamwhitcroft.com/proto
 *
 * Demo: jsfiddle.net/inuitcss/qCXfh/
 *
 */
.greybox,
.graybox {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 2;
  font-family: sans-serif;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff; }

.greybox a,
.graybox a {
  color: #fff;
  text-decoration: underline; }

/**
 * All greyboxes will occupy 100% of their parent’s width, but to alter their
 * heights we apply incrementally larger line-heights:
 */
.greybox--small,
.graybox--small {
  line-height: 48px; }

.greybox--medium,
.graybox--medium {
  line-height: 96px; }

.greybox--large,
.graybox--large {
  line-height: 192px; }

.greybox--huge,
.graybox--huge {
  line-height: 384px; }

.greybox--gigantic,
.graybox--gigantic {
  line-height: 768px; }

/**
 * Style trumps; helper and brand classes
 */
/*------------------------------------*\
    $WIDTHS
\*------------------------------------*/
/**
 * Sizes in human readable format. These are used in conjunction with other
 * objects and abstractions found in inuit.css, most commonly the grid system
 * and faux flexbox.
 *
 * We have a mixin to generate our widths and their breakpoint-specific
 * variations.
 */
/**
    * Whole
    */
.one-whole {
  width: 100%; }

/**
    * Halves
    */
.one-half, .two-quarters, .three-sixths, .four-eighths, .five-tenths, .six-twelfths {
  width: 50%; }

/**
    * Thirds
    */
.one-third, .two-sixths, .four-twelfths {
  width: 33.333%; }

.two-thirds, .four-sixths, .eight-twelfths {
  width: 66.666%; }

/**
    * Quarters
    */
.one-quarter, .two-eighths, .three-twelfths {
  width: 25%; }

.three-quarters, .six-eighths, .nine-twelfths {
  width: 75%; }

/**
    * Fifths
    */
.one-fifth, .two-tenths {
  width: 20%; }

.two-fifths, .four-tenths {
  width: 40%; }

.three-fifths, .six-tenths {
  width: 60%; }

.four-fifths, .eight-tenths {
  width: 80%; }

/**
    * Sixths
    */
.one-sixth, .two-twelfths {
  width: 16.666%; }

.five-sixths, .ten-twelfths {
  width: 83.333%; }

/**
    * Eighths
    */
.one-eighth {
  width: 12.5%; }

.three-eighths {
  width: 37.5%; }

.five-eighths {
  width: 62.5%; }

.seven-eighths {
  width: 87.5%; }

/**
    * Tenths
    */
.one-tenth {
  width: 10%; }

.three-tenths {
  width: 30%; }

.seven-tenths {
  width: 70%; }

.nine-tenths {
  width: 90%; }

/**
    * Twelfths
    */
.one-twelfth {
  width: 8.333%; }

.five-twelfths {
  width: 41.666%; }

.seven-twelfths {
  width: 58.333%; }

.eleven-twelfths {
  width: 91.666%; }

/**
 * Our responsive classes.
 */
@media only screen and (max-width: 758px) {
  /**
    * Whole
    */
  .palm-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .palm-one-half, .palm-two-quarters, .palm-three-sixths, .palm-four-eighths, .palm-five-tenths, .palm-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .palm-one-third, .palm-two-sixths, .palm-four-twelfths {
    width: 33.333%; }
  .palm-two-thirds, .palm-four-sixths, .palm-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .palm-one-quarter, .palm-two-eighths, .palm-three-twelfths {
    width: 25%; }
  .palm-three-quarters, .palm-six-eighths, .palm-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .palm-one-fifth, .palm-two-tenths {
    width: 20%; }
  .palm-two-fifths, .palm-four-tenths {
    width: 40%; }
  .palm-three-fifths, .palm-six-tenths {
    width: 60%; }
  .palm-four-fifths, .palm-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .palm-one-sixth, .palm-two-twelfths {
    width: 16.666%; }
  .palm-five-sixths, .palm-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .palm-one-eighth {
    width: 12.5%; }
  .palm-three-eighths {
    width: 37.5%; }
  .palm-five-eighths {
    width: 62.5%; }
  .palm-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .palm-one-tenth {
    width: 10%; }
  .palm-three-tenths {
    width: 30%; }
  .palm-seven-tenths {
    width: 70%; }
  .palm-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .palm-one-twelfth {
    width: 8.333%; }
  .palm-five-twelfths {
    width: 41.666%; }
  .palm-seven-twelfths {
    width: 58.333%; }
  .palm-eleven-twelfths {
    width: 91.666%; } }

@media only screen and (min-width: 759px) and (max-width: 1023px) {
  /**
    * Whole
    */
  .lap-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .lap-one-half, .lap-two-quarters, .lap-three-sixths, .lap-four-eighths, .lap-five-tenths, .lap-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .lap-one-third, .lap-two-sixths, .lap-four-twelfths {
    width: 33.333%; }
  .lap-two-thirds, .lap-four-sixths, .lap-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .lap-one-quarter, .lap-two-eighths, .lap-three-twelfths {
    width: 25%; }
  .lap-three-quarters, .lap-six-eighths, .lap-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .lap-one-fifth, .lap-two-tenths {
    width: 20%; }
  .lap-two-fifths, .lap-four-tenths {
    width: 40%; }
  .lap-three-fifths, .lap-six-tenths {
    width: 60%; }
  .lap-four-fifths, .lap-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .lap-one-sixth, .lap-two-twelfths {
    width: 16.666%; }
  .lap-five-sixths, .lap-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .lap-one-eighth {
    width: 12.5%; }
  .lap-three-eighths {
    width: 37.5%; }
  .lap-five-eighths {
    width: 62.5%; }
  .lap-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .lap-one-tenth {
    width: 10%; }
  .lap-three-tenths {
    width: 30%; }
  .lap-seven-tenths {
    width: 70%; }
  .lap-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .lap-one-twelfth {
    width: 8.333%; }
  .lap-five-twelfths {
    width: 41.666%; }
  .lap-seven-twelfths {
    width: 58.333%; }
  .lap-eleven-twelfths {
    width: 91.666%; } }

@media only screen and (min-width: 759px) {
  /**
    * Whole
    */
  .lap-and-up-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .lap-and-up-one-half, .lap-and-up-two-quarters, .lap-and-up-three-sixths, .lap-and-up-four-eighths, .lap-and-up-five-tenths, .lap-and-up-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .lap-and-up-one-third, .lap-and-up-two-sixths, .lap-and-up-four-twelfths {
    width: 33.333%; }
  .lap-and-up-two-thirds, .lap-and-up-four-sixths, .lap-and-up-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .lap-and-up-one-quarter, .lap-and-up-two-eighths, .lap-and-up-three-twelfths {
    width: 25%; }
  .lap-and-up-three-quarters, .lap-and-up-six-eighths, .lap-and-up-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .lap-and-up-one-fifth, .lap-and-up-two-tenths {
    width: 20%; }
  .lap-and-up-two-fifths, .lap-and-up-four-tenths {
    width: 40%; }
  .lap-and-up-three-fifths, .lap-and-up-six-tenths {
    width: 60%; }
  .lap-and-up-four-fifths, .lap-and-up-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .lap-and-up-one-sixth, .lap-and-up-two-twelfths {
    width: 16.666%; }
  .lap-and-up-five-sixths, .lap-and-up-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .lap-and-up-one-eighth {
    width: 12.5%; }
  .lap-and-up-three-eighths {
    width: 37.5%; }
  .lap-and-up-five-eighths {
    width: 62.5%; }
  .lap-and-up-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .lap-and-up-one-tenth {
    width: 10%; }
  .lap-and-up-three-tenths {
    width: 30%; }
  .lap-and-up-seven-tenths {
    width: 70%; }
  .lap-and-up-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .lap-and-up-one-twelfth {
    width: 8.333%; }
  .lap-and-up-five-twelfths {
    width: 41.666%; }
  .lap-and-up-seven-twelfths {
    width: 58.333%; }
  .lap-and-up-eleven-twelfths {
    width: 91.666%; } }

@media only screen and (max-width: 1023px) {
  /**
    * Whole
    */
  .portable-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .portable-one-half, .portable-two-quarters, .portable-three-sixths, .portable-four-eighths, .portable-five-tenths, .portable-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .portable-one-third, .portable-two-sixths, .portable-four-twelfths {
    width: 33.333%; }
  .portable-two-thirds, .portable-four-sixths, .portable-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .portable-one-quarter, .portable-two-eighths, .portable-three-twelfths {
    width: 25%; }
  .portable-three-quarters, .portable-six-eighths, .portable-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .portable-one-fifth, .portable-two-tenths {
    width: 20%; }
  .portable-two-fifths, .portable-four-tenths {
    width: 40%; }
  .portable-three-fifths, .portable-six-tenths {
    width: 60%; }
  .portable-four-fifths, .portable-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .portable-one-sixth, .portable-two-twelfths {
    width: 16.666%; }
  .portable-five-sixths, .portable-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .portable-one-eighth {
    width: 12.5%; }
  .portable-three-eighths {
    width: 37.5%; }
  .portable-five-eighths {
    width: 62.5%; }
  .portable-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .portable-one-tenth {
    width: 10%; }
  .portable-three-tenths {
    width: 30%; }
  .portable-seven-tenths {
    width: 70%; }
  .portable-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .portable-one-twelfth {
    width: 8.333%; }
  .portable-five-twelfths {
    width: 41.666%; }
  .portable-seven-twelfths {
    width: 58.333%; }
  .portable-eleven-twelfths {
    width: 91.666%; } }

@media only screen and (min-width: 1024px) {
  /**
    * Whole
    */
  .desk-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .desk-one-half, .desk-two-quarters, .desk-three-sixths, .desk-four-eighths, .desk-five-tenths, .desk-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .desk-one-third, .desk-two-sixths, .desk-four-twelfths {
    width: 33.333%; }
  .desk-two-thirds, .desk-four-sixths, .desk-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .desk-one-quarter, .desk-two-eighths, .desk-three-twelfths {
    width: 25%; }
  .desk-three-quarters, .desk-six-eighths, .desk-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .desk-one-fifth, .desk-two-tenths {
    width: 20%; }
  .desk-two-fifths, .desk-four-tenths {
    width: 40%; }
  .desk-three-fifths, .desk-six-tenths {
    width: 60%; }
  .desk-four-fifths, .desk-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .desk-one-sixth, .desk-two-twelfths {
    width: 16.666%; }
  .desk-five-sixths, .desk-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .desk-one-eighth {
    width: 12.5%; }
  .desk-three-eighths {
    width: 37.5%; }
  .desk-five-eighths {
    width: 62.5%; }
  .desk-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .desk-one-tenth {
    width: 10%; }
  .desk-three-tenths {
    width: 30%; }
  .desk-seven-tenths {
    width: 70%; }
  .desk-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .desk-one-twelfth {
    width: 8.333%; }
  .desk-five-twelfths {
    width: 41.666%; }
  .desk-seven-twelfths {
    width: 58.333%; }
  .desk-eleven-twelfths {
    width: 91.666%; } }

@media only screen and (min-width: 1400px) {
  /**
    * Whole
    */
  .desk-wide-one-whole {
    width: 100%; }
  /**
    * Halves
    */
  .desk-wide-one-half, .desk-wide-two-quarters, .desk-wide-three-sixths, .desk-wide-four-eighths, .desk-wide-five-tenths, .desk-wide-six-twelfths {
    width: 50%; }
  /**
    * Thirds
    */
  .desk-wide-one-third, .desk-wide-two-sixths, .desk-wide-four-twelfths {
    width: 33.333%; }
  .desk-wide-two-thirds, .desk-wide-four-sixths, .desk-wide-eight-twelfths {
    width: 66.666%; }
  /**
    * Quarters
    */
  .desk-wide-one-quarter, .desk-wide-two-eighths, .desk-wide-three-twelfths {
    width: 25%; }
  .desk-wide-three-quarters, .desk-wide-six-eighths, .desk-wide-nine-twelfths {
    width: 75%; }
  /**
    * Fifths
    */
  .desk-wide-one-fifth, .desk-wide-two-tenths {
    width: 20%; }
  .desk-wide-two-fifths, .desk-wide-four-tenths {
    width: 40%; }
  .desk-wide-three-fifths, .desk-wide-six-tenths {
    width: 60%; }
  .desk-wide-four-fifths, .desk-wide-eight-tenths {
    width: 80%; }
  /**
    * Sixths
    */
  .desk-wide-one-sixth, .desk-wide-two-twelfths {
    width: 16.666%; }
  .desk-wide-five-sixths, .desk-wide-ten-twelfths {
    width: 83.333%; }
  /**
    * Eighths
    */
  .desk-wide-one-eighth {
    width: 12.5%; }
  .desk-wide-three-eighths {
    width: 37.5%; }
  .desk-wide-five-eighths {
    width: 62.5%; }
  .desk-wide-seven-eighths {
    width: 87.5%; }
  /**
    * Tenths
    */
  .desk-wide-one-tenth {
    width: 10%; }
  .desk-wide-three-tenths {
    width: 30%; }
  .desk-wide-seven-tenths {
    width: 70%; }
  .desk-wide-nine-tenths {
    width: 90%; }
  /**
    * Twelfths
    */
  .desk-wide-one-twelfth {
    width: 8.333%; }
  .desk-wide-five-twelfths {
    width: 41.666%; }
  .desk-wide-seven-twelfths {
    width: 58.333%; }
  .desk-wide-eleven-twelfths {
    width: 91.666%; } }

/*------------------------------------*\
    $BRAND
\*------------------------------------*/
/**
 * `.brand` is a quick and simple way to apply your brand face and/or color to
 * any element using a handy helper class.
 */
.brand {
  font-family: "Helvetica Neue", sans-serif!important;
  color: #4a8ec2!important; }

.brand-face {
  font-family: "Helvetica Neue", sans-serif!important; }

.brand-color,
.brand-colour {
  color: #4a8ec2!important; }

/*------------------------------------*\
    $HELPER
\*------------------------------------*/
/**
 * A series of helper classes to use arbitrarily. Only use a helper class if an
 * element/component doesn’t already have a class to which you could apply this
 * styling, e.g. if you need to float `.main-nav` left then add `float:left;` to
 * that ruleset as opposed to adding the `.float--left` class to the markup.
 *
 * A lot of these classes carry `!important` as you will always want them to win
 * out over other selectors.
 */
/**
 * Add/remove floats
 */
.float--right {
  float: right !important; }

.float--left {
  float: left !important; }

.float--none {
  float: none !important; }

/**
 * Text alignment
 */
.text--left {
  text-align: left  !important; }

.text--center {
  text-align: center !important; }

.text--right {
  text-align: right !important; }

/**
 * Font weights
 */
.weight--light {
  font-weight: 300 !important; }

.weight--normal {
  font-weight: 400 !important; }

.weight--semibold {
  font-weight: 600 !important; }

/**
 * Add/remove margins
 */
.push {
  margin: 20px !important; }

.push--top {
  margin-top: 20px !important; }

.push--right {
  margin-right: 20px !important; }

.push--bottom {
  margin-bottom: 20px !important; }

.push--left {
  margin-left: 20px !important; }

.push--ends {
  margin-top: 20px !important;
  margin-bottom: 20px !important; }

.push--sides {
  margin-right: 20px !important;
  margin-left: 20px !important; }

.push-half {
  margin: 10px !important; }

.push-half--top {
  margin-top: 10px !important; }

.push-half--right {
  margin-right: 10px !important; }

.push-half--bottom {
  margin-bottom: 10px !important; }

.push-half--left {
  margin-left: 10px !important; }

.push-half--ends {
  margin-top: 10px !important;
  margin-bottom: 10px !important; }

.push-half--sides {
  margin-right: 10px !important;
  margin-left: 10px !important; }

.flush {
  margin: 0 !important; }

.flush--top {
  margin-top: 0 !important; }

.flush--right {
  margin-right: 0 !important; }

.flush--bottom {
  margin-bottom: 0 !important; }

.flush--left {
  margin-left: 0 !important; }

.flush--ends {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.flush--sides {
  margin-right: 0 !important;
  margin-left: 0 !important; }

/**
 * Add/remove paddings
 */
.soft {
  padding: 20px !important; }

.soft--top {
  padding-top: 20px !important; }

.soft--right {
  padding-right: 20px !important; }

.soft--bottom {
  padding-bottom: 20px !important; }

.soft--left {
  padding-left: 20px !important; }

.soft--ends {
  padding-top: 20px !important;
  padding-bottom: 20px !important; }

.soft--sides {
  padding-right: 20px !important;
  padding-left: 20px !important; }

.soft-half {
  padding: 10px !important; }

.soft-half--top {
  padding-top: 10px !important; }

.soft-half--right {
  padding-right: 10px !important; }

.soft-half--bottom {
  padding-bottom: 10px !important; }

.soft-half--left {
  padding-left: 10px !important; }

.soft-half--ends {
  padding-top: 10px !important;
  padding-bottom: 10px !important; }

.soft-half--sides {
  padding-right: 10px !important;
  padding-left: 10px !important; }

.hard {
  padding: 0 !important; }

.hard--top {
  padding-top: 0 !important; }

.hard--right {
  padding-right: 0 !important; }

.hard--bottom {
  padding-bottom: 0 !important; }

.hard--left {
  padding-left: 0 !important; }

.hard--ends {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.hard--sides {
  padding-right: 0 !important;
  padding-left: 0 !important; }

/**
 * Pull items full width of `.island` parents.
 */
.full-bleed {
  margin-right: -20px !important;
  margin-left: -20px !important; }
  .islet .full-bleed {
    margin-right: -10px !important;
    margin-left: -10px !important; }

/**
 * Add a help cursor to any element that gives the user extra information on
 * `:hover`.
 */
.informative {
  cursor: help !important; }

/**
 * Mute an object by reducing its opacity.
 */
.muted {
  opacity: 0.5 !important;
  filter: alpha(opacity=50) !important; }

/**
 * Align items to the right where they imply progression/movement forward, e.g.:
 *
   <p class=proceed><a href=#>Read more...</a></p>
 *
 */
.proceed {
  text-align: right !important; }

/**
 * Add a right-angled quote to links that imply movement, e.g.:
 *
   <a href=# class=go>Read more</a>
 *
 */
.go:after {
  content: " " "»" !important; }

/**
 * Add a left-angled quote to links that imply backwards movement, e.g.:
 *
   <a href=# class=back>Return</a>
 *
 */
.back:before {
  content: "«" " " !important; }

/**
 * Apply capital case to an element (usually a `strong`).
 */
.caps {
  text-transform: uppercase !important; }

/**
 * Hide content off-screen without resorting to `display:none;`, also provide
 * breakpoint specific hidden elements.
 */
.accessibility,
.visuallyhidden {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important; }

@media only screen and (max-width: 758px) {
  .accessibility--palm,
  .visuallyhidden--palm {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

@media only screen and (min-width: 759px) and (max-width: 1023px) {
  .accessibility--lap,
  .visuallyhidden--lap {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

@media only screen and (min-width: 759px) {
  .accessibility--lap-and-up,
  .visuallyhidden--lap-and-up {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

@media only screen and (max-width: 1023px) {
  .accessibility--portable,
  .visuallyhidden--portable {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

@media only screen and (min-width: 1024px) {
  .accessibility--desk,
  .visuallyhidden--desk {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

@media only screen and (min-width: 1400px) {
  .accessibility--desk-wide,
  .visuallyhidden--desk-wide {
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important; } }

/* endif */
.ember-power-calendar {
  box-sizing: border-box;
  position: relative; }

.ember-power-calendar-nav {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.ember-power-calendar-nav * {
  box-sizing: border-box; }

.ember-power-calendar-days, .ember-power-calendar-days * {
  box-sizing: border-box; }

.ember-power-calendar-nav-title {
  -ms-flex: 1;
  flex: 1;
  text-align: center; }

.ember-power-calendar-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.ember-power-calendar-weekday {
  -webkit-appearance: none;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  padding: 0;
  background-color: transparent;
  background-color: initial;
  border: none;
  border: initial;
  outline: none;
  outline: initial;
  -ms-flex-pack: center;
  justify-content: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0; }

.ember-power-calendar-day {
  -webkit-appearance: none;
  background-color: transparent;
  background-color: initial;
  border: none;
  border: initial;
  outline: none;
  outline: initial;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  font-size: inherit;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0; }

.ember-power-calendar-nav-control {
  -webkit-appearance: none;
  background-color: transparent;
  background-color: initial;
  border: none;
  border: initial;
  outline: none;
  outline: initial;
  font-size: inherit; }

.ember-power-calendar {
  font-size: 14px;
  line-height: 1.42857; }

.ember-power-calendar-nav {
  line-height: 2; }

.ember-power-calendar-nav-control {
  line-height: 1;
  font-size: 150%; }
  .ember-power-calendar-nav-control:focus {
    -ms-transform: scale(1.2);
    transform: scale(1.2); }

.ember-power-calendar-day--selected,
.ember-power-calendar-day--selected:not([disabled]):hover {
  font-weight: bold; }

.ember-power-calendar-day--interactive[disabled] {
  opacity: 0.4; }

.ember-basic-dropdown {
  position: relative; }

.ember-basic-dropdown, .ember-basic-dropdown-content, .ember-basic-dropdown-content * {
  box-sizing: border-box; }

.ember-basic-dropdown-content {
  position: absolute;
  width: auto;
  z-index: 1000;
  background-color: #ffffff; }

.ember-basic-dropdown-content--left {
  left: 0; }

.ember-basic-dropdown-content--right {
  right: 0; }

.ember-basic-dropdown-overlay {
  position: fixed;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
  z-index: 10;
  top: 0;
  left: 0;
  pointer-events: none; }

.ember-basic-dropdown-content-wormhole-origin {
  display: inline; }

/* e7 base */
/**
 * CORE
 *
 * Core layout and structure styles
 *
 */
html,
body {
  min-height: 600px; }
  @media only screen and (min-width: 1024px) {
    html,
    body {
      min-height: 100%;
      min-height: 100vh; } }

body {
  min-width: 320px;
  background: #f2f2f2;
  color: #122230;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.wrapper {
  padding-bottom: 15px;
  transition: 0.167s filter linear; }
  @media only screen and (max-width: 758px) {
    .wrapper {
      min-height: 800px; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .wrapper {
      min-height: 1300px; } }
  @media only screen and (min-width: 1024px) {
    .wrapper {
      min-height: 100vh; } }
  .is-mfp-open.mfp-gating .wrapper {
    filter: blur(5px); }

.container {
  margin: 0 auto;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 1100px; }
  @media only screen and (min-width: 759px) {
    .container {
      padding-left: 20px;
      padding-right: 20px; } }

.container--medium {
  max-width: 840px; }

.container--medium-wide {
  max-width: 1400px; }

.container--landing {
  max-width: 780px; }

.container--narrow {
  max-width: 550px; }

img {
  height: auto; }

.bg-smoke-dark {
  background-color: #e6e6e6; }

/**
 * FOOTER
 *
 * Sitewide footer
 *
 */
.footer {
  padding: 30px 20px;
  background: #122230; }
  @media only screen and (min-width: 759px) {
    .footer {
      padding: 80px 20px; } }
  .footer :last-child {
    margin-bottom: 0; }

.footer--landing {
  margin-top: 0 !important; }

.footer__smallprint {
  color: #fff;
  font-size: 14px;
  line-height: 1.7; }
  .footer__smallprint a {
    color: inherit;
    transition: 0.167s ease; }
    .footer__smallprint a:hover {
      color: #fff; }

.footer__lower__geotrust {
  height: 25px;
  margin-right: 20px; }
  @media only screen and (max-width: 758px) {
    .footer__lower__geotrust {
      margin-top: 30px;
      margin-bottom: 30px; } }
  @media only screen and (min-width: 1024px) {
    .footer__lower__geotrust {
      height: 30px;
      width: 160px;
      margin-right: 40px; } }

.footer__lower__rapidssl {
  height: 25px;
  margin-right: 20px; }
  @media only screen and (min-width: 1024px) {
    .footer__lower__rapidssl {
      height: 30px;
      width: 130px;
      margin-right: 40px; } }

.footer__trust-badges {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-bottom: 30px; }
  @media only screen and (max-width: 758px) {
    .footer__trust-badges {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
      flex-direction: column;
      -ms-flex-align: center;
      align-items: center;
      padding-top: 40px;
      border-top: 1px solid #ACAEAF; } }
  @media only screen and (min-width: 1024px) {
    .footer__trust-badges {
      padding: 50px 30px;
      margin-bottom: 40px !important;
      border-top: 1px solid #4D5157;
      border-bottom: 1px solid #4D5157;
      -ms-flex-pack: center;
      justify-content: center; } }

.footer__tp {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: center;
  align-items: center; }
  @media only screen and (min-width: 759px) {
    .footer__tp {
      -ms-flex-direction: row;
      flex-direction: row; } }
  .footer__tp .icon, .footer__tp .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .footer__tp .checkbox__faux-input:before, .footer__tp .mfp-close:before, .footer__tp .alert__close, .footer__tp .btn--arrow-right:after, .footer__tp .favourite-nav__shortlist__heart, .footer__tp .needhelp__icon, .footer__tp .pagination li a, .pagination li .footer__tp a, .footer__tp .product-detail__favourite, .footer__tp .product-favourite__trigger, .footer__tp .quotes-nav__list__item:before {
    margin-right: 2px;
    width: 30px;
    height: 30px; }
  .footer__tp .footer__tp-inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start; }

.footer__tp-logo {
  margin-bottom: 25px;
  margin-right: 15px; }
  @media only screen and (min-width: 759px) {
    .footer__tp-logo {
      margin-bottom: 0; } }

.footer__tp-rating-number {
  font-size: 29px;
  font-weight: 600;
  margin-right: 7px;
  color: #fff; }

.footer__logos {
  display: -ms-flexbox;
  display: flex; }

.footer__call-block {
  color: #fff;
  display: -ms-flexbox;
  display: flex;
  font-weight: 600;
  font-size: 18px;
  padding: 20px 0;
  border-top: 2px solid #c2c2c2;
  border-bottom: 2px solid #c2c2c2;
  margin: 26px 0; }
  .footer__call-block a {
    color: inherit; }
  .footer__call-block p {
    font-size: 18px; }
    .footer__call-block p:first-child {
      margin-bottom: 10px;
      margin-top: 25px;
      font-weight: 600; }
    .footer__call-block p:last-child {
      font-weight: 400; }

.footer__call-block img {
  width: 130px; }

.footer__call-text {
  padding-right: 50px; }

/**
 * HEADER
 *
 * Sitewide header
 *
 */
.header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: center;
  align-items: center;
  background: #FFFFFF;
  box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.07); }

.header__logo-wrap {
  display: block;
  text-align: left; }

.header__logo {
  display: none;
  margin-top: 10px;
  margin-bottom: 10px; }

.header__logo--desktop {
  width: 170px;
  margin-left: 30px; }
  @media only screen and (min-width: 759px) {
    .header__logo--desktop {
      display: block; } }

.header__logo--mobile {
  width: 125px;
  margin-left: 15px; }
  @media only screen and (max-width: 758px) {
    .header__logo--mobile {
      display: block; } }

.header__nav ul {
  display: -ms-flexbox;
  display: flex;
  margin: 0;
  list-style-type: none; }

.header__nav li {
  border-left: 1px solid #e6e6e6; }

.header__nav__link {
  display: block;
  padding: 0 15px;
  text-decoration: none;
  line-height: 50px;
  border: none;
  background: none;
  color: #122230;
  transition: 0.2s ease; }
  .header__nav__link i {
    position: relative;
    top: -1px;
    margin: 0 3px;
    font-size: 19px; }
    @media only screen and (min-width: 759px) {
      .header__nav__link i {
        margin-left: 0;
        margin-right: 2px; } }
  .header__nav__link:active, .header__nav__link:focus {
    background: none;
    outline: none; }
  .header__nav__link:active {
    color: #FF647D;
    -ms-transform: translateY(1px);
    transform: translateY(1px); }
  @media only screen and (max-width: 758px) {
    .header__nav__link {
      font-size: 14px; } }
  @media only screen and (min-width: 759px) {
    .header__nav__link {
      padding: 0 30px;
      line-height: 60px; } }

.header__quote-type {
  display: none; }

/**
 * NAV
 *
 * Main and sub navigation styles
 *
 */
/**
 * TYPE
 *
 * Sitewide typography
 *
 */
@font-face {
  font-family: 'BrandonGrotesque';
  src: url("/assets/fonts/brandon-grotesque/regular.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("/assets/fonts/brandon-grotesque/medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("/assets/fonts/brandon-grotesque/bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'BrandonGrotesque';
  src: url("/assets/fonts/brandon-grotesque/black.woff") format("woff");
  font-weight: 800;
  font-style: normal; }

@font-face {
  font-family: 'AkzidenzGroteskPro';
  src: url("/assets/fonts/akzidenz-grotesk-pro/regular.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'AkzidenzGroteskPro';
  src: url("/assets/fonts/akzidenz-grotesk-pro/medium.woff") format("woff");
  font-weight: 500;
  font-style: normal; }

@font-face {
  font-family: 'AkzidenzGroteskPro';
  src: url("/assets/fonts/akzidenz-grotesk-pro/bold.woff") format("woff");
  font-weight: 700;
  font-style: normal; }


.alpha,
h1 {
  font-size: 26px;
  font-weight: 600;
  font-family: "BrandonGrotesque", Helvetica, sans-serif; }
  @media only screen and (min-width: 759px) {
    
    .alpha,
    h1 {
      font-size: 36px; } }


.beta,
h2 {
  font-size: 22px;
  font-family: "BrandonGrotesque", Helvetica, sans-serif; }
  @media only screen and (min-width: 759px) {
    
    .beta,
    h2 {
      font-size: 33px; } }


.gamma,
h3 {
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4; }
  @media only screen and (min-width: 759px) {
    
    .gamma,
    h3 {
      font-size: 24px; } }


.delta,
h4 {
  font-size: 16px;
  font-weight: 300; }
  @media only screen and (min-width: 759px) {
    
    .delta,
    h4 {
      font-size: 18px; } }


.section-heading {
  font-size: 20px;
  font-weight: 700;
  color: #122230; }

.lead {
  font-weight: 700;
  color: #122230; }

p {
  margin-bottom: 1em;
  font-size: 16px; }

.link {
  color: #70c137;
  text-decoration: none;
  transition: 0.167s ease; }
  .link:hover {
    color: #60a52f; }

.text-link {
  padding: 0;
  cursor: pointer;
  color: #122230;
  background: none;
  border: none;
  text-decoration: underline;
  text-decoration-skip: ink; }

.text-link--minor {
  color: #122230;
  font-size: 14px; }
  .text-link--minor .icon, .text-link--minor .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .text-link--minor .checkbox__faux-input:before, .text-link--minor .mfp-close:before, .text-link--minor .alert__close, .text-link--minor .btn--arrow-right:after, .text-link--minor .favourite-nav__shortlist__heart, .text-link--minor .needhelp__icon, .text-link--minor .pagination li a, .pagination li .text-link--minor a, .text-link--minor .product-detail__favourite, .text-link--minor .product-favourite__trigger, .text-link--minor .quotes-nav__list__item:before {
    margin-right: 0.5em;
    opacity: 0.65;
    font-size: 0.85em; }

.nowrap {
  white-space: nowrap; }

.text--hint {
  font-size: 14px;
  color: #3D3D3D;
  margin-top: 15px; }
  @media only screen and (max-width: 758px) {
    .text--hint {
      margin: 10px 0 20px; } }

.smallprint {
  color: #122230;
  font-size: 14px;
  font-weight: 400; }
  .smallprint a {
    color: inherit;
    transition: color 0.167s ease; }
    .smallprint a:hover {
      color: #FF647D; }

.smallprint-quiet {
  font-size: 12px;
  color: #999; }
  .smallprint-quiet a {
    color: inherit;
    transition: color 0.2s ease; }
    .smallprint-quiet a:hover {
      color: #FF647D; }

.smallprint-new {
  color: #122230;
  font-size: 12px;
  line-height: 1.5; }
  .smallprint-new a {
    color: inherit;
    transition: color 0.2s ease; }
    .smallprint-new a:hover {
      color: #FF647D; }
  .smallprint-new .tooltip__trigger {
    color: inherit;
    text-decoration: underline; }

sub,
sup {
  font-size: 55%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.7em; }

small {
  font-size: 70%; }

.text--white {
  color: #FFF; }

.default-list {
  margin: 0 0 20px;
  padding-left: 1.2em; }
  .default-list li {
    margin-bottom: 8px; }
    .default-list li:last-child {
      margin-bottom: 0; }

.document-list {
  padding: 0;
  margin: 0 0 20px;
  list-style-type: none;
  color: #122230; }
  .document-list li {
    margin-bottom: 30px; }
    .document-list li:last-child {
      margin-bottom: 0; }
  .document-list a {
    display: inline-block;
    padding-left: 35px;
    background-repeat: no-repeat;
    color: inherit;
    text-decoration: underline; }

.numbered-list {
  padding: 0;
  margin: 0 0 20px;
  list-style-type: none;
  counter-reset: numbered-list; }
  .numbered-list li {
    position: relative;
    padding-left: 45px;
    margin-bottom: 20px;
    color: #122230;
    line-height: 24px; }
    .numbered-list li:before {
      content: counter(numbered-list);
      counter-increment: numbered-list;
      position: absolute;
      left: 0;
      text-align: center;
      border-radius: 50%;
      width: 24px;
      height: 24px;
      line-height: 23px;
      font-size: 12px;
      color: #122230;
      border: 1px solid currentColor; }
    .numbered-list li:last-child {
      margin-bottom: 0; }

/**
 * FORMS
 *
 * Sitewide form styles
 *
 */
select {
  width: 100%;
  height: 50px;
  -webkit-appearance: menulist-button;
  background: #fff;
  border: none; }

.form-input, .quote-form__togglable-input {
  margin-bottom: 20px; }

.form-input__label {
  display: block;
  margin-bottom: 10px;
  color: #122230;
  font-weight: 500; }
  .customiser__form .form-input__label {
    color: #122230; }
  .form-input__label li {
    margin: 10px 0; }

.form-input__label--accent {
  color: #122230; }

.form-input__label__tooltip {
  display: inline-block; }
  .form-input__label__tooltip .icon, .form-input__label__tooltip .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .form-input__label__tooltip .checkbox__faux-input:before, .form-input__label__tooltip .mfp-close:before, .form-input__label__tooltip .alert__close, .form-input__label__tooltip .btn--arrow-right:after, .form-input__label__tooltip .favourite-nav__shortlist__heart, .form-input__label__tooltip .needhelp__icon, .form-input__label__tooltip .pagination li a, .pagination li .form-input__label__tooltip a, .form-input__label__tooltip .product-detail__favourite, .form-input__label__tooltip .product-favourite__trigger, .form-input__label__tooltip .quotes-nav__list__item:before {
    top: -2px; }

.form-input__help {
  display: block;
  margin-top: 10px;
  color: #e6e6e6;
  font-size: 14px;
  text-decoration: none; }

.form-input__errors, .form-input__info {
  clear: both;
  margin: 5px auto 0;
  list-style-type: none;
  color: #e0684a;
  font-size: 12px; }
  .form-input__errors a, .form-input__info a {
    color: #e0684a; }
  .checkbox + .form-input__errors, .checkbox + .form-input__info {
    margin-top: 10px !important; }

.form-input__info {
  color: #5A99E2; }

.form-input--spaced {
  margin-bottom: 2em; }
  .form-input--spaced .form-input__label {
    margin-bottom: 1em; }

.form-input__unit {
  position: relative; }
  .form-input__unit .input-text, .form-input__unit .ember-power-select-typeahead-input {
    padding-right: 50px; }

.form-input__unitvalue {
  position: absolute;
  top: 0;
  right: 15px;
  line-height: 50px; }

/**
 * Text input
 */
.input-text, .ember-power-select-typeahead-input {
  -webkit-appearance: none;
  appearance: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  width: 100%;
  padding: 13px 15px;
  background: #fff;
  border-radius: 2px;
  border: 2px solid #d8d8d8;
  line-height: 20px;
  color: #122230;
  transition: 0.15s all ease-in-out;
  box-shadow: none;
  line-height: 20px;
  font-size: 18px; }
  .form-input--error .input-text, .form-input--error .ember-power-select-typeahead-input {
    border-color: #e0684a; }
  .input-text[disabled], .ember-power-select-typeahead-input[disabled] {
    cursor: not-allowed;
    opacity: 0.6; }
  .input-text[readonly], .ember-power-select-typeahead-input[readonly] {
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .input-text:hover, .ember-power-select-typeahead-input:hover {
    border-color: #bfbfbf; }
  .input-text:focus, .ember-power-select-typeahead-input:focus {
    border-color: #5A99E2;
    outline: none; }
  .input-text:-ms-input-placeholder, .ember-power-select-typeahead-input:-ms-input-placeholder {
    color: #122230; }
  .input-text::placeholder, .ember-power-select-typeahead-input::placeholder {
    color: #122230; }
  .input-text::-ms-clear, .ember-power-select-typeahead-input::-ms-clear {
    display: none; }

.input-text--small {
  padding-top: 10px;
  padding-bottom: 10px; }

/**
 * Boolean Radio Group
 */
.boolean-radio-group {
  margin: 0;
  list-style-type: none;
  display: -ms-flexbox;
  display: flex;
  background: #fff; }
  .boolean-radio-group input[type=radio] {
    position: absolute;
    top: 0;
    opacity: 0; }
  .boolean-radio-group li {
    width: 50%; }
    .boolean-radio-group li:first-child {
      margin-right: -2px; }
    .boolean-radio-group li:last-child {
      margin-right: -2px; }
    .boolean-radio-group li:first-child > .radio-button {
      border-bottom-left-radius: 2px;
      border-top-left-radius: 2px; }
    .boolean-radio-group li:last-child > .radio-button {
      border-bottom-right-radius: 2px;
      border-top-right-radius: 2px; }
  .boolean-radio-group .radio-button {
    position: relative;
    display: block;
    z-index: 0;
    padding: 16px 10px;
    border: none;
    line-height: 20px;
    cursor: pointer;
    transition: 0.067s all ease-in-out;
    border: 2px solid #d8d8d8;
    color: #122230; }
    .boolean-radio-group .radio-button.checked {
      background: #FF647D;
      border-color: #FF647D !important; }
      .boolean-radio-group .radio-button.checked .radio-button__value {
        color: #122230; }
    .form-input--error .boolean-radio-group .radio-button {
      border-color: #e0684a !important;
      background-color: #fae8e3; }
      .form-input--error .boolean-radio-group .radio-button .radio-button__value {
        color: #e0684a; }
    .boolean-radio-group .radio-button:hover {
      z-index: 1;
      border-color: #bfbfbf; }
  .boolean-radio-group .radio-button__value {
    font-family: 'BrandonGrotesque', Helvetica, sans-serif;
    text-transform: uppercase;
    font-weight: 600;
    text-align: center;
    display: block; }
    .boolean-radio-group .radio-button__value:before, .boolean-radio-group .radio-button__value:after {
      display: none; }

/**
 * Simple Radio Group
 */
.simple-radio-group {
  margin: 0;
  color: #658080; }
  .simple-radio-group label {
    margin-bottom: 10px; }
  .simple-radio-group input[type=radio] {
    position: relative;
    display: inline-block;
    margin-right: 5px;
    top: -1px; }
  .simple-radio-group li {
    display: inline-block;
    margin-right: 20px; }
  .form-input--error .simple-radio-group .radio-button__value {
    color: #e0684a; }
  .simple-radio-group .radio-button__value {
    display: inline-block; }

.radio__label {
  overflow: hidden;
  display: block;
  margin-bottom: 10px;
  line-height: 1.2em;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .radio__label .form-input__tooltip {
    position: relative;
    top: -1px; }
  .radio__label a {
    color: #e6e6e6; }

/**
 * Radio Button
 */
.ember-radio-button {
  position: relative;
  display: block;
  padding-left: 34px; }
  .ember-radio-button input {
    position: absolute;
    opacity: 0;
    left: 0;
    height: 0;
    width: 0;
    overflow: hidden; }

.radio-button__value {
  font-size: 16px;
  font-weight: 400; }
  .radio-button__value:before {
    content: '';
    position: absolute;
    left: 0;
    display: inline-block;
    width: 24px;
    height: 24px;
    left: 0;
    margin-right: 5px;
    vertical-align: top;
    border-radius: 50%;
    border: 2px solid #d8d8d8;
    background: #fff;
    transition: 0.167s ease; }
    .radio-button:hover .radio-button__value:before {
      border-color: rgba(255, 100, 125, 0.5); }
    input:focus + .radio-button__value:before {
      border-color: #FF647D; }
    .radio-button__value:before[disabled] {
      cursor: default;
      opacity: 0.6; }
    .checked .radio-button__value:before {
      background: #FF647D;
      border-color: #FF647D; }
  .radio-button__value:after {
    content: '';
    position: absolute;
    display: block;
    left: 8px;
    top: 8px;
    background: #fff;
    border-radius: 50%;
    height: 8px;
    width: 8px; }

/**
 * Radio Group
 */
.radio-group {
  margin: 0;
  padding: 0;
  list-style-type: none; }
  .radio-group li {
    margin-bottom: 10px; }
  .radio-group .radio-button {
    cursor: pointer; }
  .form-input--error .radio-group .radio-button__value {
    color: #e0684a; }

.radio-group--spaced li {
  margin-bottom: 2em; }

/**
 * Checkbox
 */
.checkbox {
  position: relative;
  color: #122230; }
  .checkbox input[type=checkbox] {
    top: 0;
    position: absolute;
    opacity: 0; }

.checkbox__faux-input {
  width: 24px;
  height: 24px;
  float: left;
  margin-right: 10px;
  background-color: #fff;
  border: 2px solid #d8d8d8;
  border-radius: 2px;
  color: #fff;
  font-size: 12px;
  text-align: center;
  transition: 0.067s all ease-in; }
  .checkbox:hover .checkbox__faux-input {
    border-color: #bfbfbf; }
  .form-input--error .checkbox__faux-input {
    border-color: #e0684a;
    background: #fcf4f2; }
  .checkbox--checked .checkbox__faux-input {
    background-color: #9EDB45;
    border-color: #9EDB45 !important; }
  .is-disabled .checkbox__faux-input {
    opacity: 0.6; }

.checkbox__label {
  overflow: hidden;
  line-height: 23px;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #122230; }
  .checkbox__label a {
    color: inherit; }

.checkbox--terms a {
  text-decoration: underline; }

.checkbox--terms .checkbox__label {
  font-size: 12px; }

/**
 * Checkbox Group
 */
.checkbox-group {
  margin: 0;
  list-style-type: none; }
  .checkbox-group li {
    margin-bottom: 12px; }

.checkbox-group__conditional-field {
  display: table;
  width: 100%; }

.checkbox-group__conditional-field__label,
.checkbox-group__conditional-field__input {
  display: table-cell;
  width: 50%; }

.checkbox-group__conditional-field__label {
  padding-left: 25px; }

.checkbox-group--spaced li {
  margin-bottom: 2em; }

/**
 * Currency
 */
.form-input__currency {
  position: relative; }
  .form-input__currency .input-text, .form-input__currency .ember-power-select-typeahead-input {
    padding-left: 30px; }

.form-input__currencyicon {
  position: absolute;
  top: 15px;
  left: 12px;
  color: #e6e6e6; }

.needhelp__form {
  max-width: 100%;
  width: 370px;
  text-align: center; }
  .needhelp__form form {
    text-align: left; }
  .needhelp__form .selectboxit-container {
    max-width: none; }
  @media only screen and (max-width: 758px) {
    .needhelp__form .btn, .needhelp__form .product-detail__apply, .needhelp__form .product-detail__apply-online, .needhelp__form .quote-confirm__btn, .needhelp__form .landing__btn {
      width: 100%; } }

.radio-group--await {
  position: relative; }

.radio-group--columns {
  column-count: 2;
  column-width: 50%; }

.await-loader {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  top: -0.5rem;
  right: -0.5rem;
  bottom: -0.5rem;
  left: -0.5rem;
  background-color: #FFFFFF;
  margin: 0 !important; }
  .await-loader .ember-loader__circle {
    background: transparent;
    margin: 0;
    width: 30px;
    height: 30px;
    margin-right: 1rem; }
  .await-loader p {
    margin: 0;
    font-weight: 700;
    font-size: 0.75rem;
    color: #1f6868; }

@media only screen and (min-width: 759px) {
  .form-about-you--combined .form-input, .form-about-you--combined .quote-form__togglable-input {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center; } }

.form-about-you--combined .form-input *, .form-about-you--combined .quote-form__togglable-input * {
  -ms-flex-positive: 1;
  flex-grow: 1; }

.form-about-you--combined .form-input .form-input__label, .form-about-you--combined .quote-form__togglable-input .form-input__label {
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-right: 0;
  width: 160px; }

.form-about-you--combined .quote-form__title, .form-about-you--combined .quote-form__description {
  text-align: left;
  margin-left: 0; }

.form-about-you--combined .quote-form__title {
  font-size: 36px;
  margin-bottom: 25px; }
  @media only screen and (min-width: 759px) {
    .form-about-you--combined .quote-form__title {
      margin-bottom: 40px; } }

.form-about-you--combined .quote-form__description {
  max-width: 770px;
  margin-bottom: 15px; }
  @media only screen and (min-width: 759px) {
    .form-about-you--combined .quote-form__description {
      margin-bottom: 20px; } }

.form-about-you--combined .quote-form__island {
  padding-bottom: 1px;
  padding-top: 30px; }
  @media only screen and (min-width: 759px) {
    .form-about-you--combined .quote-form__island {
      padding-top: 40px; } }

.form-choose-cover--combined {
  padding-top: 0 !important; }
  .form-choose-cover--combined .quote-form__island {
    position: relative;
    background-color: #fff;
    padding-top: 0;
    padding-bottom: 0; }
  .form-choose-cover--combined .quote-form__calculator-btn {
    color: #9EDB45;
    cursor: pointer; }
    @media only screen and (min-width: 759px) {
      .form-choose-cover--combined .quote-form__calculator-btn {
        position: absolute;
        top: 34px;
        right: 33px; } }
  .form-choose-cover--combined .quote-form__title, .form-choose-cover--combined .quote-form__description {
    text-align: left;
    margin-left: 0; }
  .form-choose-cover--combined .quote-form__title {
    font-size: 36px;
    margin-bottom: 25px;
    border-top: 1px solid #d8d8d8;
    padding-top: 30px; }
    @media only screen and (min-width: 759px) {
      .form-choose-cover--combined .quote-form__title {
        margin-bottom: 40px; } }
  .form-choose-cover--combined .quote-form__description {
    margin-bottom: 15px; }
  .form-choose-cover--combined .quote-confirm {
    max-width: none;
    margin-left: -20px;
    margin-right: -20px; }
    @media only screen and (min-width: 759px) {
      .form-choose-cover--combined .quote-confirm {
        margin-left: -30px;
        margin-right: -30px; } }

@font-face {
  font-family: "project-helm";
  src: url("fonts/project-helm.eot?v=1");
  src: url("fonts/project-helm.svg?v=1#project-helm") format("svg"), url("fonts/project-helm.eot?v=1#iefix") format("embedded-opentype"), url("fonts/project-helm.woff?v=1") format("woff"), url("fonts/project-helm.ttf?v=1") format("truetype"), url("fonts/project-helm.svg?v=1#project-helm") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon, .checkbox--checked .checkbox__faux-input:before, .mfp-close:before, .alert__close, .btn--arrow-right:after, .favourite-nav__shortlist__heart, .needhelp__icon, .pagination li a, .product-detail__favourite, .product-favourite__trigger, .quotes-nav__list__item:before {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  font-family: "project-helm" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

[data-icon]:before {
  font-family: "project-helm" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-alert-info:before {
  content: "\62"; }

.icon-alert-info-fill:before {
  color: #ABE1E2;
  content: "\e900"; }

.icon-alert-success:before {
  content: "\63"; }

.icon-arrow-down-filter:before {
  content: "\65"; }

.icon-arrow-left-slider:before, .pagination li.prev a:before {
  content: "\66"; }

.icon-arrow-right-slider:before, .btn--arrow-right:after, .pagination li.next a:before, .quotes-nav__list__item:before {
  content: "\67"; }

.icon-arrow-up-filter:before {
  content: "\68"; }

.icon-eye-toggle-view:before {
  content: "\6d"; }

.icon-heart:before, .favourite-nav__shortlist__heart:before, .product-detail__favourite:before, .product-favourite__trigger:before {
  content: "\6e"; }

.icon-live-chat:before {
  content: "\6f"; }

.icon-send:before {
  content: "\70"; }

.icon-tick-check-box:before, .checkbox--checked .checkbox__faux-input:before, .is-complete .step-list__link:after {
  content: "\72"; }

.icon-tick-success-validation:before {
  content: "\73"; }

.icon-plus:before, .cover-summary__item--toggle .icon:before, .cover-summary__item--toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .cover-summary__item--toggle .checkbox__faux-input:before, .cover-summary__item--toggle .mfp-close:before, .cover-summary__item--toggle .alert__close:before, .cover-summary__item--toggle .favourite-nav__shortlist__heart:before, .cover-summary__item--toggle .needhelp__icon:before, .cover-summary__item--toggle .pagination li a:before, .pagination li .cover-summary__item--toggle a:before, .cover-summary__item--toggle .product-detail__favourite:before, .cover-summary__item--toggle .product-favourite__trigger:before, .cover-summary__item--toggle .quotes-nav__list__item:before {
  content: "\75"; }

.icon-minus:before, .cover-summary--open .cover-summary__item--toggle .icon:before, .cover-summary--open .cover-summary__item--toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .cover-summary--open .cover-summary__item--toggle .checkbox__faux-input:before, .cover-summary--open .cover-summary__item--toggle .mfp-close:before, .cover-summary--open .cover-summary__item--toggle .alert__close:before, .cover-summary--open .cover-summary__item--toggle .favourite-nav__shortlist__heart:before, .cover-summary--open .cover-summary__item--toggle .needhelp__icon:before, .cover-summary--open .cover-summary__item--toggle .pagination li a:before, .pagination li .cover-summary--open .cover-summary__item--toggle a:before, .cover-summary--open .cover-summary__item--toggle .product-detail__favourite:before, .cover-summary--open .cover-summary__item--toggle .product-favourite__trigger:before, .cover-summary--open .cover-summary__item--toggle .quotes-nav__list__item:before {
  content: "\76"; }

.icon-question:before {
  content: "\78"; }

.icon-smartphone:before {
  content: "\79"; }

.icon-calculator-1:before {
  content: "\42"; }

.icon-child-age-0-2:before {
  content: "\43"; }

.icon-child-age-3-9:before {
  content: "\44"; }

.icon-child-age-10-13:before {
  content: "\45"; }

.icon-child-age-14-17:before {
  content: "\46"; }

.icon-child-age-18:before {
  content: "\47"; }

.icon-children-1:before {
  content: "\48"; }

.icon-children-2:before {
  content: "\49"; }

.icon-children-3:before {
  content: "\4a"; }

.icon-children-4:before {
  content: "\4b"; }

.icon-children-5:before {
  content: "\4c"; }

.icon-homeowner-no:before {
  content: "\4d"; }

.icon-homeowner-yes:before {
  content: "\4e"; }

.icon-income-0-40:before {
  content: "\4f"; }

.icon-income-40-60:before {
  content: "\50"; }

.icon-income-60-80:before {
  content: "\51"; }

.icon-income-60-100:before {
  content: "\52"; }

.icon-income-100-150:before {
  content: "\53"; }

.icon-income-150-200:before {
  content: "\54"; }

.icon-income-200:before {
  content: "\55"; }

.icon-mortgage-no:before {
  content: "\56"; }

.icon-mortgage-yes:before {
  content: "\57"; }

.icon-parent-no:before {
  content: "\58"; }

.icon-parent-yes:before {
  content: "\59"; }

.icon-left-open-big:before {
  content: "\30"; }

.icon-right-open-big:before {
  content: "\31"; }

.icon-pencil:before {
  content: "\32"; }

.icon-phone-solid:before {
  content: "\33"; }

.icon-phone-solid-thick:before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"><path d="M18.1156 13.678C17.9763 14.7366 17.4564 15.7083 16.6531 16.4116C15.8497 17.1149 14.8177 17.5018 13.75 17.4998C7.54688 17.4998 2.50001 12.453 2.50001 6.24984C2.49809 5.1821 2.88492 4.15017 3.58824 3.34679C4.29155 2.54341 5.26326 2.02352 6.32188 1.88422C6.58958 1.85153 6.86067 1.9063 7.09468 2.04034C7.3287 2.17438 7.51309 2.38052 7.62032 2.62797L9.27032 6.31156V6.32094C9.35242 6.51035 9.38633 6.71715 9.36901 6.92287C9.3517 7.12859 9.2837 7.32681 9.1711 7.49984C9.15704 7.52094 9.14219 7.54047 9.12657 7.56L7.50001 9.48812C8.08516 10.6772 9.32891 11.91 10.5336 12.4967L12.4352 10.8787C12.4538 10.8631 12.4734 10.8484 12.4938 10.835C12.6666 10.7197 12.8655 10.6493 13.0725 10.6302C13.2794 10.6111 13.4878 10.6439 13.6789 10.7256L13.6891 10.7303L17.3695 12.3795C17.6174 12.4864 17.8241 12.6706 17.9585 12.9047C18.093 13.1387 18.1481 13.41 18.1156 13.678Z" fill="%23122230"/></svg>'); }

.icon-calculator-simple:before {
  content: "\34"; }

.icon-incomeinsurance:before {
  content: "\35"; }

.icon-moreinsurance:before {
  content: "\36"; }

.icon-tick:before {
  content: "\37"; }

.icon-save:before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path d="M16.25 2.5H3.75C3.41848 2.5 3.10054 2.6317 2.86612 2.86612C2.6317 3.10054 2.5 3.41848 2.5 3.75V16.25C2.5 16.5815 2.6317 16.8995 2.86612 17.1339C3.10054 17.3683 3.41848 17.5 3.75 17.5H16.25C16.5815 17.5 16.8995 17.3683 17.1339 17.1339C17.3683 16.8995 17.5 16.5815 17.5 16.25V3.75C17.5 3.41848 17.3683 3.10054 17.1339 2.86612C16.8995 2.6317 16.5815 2.5 16.25 2.5ZM7.05781 8.93281C7.11586 8.8747 7.18479 8.8286 7.26066 8.79715C7.33654 8.7657 7.41787 8.74951 7.5 8.74951C7.58213 8.74951 7.66346 8.7657 7.73934 8.79715C7.81521 8.8286 7.88414 8.8747 7.94219 8.93281L9.375 10.3664V5.625C9.375 5.45924 9.44085 5.30027 9.55806 5.18306C9.67527 5.06585 9.83424 5 10 5C10.1658 5 10.3247 5.06585 10.4419 5.18306C10.5592 5.30027 10.625 5.45924 10.625 5.625V10.3664L12.0578 8.93281C12.1159 8.87474 12.1848 8.82868 12.2607 8.79725C12.3366 8.76583 12.4179 8.74965 12.5 8.74965C12.5821 8.74965 12.6634 8.76583 12.7393 8.79725C12.8152 8.82868 12.8841 8.87474 12.9422 8.93281C13.0003 8.99088 13.0463 9.05982 13.0777 9.13569C13.1092 9.21156 13.1253 9.29288 13.1253 9.375C13.1253 9.45712 13.1092 9.53844 13.0777 9.61431C13.0463 9.69018 13.0003 9.75912 12.9422 9.81719L10.4422 12.3172C10.3841 12.3753 10.3152 12.4214 10.2393 12.4529C10.1635 12.4843 10.0821 12.5005 10 12.5005C9.91787 12.5005 9.83654 12.4843 9.76066 12.4529C9.68479 12.4214 9.61586 12.3753 9.55781 12.3172L7.05781 9.81719C6.9997 9.75914 6.9536 9.69021 6.92215 9.61434C6.8907 9.53846 6.87451 9.45713 6.87451 9.375C6.87451 9.29287 6.8907 9.21154 6.92215 9.13566C6.9536 9.05979 6.9997 8.99086 7.05781 8.93281ZM16.25 16.25H3.75V13.125H5.99141L7.5 14.6344C7.6158 14.7507 7.75351 14.8429 7.90518 14.9057C8.05685 14.9684 8.21945 15.0005 8.38359 15H11.6164C11.7806 15.0005 11.9433 14.9684 12.095 14.9055C12.2467 14.8426 12.3843 14.7502 12.5 14.6336L14.0086 13.125H16.25V16.25Z" fill="white"/></svg>'); }

.icon-benefits:before {
  content: "\21"; }

.icon-benefits-full:before {
  content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 14" fill="none"><path d="M15.5 6.375V7.625C15.5 7.79076 15.4342 7.94973 15.3169 8.06694C15.1997 8.18415 15.0408 8.25 14.875 8.25H1.125C0.95924 8.25 0.800269 8.18415 0.683058 8.06694C0.565848 7.94973 0.5 7.79076 0.5 7.625V6.375C0.5 6.20924 0.565848 6.05027 0.683058 5.93306C0.800269 5.81585 0.95924 5.75 1.125 5.75H14.875C15.0408 5.75 15.1997 5.81585 15.3169 5.93306C15.4342 6.05027 15.5 6.20924 15.5 6.375ZM14.875 10.75H1.125C0.95924 10.75 0.800269 10.8158 0.683058 10.9331C0.565848 11.0503 0.5 11.2092 0.5 11.375V12.625C0.5 12.7908 0.565848 12.9497 0.683058 13.0669C0.800269 13.1842 0.95924 13.25 1.125 13.25H14.875C15.0408 13.25 15.1997 13.1842 15.3169 13.0669C15.4342 12.9497 15.5 12.7908 15.5 12.625V11.375C15.5 11.2092 15.4342 11.0503 15.3169 10.9331C15.1997 10.8158 15.0408 10.75 14.875 10.75ZM14.875 0.75H1.125C0.95924 0.75 0.800269 0.815848 0.683058 0.933058C0.565848 1.05027 0.5 1.20924 0.5 1.375V2.625C0.5 2.79076 0.565848 2.94973 0.683058 3.06694C0.800269 3.18415 0.95924 3.25 1.125 3.25H14.875C15.0408 3.25 15.1997 3.18415 15.3169 3.06694C15.4342 2.94973 15.5 2.79076 15.5 2.625V1.375C15.5 1.20924 15.4342 1.05027 15.3169 0.933058C15.1997 0.815848 15.0408 0.75 14.875 0.75Z" fill="%23122230"/></svg>'); }

.icon-price:before {
  content: "\22"; }

.icon-chevron-down-large:before {
  content: "\23"; }

.icon-cross:before, .modal-apply .mfp-close:before, .is-expanded .product-card__toggle-btn .icon:before, .is-expanded .product-card__toggle-btn .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .is-expanded .product-card__toggle-btn .checkbox__faux-input:before, .is-expanded .product-card__toggle-btn .mfp-close:before, .is-expanded .product-card__toggle-btn .alert__close:before, .is-expanded .product-card__toggle-btn .favourite-nav__shortlist__heart:before, .is-expanded .product-card__toggle-btn .needhelp__icon:before, .is-expanded .product-card__toggle-btn .pagination li a:before, .pagination li .is-expanded .product-card__toggle-btn a:before, .is-expanded .product-card__toggle-btn .product-detail__favourite:before, .is-expanded .product-card__toggle-btn .product-favourite__trigger:before, .is-expanded .product-card__toggle-btn .quotes-nav__list__item:before {
  content: "\69"; }

.icon-close:before, .mfp-close:before, .alert__close:before {
  content: "\6a"; }

.icon-tooltip:before {
  content: "\6b"; }

.icon-expand:before {
  content: "\6c"; }

.icon-clock:before {
  content: "\71"; }

.icon-file:before {
  content: "\74"; }

.icon-info:before, .product-card__toggle-btn .icon:before, .product-card__toggle-btn .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .product-card__toggle-btn .checkbox__faux-input:before, .product-card__toggle-btn .mfp-close:before, .product-card__toggle-btn .alert__close:before, .product-card__toggle-btn .favourite-nav__shortlist__heart:before, .product-card__toggle-btn .needhelp__icon:before, .product-card__toggle-btn .pagination li a:before, .pagination li .product-card__toggle-btn a:before, .product-card__toggle-btn .product-detail__favourite:before, .product-card__toggle-btn .product-favourite__trigger:before, .product-card__toggle-btn .quotes-nav__list__item:before {
  content: "\77"; }

@font-face {
  font-family: "calculator";
  src: url("fonts/calculator/calculator.eot?v=1");
  src: url("fonts/calculator/calculator.svg?v=1#calculator") format("svg"), url("fonts/calculator/calculator.eot?v=1#iefix") format("embedded-opentype"), url("fonts/calculator/calculator.woff?v=1") format("woff"), url("fonts/calculator/calculator.ttf?v=1") format("truetype"), url("fonts/calculator/calculator.svg?v=1#calculator") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon-calc {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: middle;
  font-family: "calculator" !important;
  content: attr(data-icon);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

[data-icon-calc]:before {
  font-family: "calculator" !important;
  content: attr(data-icon-calc);
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-calc-homeowner-no:before {
  content: "\4d"; }

.icon-calc-homeowner-yes:before {
  content: "\4e"; }

.icon-calc-mortgage-no:before {
  content: "\56"; }

.icon-calc-mortgage-yes:before {
  content: "\57"; }

.icon-calc-parent-no:before {
  content: "\58"; }

.icon-calc-parent-yes:before {
  content: "\59"; }

/**
 * TABLE
 *
 * Sitewide table styles
 *
 */
th,
td {
  padding: 0; }

/**
 * Pricing Table
 * - Used in premiumTypes modal
 */
.table-pricing {
  font-size: 14px; }
  .table-pricing td {
    padding: 0.5rem 0.25rem;
    border-bottom: 1px solid #d8d8d8; }
    .table-pricing td:first-child {
      padding-left: 0; }
    .table-pricing td:last-child {
      padding-right: 0; }
  .table-pricing thead td {
    font-weight: 700;
    text-align: right;
    color: #122230; }
  .table-pricing tbody td {
    text-align: right; }
    .table-pricing tbody td:first-child {
      width: 160px;
      text-align: left; }

/**
 * Highres media query
 */
/**
 * extend/
 * All extentions of inuit objects live in here as well as new abstracted components
 *
 * @import "extend/media";
 */
.tooltip__trigger .icon-tooltip {
  position: relative;
  top: -1px;
  font-size: 14px;
  transition: 0.167s opacity;
  color: #bfbfbf; }

.tooltip__trigger:hover .icon-tooltip {
  color: #a5a5a5; }

.tooltipstered {
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #d8d8d8; }

.tooltipster-default {
  max-width: 205px;
  border: none;
  background-color: rgba(0, 0, 0, 0.75); }

.tooltipster-default .tooltipster-content {
  padding: 10px 15px;
  font-family: inherit;
  font-size: 13px;
  line-height: 16px; }

.tooltipster-arrow-top span {
  bottom: -8px; }

.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #000;
  opacity: 0.75; }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
  overflow: scroll; }
  @media only screen and (max-width: 1023px) {
    .mfp-wrap {
      overflow-y: scroll; } }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 15px;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #CCC; }
    .mfp-preloader a:hover {
      color: #FFF; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none; }

button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 1;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-size: 20px; }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 1; }

.mfp-close-btn-in .mfp-close {
  color: #fff; }

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap; }

.mfp-arrow {
  position: absolute;
  opacity: 1;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before, .mfp-arrow:after,
  .mfp-arrow .mfp-b,
  .mfp-arrow .mfp-a {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after,
  .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before,
  .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after,
  .mfp-arrow-left .mfp-a {
    border-right: 17px solid #FFF;
    margin-left: 31px; }
  .mfp-arrow-left:before,
  .mfp-arrow-left .mfp-b {
    margin-left: 25px;
    border-right: 27px solid #3F3F3F; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after,
  .mfp-arrow-right .mfp-a {
    border-left: 17px solid #FFF;
    margin-left: 39px; }
  .mfp-arrow-right:before,
  .mfp-arrow-right .mfp-b {
    border-left: 27px solid #3F3F3F; }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -ms-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -ms-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -ms-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

/*

====== Zoom effect ======

*/
.mfp-zoom-in {
  /* start state */
  /* animate in */
  /* animate out */ }
  .mfp-zoom-in .mfp-with-anim {
    opacity: 0;
    transition: all 0.2s ease-in-out;
    -ms-transform: scale(0.94);
    transform: scale(0.94); }
  .mfp-zoom-in.mfp-bg {
    opacity: 0;
    transition: all 0.3s ease-out; }
  .mfp-zoom-in.mfp-ready .mfp-with-anim {
    opacity: 1;
    -ms-transform: scale(1);
    transform: scale(1); }
  .mfp-zoom-in.mfp-ready.mfp-bg {
    opacity: 0.75; }
  .mfp-zoom-in.mfp-removing .mfp-with-anim {
    -ms-transform: scale(0.94);
    transform: scale(0.94);
    opacity: 0; }
  .mfp-zoom-in.mfp-removing.mfp-bg {
    opacity: 0; }

/*

====== Move-horizontal effect ======

*/
.mfp-move-horizontal {
  /* start state */
  /* animate in */
  /* animate out */ }
  .mfp-move-horizontal .mfp-container {
    padding: 0; }
  .mfp-move-horizontal .mfp-with-anim {
    opacity: 0;
    transition: transform, opacity, 0.3s;
    -ms-transform: translateX(50px);
    transform: translateX(50px); }
  .mfp-move-horizontal.mfp-bg {
    opacity: 0;
    transition: all 0.3s; }
  .mfp-move-horizontal.mfp-ready .mfp-with-anim {
    opacity: 1;
    -ms-transform: translateX(0);
    transform: translateX(0); }
  .mfp-move-horizontal.mfp-ready.mfp-bg {
    opacity: 0.8; }
  .mfp-move-horizontal.mfp-removing .mfp-with-anim {
    -ms-transform: translateX(50px);
    transform: translateX(50px);
    opacity: 0; }
  .mfp-move-horizontal.mfp-removing.mfp-bg {
    opacity: 0; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 *  Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 *  Core Owl Carousel CSS File
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y; }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d; }

.owl-carousel .owl-nav.disabled, .owl-carousel .owl-dots.disabled {
  display: none; }

.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next, .owl-carousel .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-loaded {
  display: block; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel.owl-refresh .owl-item {
  display: none; }

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab; }

.owl-carousel.owl-rtl {
  direction: rtl; }

.owl-carousel.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item img {
  transform-style: preserve-3d; }

/*
 *  Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: scale 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  transition: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn, .owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/*
 Calendar Styles
 */
.ember-power-calendar--small,
.ember-power-calendar--medium {
  border: 2px solid #d8d8d8;
  border-top: 0; }
  .ember-power-calendar--small .ember-power-calendar-nav,
  .ember-power-calendar--medium .ember-power-calendar-nav {
    line-height: 3; }
  .ember-power-calendar--small .ember-power-calendar-nav-control,
  .ember-power-calendar--medium .ember-power-calendar-nav-control {
    padding: 0 12px;
    font-size: 175%;
    width: auto;
    height: auto;
    display: inline; }

.ember-power-calendar--small {
  width: 257px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="1"] {
    padding-left: 37px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="2"] {
    padding-left: 74px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="3"] {
    padding-left: 111px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="4"] {
    padding-left: 148px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="5"] {
    padding-left: 185px; }
  .ember-power-calendar--small .ember-power-calendar-week:first-child[data-missing-days="6"] {
    padding-left: 222px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="1"] {
    padding-right: 37px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="2"] {
    padding-right: 74px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="3"] {
    padding-right: 111px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="4"] {
    padding-right: 148px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="5"] {
    padding-right: 185px; }
  .ember-power-calendar--small .ember-power-calendar-week:last-child[data-missing-days="6"] {
    padding-right: 222px; }
  .ember-power-calendar--small .ember-power-calendar-day, .ember-power-calendar--small .ember-power-calendar-weekday {
    max-width: 35px;
    max-height: 35px;
    width: 35px;
    height: 35px; }
  .ember-power-calendar--small .ember-power-calendar-weekdays, .ember-power-calendar--small .ember-power-calendar-week {
    height: 37px;
    padding-left: 0;
    padding-right: 0; }
  .ember-power-calendar--small .ember-power-calendar-day {
    color: #bbb; }
  .ember-power-calendar--small .ember-power-calendar-weekdays {
    color: inherit; }
  .ember-power-calendar--small .ember-power-calendar-nav-control {
    color: #1f6868; }
    .ember-power-calendar--small .ember-power-calendar-nav-control:focus {
      color: #2b8f8f; }
  .ember-power-calendar--small .ember-power-calendar-day--current-month {
    color: #656D78;
    background-color: #F5F7FA; }
  .ember-power-calendar--small .ember-power-calendar-day--today {
    background-color: #eee; }
  .ember-power-calendar--small .ember-power-calendar-day:not([disabled]):hover {
    background-color: #eee; }
  .ember-power-calendar--small .ember-power-calendar-day--focused {
    box-shadow: inset 0px -2px 0px 0px #70c137; }
  .ember-power-calendar--small .ember-power-calendar-day--selected.ember-power-calendar-day--range-start {
    background-color: #dff2d2; }
    .ember-power-calendar--small .ember-power-calendar-day--selected.ember-power-calendar-day--range-start:hover {
      background-color: #dff2d2; }
  .ember-power-calendar--small .ember-power-calendar-day--selected.ember-power-calendar-day--range-end {
    background-color: #dff2d2; }
    .ember-power-calendar--small .ember-power-calendar-day--selected.ember-power-calendar-day--range-end:hover {
      background-color: #dff2d2; }
  .ember-power-calendar--small .ember-power-calendar-day--selected {
    background-color: #70c137;
    color: #fff; }
  .ember-power-calendar--small .ember-power-calendar-day--selected:not([disabled]):hover {
    background-color: #70c137;
    color: #fff; }
  .ember-power-calendar--small .ember-power-calendar-day--other-month:not([disabled]):hover {
    color: #656D78; }

.ember-power-calendar--medium {
  width: 362px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="1"] {
    padding-left: 52px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="2"] {
    padding-left: 104px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="3"] {
    padding-left: 156px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="4"] {
    padding-left: 208px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="5"] {
    padding-left: 260px; }
  .ember-power-calendar--medium .ember-power-calendar-week:first-child[data-missing-days="6"] {
    padding-left: 312px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="1"] {
    padding-right: 52px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="2"] {
    padding-right: 104px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="3"] {
    padding-right: 156px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="4"] {
    padding-right: 208px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="5"] {
    padding-right: 260px; }
  .ember-power-calendar--medium .ember-power-calendar-week:last-child[data-missing-days="6"] {
    padding-right: 312px; }
  .ember-power-calendar--medium .ember-power-calendar-day, .ember-power-calendar--medium .ember-power-calendar-weekday {
    max-width: 50px;
    max-height: 50px;
    width: 50px;
    height: 50px; }
  .ember-power-calendar--medium .ember-power-calendar-weekdays, .ember-power-calendar--medium .ember-power-calendar-week {
    height: 52px;
    padding-left: 0;
    padding-right: 0; }
  .ember-power-calendar--medium .ember-power-calendar-day {
    color: #bbb; }
  .ember-power-calendar--medium .ember-power-calendar-weekdays {
    color: inherit; }
  .ember-power-calendar--medium .ember-power-calendar-nav-control {
    color: #1f6868; }
    .ember-power-calendar--medium .ember-power-calendar-nav-control:focus {
      color: #2b8f8f; }
  .ember-power-calendar--medium .ember-power-calendar-day--current-month {
    color: #656D78;
    background-color: #F5F7FA; }
  .ember-power-calendar--medium .ember-power-calendar-day--today {
    background-color: #eee; }
  .ember-power-calendar--medium .ember-power-calendar-day:not([disabled]):hover {
    background-color: #eee; }
  .ember-power-calendar--medium .ember-power-calendar-day--focused {
    box-shadow: inset 0px -2px 0px 0px #70c137; }
  .ember-power-calendar--medium .ember-power-calendar-day--selected.ember-power-calendar-day--range-start {
    background-color: #dff2d2; }
    .ember-power-calendar--medium .ember-power-calendar-day--selected.ember-power-calendar-day--range-start:hover {
      background-color: #dff2d2; }
  .ember-power-calendar--medium .ember-power-calendar-day--selected.ember-power-calendar-day--range-end {
    background-color: #dff2d2; }
    .ember-power-calendar--medium .ember-power-calendar-day--selected.ember-power-calendar-day--range-end:hover {
      background-color: #dff2d2; }
  .ember-power-calendar--medium .ember-power-calendar-day--selected {
    background-color: #70c137;
    color: #fff; }
  .ember-power-calendar--medium .ember-power-calendar-day--selected:not([disabled]):hover {
    background-color: #70c137;
    color: #fff; }
  .ember-power-calendar--medium .ember-power-calendar-day--other-month:not([disabled]):hover {
    color: #656D78; }
  .ember-power-calendar--medium .ember-power-calendar-nav-control {
    padding: 0 17px; }

/*
* Ember Power Select
* - Overrides for settings that aren't configurable with variables
 */
.ember-power-select-trigger {
  height: 50px;
  line-height: 46px;
  font-size: 18px; }
  .select-disabled .ember-power-select-trigger {
    pointer-events: none; }

.ember-power-select-option[aria-selected="true"] {
  background-color: #fafafa;
  color: #122230; }

.ember-power-select-option[aria-current="true"] {
  color: #122230; }

.ember-power-select-selected-item, .ember-power-select-placeholder {
  color: #122230;
  margin-left: 13px; }

.ember-power-select-status-icon {
  right: 1rem;
  border-width: 4px 4px 0 4px; }
  .select-disabled .ember-power-select-status-icon {
    display: none; }

.ember-basic-dropdown-content {
  z-index: 9999; }

/*
* Ember Power Select Typeahead
* - Overrides for settings that aren't configurable with variables
 */
.ember-power-select-typeahead-trigger {
  padding: 0;
  border: none;
  overflow: visible; }

.ember-power-select-typeahead-input {
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }
  .ember-power-select-typeahead-input:focus {
    border-width: 2px; }

.ember-power-select-typeahead-dropdown .ember-power-select-options {
  max-height: 15em; }
  .ember-power-select-typeahead-dropdown .ember-power-select-options li {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: 127ms ease; }

.ember-power-select-typeahead-no-results {
  padding: 15px 15px;
  line-height: 1.4;
  font-size: 14px; }
  .ember-power-select-typeahead-no-results button {
    background: none;
    padding: 0;
    border: none;
    color: #1f6868;
    text-decoration: underline; }

.tc-btn, .tc-question__inputwrapper button {
  display: inline-block;
  width: 100%;
  background-color: #70c137;
  border-radius: 2px;
  color: #fff !important;
  border: 0;
  font-family: inherit;
  font-size: 1.2rem;
  padding: 0.75em 1em;
  cursor: pointer;
  outline: none; }
  @media screen and (min-width: 768px) {
    .tc-btn, .tc-question__inputwrapper button {
      width: auto;
      padding-left: 3.5em;
      padding-right: 3.5em; } }
  .tc-calculator__home .tc-btn, .tc-calculator__home .tc-question__inputwrapper button, .tc-question__inputwrapper .tc-calculator__home button {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto; }
    .tc-calculator__home .tc-btn img, .tc-calculator__home .tc-question__inputwrapper button img, .tc-question__inputwrapper .tc-calculator__home button img, .tc-calculator__home .tc-btn svg, .tc-calculator__home .tc-question__inputwrapper button svg, .tc-question__inputwrapper .tc-calculator__home button svg {
      width: 1.25em;
      margin-right: 0.5em; }

.tc-calculator {
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 320px;
  background-color: #fafafa;
  color: #658080;
  line-height: 1.5; }

.tc-calculator__wrapper {
  -ms-flex: 0 1 auto;
  flex: 0 1 auto; }

@media screen and (min-width: 768px) {
  .tc-calculator__home {
    padding: 0 4em; } }

.tc-calculator__body {
  max-width: 700px;
  margin: 0 auto;
  padding: 2em 1em 4em;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .tc-calculator__body {
      padding: 3em 1em 5em; } }
  .tc-calculator__body p {
    margin: 0 0 2em;
    font-size: inherit; }
  .tc-calculator__body a {
    color: #70c137;
    text-decoration: none; }

.tc-title {
  margin: 0 0 1em;
  font-size: 28px;
  font-weight: 400;
  color: #70c137;
  line-height: 1.2; }
  @media screen and (min-width: 768px) {
    .tc-title {
      font-size: 36px; } }

.tc-link {
  cursor: pointer;
  text-align: center; }

.tc-calculator__header {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 15px 25px;
  background-color: #fff;
  border-bottom: 1px solid #e6e6e6; }
  @media screen and (min-width: 768px) {
    .tc-calculator__header {
      padding: 25px; } }

.tc-back {
  position: absolute;
  left: 15px;
  vertical-align: middle;
  padding: 0;
  border: 0;
  background-color: transparent;
  color: #e6e6e6;
  font-size: 0.8em;
  outline: 0;
  cursor: pointer; }

.tc-calculator__footer {
  padding: 30px 20px;
  background-color: #f5f5f5; }
  @media screen and (min-width: 768px) {
    .tc-calculator__footer {
      padding-top: 80px;
      padding-bottom: 80px; } }

.tc-calculator__footer-content {
  max-width: 1100px;
  margin: 0 auto;
  font-size: 11px;
  line-height: 1.7;
  color: #658080; }
  @media screen and (min-width: 768px) {
    .tc-calculator__footer-content {
      font-size: 12px; } }
  .tc-calculator__footer-content a {
    color: #70c137; }

.tc-question__title {
  font-size: 36px;
  color: #70c137;
  font-weight: 400;
  text-align: center; }

.tc-question__answers {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none; }

.tc-question__custominput {
  margin-top: 0; }
  @media screen and (min-width: 768px) {
    .tc-question__custominput {
      margin-top: 1.5em; } }
  .tc-question__custominput label {
    display: inline-block;
    margin-right: 0.5em;
    line-height: 48px; }

.tc-question__inputwrapper {
  display: inline-block;
  vertical-align: top; }
  .tc-question__inputwrapper input {
    display: inline-block;
    box-sizing: border-box;
    width: auto;
    padding: 9px 1em;
    height: 40px;
    border: 1px solid #e6e6e6;
    border-right: 0;
    font-size: 0.9em;
    vertical-align: bottom;
    color: #333;
    outline: none;
    border-radius: 0;
    -webkit-appearance: none; }
    @media screen and (min-width: 768px) {
      .tc-question__inputwrapper input {
        width: 300px;
        padding-top: 14px;
        padding-bottom: 14px;
        height: 50px; } }
    .tc-question__inputwrapper input:-ms-input-placeholder {
      color: #e6e6e6; }
    .tc-question__inputwrapper input::placeholder {
      color: #e6e6e6; }
    .tc-question__inputwrapper input::-ms-clear {
      display: none; }
  .tc-question__inputwrapper button {
    width: auto;
    padding: 0 0.8em;
    line-height: 40px;
    font-size: 0.9em;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0; }
    @media screen and (min-width: 768px) {
      .tc-question__inputwrapper button {
        padding: 0 1.5em;
        font-size: inherit;
        line-height: 50px; } }
    .tc-question__inputwrapper button[disabled] {
      opacity: 0.65;
      cursor: not-allowed; }
  .tc-question__inputwrapper p {
    margin: 0.5em 0 0;
    font-size: 0.8em;
    text-align: left;
    color: #cccccc; }

.tc-answer {
  margin: 0.75em 0.5em;
  text-align: center;
  color: #333;
  cursor: pointer; }
  @media screen and (min-width: 585px) {
    .tc-answer {
      margin: 0.75em 2em; } }
  .tc-answer span {
    font-size: 0.8em; }

.tc-answer__button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  width: 120px;
  height: 80px;
  margin: 0 auto 0.75em;
  border-radius: 5px;
  background-color: #70c137;
  box-shadow: 0 2px 0 #59992c; }
  .is-answered .tc-answer__button {
    opacity: 0.5; }
  .is-current .tc-answer__button {
    opacity: 1;
    background-color: #4d8526;
    box-shadow: 0 2px 0 #365e1b; }

.tc-results {
  max-width: 480px;
  margin: 0 auto 2em; }
  .tc-results .tc-link {
    display: inline-block;
    margin: 1em 0 0 1.5em; }

.tc-results__list {
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left; }
  .tc-results__list:after {
    content: "";
    display: table;
    clear: both; }
  .tc-results__list li {
    float: left;
    width: 100%;
    margin-bottom: 1.5em;
    padding-bottom: 0.25em;
    border-bottom: 1px solid #e6e6e6; }
  .tc-results__list strong {
    float: right; }

.tc-alert {
  padding: 0.5em 1em;
  background-color: #D9534F;
  color: #fff;
  text-align: center; }
  .tc-alert p {
    margin: 0;
    font-size: 0.8em; }

.tc-alert--inline {
  display: inline-block;
  margin-bottom: 3em;
  border-radius: 2px; }

.tc-calculator__notes {
  margin-top: 3em;
  padding: 1em 2em;
  background-color: #f2f2f2;
  border-radius: 5px;
  border: 1px solid #e6e6e6;
  text-align: left; }
  @media screen and (min-width: 768px) {
    .tc-calculator__notes {
      padding: 2em; } }
  .tc-calculator__notes p {
    margin: 0;
    padding: 0 0 0 30px;
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: auto 21px;
    font-size: 0.9em; }
    @media screen and (max-width: 585px) {
      .tc-calculator__notes p {
        padding: 0;
        background-image: none !important;
        text-align: center; } }
  .tc-calculator__notes a {
    color: #4D5157;
    text-decoration: underline; }

body {
  margin: 0; }

/**
 * widgets/
 * All custom e7 objects live in here
 *
 * @import "objects/modal";
 */
@keyframes animJelly {
  0% {
    transform: matrix3d(0.7, 0, 0, 0, 0, 0.7, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  2.083333% {
    transform: matrix3d(0.75266, 0, 0, 0, 0, 0.76342, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  4.166667% {
    transform: matrix3d(0.81071, 0, 0, 0, 0, 0.84545, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  6.25% {
    transform: matrix3d(0.86808, 0, 0, 0, 0, 0.9286, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  8.333333% {
    transform: matrix3d(0.92038, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  10.416667% {
    transform: matrix3d(0.96482, 0, 0, 0, 0, 1.05202, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  12.5% {
    transform: matrix3d(1, 0, 0, 0, 0, 1.08204, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  14.583333% {
    transform: matrix3d(1.02563, 0, 0, 0, 0, 1.09149, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  16.666667% {
    transform: matrix3d(1.04227, 0, 0, 0, 0, 1.08453, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  18.75% {
    transform: matrix3d(1.05102, 0, 0, 0, 0, 1.06666, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  20.833333% {
    transform: matrix3d(1.05334, 0, 0, 0, 0, 1.04355, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  22.916667% {
    transform: matrix3d(1.05078, 0, 0, 0, 0, 1.02012, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  25% {
    transform: matrix3d(1.04487, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  27.083333% {
    transform: matrix3d(1.03699, 0, 0, 0, 0, 0.98534, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  29.166667% {
    transform: matrix3d(1.02831, 0, 0, 0, 0, 0.97688, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  31.25% {
    transform: matrix3d(1.01973, 0, 0, 0, 0, 0.97422, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  33.333333% {
    transform: matrix3d(1.01191, 0, 0, 0, 0, 0.97618, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  35.416667% {
    transform: matrix3d(1.00526, 0, 0, 0, 0, 0.98122, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  37.5% {
    transform: matrix3d(1, 0, 0, 0, 0, 0.98773, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  39.583333% {
    transform: matrix3d(0.99617, 0, 0, 0, 0, 0.99433, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  41.666667% {
    transform: matrix3d(0.99368, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  43.75% {
    transform: matrix3d(0.99237, 0, 0, 0, 0, 1.00413, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  45.833333% {
    transform: matrix3d(0.99202, 0, 0, 0, 0, 1.00651, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  47.916667% {
    transform: matrix3d(0.99241, 0, 0, 0, 0, 1.00726, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  50% {
    transform: matrix3d(0.99329, 0, 0, 0, 0, 1.00671, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  52.083333% {
    transform: matrix3d(0.99447, 0, 0, 0, 0, 1.00529, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  54.166667% {
    transform: matrix3d(0.99577, 0, 0, 0, 0, 1.00346, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  56.25% {
    transform: matrix3d(0.99705, 0, 0, 0, 0, 1.0016, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  58.333333% {
    transform: matrix3d(0.99822, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  60.416667% {
    transform: matrix3d(0.99921, 0, 0, 0, 0, 0.99884, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  62.5% {
    transform: matrix3d(1, 0, 0, 0, 0, 0.99816, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  64.583333% {
    transform: matrix3d(1.00057, 0, 0, 0, 0, 0.99795, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  66.666667% {
    transform: matrix3d(1.00095, 0, 0, 0, 0, 0.99811, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  68.75% {
    transform: matrix3d(1.00114, 0, 0, 0, 0, 0.99851, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  70.833333% {
    transform: matrix3d(1.00119, 0, 0, 0, 0, 0.99903, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  72.916667% {
    transform: matrix3d(1.00114, 0, 0, 0, 0, 0.99955, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  75% {
    transform: matrix3d(1.001, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  77.083333% {
    transform: matrix3d(1.00083, 0, 0, 0, 0, 1.00033, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  79.166667% {
    transform: matrix3d(1.00063, 0, 0, 0, 0, 1.00052, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  81.25% {
    transform: matrix3d(1.00044, 0, 0, 0, 0, 1.00058, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  83.333333% {
    transform: matrix3d(1.00027, 0, 0, 0, 0, 1.00053, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  85.416667% {
    transform: matrix3d(1.00012, 0, 0, 0, 0, 1.00042, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  87.5% {
    transform: matrix3d(1, 0, 0, 0, 0, 1.00027, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  89.583333% {
    transform: matrix3d(0.99991, 0, 0, 0, 0, 1.00013, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  91.666667% {
    transform: matrix3d(0.99986, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  93.75% {
    transform: matrix3d(0.99983, 0, 0, 0, 0, 0.99991, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  95.833333% {
    transform: matrix3d(0.99982, 0, 0, 0, 0, 0.99985, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  97.916667% {
    transform: matrix3d(0.99983, 0, 0, 0, 0, 0.99984, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); }
  100% {
    transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1); } }

/**
* FadeInDown
**/
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translate3d(0, -10px, 0); }
  100% {
    opacity: 1;
    transform: none; } }

.fadeInDown {
  animation-name: fadeInDown; }

/**
* FadeIn
**/
@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

.browsehappy {
  position: fixed;
  font-size: 16px;
  background: #fcf8e3;
  color: #c09853;
  border-top: 1px solid #faebcc;
  margin: 0;
  padding: 20px;
  bottom: 0;
  width: 100%;
  z-index: 9999; }
  .browsehappy a {
    color: #4683EA;
    text-decoration: none; }
    .browsehappy a:hover {
      text-decoration: underline; }

.alert__queue {
  position: fixed;
  bottom: 0;
  left: 0;
  margin: 0 auto;
  z-index: 1000; }
  @media only screen and (min-width: 759px) {
    .alert__queue {
      left: 20px;
      bottom: 20px; } }

.alert {
  position: relative;
  max-width: 390px;
  padding: 20px 40px 20px 20px;
  margin: 0 20px 20px;
  background-color: #fff;
  border-left: 6px solid #e6e6e6;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.3);
  border-radius: 2px;
  animation: animJelly 1000ms linear both;
  cursor: pointer; }
  .alert.exiting {
    transition: opacity 0.7s ease-out;
    opacity: 0; }
  @media only screen and (min-width: 759px) {
    .alert {
      font-size: 16px; } }

.alert__close {
  position: absolute;
  right: 10px;
  top: 10px;
  transition: color 0.3s;
  cursor: pointer; }

.alert-success {
  border-left-color: #70c137;
  color: #70c137; }

.alert-danger {
  border-left-color: #e0684a;
  color: #e0684a; }

.alert-info {
  border-left-color: #5A99E2;
  color: #5A99E2; }

.message {
  margin: 0 0 20px;
  padding: 1.2em;
  background: #fff;
  border-top: 2px solid #d8d8d8;
  font-size: 14px;
  border-radius: 2px; }
  .message a {
    color: inherit; }

/**
 * Success
 */
.message--success {
  border-color: rgba(112, 193, 55, 0.75);
  color: #70c137;
  background-color: #f4faf1; }

/**
 * Feedback
 */
.message--feedback {
  border-color: rgba(90, 153, 226, 0.75);
  color: #5A99E2;
  background-color: #EFF6FD; }

/**
 * Error
 */
.message--error {
  border-color: rgba(224, 104, 74, 0.75);
  color: #e0684a;
  background-color: #fcf4f2; }

/**
 * No icon
 */
.message--no-icon:before {
  display: none; }

/**
 * Small
 */
.message--small {
  font-size: 14px;
  line-height: 16px;
  padding: 10px; }

/**
 * Buttons
 */
.btn, .product-detail__apply, .product-detail__apply-online, .quote-confirm__btn, .landing__btn {
  display: inline-block;
  line-height: 20px;
  padding: 9px 30px 11px;
  margin: 0;
  vertical-align: middle;
  font: inherit;
  text-align: center;
  text-decoration: none;
  border: none;
  cursor: pointer;
  overflow: visible;
  background: #9EDB45;
  font-size: 16px;
  border-radius: 2px;
  color: #122230;
  transition: all 200ms ease-in-out;
  outline: none;
  font-family: 'BrandonGrotesque', Helvetica, sans-serif;
  font-weight: 800;
  text-transform: uppercase; }
  .btn:hover, .product-detail__apply:hover, .product-detail__apply-online:hover, .quote-confirm__btn:hover, .landing__btn:hover, .btn:hover, .product-detail__apply:hover, .product-detail__apply-online:hover, .quote-confirm__btn:hover, .landing__btn:hover, .btn:active, .product-detail__apply:active, .product-detail__apply-online:active, .quote-confirm__btn:active, .landing__btn:active {
    background: #85c726; }
  .btn:focus, .product-detail__apply:focus, .product-detail__apply-online:focus, .quote-confirm__btn:focus, .landing__btn:focus {
    -ms-transform: translateY(2px);
    transform: translateY(2px); }
  .btn[disabled], .product-detail__apply[disabled], .product-detail__apply-online[disabled], .quote-confirm__btn[disabled], .landing__btn[disabled] {
    background: #9EDB45;
    cursor: not-allowed;
    opacity: 0.65; }
  @media only screen and (max-width: 758px) {
    .modal .btn, .modal .product-detail__apply, .modal .product-detail__apply-online, .modal .quote-confirm__btn, .modal .landing__btn {
      margin: 0 0 10px; } }

/**
 * Large
 */
.btn--huge, .quote-confirm__btn {
  padding-top: 14px;
  padding-bottom: 11px;
  font-size: 18px; }
  @media only screen and (min-width: 759px) {
    .btn--huge, .quote-confirm__btn {
      padding-left: 30px;
      padding-right: 30px; } }

/**
 * Large
 */
.btn--large, .product-detail__apply, .product-detail__apply-online, .landing__btn {
  font-size: 20px;
  line-height: 30px;
  padding: 9px 60px 11px; }
  @media only screen and (max-width: 758px) {
    .btn--large, .product-detail__apply, .product-detail__apply-online, .landing__btn {
      padding-left: 20px;
      padding-right: 20px; } }

/**
 * Small
 */
.btn--small {
  padding: 5px 15px; }

/**
 * Green dark
 */
.btn--white {
  background: #fff;
  color: #122230;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.07); }
  .btn--white:hover {
    background: #fff;
    color: #122230; }
  .btn--white:active {
    box-shadow: none; }

/**
 * Simple
 */
.btn--simple {
  background: none;
  border: none; }
  .btn--simple:hover {
    background: none; }

/**
 * Loading
 */
.btn--loading {
  cursor: progress; }

/**
 * Loading
 */
.btn--small-text {
  font-size: 16px; }

/**
 * Block level
 */
.btn--block {
  display: block;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%; }

@media only screen and (max-width: 758px) {
  .btn--block-palm {
    display: block;
    width: 100%; } }

/**
 * Flush
 */
.btn--flush {
  padding-left: 0;
  padding-right: 0; }

/**
 * Hollow
 */
.btn--hollow {
  background: 0;
  border: 2px solid #d8d8d8;
  color: #658080;
  line-height: 26px; }
  .btn--hollow:hover {
    background: #e6e6e6; }

/**
 * Arrow right
 */
.btn--arrow-right:after {
  font-size: 13px;
  margin-left: 10px;
  vertical-align: baseline; }

/**
 * Icon within button
 */
.btn__icon-left {
  position: relative;
  top: -1px;
  margin-left: -0.2em;
  margin-right: 0.2em; }

@keyframes rotate {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(0deg); }
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(720deg); } }

.btn--spinner {
  position: relative;
  transition: all 180ms linear;
  -ms-transform: translateY(0%);
  transform: translateY(0%); }
  .btn--spinner span {
    opacity: 0; }
  .btn--spinner:after, .btn--spinner:before {
    content: '';
    display: block;
    position: absolute;
    transform: translate3d(-50%, -50%, 0);
    border-radius: 50%;
    width: 30px;
    height: 30px;
    left: 50%;
    top: 50%; }
  .btn--spinner:after {
    border: 3px solid #9EDB45;
    border-left-color: transparent;
    border-top-color: transparent;
    animation: rotate 1s linear infinite; }
  .btn--spinner:before {
    border: 3px solid #e6e6e6; }

/**
 * Star rating object
 *
 * Defaulted to a maximum of five stars
 * e.g. star-rating--{1/2/3/4/5}
 */
.star-rating {
  background: url("./images/sprite-stars.png");
  height: 17px;
  width: 100px;
  display: inline-block; }
  @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
    .star-rating {
      background: url("./images/sprite-stars2x.png");
      background-size: 100px 216px; } }

.star-rating--0 {
  background-position: 0 -1px; }

.star-rating--0-5 {
  background-position: 0 -20px; }

.star-rating--1 {
  background-position: 0 -40px; }

.star-rating--1-5 {
  background-position: 0 -60px; }

.star-rating--2 {
  background-position: 0 -80px; }

.star-rating--2-5 {
  background-position: 0 -100px; }

.star-rating--3 {
  background-position: 0 -120px; }

.star-rating--3-5 {
  background-position: 0 -140px; }

.star-rating--4 {
  background-position: 0 -160px; }

.star-rating--4-5 {
  background-position: 0 -180px; }

.star-rating--5 {
  background-position: 0 -200px; }

/**
* Sort Toolbar
**/
.sort-toolbar {
  position: relative;
  margin: 10px 0;
  line-height: 40px;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #122230; }
  @media only screen and (min-width: 759px) {
    .sort-toolbar {
      margin: 25px 0;
      line-height: 50px; } }

.sort-toolbar__select {
  float: right;
  width: 70px; }
  .sort-toolbar__select .ember-power-select-trigger {
    padding: 0 10px;
    border: 1px solid #ACAEAF;
    color: #122230;
    border-radius: 0; }
    @media only screen and (max-width: 758px) {
      .sort-toolbar__select .ember-power-select-trigger {
        float: right;
        padding-right: 1rem;
        height: 40px;
        line-height: 36px;
        min-height: 0;
        background: none;
        box-shadow: none; } }
  .sort-toolbar__select .ember-power-select-trigger:focus,
  .sort-toolbar__select .ember-power-select-trigger--active {
    border: 2px solid #5A99E2; }
    @media only screen and (max-width: 758px) {
      .sort-toolbar__select .ember-power-select-trigger:focus,
      .sort-toolbar__select .ember-power-select-trigger--active {
        border: none; } }
  .sort-toolbar__select .ember-power-select-placeholder {
    color: inherit; }
  @media only screen and (max-width: 758px) {
    .sort-toolbar__select .ember-power-select-status-icon {
      right: 3px;
      border-color: currentColor transparent transparent transparent; } }
  @media only screen and (min-width: 759px) {
    .sort-toolbar__select {
      margin-left: 20px;
      width: 225px; } }

.sort-toolbar__policy-count {
  line-height: inherit;
  text-align: center; }
  @media only screen and (max-width: 758px) {
    .sort-toolbar__policy-count {
      font-size: 14px; } }

/*
* Favourite Nav
* - Used in sort toolbar
*/
.favourite-nav {
  float: left;
  display: -ms-flexbox;
  display: flex;
  list-style-type: none;
  margin: 0; }
  @media only screen and (max-width: 758px) {
    .favourite-nav {
      width: 70px; } }

@media only screen and (max-width: 758px) {
  .favourite-nav .favourite-nav__item--all {
    display: none; } }

@media only screen and (max-width: 758px) {
  .favourite-nav--shortlist-active .favourite-nav__item--all {
    display: block; } }

@media (max-width: 350px) {
  .favourite-nav__item--all .icon, .favourite-nav__item--all .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .favourite-nav__item--all .checkbox__faux-input:before, .favourite-nav__item--all .mfp-close:before, .favourite-nav__item--all .alert__close, .favourite-nav__item--all .btn--arrow-right:after, .favourite-nav__item--all .favourite-nav__shortlist__heart, .favourite-nav__item--all .needhelp__icon, .favourite-nav__item--all .pagination li a, .pagination li .favourite-nav__item--all a, .favourite-nav__item--all .product-detail__favourite, .favourite-nav__item--all .product-favourite__trigger, .favourite-nav__item--all .quotes-nav__list__item:before {
    display: none; } }

.favourite-nav__item__link {
  display: block;
  padding: 0 8px;
  border-radius: 2px;
  color: #122230;
  text-decoration: none;
  outline: none;
  transition: 0.167s ease;
  line-height: inherit; }
  .favourite-nav__item__link:hover {
    color: #122230; }
  .favourite-nav__item__link.active {
    background: #e6e6e6;
    color: #122230; }
  @media only screen and (max-width: 758px) {
    .favourite-nav__item__link {
      background: #e6e6e6;
      color: #122230;
      font-size: 14px; } }
  @media only screen and (min-width: 759px) {
    .favourite-nav__item__link {
      padding: 0 20px; } }

@media only screen and (max-width: 758px) {
  .favourite-nav__shortlist {
    padding: 0;
    background: none; } }

@media only screen and (max-width: 758px) {
  .favourite-nav--shortlist-active .favourite-nav__shortlist {
    display: none; } }

.favourite-nav__shortlist__heart {
  vertical-align: top;
  color: #e6e6e6;
  font-size: 24px;
  line-height: inherit;
  transition: 0.4s ease, color 0.2s ease;
  backface-visibility: hidden;
  transform: scale(1) translateZ(0);
  -ms-transform-origin: bottom;
  transform-origin: bottom; }
  .active .favourite-nav__shortlist__heart {
    color: #ABE1E2; }
  .are-favourites .favourite-nav__shortlist__heart {
    color: #ABE1E2; }
  .favourite-nav__shortlist__heart:before {
    display: block; }
  .is-adding-favourite .favourite-nav__shortlist__heart {
    transform: scale(1.3) translateZ(0); }
  .is-removing-favourite .favourite-nav__shortlist__heart {
    transform: scale(0.6) translateZ(0); }
  @media only screen and (min-width: 759px) {
    .favourite-nav__shortlist__heart {
      margin-left: 3px; } }

.favourite-nav__shortlist__count {
  position: relative;
  display: none;
  margin-left: -10px;
  line-height: 1;
  background: #122230;
  color: #FFFFFF;
  border: 2px solid #fafafa;
  padding: 0 6px;
  border-radius: 11px;
  font-size: 11px;
  line-height: 14px;
  animation-duration: 0.4s;
  animation-delay: 0.45s;
  animation-timing-function: ease;
  opacity: 0; }
  .are-favourites .favourite-nav__shortlist__count {
    display: inline-block;
    animation-name: fadeIn;
    animation-fill-mode: forwards; }
  .active .favourite-nav__shortlist__count {
    border-color: #e6e6e6; }

/**
 * Modal
 */
html.is-mfp-open {
  position: fixed;
  width: 100%; }

.modal {
  position: relative;
  margin: 50px auto;
  background: #fff;
  border-radius: 2px;
  box-shadow: 0px 5px 20px 0px rgba(0, 0, 0, 0.1);
  max-width: 100%; }

.mfp-close {
  top: -50px;
  height: 40px;
  width: 40px;
  color: #fff;
  transition: 0.167s ease; }
  .mfp-close:active {
    -ms-transform: translateY(1px);
    transform: translateY(1px); }

.modal__content__island {
  padding: 20px; }
  @media only screen and (min-width: 759px) {
    .modal__content__island {
      padding: 60px 100px 60px; } }

.modal__content__title {
  margin-bottom: 20px;
  text-align: center;
  color: #122230;
  font-family: 'BrandonGrotesque', Helvetica, sans-serif;
  font-size: 25px;
  font-weight: 600; }
  @media only screen and (min-width: 759px) {
    .modal__content__title {
      margin-bottom: 30px; } }

.modal__tp {
  display: block;
  margin-bottom: 15px; }

.modal__content__sub-title {
  margin-top: -10px;
  color: #122230;
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .modal__content__sub-title {
      margin-bottom: 40px; } }

.modal__content__badge {
  display: block;
  width: 175px;
  height: 185px;
  margin: -100px auto 20px auto; }
  .modal__content__badge > img {
    width: 100%;
    height: 100%; }

/**
 * Dialogue variation
 */
.modal--dialogue {
  padding: 50px 30px; }
  @media only screen and (min-width: 759px) {
    .modal--dialogue {
      width: 480px; } }

/**
 * Form variation
 */
.modal--form {
  padding: 30px 20px;
  max-width: 480px; }
  @media only screen and (min-width: 759px) {
    .modal--form {
      padding: 40px 30px; } }

.modal-apply {
  padding-top: 20px;
  margin: 0;
  border-radius: 0;
  min-height: 100vh;
  width: 100%; }
  .modal-apply .mfp-container {
    padding: 0; }
  .modal-apply .mfp-close {
    color: #1f6868;
    font-size: 12px;
    letter-spacing: 0.75px; }
    @media only screen and (max-width: 758px) {
      .modal-apply .mfp-close {
        top: 0; } }
  @media only screen and (min-width: 759px) {
    .modal-apply {
      padding-top: 0;
      width: 360px;
      float: right; } }

.modal-apply__text {
  margin-bottom: 10px;
  padding: 30px 20px;
  border-top: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8;
  text-align: center;
  color: #122230; }
  .modal-apply__text a {
    color: inherit; }

.modal-apply__title {
  margin-bottom: 20px;
  font-size: 20px; }

.modal-apply__tp {
  width: 150px;
  display: block;
  margin: auto;
  padding-bottom: 10%; }

.modal-apply__form {
  padding: 30px 20px;
  background: #fafafa;
  border-bottom-right-radius: 2px; }
  @media only screen and (max-width: 758px) {
    .modal-apply__form {
      border-bottom-left-radius: 2px; } }
  .modal-apply__form a {
    color: #FF647D; }

.modal-apply__form__inner {
  margin: 0 auto;
  max-width: 320px; }

.modal-apply__icon-button {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  color: inherit;
  text-decoration: none;
  border: none;
  cursor: pointer;
  padding: 15px 0;
  background-color: rgba(0, 0, 0, 0);
  font-weight: 600; }
  .modal-apply__icon-button img {
    width: 25px;
    margin-right: 10px;
    font-size: 33px; }

.modal-apply__icon-button--highlight {
  background-color: #9EDB45;
  padding: 15px 20px;
  margin-bottom: 15px;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff; }

/**
 * Need help
 * Should be moved into a partial
 */
.modal-needhelp {
  width: 600px;
  outline: none !important; }
  @media only screen and (min-width: 1024px) {
    .modal-needhelp {
      width: 830px; } }

.needhelp {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column; }
  @media only screen and (min-width: 759px) {
    .needhelp {
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; } }

.needhelp__aside {
  display: -ms-flexbox;
  display: flex;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  overflow: hidden; }
  @media only screen and (min-width: 759px) {
    .needhelp__aside {
      width: 33%;
      height: auto;
      border-top-left-radius: 0;
      border-bottom-right-radius: 2px; } }

.needhelp__smallprint {
  margin-top: 20px;
  font-size: 11px !important;
  text-align: left; }

.needhelp__nav {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-bottom: 1px solid #e6e6e6; }
  @media only screen and (min-width: 759px) {
    .needhelp__nav {
      -ms-flex-direction: column;
      flex-direction: column;
      border-bottom: 0; } }
  .needhelp__nav li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1;
    flex: 1;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    background: #fafafa;
    text-align: center;
    cursor: pointer; }
    @media only screen and (min-width: 759px) {
      .needhelp__nav li {
        text-align: left;
        border-top: 1px solid #e6e6e6; } }
    .needhelp__nav li:first-child {
      border: 0; }
    .needhelp__nav li.active {
      background: #122230;
      color: #FFFFFF;
      cursor: default; }
      .needhelp__nav li.active em {
        color: rgba(255, 255, 255, 0.75); }
    .needhelp__nav li > div {
      padding: 10px 0; }
      @media only screen and (min-width: 1024px) {
        .needhelp__nav li > div {
          padding: 0 20px; } }
    .needhelp__nav li p {
      margin: 0;
      font-size: 14px;
      line-height: 1.2; }
      @media only screen and (min-width: 759px) {
        .needhelp__nav li p {
          display: inline-block;
          font-size: 16px; } }
      .needhelp__nav li p em {
        display: block;
        color: #122230;
        font-style: normal; }

.needhelp__icon {
  margin-bottom: 10px;
  font-size: 28px;
  line-height: 32px; }
  @media only screen and (min-width: 759px) {
    .needhelp__icon {
      display: block;
      float: left;
      margin: 0 10px 0 0;
      font-size: 30px; } }
  @media only screen and (min-width: 1024px) {
    .needhelp__icon {
      margin-right: 10px;
      font-size: 36px;
      line-height: 33px; } }

.needhelp__body {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex: 1;
  flex: 1;
  min-height: 200px;
  padding: 20px; }
  @media only screen and (min-width: 759px) {
    .needhelp__body {
      min-height: 620px;
      padding: 60px 20px; } }
  .needhelp__body h1 {
    color: #122230; }
    .needhelp__body h1 a {
      text-decoration: none;
      color: #122230; }
  .needhelp__body a {
    color: #9EDB45; }
  @media only screen and (min-width: 759px) {
    .needhelp__body p {
      font-size: 18px; } }

#livechat-compact-container,
#livechat-compact-view {
  display: none !important; }

.modal-redirecting {
  width: 600px;
  padding: 50px 35px; }
  @media only screen and (min-width: 1024px) {
    .modal-redirecting {
      width: 730px;
      padding: 60px 70px; } }

.modal-premium-types {
  width: 480px; }

.modal-premium-types__heading {
  padding: 20px;
  text-align: center;
  font-weight: 700;
  color: #122230;
  border-bottom: 1px solid #D4D8D8; }

.modal-premium-types__content {
  padding: 2em 1em; }
  @media only screen and (min-width: 759px) {
    .modal-premium-types__content {
      padding: 2em; } }

.modal-premium-types__graph {
  display: block;
  margin: 0 auto 1em; }

.pagination {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  text-align: center;
  list-style-type: none;
  white-space: nowrap; }
  @media only screen and (max-width: 758px) {
    .pagination {
      font-size: 14px; } }
  .pagination li {
    padding: 0 10px; }
    @media only screen and (min-width: 759px) {
      .pagination li {
        padding: 0 15px; } }
    .pagination li.arrow {
      padding: 0; }
    .pagination li.disabled a {
      pointer-events: none;
      background: none;
      box-shadow: none;
      color: #d8d8d8; }
    .pagination li a {
      display: block;
      height: 40px;
      width: 40px;
      line-height: 40px;
      font-size: 12px;
      cursor: pointer;
      background: #fff;
      border: 1px solid #ACAEAF;
      transition: all 0.167s ease;
      -webkit-user-select: none;
      -ms-user-select: none;
      user-select: none; }
      .pagination li a:hover {
        opacity: 0.75; }
      @media only screen and (min-width: 759px) {
        .pagination li a {
          height: 50px;
          width: 50px;
          line-height: 50px; } }

.product-detail {
  position: relative;
  text-align: center; }

.product-detail__favourite {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0;
  color: #e6e6e6;
  border: 0;
  background: none;
  font-size: 24px; }
  @media only screen and (min-width: 759px) {
    .product-detail__favourite {
      right: -10px; } }

.product-detail__favourite--active {
  color: #FF647D; }

.product-detail__logo {
  display: block;
  margin-bottom: 15px;
  text-align: center;
  font-size: 24px;
  color: #FF647D;
  font-weight: 500;
  line-height: 75px; }
  .product-detail__logo .tooltipstered {
    display: block; }
  .product-detail__logo img {
    margin: 0 auto;
    display: block;
    max-width: 180px;
    max-height: 80px; }
    @media only screen and (max-width: 758px) {
      .product-detail__logo img {
        width: 70%; } }
  @media only screen and (max-width: 758px) {
    .product-detail__logo {
      height: 85px; } }
  @media only screen and (min-width: 759px) {
    .product-detail__logo {
      height: 75px; } }

.product-detail__name {
  overflow: hidden;
  line-height: 1.3; }
  .product-detail__name h4 {
    margin: 0;
    font-size: 20px;
    font-weight: 500;
    color: #122230;
    margin-bottom: 5px; }
  .product-detail__name p {
    margin: 0;
    font-weight: 400;
    color: #4D5157;
    font-size: 16px; }

.product-detail__name--large {
  margin-bottom: 10px; }
  @media only screen and (min-width: 759px) {
    .product-detail__name--large h4,
    .product-detail__name--large p {
      font-size: 24px; } }
  @media only screen and (min-width: 759px) {
    .product-detail__name--large {
      margin-bottom: 20px; } }

.product-detail__apply {
  display: block;
  font-size: 16px;
  padding: 6px 60px 6px; }
  @media only screen and (min-width: 759px) {
    .product-detail__apply {
      padding-left: 10px;
      padding-right: 10px; } }

.product-detail__apply-online {
  display: block;
  font-size: 16px;
  margin-top: 10px; }
  @media only screen and (min-width: 759px) {
    .product-detail__apply-online {
      padding-left: 10px;
      padding-right: 10px; } }

.product-detail__pds {
  margin-top: 15px;
  display: block;
  text-align: center;
  color: #122230;
  text-decoration: none;
  font-size: 14px; }
  .product-detail__pds:hover {
    text-decoration: underline; }

/**
 * Used to output a products pricing information
 *
    <div class="product-price">
        <span class="product-price__dollars"></span>
        <span class="product-price__cents">.</span>
        <span class="product-price__monthly">p/m</span>
    </div>
 */
.product-price {
  margin-bottom: 15px;
  color: #122230;
  font-family: "AkzidenzGroteskPro", Helvetica, sans-serif;
  line-height: 1;
  font-size: 28px;
  font-weight: 500; }

.product-price__currency,
.product-price__dollars {
  margin-right: 0.1em; }

.product-price__cents {
  top: 0.2em;
  margin-right: 0.2em; }

.product-price__monthly {
  font-size: 0.45em; }

.product-price--large {
  font-size: 38px; }
  @media only screen and (min-width: 759px) {
    .product-price--large {
      font-size: 54px; } }

.product-price--small {
  font-size: 22px; }

.product-favourite {
  position: absolute;
  top: -2px;
  right: 0;
  padding: 0;
  border: 0;
  background: none;
  font-size: 24px; }
  .quick-quote .product-favourite {
    left: 14px;
    top: 14px;
    right: auto; }
  @media only screen and (min-width: 759px) {
    .product-favourite {
      top: -4px;
      right: -10px; } }

.product-favourite__trigger {
  display: block;
  transition: color 0.167s;
  color: #e6e6e6;
  text-decoration: none; }
  @media only screen and (min-width: 1024px) {
    .product-favourite__trigger:hover {
      color: #ABE1E2; } }
  .is-favourite .product-favourite__trigger {
    color: #ABE1E2; }

.product-summary {
  padding: 20px 20px 30px 20px;
  text-align: center;
  line-height: 1.2; }

.product-summary__range {
  font-weight: 700;
  color: #122230; }

.product-summary__name {
  margin-bottom: 20px; }

.product-card {
  min-height: 50px;
  background: #FFFFFF; }
  @media only screen and (max-width: 1023px) {
    .product-card {
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1; } }
  @media only screen and (min-width: 1024px) {
    .product-card {
      padding: 20px 20px 30px;
      text-align: center;
      border-radius: 2px;
      box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07); } }

.product-card__logo {
  display: block;
  margin: 0 auto 10px; }

.product-card__range,
.product-card__name {
  line-height: 1.25; }

.product-card__range {
  font-weight: 700;
  color: #122230; }

.product-card__name {
  margin-bottom: 10px; }

.product-card__pds {
  display: inline-block;
  margin-bottom: 20px;
  color: #FF647D;
  font-size: 12px;
  line-height: 1;
  text-decoration: none; }
  .product-card__pds .icon, .product-card__pds .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .product-card__pds .checkbox__faux-input:before, .product-card__pds .mfp-close:before, .product-card__pds .alert__close, .product-card__pds .btn--arrow-right:after, .product-card__pds .favourite-nav__shortlist__heart, .product-card__pds .needhelp__icon, .product-card__pds .pagination li a, .pagination li .product-card__pds a, .product-card__pds .product-detail__favourite, .product-card__pds .product-favourite__trigger, .product-card__pds .quotes-nav__list__item:before {
    vertical-align: top;
    margin-right: 5px; }

.product-card__price {
  padding-top: 22px; }
  @media only screen and (min-width: 1024px) {
    .product-card__price {
      border-top: 1px solid #e6e6e6; } }

.product-card__content > * {
  transition: 337ms ease-in-out; }
  @media only screen and (max-width: 1023px) {
    .product-card__content > * {
      opacity: 0; } }

.is-expanded .product-card__content {
  opacity: 1;
  -ms-transform: translateY(-99.5%);
  transform: translateY(-99.5%);
  box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.07); }
  .is-expanded .product-card__content > * {
    opacity: 1; }

@media only screen and (max-width: 1023px) {
  .product-card__content {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 30px;
    background: #fff;
    text-align: center;
    -ms-transform: translateY(0);
    transform: translateY(0);
    transition: 237ms ease-in-out; } }

.product-card__toggle {
  display: -ms-flexbox;
  display: flex;
  height: 50px;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  z-index: 1;
  box-shadow: 0 -2px 4px 0 rgba(0, 0, 0, 0.07); }
  .product-card__toggle img {
    margin-top: 10px;
    margin-left: 20px; }

.product-card__toggle-left,
.product-card__toggle-right {
  -ms-flex: 1;
  flex: 1; }

.product-card__toggle-right {
  text-align: right;
  padding-right: 15px; }

.product-card__toggle-btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: -10px auto 0;
  width: 50px;
  height: 50px;
  background: #FFFFFF;
  box-shadow: 0 -3px 4px 0 rgba(0, 0, 0, 0.07);
  border-radius: 50%;
  color: #122230; }
  .product-card__toggle-btn .icon, .product-card__toggle-btn .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .product-card__toggle-btn .checkbox__faux-input:before, .product-card__toggle-btn .mfp-close:before, .product-card__toggle-btn .alert__close, .product-card__toggle-btn .btn--arrow-right:after, .product-card__toggle-btn .favourite-nav__shortlist__heart, .product-card__toggle-btn .needhelp__icon, .product-card__toggle-btn .pagination li a, .pagination li .product-card__toggle-btn a, .product-card__toggle-btn .product-detail__favourite, .product-card__toggle-btn .product-favourite__trigger, .product-card__toggle-btn .quotes-nav__list__item:before {
    font-size: 20px; }
    .is-expanded .product-card__toggle-btn .icon, .is-expanded .product-card__toggle-btn .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .is-expanded .product-card__toggle-btn .checkbox__faux-input:before, .is-expanded .product-card__toggle-btn .mfp-close:before, .is-expanded .product-card__toggle-btn .alert__close, .is-expanded .product-card__toggle-btn .btn--arrow-right:after, .is-expanded .product-card__toggle-btn .favourite-nav__shortlist__heart, .is-expanded .product-card__toggle-btn .needhelp__icon, .is-expanded .product-card__toggle-btn .pagination li a, .pagination li .is-expanded .product-card__toggle-btn a, .is-expanded .product-card__toggle-btn .product-detail__favourite, .is-expanded .product-card__toggle-btn .product-favourite__trigger, .is-expanded .product-card__toggle-btn .quotes-nav__list__item:before {
      font-size: 12px; }

.product-card__toggle-center {
  -ms-flex: 1 0;
  flex: 1 0;
  text-align: center; }

.comparison-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-top: 10px;
  background: #122230; }
  @media only screen and (min-width: 759px) {
    .comparison-toolbar {
      padding-top: 20px; } }

/**
 *  Nav
 */
.comparison-toolbar__nav {
  margin: 0;
  display: -ms-flexbox;
  display: flex;
  list-style-type: none;
  font-size: 12px;
  line-height: 24px; }

.comparison-toolbar__nav__link {
  display: block;
  padding: 8px 10px;
  white-space: nowrap;
  text-decoration: none;
  background: none;
  border: none;
  color: #fff;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  transition: 0.2s ease;
  line-height: inherit;
  font-size: 16px; }
  .comparison-toolbar__nav__link .icon-save {
    width: 20px;
    height: 20px; }
  .comparison-toolbar__nav__link .icon, .comparison-toolbar__nav__link .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .comparison-toolbar__nav__link .checkbox__faux-input:before, .comparison-toolbar__nav__link .mfp-close:before, .comparison-toolbar__nav__link .alert__close, .comparison-toolbar__nav__link .btn--arrow-right:after, .comparison-toolbar__nav__link .favourite-nav__shortlist__heart, .comparison-toolbar__nav__link .needhelp__icon, .comparison-toolbar__nav__link .pagination li a, .pagination li .comparison-toolbar__nav__link a, .comparison-toolbar__nav__link .product-detail__favourite, .comparison-toolbar__nav__link .product-favourite__trigger, .comparison-toolbar__nav__link .quotes-nav__list__item:before {
    position: relative;
    top: -1px;
    margin-right: 6px;
    line-height: 1.2em; }
    @media only screen and (min-width: 759px) {
      .comparison-toolbar__nav__link .icon, .comparison-toolbar__nav__link .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .comparison-toolbar__nav__link .checkbox__faux-input:before, .comparison-toolbar__nav__link .mfp-close:before, .comparison-toolbar__nav__link .alert__close, .comparison-toolbar__nav__link .btn--arrow-right:after, .comparison-toolbar__nav__link .favourite-nav__shortlist__heart, .comparison-toolbar__nav__link .needhelp__icon, .comparison-toolbar__nav__link .pagination li a, .pagination li .comparison-toolbar__nav__link a, .comparison-toolbar__nav__link .product-detail__favourite, .comparison-toolbar__nav__link .product-favourite__trigger, .comparison-toolbar__nav__link .quotes-nav__list__item:before {
        margin-right: 10px; } }
  .comparison-toolbar__nav__link .icon-pencil {
    top: -2px; }
  .comparison-toolbar__nav__link:hover {
    opacity: 0.8; }
  .comparison-toolbar__nav__link:focus {
    outline: none; }
  .comparison-toolbar__nav__link.active {
    -ms-transform: translateY(1px);
    transform: translateY(1px); }
    .comparison-toolbar__nav__link.active:before {
      content: '';
      position: absolute;
      height: 2px;
      width: calc(100% - 24px);
      bottom: 7px;
      background-color: #FF647D; }
      @media only screen and (min-width: 759px) {
        .comparison-toolbar__nav__link.active:before {
          width: calc(100% - 80px); } }
  @media only screen and (min-width: 759px) {
    .comparison-toolbar__nav__link {
      width: 185px;
      padding: 17px 20px;
      font-size: 16px; } }

.comparison-toolbar__nav--layout {
  margin: 0 0 0 10px;
  font-size: 14px; }
  @media only screen and (min-width: 759px) {
    .comparison-toolbar__nav--layout {
      margin-left: 20px; } }
  .comparison-toolbar__nav--layout .comparison-toolbar__nav__link {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 12px;
    padding-right: 12px; }
    .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .icon, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .checkbox__faux-input:before, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .mfp-close:before, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .alert__close, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .btn--arrow-right:after, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .favourite-nav__shortlist__heart, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .needhelp__icon, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .pagination li a, .pagination li .comparison-toolbar__nav--layout .comparison-toolbar__nav__link a, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .product-detail__favourite, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .product-favourite__trigger, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .quotes-nav__list__item:before {
      top: -2px; }
    .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .icon-price {
      font-size: 16px; }
      @media only screen and (min-width: 759px) {
        .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .icon-price {
          font-size: 24px; } }
    .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .icon-benefits {
      font-size: 14px;
      margin-right: 7px; }
      @media only screen and (min-width: 759px) {
        .comparison-toolbar__nav--layout .comparison-toolbar__nav__link .icon-benefits {
          font-size: 20px; } }
    .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active {
      cursor: default;
      background: #fafafa;
      color: #122230; }
      .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .icon, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .checkbox__faux-input:before, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .mfp-close:before, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .alert__close, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .btn--arrow-right:after, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .favourite-nav__shortlist__heart, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .needhelp__icon, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .pagination li a, .pagination li .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active a, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .product-detail__favourite, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .product-favourite__trigger, .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active .quotes-nav__list__item:before {
        opacity: 1; }
      .comparison-toolbar__nav--layout .comparison-toolbar__nav__link.active:hover {
        opacity: 1; }
    @media only screen and (min-width: 759px) {
      .comparison-toolbar__nav--layout .comparison-toolbar__nav__link {
        padding-left: 40px;
        padding-right: 40px;
        font-size: 20px; } }

.comparison-table__wrapper {
  margin: 0 auto 40px;
  padding: 0 10px; }
  @media only screen and (min-width: 759px) {
    .comparison-table__wrapper {
      padding: 0 20px;
      margin-bottom: 100px; } }
  @media screen and (min-width: 1100px) {
    .comparison-table__wrapper {
      max-width: 1100px; } }
  @media screen and (min-width: 1450px) {
    .comparison-table__wrapper {
      max-width: 1366px; } }

.comparison-table {
  width: auto;
  line-height: 1.25;
  margin-bottom: 0;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .comparison-table th,
  .comparison-table td {
    background-color: #fff;
    padding: 8px 10px;
    border: 1px solid #e6e6e6;
    transition: background 0.1s ease-in-out; }
    @media only screen and (max-width: 758px) {
      .comparison-table th,
      .comparison-table td {
        width: 50%; } }
    @media only screen and (min-width: 759px) and (max-width: 1023px) {
      .comparison-table th,
      .comparison-table td {
        max-width: 33.333%;
        width: 33.333%; } }
    @media only screen and (min-width: 759px) {
      .comparison-table th,
      .comparison-table td {
        padding: 20px; } }
    @media only screen and (min-width: 1024px) {
      .comparison-table th,
      .comparison-table td {
        width: 265px; } }
  .comparison-table td {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.07); }
  @media only screen and (max-width: 758px) {
    .comparison-table {
      font-size: 12px;
      table-layout: fixed;
      width: 100%; } }
  @media only screen and (min-width: 1024px) {
    .comparison-table {
      margin-bottom: 60px; } }

.comparison-table__heading {
  color: #122230; }
  @media only screen and (min-width: 1024px) {
    .comparison-table__heading {
      padding-left: 10px !important; } }

.comparison-table__notice {
  background-color: #f9f9f9 !important;
  color: #122230;
  text-align: center;
  font-size: 0.8em;
  line-height: 1.5; }

.comparison-table .comparison-table__category-label {
  font-size: 16px;
  color: #122230;
  background-color: #e6e6e6;
  text-align: left;
  line-height: 22px;
  cursor: pointer;
  transition: background 0.2s ease; }
  .comparison-table .comparison-table__category-label.closed {
    background-color: #e6e6e6;
    color: #122230; }
  @media only screen and (max-width: 758px) {
    .comparison-table .comparison-table__category-label {
      padding-top: 14px;
      padding-bottom: 14px; } }
  @media only screen and (min-width: 759px) {
    .comparison-table .comparison-table__category-label {
      padding: 20px; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .comparison-table .comparison-table__category-label {
      font-size: 18px; } }
  @media only screen and (min-width: 1024px) {
    .comparison-table .comparison-table__category-label {
      font-size: 20px; } }

.comparison-table__feature-row:hover td {
  background: #fafafa; }

.comparison-table__category-label__inner {
  display: -ms-flexbox;
  display: flex; }

.comparison-table__reveal {
  margin: -1px 15px 0 0; }
  .comparison-table__reveal .icon, .comparison-table__reveal .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .comparison-table__reveal .checkbox__faux-input:before, .comparison-table__reveal .mfp-close:before, .comparison-table__reveal .alert__close, .comparison-table__reveal .btn--arrow-right:after, .comparison-table__reveal .favourite-nav__shortlist__heart, .comparison-table__reveal .needhelp__icon, .comparison-table__reveal .pagination li a, .pagination li .comparison-table__reveal a, .comparison-table__reveal .product-detail__favourite, .comparison-table__reveal .product-favourite__trigger, .comparison-table__reveal .quotes-nav__list__item:before {
    color: #122230;
    background: #fff;
    border-radius: 50%;
    line-height: 22px;
    width: 22px;
    height: 22px;
    transition: all 0.2s ease;
    text-align: center;
    font-size: 10px;
    -ms-flex-item-align: center;
    align-self: center; }

.comparison-table__category-label__text {
  -ms-flex: 1;
  flex: 1;
  -ms-flex-item-align: center;
  align-self: center;
  line-height: 1.25;
  font-weight: 500; }

.comparison-table__feature-label {
  font-weight: 500; }
  .comparison-table__feature-label .tooltipstered {
    display: inline; }
    .comparison-table__feature-label .tooltipstered .icon-tooltip {
      display: inherit; }
  @media only screen and (max-width: 1023px) {
    .comparison-table__feature-label {
      background: #fafafa !important; } }
  @media only screen and (min-width: 1024px) {
    .comparison-table__feature-label {
      text-align: right; } }

.comparison-table .comparison-table__empty-cell {
  display: none;
  background-color: transparent;
  border: none;
  box-shadow: none !important; }
  @media only screen and (min-width: 1024px) {
    .comparison-table .comparison-table__empty-cell {
      display: block; } }

.comparison-table__product-cell {
  vertical-align: top; }

@media only screen and (min-width: 759px) {
  th.comparison-table__product-cell {
    padding-bottom: 20px !important; } }

/**
 * Feature
 */
.comparison-table__feature {
  text-align: center; }

.comparison-table__feature__label--inline {
  margin-bottom: 5px;
  color: #e6e6e6; }
  @media only screen and (min-width: 1024px) {
    .comparison-table__feature__label--inline {
      display: none; } }

.comparison-table__feature__value {
  font-size: 12px;
  line-height: 1.35;
  color: #4D5157; }
  .comparison-table__feature__value .icon-cross, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .icon, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .icon, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .checkbox--checked .checkbox__faux-input:before, .is-expanded .product-card__toggle-btn .checkbox--checked .comparison-table__feature__value .checkbox__faux-input:before, .comparison-table__feature__value .checkbox--checked .is-expanded .product-card__toggle-btn .checkbox__faux-input:before, .checkbox--checked .is-expanded .product-card__toggle-btn .comparison-table__feature__value .checkbox__faux-input:before, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .mfp-close:before, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .mfp-close:before, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .alert__close, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .alert__close, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .btn--arrow-right:after, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .btn--arrow-right:after, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .favourite-nav__shortlist__heart, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .favourite-nav__shortlist__heart, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .needhelp__icon, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .needhelp__icon, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .pagination li a, .is-expanded .product-card__toggle-btn .pagination li .comparison-table__feature__value a, .comparison-table__feature__value .pagination li .is-expanded .product-card__toggle-btn a, .pagination li .is-expanded .product-card__toggle-btn .comparison-table__feature__value a, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .product-detail__favourite, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .product-detail__favourite, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .product-favourite__trigger, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .product-favourite__trigger, .comparison-table__feature__value .is-expanded .product-card__toggle-btn .quotes-nav__list__item:before, .is-expanded .product-card__toggle-btn .comparison-table__feature__value .quotes-nav__list__item:before {
    color: #e0684a;
    font-size: 80%; }
  .comparison-table__feature__value .icon-tick {
    color: #9EDB45; }
  .comparison-table__feature__value i {
    font-style: normal;
    font-size: 1.2em; }
  @media only screen and (max-width: 758px) {
    .comparison-table__feature__value {
      color: #1f6868; } }
  @media only screen and (min-width: 759px) {
    .comparison-table__feature__value {
      font-size: 16px; } }

.comparison-table__feature__value__rating {
  line-height: 1; }

.comparison-table__feature__value__text {
  line-height: 1.3; }
  .comparison-table__feature__value__rating + .comparison-table__feature__value__text {
    margin-top: 8px; }

/**
 * Pricing modification
 */
.comparison-table .product-detail__name {
  min-height: 100px; }

.comparison-table .product-detail__apply {
  display: block; }

.comparison-table .product-detail__logo {
  margin: 0;
  margin-bottom: 15px; }
  @media only screen and (max-width: 758px) {
    .comparison-table .product-detail__logo {
      position: relative;
      padding-bottom: 10px;
      margin-bottom: 15px; }
      .comparison-table .product-detail__logo:after {
        content: '';
        position: absolute;
        border-bottom: 1px solid #e6e6e6;
        left: -10px;
        right: -10px;
        bottom: 0; } }

.sticky-header {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  z-index: -1;
  width: 100%;
  background: #fafafa;
  padding: 0 10px;
  transition: opacity 0.2s ease; }
  .sticky-header .product-detail__logo {
    margin: 0;
    padding: 0; }
    .sticky-header .product-detail__logo:after {
      display: none; }
  .sticky-header th {
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, 0.1); }
  @media only screen and (max-width: 758px) {
    .sticky-header.sticky-active {
      visibility: visible;
      opacity: 1;
      z-index: 10; } }

.comparison-no-products {
  padding: 50px 20px 100px;
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .comparison-no-products {
      padding: 100px 20px 300px; } }

.quick-quote {
  position: relative;
  width: 100%;
  margin: 0 0 20px;
  padding: 20px 30px 24px;
  background: #fff;
  border-radius: 2px;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.07); }
  .quick-quote:last-child {
    margin-bottom: 60px; }
  @media only screen and (max-width: 758px) {
    .quick-quote {
      max-width: 320px;
      margin-left: auto;
      margin-right: auto; } }
  @media only screen and (min-width: 759px) {
    .quick-quote {
      display: table;
      padding: 30px; }
      .quick-quote:last-child {
        margin-bottom: 100px; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote {
      padding-left: 40px;
      padding-right: 40px; } }

.quick-quote__features {
  display: table; }
  @media only screen and (max-width: 1023px) {
    .quick-quote__features {
      margin-left: auto;
      margin-right: auto; } }
  @media only screen and (max-width: 758px) {
    .quick-quote__features {
      margin-bottom: 25px;
      width: 100%; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .quick-quote__features {
      margin-bottom: 20px;
      margin-top: 20px; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote__features {
      width: 100%;
      padding: 0 40px;
      min-height: 140px; } }

.quick-quote__feature {
  font-size: 14px; }
  @media only screen and (max-width: 758px) {
    .quick-quote__feature {
      padding: 10px 0;
      text-align: center;
      border-bottom: 1px solid #e6e6e6; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .quick-quote__feature {
      margin-bottom: 15px; }
      .quick-quote__feature:last-child {
        margin-bottom: 0; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote__feature {
      display: table-cell;
      vertical-align: middle;
      text-align: center; } }

.quick-quote__feature__value {
  color: #122230;
  line-height: 1; }
  .quick-quote__feature__value small {
    text-transform: uppercase;
    font-size: 80%; }
    @media only screen and (min-width: 759px) {
      .quick-quote__feature__value small {
        position: relative;
        top: -1px;
        margin-left: 2px;
        font-size: 55%; } }
  @media only screen and (max-width: 758px) {
    .quick-quote__feature__value {
      display: inline-block; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .quick-quote__feature__value {
      font-size: 24px; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote__feature__value {
      margin-bottom: 5px;
      font-size: 30px; } }

@media only screen and (max-width: 758px) {
  .quick-quote__feature__label {
    display: inline-block; } }

.quick-quote__product-brand {
  text-align: center;
  font-size: 24px; }
  @media only screen and (max-width: 758px) {
    .quick-quote__product-brand {
      padding-bottom: 20px;
      border-bottom: 1px solid #e6e6e6; } }
  @media only screen and (min-width: 759px) {
    .quick-quote__product-brand {
      display: table-cell;
      vertical-align: middle;
      border-right: 1px solid #e6e6e6; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .quick-quote__product-brand {
      width: 215px;
      padding-right: 30px; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote__product-brand {
      width: 250px;
      padding-right: 40px; } }
  .quick-quote__product-brand .tooltipstered {
    display: block; }
  .quick-quote__product-brand img {
    display: block;
    margin: 0 auto 18px;
    max-height: 80px;
    max-width: 180px; }
    @media only screen and (max-width: 758px) {
      .quick-quote__product-brand img {
        margin-top: 6px;
        max-width: 150px; } }

.quick-quote__details {
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .quick-quote__details {
      display: table-cell;
      vertical-align: middle;
      border-left: 1px solid #e6e6e6; } }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .quick-quote__details {
      width: 215px;
      padding-left: 30px; } }
  @media only screen and (min-width: 1024px) {
    .quick-quote__details {
      width: 225px;
      padding-left: 40px; } }

.quotes-nav {
  background: #122230;
  color: #fff; }

.quotes-nav__list {
  margin: 0;
  list-style-type: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center; }

.quotes-nav__list__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center; }
  .quotes-nav__list__item:before {
    margin: 0 25px;
    font-size: 10px; }
  .quotes-nav__list__item:first-child:before {
    display: none; }
  .quotes-nav__list__item.is-disabled {
    opacity: 0.5; }

.quotes-nav__link {
  display: block;
  text-decoration: none;
  color: inherit;
  padding: 0 8px;
  line-height: 52px;
  font-weight: 500;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent; }
  .quotes-nav__link.active {
    border-bottom-color: #FF647D; }
  .is-disabled .quotes-nav__link {
    pointer-events: none; }

/**
 * Quote Form
 */
.quote-form__wrapper {
  padding: 40px 0;
  position: relative; }
  .quote-form__wrapper p {
    color: #4D5157;
    font-size: 16px; }
    .quote-form__wrapper p a {
      font-weight: 500;
      color: #1f6868;
      text-decoration: none;
      transition: 0.167s ease; }
      .quote-form__wrapper p a:hover {
        color: #70c137; }
  @media only screen and (min-width: 759px) {
    .quote-form__wrapper {
      padding: 80px 0 100px; } }
  @media (min-width: 1350px) {
    .quote-form__wrapper .quote-form__island {
      max-width: 650px;
      margin-left: auto;
      margin-right: auto; } }

.quote-form__trust-box-wrapper {
  position: relative; }

.quote-form__trust-box {
  background-color: #ffffff;
  position: absolute;
  right: -235px;
  top: 0px;
  width: 315px;
  padding: 30px 20px;
  border-radius: 5px; }
  .quote-form__trust-box ul {
    list-style: none; }
  .quote-form__trust-box li {
    position: relative;
    margin-bottom: 20px; }
  .quote-form__trust-box ul li:before {
    content: '';
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1026.5676"><path d="M916 148.568l-596 594-212-210c-24-26-64-26-88 0-26 24-26 64 0 88l256 256c12 14 24 20 44 20s32-6 44-20l640-640c26-24 26-64 0-88-24-26-64-26-88 0z"/></svg>');
    position: absolute;
    width: 15px;
    height: 15px;
    left: -30px;
    top: 5px; }
  .quote-form__trust-box h3 {
    font-weight: 700;
    font-family: BrandonGrotesque, Helvetica, sans-serif; }
    @media only screen and (max-width: 758px) {
      .quote-form__trust-box h3 {
        font-size: 24px; } }

.quote-form__wrapper > .container > .quote-form__trust-box {
  display: block;
  position: static;
  width: auto; }
  @media (min-width: 1350px) {
    .quote-form__wrapper > .container > .quote-form__trust-box {
      display: none; } }

.form-about-you--combined .quote-form__trust-box {
  display: none; }
  @media (min-width: 1350px) {
    .form-about-you--combined .quote-form__trust-box {
      display: block; } }

.form-about-you--combined .container {
  position: relative; }

.income-calculator .form-input__label {
  color: #122230; }

.quote-form__title {
  margin: 0 10px 40px;
  font-size: 24px;
  color: #122230;
  line-height: 1.3;
  text-align: center;
  font-weight: 700; }
  @media only screen and (min-width: 759px) {
    .quote-form__title {
      margin-bottom: 60px;
      font-size: 36px;
      line-height: 1; } }

.quote-form__description {
  text-align: center;
  margin-top: -20px;
  margin-bottom: 30px; }
  @media only screen and (min-width: 759px) {
    .quote-form__description {
      margin-top: -30px;
      margin-bottom: 40px; } }

.quote-form__island {
  padding: 20px;
  background: #fff;
  border-radius: 2px;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.07); }
  @media only screen and (min-width: 759px) {
    .quote-form__island {
      padding: 30px; } }

.quote-form__disclosure-description {
  margin: 20px 0;
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .quote-form__disclosure-description {
      margin: 30px 0 40px; } }

.quote-form__togglable-input {
  position: relative; }
  .quote-form__togglable-input .form-input__label__tooltip {
    margin-left: 2px;
    color: #1f6868; }

.quote-form__togglable-input__helper {
  position: absolute;
  top: 43px;
  right: 15px;
  font-size: 14px;
  color: #658080; }
  .input-text[disabled] + .quote-form__togglable-input__helper, .ember-power-select-typeahead-input[disabled] + .quote-form__togglable-input__helper {
    opacity: 0.6; }

.quote-form__togglable-input__remove {
  margin: 5px 0 -15px;
  float: right;
  text-decoration: none;
  font-size: 12px;
  color: #658080;
  transition: 0.167s ease; }
  .quote-form__togglable-input__remove:hover {
    color: #e0684a; }

.quote-form__togglable-input__add {
  display: inline-block;
  margin-bottom: 10px;
  color: #9EDB45;
  font-size: 16px;
  text-decoration: none;
  transition: color 0.167s ease; }
  .quote-form__togglable-input__add:before {
    content: '+';
    display: inline-block;
    vertical-align: top;
    margin-top: 2px;
    margin-right: 0.2em;
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    vertical-align: top;
    font-size: 20px;
    line-height: 1; }
  .quote-form__togglable-input__add:hover {
    color: #60a52f; }

.quote-form__calculator-btn {
  display: block;
  margin-bottom: 20px;
  padding-left: 0;
  padding-right: 0; }
  @media only screen and (max-width: 758px) {
    .quote-form__calculator-btn {
      font-size: 16px; } }
  @media only screen and (min-width: 759px) {
    .quote-form__calculator-btn {
      margin-bottom: 30px; } }

.quote-form__answer {
  padding: 0.25em 0;
  border-bottom: 2px solid #fafafa;
  font-size: 26px;
  color: #1f6868; }

.quote-form__reset {
  margin-top: 1em;
  color: #70c137;
  text-align: center; }

.quote-form__badge {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 30px; }
  .quote-form__badge img {
    width: 120px;
    margin-left: 15px; }

.quote-confirm {
  margin: 30px auto 0;
  padding: 0;
  max-width: 630px;
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .quote-confirm {
      margin-top: 30px; } }

.quote-confirm__title {
  margin-bottom: 40px;
  color: #1f6868;
  font-size: 20px; }

.quote-confirm__btn {
  color: #122230;
  display: block;
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0; }

.quote-confirm__smallprint {
  font-size: 12px;
  color: #658080;
  margin: 20px; }
  @media only screen and (max-width: 758px) {
    .quote-confirm__smallprint {
      margin: 10px 0 20px; } }

.banner {
  padding: 20px 0;
  background: #70c137; }
  @media only screen and (min-width: 759px) {
    .banner {
      padding: 40px 0; } }

.banner__title {
  margin-bottom: 0;
  color: #fff; }

.off-canvas {
  background: #122230; }

.off-canvas__body {
  position: relative;
  background: #fafafa;
  transition: transform 0.267s cubic-bezier(0.16, 0.68, 0.43, 0.99); }
  .off-canvas--open .off-canvas__body {
    transform: translate3d(-270px, 0, 0); }
    @media only screen and (min-width: 759px) {
      .off-canvas--open .off-canvas__body {
        transform: translate3d(-300px, 0, 0); } }
  @media only screen and (min-width: 1024px) {
    .off-canvas__body {
      min-height: 100vh; } }

.off-canvas__body__overlay {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: -1;
  background: rgba(0, 0, 0, 0.1);
  transition: opacity 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }
  .off-canvas--open .off-canvas__body__overlay {
    opacity: 1;
    z-index: 10; }

.off-canvas__aside {
  position: absolute;
  top: 0;
  right: 0;
  min-height: 100vh;
  padding: 50px 25px 25px 25px;
  width: 270px;
  overflow: hidden;
  z-index: 0;
  box-shadow: inset 8px 0 6px -6px rgba(0, 0, 0, 0.5);
  color: #FFFFFF; }
  .off-canvas__aside h3 {
    margin-bottom: 25px;
    font-size: 24px;
    font-weight: 400;
    line-height: 1; }
  .off-canvas__aside hr {
    border: 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin: 50px -50px 50px -30px;
    overflow: hidden;
    height: 0;
    font-size: 0; }
  .off-canvas__aside .checkbox-group {
    margin-bottom: 24px; }
    .off-canvas__aside .checkbox-group li {
      margin-bottom: 12px; }
  .off-canvas__aside .checkbox__label {
    display: inline-block;
    white-space: nowrap;
    vertical-align: top;
    color: #fff;
    font-size: 16px; }
  .off-canvas__aside .checkbox__wrap {
    display: inline-block; }
  .off-canvas__aside .checkbox__faux-input {
    border-color: #fff; }
  .off-canvas__aside .input-text, .off-canvas__aside .ember-power-select-typeahead-input {
    background: #070d12;
    color: #FFFFFF;
    border-color: #070d12;
    margin: 10px 0 6px;
    padding-top: 13px;
    padding-bottom: 13px;
    font-size: 16px; }
    .off-canvas__aside .input-text:-ms-input-placeholder, .off-canvas__aside .ember-power-select-typeahead-input:-ms-input-placeholder {
      color: rgba(255, 255, 255, 0.7); }
    .off-canvas__aside .input-text::placeholder, .off-canvas__aside .ember-power-select-typeahead-input::placeholder {
      color: rgba(255, 255, 255, 0.7); }
  .off-canvas__aside .ember-power-select-trigger {
    background: #070d12 !important;
    border-color: #070d12 !important; }
  .off-canvas__aside .ember-power-select-placeholder {
    color: #fff; }
  .off-canvas__aside .form-input__errors, .off-canvas__aside .form-input__info {
    margin: 0; }
  .off-canvas__aside .form-input--error .input-text, .off-canvas__aside .form-input--error .ember-power-select-typeahead-input {
    border-color: #e0684a;
    color: #e0684a; }
  .off-canvas__aside .form-input--error li {
    color: #fff;
    font-size: 11px; }
  @media only screen and (min-width: 759px) {
    .off-canvas__aside {
      width: 300px; } }

.aside__info {
  margin: 0 0 25px 1em;
  padding: 0;
  color: #e6e6e6;
  font-weight: 300;
  line-height: 1.3; }
  .aside__info li {
    margin-bottom: 0.25em; }
    .aside__info li:first-letter {
      text-transform: capitalize; }

.aside__link {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.5);
  text-decoration: none;
  transition: 0.167s ease-in-out; }
  .aside__link:hover {
    color: #fff; }

.off-canvas__aside__close {
  position: absolute;
  top: 15px;
  right: 20px;
  color: #fff;
  transition: 0.1s ease-in-out; }
  .off-canvas__aside__close:hover {
    color: #70c137; }
  .off-canvas__aside__close:active {
    -ms-transform: translateY(1px);
    transform: translateY(1px); }

.off-canvas--ip .checkbox-group li {
  position: relative; }

.off-canvas--ip .checkbox-group .form-input__label__tooltip {
  position: absolute;
  right: -19px;
  bottom: 13px; }

.ip-input {
  position: relative; }
  .ip-input .input-text, .ip-input .ember-power-select-typeahead-input {
    padding-right: 70px; }
  .ip-input .ip-input__helper {
    position: absolute;
    top: 50px;
    right: 15px;
    font-size: 12px; }
  .ip-input .form-input__label__tooltip {
    position: static !important; }

.ember-loader {
  height: 400px;
  height: 100vh;
  padding: 40px;
  background: #fafafa;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: auto;
  flex: auto;
  -ms-flex-line-pack: center;
  align-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-direction: column;
  flex-direction: column; }

@keyframes rotate {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(0deg); }
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(720deg); } }

.ember-loader__circle {
  position: relative;
  margin: 0 auto;
  width: 80px;
  height: 80px;
  background: #FFF;
  border-radius: 50%;
  transition: all 180ms linear;
  -ms-transform: translateY(0%);
  transform: translateY(0%); }
  .ember-loader__circle:after {
    content: '';
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    border: 3px solid #9EDB45;
    border-radius: 50%;
    border-left-color: transparent;
    border-top-color: transparent;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%, -50%, 0);
    animation: rotate 1s linear infinite; }
  .ember-loader__circle:before {
    content: '';
    display: block;
    position: absolute;
    width: 30px;
    height: 30px;
    border: 3px solid #e6e6e6;
    border-radius: 50%;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%, -50%, 0); }

/**
* Application loader
*/
.ember-loader--app {
  display: none; }

.is-loading .ember-loader--app {
  display: -ms-flexbox;
  display: flex; }

.errorpage {
  padding: 50px 0;
  color: #122230; }
  .errorpage h1 {
    line-height: 1.2;
    margin-bottom: 0.75em;
    color: #122230;
    font-weight: 600; }
  .errorpage ul:not(.ember-power-select-options) li {
    margin-bottom: 0.75em;
    line-height: 1.5; }
  .errorpage p a,
  .errorpage li a,
  .errorpage h3 a {
    color: #9EDB45; }
  @media only screen and (min-width: 759px) {
    .errorpage {
      padding: 100px 0; } }

.errorpage__cta {
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .errorpage__cta {
      margin-top: 30px; } }

.errorpage--500 {
  text-align: center; }

.errorpage--no-products li::marker {
  color: #58C5C7; }

.errorpage--no-products a {
  font-weight: 600; }

.tc-calculator {
  font-size: 18px; }
  .tc-calculator .footer {
    margin-top: 0 !important; }

.tc-calculator__close {
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  right: 15px;
  vertical-align: middle;
  padding: 0;
  border: 0;
  background-color: transparent;
  color: #e6e6e6;
  font-size: 0.8em;
  outline: 0;
  cursor: pointer; }

.tc-calculator__footer {
  background-color: #195A5A; }
  .tc-calculator__footer p, .tc-calculator__footer a {
    color: rgba(255, 255, 255, 0.5); }

.tc-logo {
  display: none; }

.tc-logo--desktop {
  width: 170px; }
  @media only screen and (min-width: 759px) {
    .tc-logo--desktop {
      display: block; } }

.tc-logo--mobile {
  width: 125px; }
  @media only screen and (max-width: 758px) {
    .tc-logo--mobile {
      display: block; } }

.landing__heading {
  text-align: center;
  font-size: 32px;
  font-weight: 600;
  color: #1f6868; }
  @media only screen and (min-width: 759px) {
    .landing__heading {
      margin-bottom: 65px; } }

.landing__option {
  margin: 20px 0 0;
  padding: 40px 15px;
  background: white;
  text-align: center;
  border-radius: 3px;
  border-bottom: 2px solid #e6e6e6; }
  @media only screen and (min-width: 759px) {
    .landing__option {
      margin-top: 0; } }

.landing__icon {
  display: block;
  margin: 0 auto 25px;
  font-size: 70px;
  width: 70px;
  height: 70px;
  color: #70c137; }

.landing__title {
  margin-bottom: 25px;
  min-height: 48px;
  font-size: 24px;
  font-weight: normal;
  color: #1f6868;
  line-height: 1; }

.landing__text {
  min-height: 72px;
  margin-bottom: 30px;
  font-size: 16px;
  line-height: 1.5; }

.landing__btn {
  margin-bottom: 5px;
  padding-left: 40px;
  padding-right: 40px; }

.landing__scroller {
  height: 256px;
  overflow: hidden;
  padding: 70px 0 270px 0;
  background: white;
  text-align: center; }
  @media only screen and (min-width: 759px) {
    .landing__scroller {
      padding: 70px 0 210px 0; } }
  .landing__scroller h4 {
    margin-bottom: 45px;
    padding: 0 40px;
    color: #1f6868;
    font-size: 22px;
    line-height: 1.5;
    font-weight: 400; }
  .landing__scroller ul {
    list-style: none;
    margin: 0; }
    @media only screen and (min-width: 759px) {
      .landing__scroller ul {
        width: 702px;
        margin: 0 auto; } }
  .landing__scroller img {
    margin: 0 auto; }
  .landing__scroller .owl-stage {
    transition-timing-function: linear !important; }

.landing__indent {
  padding: 0 15px; }

.landing__member-text {
  padding: 20px 15px 0;
  font-size: 18px;
  font-weight: 600; }

.landing__logo-padded {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-color: #fff;
  margin-right: 15px;
  padding: 20px;
  width: 260px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.landing__member-logos {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  -ms-flex-align: center;
  align-items: center;
  background-color: #fff;
  padding: 20px; }

.landing__member-logos img {
  width: 200px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.landing__member-logos svg {
  width: 150px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

@media only screen and (max-width: 600px) {
  .landing__member-logos img, .landing__member-logos svg {
    width: 100px; }
  .landing__member-logos {
    margin-top: 20px; } }

.landing__iselect {
  padding: 0 15px;
  padding-top: 20px;
  margin-top: 15px;
  background-color: #fff; }

.landing__iselect-logo-padded {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 20px;
  width: 260px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

.landing__iselect-text {
  margin: 15px 0;
  padding-bottom: 20px;
  font-size: 18px;
  font-weight: 600;
  text-align: center; }

.landing__iselect-logos {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: center;
  align-items: center; }

.landing__iselect-logos img {
  width: 260px;
  -ms-flex-negative: 0;
  flex-shrink: 0; }

@media only screen and (max-width: 800px) {
  .landing__iselect-logo-padded {
    width: 160px; } }

.container--landing {
  max-width: 780px !important;
  padding: 0 10px 30px 10px; }
  @media only screen and (min-width: 759px) {
    .container--landing {
      padding: 80px 30px; } }

.cover-summary {
  margin: 0 0 24px;
  list-style-type: none; }

.cover-summary__item {
  padding: 0 15px;
  border-top: 1px solid #e6e6e6;
  font-size: 14px;
  line-height: 33px; }
  .cover-summary__item:last-child {
    border-bottom: 1px solid #e6e6e6; }
  @media only screen and (max-width: 758px) {
    .cover-summary__item {
      border-left: 1px solid #e6e6e6;
      border-right: 1px solid #e6e6e6;
      text-align: left; } }

.cover-summary__item--toggle {
  position: relative;
  cursor: pointer;
  transition: 0.05s background-color ease; }
  .cover-summary__item--toggle .icon, .cover-summary__item--toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .cover-summary__item--toggle .checkbox__faux-input:before, .cover-summary__item--toggle .mfp-close:before, .cover-summary__item--toggle .alert__close, .cover-summary__item--toggle .btn--arrow-right:after, .cover-summary__item--toggle .favourite-nav__shortlist__heart, .cover-summary__item--toggle .needhelp__icon, .cover-summary__item--toggle .pagination li a, .pagination li .cover-summary__item--toggle a, .cover-summary__item--toggle .product-detail__favourite, .cover-summary__item--toggle .product-favourite__trigger, .cover-summary__item--toggle .quotes-nav__list__item:before {
    position: absolute;
    right: 12px;
    top: 12px;
    font-size: 10px; }
  .cover-summary__item--toggle:active {
    background: #fafafa; }
  @media only screen and (min-width: 759px) {
    .cover-summary__item--toggle {
      display: none; } }

.cover-summary__item__title {
  margin-right: 5px;
  color: #3D3D3D;
  line-height: 1; }

.cover-summary__item__value {
  color: #3D3D3D;
  line-height: 1; }

/**
 * Nav
 */
.tabs__nav {
  margin: 0;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  list-style: none; }

.tabs__nav-item {
  -ms-flex: 1 auto;
  flex: 1 auto;
  border-right: 1px solid #d8d8d8;
  border-bottom: 1px solid #d8d8d8; }
  .tabs__nav-item.is-active {
    border-bottom: 0; }
  .tabs__nav-item:last-child {
    border-right: 0; }

.tabs__nav-link {
  padding: 0 10px;
  display: block;
  width: 100%;
  color: #122230;
  line-height: 60px;
  background: #fafafa;
  border: none;
  border-top: 4px solid transparent; }
  .tabs__nav-link:focus {
    outline: none; }
  .tabs__nav-link:hover {
    color: #122230;
    transition: 167ms ease; }
  .is-active .tabs__nav-link {
    color: #122230;
    background: #fff;
    border-top-color: #FF647D; }

/**
 * Content
 */
.tabs__content {
  display: none; }
  .tabs__content.is-active {
    display: block; }

.boxed {
  margin-bottom: 30px;
  background: #FFFFFF;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07);
  border-radius: 2px; }
  .boxed + .boxed {
    margin-top: -15px; }

.boxed__header {
  padding: 20px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  color: #122230; }
  @media only screen and (min-width: 759px) {
    .boxed__header {
      -ms-flex-align: baseline;
      align-items: baseline;
      padding: 20px 30px; } }

.boxed__header-help {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  margin-left: auto;
  font-size: 12px; }
  @media (max-width: 500px) {
    .boxed__header-help {
      display: block; } }

.boxed__header-help-text {
  margin-left: 5px;
  white-space: nowrap; }

.boxed__body {
  padding: 20px; }
  .boxed__body p a {
    color: #122230; }
  .boxed__body iframe {
    display: block; }
  .boxed__header + .boxed__body {
    border-top: 1px solid #e6e6e6; }
  .boxed__body > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width: 759px) {
    .boxed__body {
      padding: 30px; } }

.boxed--muted {
  opacity: 0.65; }

.boxed--complete {
  background: #122230;
  color: #fff; }
  .boxed--complete .icon, .boxed--complete .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .boxed--complete .checkbox__faux-input:before, .boxed--complete .mfp-close:before, .boxed--complete .alert__close, .boxed--complete .btn--arrow-right:after, .boxed--complete .favourite-nav__shortlist__heart, .boxed--complete .needhelp__icon, .boxed--complete .pagination li a, .pagination li .boxed--complete a, .boxed--complete .product-detail__favourite, .boxed--complete .product-favourite__trigger, .boxed--complete .quotes-nav__list__item:before {
    background: #FF647D;
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    border-radius: 50%;
    color: #fff; }
    @media only screen and (min-width: 759px) {
      .boxed--complete .icon, .boxed--complete .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .boxed--complete .checkbox__faux-input:before, .boxed--complete .mfp-close:before, .boxed--complete .alert__close, .boxed--complete .btn--arrow-right:after, .boxed--complete .favourite-nav__shortlist__heart, .boxed--complete .needhelp__icon, .boxed--complete .pagination li a, .pagination li .boxed--complete a, .boxed--complete .product-detail__favourite, .boxed--complete .product-favourite__trigger, .boxed--complete .quotes-nav__list__item:before {
        position: relative;
        top: -1px; } }

/*
* Step List
* Used in sidebar of product customiser
 */
.step-list {
  display: none;
  margin: 0;
  padding: 10px 0 30px;
  counter-reset: step-list;
  list-style-type: none; }
  .is-nav-open .step-list {
    display: block; }
  @media only screen and (min-width: 759px) {
    .step-list {
      display: block;
      min-height: 100vh; } }

.step-list__item {
  counter-increment: step-list; }

.step-list__link {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  display: block;
  padding-left: 30px;
  padding-right: 50px;
  text-decoration: none;
  line-height: 44px;
  color: rgba(255, 255, 255, 0.5);
  transition: 167ms ease; }
  .step-list__link:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 4px; }
  .step-list__link:after {
    position: absolute;
    top: 50%;
    margin-top: -12px;
    right: 20px;
    content: counter(step-list);
    width: 24px;
    height: 24px;
    font-size: 12px;
    line-height: 23px;
    text-align: center;
    border-radius: 50%;
    border: 1px solid currentColor; }
  .is-active .step-list__link {
    background: #195A5A;
    color: #fff; }
    .is-active .step-list__link:after {
      color: #fff; }
    .is-active .step-list__link:before {
      background: #FF647D; }
  .has-errors .step-list__link:before {
    background: #e0684a; }
  .is-complete .step-list__link {
    color: #fff; }
    .is-complete .step-list__link:after {
      font-family: "project-helm";
      background: #FF647D;
      border-color: #FF647D; }

.step-list__sub-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  background: #186161;
  font-size: 14px;
  line-height: 20px;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: 267ms ease-out; }
  .is-nav-open .is-active .step-list__sub-list {
    max-height: 240px;
    opacity: 1; }

.step-list__sub-item {
  padding-left: 50px;
  padding-bottom: 15px; }
  .step-list__sub-item:first-child {
    padding-top: 20px; }
  .step-list__sub-item:last-child {
    padding-bottom: 20px; }

.step-list__sub-link {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.5); }
  .is-active > .step-list__sub-link {
    color: #fff; }

.step-list__errors {
  display: inline-block;
  vertical-align: top;
  margin-right: 10px;
  background: #e0684a;
  color: #fff;
  width: 20px;
  height: 20px;
  line-height: 19px;
  font-size: 10px;
  text-align: center;
  border-radius: 50%; }

.customiser {
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end; }

.customiser__main {
  padding: 74px 10px 80px 10px;
  max-width: 100%;
  width: 100%;
  transition: 227ms ease-in-out; }
  @media only screen and (min-width: 759px) {
    .is-nav-open .customiser__main {
      -ms-transform: translateX(236px);
      transform: translateX(236px); } }
  @media (min-width: 1400px) {
    .is-nav-open .customiser__main {
      -ms-transform: translateX(0);
      transform: translateX(0);
      padding-left: 30px;
      width: calc(100vw - 300px); } }
  @media only screen and (min-width: 759px) {
    .customiser__main {
      padding: 30px 30px 60px 94px; } }
  @media (min-width: 1400px) {
    .customiser__main {
      padding-left: 30px;
      width: calc(100vw - 64px); } }

@media only screen and (min-width: 1024px) {
  .customiser__container {
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    max-width: 900px; } }

.customiser__nav {
  position: absolute;
  top: 0;
  left: 0;
  background: #122230;
  transition: 227ms ease-in-out;
  z-index: 1; }
  @media only screen and (max-width: 758px) {
    .customiser__nav {
      right: 0; } }
  @media only screen and (min-width: 759px) {
    .customiser__nav {
      height: 100%;
      width: 300px;
      -ms-transform: translateX(-100%) translateX(64px);
      transform: translateX(-100%) translateX(64px); } }
  @media only screen and (min-width: 759px) {
    .is-nav-open .customiser__nav {
      -ms-transform: translateX(0);
      transform: translateX(0); } }
  .is-nav-disabled .customiser__nav {
    display: none; }

@media only screen and (min-width: 1024px) {
  .customiser__form {
    -ms-flex: 1 auto;
    flex: 1 auto;
    margin-right: 30px; } }

.customiser__aside {
  -ms-flex: none;
  flex: none; }
  @media only screen and (min-width: 1024px) {
    .customiser__aside {
      width: 260px; } }

.customiser-nav-toggle {
  position: relative;
  display: block;
  padding: 0;
  width: 100%;
  padding: 10px 10px 14px;
  border: none;
  color: #fff;
  line-height: 1;
  text-align: center;
  font-size: 14px;
  background: #122230;
  transition: 167ms ease; }
  @media only screen and (min-width: 759px) {
    .customiser-nav-toggle span {
      opacity: 0.65; } }
  .customiser-nav-toggle small {
    font-size: 10px;
    text-transform: uppercase; }
  .customiser-nav-toggle .icon, .customiser-nav-toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .customiser-nav-toggle .checkbox__faux-input:before, .customiser-nav-toggle .mfp-close:before, .customiser-nav-toggle .alert__close, .customiser-nav-toggle .btn--arrow-right:after, .customiser-nav-toggle .favourite-nav__shortlist__heart, .customiser-nav-toggle .needhelp__icon, .customiser-nav-toggle .pagination li a, .pagination li .customiser-nav-toggle a, .customiser-nav-toggle .product-detail__favourite, .customiser-nav-toggle .product-favourite__trigger, .customiser-nav-toggle .quotes-nav__list__item:before {
    font-size: 10px;
    transition: 267ms ease; }
    .is-nav-open .customiser-nav-toggle .icon, .is-nav-open .customiser-nav-toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .is-nav-open .customiser-nav-toggle .checkbox__faux-input:before, .is-nav-open .customiser-nav-toggle .mfp-close:before, .is-nav-open .customiser-nav-toggle .alert__close, .is-nav-open .customiser-nav-toggle .btn--arrow-right:after, .is-nav-open .customiser-nav-toggle .favourite-nav__shortlist__heart, .is-nav-open .customiser-nav-toggle .needhelp__icon, .is-nav-open .customiser-nav-toggle .pagination li a, .pagination li .is-nav-open .customiser-nav-toggle a, .is-nav-open .customiser-nav-toggle .product-detail__favourite, .is-nav-open .customiser-nav-toggle .product-favourite__trigger, .is-nav-open .customiser-nav-toggle .quotes-nav__list__item:before {
      -ms-transform: rotate(180deg);
      transform: rotate(180deg); }
    @media only screen and (max-width: 758px) {
      .customiser-nav-toggle .icon, .customiser-nav-toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .customiser-nav-toggle .checkbox__faux-input:before, .customiser-nav-toggle .mfp-close:before, .customiser-nav-toggle .alert__close, .customiser-nav-toggle .btn--arrow-right:after, .customiser-nav-toggle .favourite-nav__shortlist__heart, .customiser-nav-toggle .needhelp__icon, .customiser-nav-toggle .pagination li a, .pagination li .customiser-nav-toggle a, .customiser-nav-toggle .product-detail__favourite, .customiser-nav-toggle .product-favourite__trigger, .customiser-nav-toggle .quotes-nav__list__item:before {
        position: absolute;
        right: 20px;
        top: 50%;
        margin-top: -5px; } }
    @media only screen and (min-width: 759px) {
      .customiser-nav-toggle .icon, .customiser-nav-toggle .checkbox--checked .checkbox__faux-input:before, .checkbox--checked .customiser-nav-toggle .checkbox__faux-input:before, .customiser-nav-toggle .mfp-close:before, .customiser-nav-toggle .alert__close, .customiser-nav-toggle .btn--arrow-right:after, .customiser-nav-toggle .favourite-nav__shortlist__heart, .customiser-nav-toggle .needhelp__icon, .customiser-nav-toggle .pagination li a, .pagination li .customiser-nav-toggle a, .customiser-nav-toggle .product-detail__favourite, .customiser-nav-toggle .product-favourite__trigger, .customiser-nav-toggle .quotes-nav__list__item:before {
        right: 0;
        font-size: 18px;
        width: 64px;
        text-align: center; } }
  .customiser-nav-toggle:active, .customiser-nav-toggle:focus {
    outline: none;
    background: #122230; }
  @media only screen and (min-width: 759px) {
    .customiser-nav-toggle {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 20px 0 20px 30px;
      text-transform: uppercase;
      font-weight: 700;
      font-size: 12px;
      letter-spacing: 1px;
      line-height: 20px;
      background: #008375;
      text-align: left; } }

.customiser-nav-toggle__progress {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #008375; }

.customiser-nav-toggle__progress-bar {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 40%;
  background: #FF647D;
  transition: width 600ms ease; }

.video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden; }
  .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.helm-insurer-list {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin-left: -10px; }
  @media only screen and (min-width: 759px) {
    .helm-insurer-list {
      margin-left: -20px; } }

.helm-insurer-list__item {
  display: inline-block;
  vertical-align: top;
  padding-left: 20px;
  margin-bottom: 15px; }
  @media only screen and (max-width: 758px) {
    .helm-insurer-list__item {
      padding-left: 10px; } }
  @media only screen and (min-width: 759px) {
    .helm-insurer-list__item {
      width: 33.3%; } }
  @media only screen and (min-width: 1024px) {
    .helm-insurer-list__item {
      width: 20%; } }

.helm-insurer-list__block {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  width: 270px;
  padding: 22px 15px;
  padding-top: 44px;
  max-width: 100%;
  margin: 0 auto;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 2px;
  background: #fff;
  color: #769090;
  text-align: center;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none; }
  .helm-insurer-list__block svg {
    max-width: 100%; }

.helm-insurer-list__logo-wrap {
  height: 90px; }

.helm-insurer-list__logo {
  display: block;
  width: 100%;
  height: auto;
  max-height: 100%;
  margin-bottom: 20px; }

.helm-insurer-list__details {
  color: #4D5157;
  font-family: "AkzidenzGroteskPro", Helvetica, sans-serif;
  font-display: 16px; }
  .helm-insurer-list__details .helm-insurer-list__insurer-text span {
    margin-bottom: 7px;
    color: #122230;
    font-weight: 600;
    display: block;
    font-size: 20px; }
  .helm-insurer-list__details .helm-insurer-list__pds-text {
    min-height: 45px; }

.helm-insurer-list__cta {
  display: block;
  margin-top: 15px;
  padding-top: 15px;
  font-size: 14px;
  border-top: 1px solid #EBEBEB;
  line-height: 1; }

.helm-insurer-list__block {
  width: 100%; }
  .helm-insurer-list__block img {
    max-width: 100%;
    display: block;
    height: 70px;
    width: auto;
    margin-bottom: 15px; }

.landing__widget-heading {
  padding-top: 40px;
  padding-bottom: 10px;
  font-family: 'BrandonGrotesque', Helvetica, sans-serif;
  font-size: 32px;
  text-align: center;
  font-weight: 600; }
  @media only screen and (min-width: 759px) {
    .landing__widget-heading {
      padding-top: 70px;
      font-size: 40px; } }

.landing__widget-subheading {
  margin-bottom: 1.5rem;
  padding-bottom: 3.5rem;
  text-align: center;
  border-bottom: 1px solid #ACAEAF; }
  .landing__widget-subheading span {
    max-width: 1100px;
    display: inline-block;
    font-weight: 500;
    font-size: 20px; }

.landing__insurers {
  padding-bottom: 40px; }
  .landing__insurers .helm-insurer-list__block {
    box-shadow: none; }

.price-guarantee {
  display: block;
  text-align: center;
  padding-bottom: 50px;
  padding-top: 50px; }
  @media only screen and (min-width: 759px) {
    .price-guarantee {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: start;
      align-items: start;
      text-align: left;
      padding-bottom: 75px;
      padding-top: 75px; } }

.price-guarantee__image {
  margin: auto;
  width: 110px; }
  @media only screen and (min-width: 759px) {
    .price-guarantee__image {
      margin: 0;
      width: 12.5%; } }

.price-guarantee__heading {
  font-size: 32px;
  font-weight: 700;
  font-family: "BrandonGrotesque", Helvetica, sans-serif; }

.price-guarantee__text-block {
  padding-left: 0px; }
  @media only screen and (min-width: 759px) {
    .price-guarantee__text-block {
      padding-left: 40px;
      width: 87.5%; } }

.price-guarantee__text {
  font-size: 18px;
  font-family: Helvetica, sans-serif; }

.trustpilot-wrapper {
  background-color: #fff;
  padding-bottom: 50px;
  padding-top: 50px; }

.trustpilot {
  position: relative; }
  .trustpilot .owl-stage {
    display: -ms-flexbox;
    display: flex; }
  .trustpilot .owl-nav button {
    position: absolute;
    right: 25px;
    top: 45%;
    width: 40px;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    height: 40px;
    background-color: transparent;
    border: none;
    background-image: url('data:image/svg+xml,<svg width="40" height="40" viewBox="0 0 40 40" fill="none" xmlns="http://www.w3.org/2000/svg"><rect width="40" height="40" rx="20" fill="%23F3F4F4"/><g clip-path="url(%23clip0_15_3380)"><path d="M16.885 14.3359L16.3306 14.8379L22.3784 20.3359L16.3306 25.8319L16.885 26.3359L23.485 20.3359L16.885 14.3359Z" fill="%23122230" stroke="%23122230" stroke-width="2"/></g><defs><clipPath id="clip0_15_3380"><rect width="11" height="16" fill="white" transform="translate(14.5 12)"/></clipPath></defs></svg>') !important; }
    .trustpilot .owl-nav button:first-child {
      -ms-transform: rotate(180deg);
      transform: rotate(180deg);
      right: auto;
      left: 25px; }
  .trustpilot .owl-item {
    display: -ms-flexbox;
    display: flex;
    opacity: 0;
    transition: 0.2s; }
    .trustpilot .owl-item.active {
      opacity: 1; }

.trustpilot__item {
  display: none;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  width: 100%;
  margin: 0 15px;
  padding: 2em;
  padding-bottom: 3.8em;
  background-color: #F3F4F4;
  text-decoration: none; }
  @media only screen and (max-width: 1023px) {
    .trustpilot__item {
      margin: 0 55px; } }
  .owl-item .trustpilot__item {
    display: -ms-flexbox;
    display: flex; }
  .trustpilot__item.trustpilot__item--first {
    text-align: center; }
    .trustpilot__item.trustpilot__item--first h3 {
      font-size: 32px;
      font-weight: 600;
      margin-bottom: 0;
      color: #000; }
    .trustpilot__item.trustpilot__item--first .trustpilot__rating {
      display: -ms-inline-flexbox;
      display: inline-flex;
      font-size: 40px; }
      @media only screen and (max-width: 758px) {
        .trustpilot__item.trustpilot__item--first .trustpilot__rating {
          font-size: 30px; } }

.trustpilot__rating-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: 10px;
  margin-bottom: 10px; }

.trustpilot__upper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 15px; }

.trustpilot__rating {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 0.2em;
  font-size: 21px; }
  .trustpilot__rating .rating__star {
    margin-right: 1px; }

.trustpilot__rating-number {
  font-family: 'Helvetica', 'sans-serif';
  font-weight: 600;
  color: #122230;
  margin-right: 10px;
  line-height: 35px;
  font-size: 46px; }
  @media only screen and (max-width: 758px) {
    .trustpilot__rating-number {
      line-height: 27px;
      font-size: 39px; } }

.trustpilot__review-heading {
  color: #292929;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 0.75em; }

.trustpilot__quote {
  color: #292929;
  line-height: 1.6875; }

.trustpilot__author {
  margin-bottom: 0;
  color: #7E7E7E;
  font-size: 14px; }

.trustpilot__date {
  margin: 0;
  color: #7E7E7E;
  font-size: 14px; }

.trustpilot-summary {
  margin-top: 1em;
  margin-bottom: 3em;
  font-size: 25px; }
  @media only screen and (max-width: 758px) {
    .trustpilot-summary {
      margin-bottom: 2em; } }
  .trustpilot-summary > div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center; }
    @media only screen and (max-width: 758px) {
      .trustpilot-summary > div {
        display: block;
        text-align: center; } }
    .trustpilot-summary > div > * {
      margin: 0 0.5em; }
  .trustpilot-summary h3 {
    color: #292929;
    line-height: 1.35;
    font-weight: 600;
    font-size: inherit; }
  .trustpilot-summary .trustpilot__rating {
    margin-bottom: 0;
    font-size: 31px; }
    @media only screen and (max-width: 758px) {
      .trustpilot-summary .trustpilot__rating {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: center;
        justify-content: center; } }
  .trustpilot-summary p {
    color: #292929;
    font-size: 25px; }

.trustpilot__author {
  position: absolute;
  left: 35px;
  bottom: 30px;
  margin-bottom: 0;
  font-family: "AkzidenzGroteskPro", Helvetica, sans-serif;
  color: #58C5C7;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px; }

.trustpilot-summary__total {
  color: #292929; }
  @media only screen and (max-width: 758px) {
    .trustpilot-summary__total {
      font-size: 18px; } }
  .trustpilot-summary__total .trustpilot-summary__logo {
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    width: 50% !important;
    min-width: 100px;
    max-width: 180px; }
    @media only screen and (max-width: 758px) {
      .trustpilot-summary__total .trustpilot-summary__logo {
        position: relative;
        top: 5px; } }

.trustpilot__review-heading {
  font-family: "BrandonGrotesque", Helvetica, sans-serif;
  color: #122230;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.35;
  margin-bottom: 0.75em; }

.postcode-autofill {
  position: relative; }

.postcode-autofill__list {
  list-style: none;
  border: 2px solid #d8d8d8;
  border-top: none;
  width: 100%;
  margin-left: 0;
  position: absolute;
  background-color: #fff;
  z-index: 99999;
  max-height: 205px; }

.postcode-autofill__list--scroll {
  overflow-y: scroll;
  scrollbar-width: thin; }

.postcode-autofill__list-item button {
  border: none;
  background: none;
  font-size: inherit;
  color: inherit;
  padding: 15px 15px;
  width: 100%;
  text-align: left; }
  .postcode-autofill__list-item button:hover, .postcode-autofill__list-item button:focus {
    background-color: #fafafa;
    color: #70c137; }

.modal-add-contact {
  width: 600px;
  padding: 50px 15px; }
  @media only screen and (min-width: 759px) {
    .modal-add-contact {
      padding: 50px 35px; } }
  @media only screen and (min-width: 1024px) {
    .modal-add-contact {
      width: 1100px;
      padding: 60px 30px; } }

.numbered-blocks {
  display: grid;
  gap: 12px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  grid-template-columns: 1fr; }
  @media only screen and (min-width: 1024px) {
    .numbered-blocks {
      grid-template-columns: repeat(3, 1fr);
      gap: 40px; } }
  .numbered-blocks__connector {
    position: absolute;
    top: 0;
    left: 0;
    height: 2px;
    background-color: #F3F4F4;
    margin-top: 40px;
    z-index: -10;
    margin-left: 190px;
    width: calc(100% - 370px);
    display: none; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__connector {
        display: block; } }
  .numbered-blocks__item {
    position: relative;
    text-align: left;
    margin: 0 auto;
    padding-left: 60px; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__item {
        padding-left: 0;
        max-width: 384px;
        text-align: center; } }
  .numbered-blocks__number {
    position: absolute;
    left: 0px;
    width: 50px;
    height: 50px;
    top: 7px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    border-radius: 50%;
    margin: 0 auto;
    border: 8px solid #fff; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__number {
        position: static;
        width: 80px;
        height: 80px; } }
    .numbered-blocks__number--blue {
      background-color: #58C5C7; }
    .numbered-blocks__number--black {
      background-color: #122230; }
    .numbered-blocks__number--green {
      background-color: #9EDB45; }
  .numbered-blocks__title {
    font-weight: bold;
    font-size: 18px;
    margin-top: 16px;
    margin-bottom: 12px; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__title--blue {
        color: #58C5C7; }
      .numbered-blocks__title--black {
        color: #122230; }
      .numbered-blocks__title--green {
        color: #9EDB45; } }
  .numbered-blocks__description {
    color: #4D5157;
    font-size: 16px;
    line-height: 1.5;
    margin: 0; }
  .numbered-blocks__btn {
    margin-top: 20px !important; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__btn {
        display: none; } }
  .numbered-blocks__qr-wrapper {
    display: none; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__qr-wrapper {
        margin-top: 30px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-pack: center;
        justify-content: center; } }
    .numbered-blocks__qr-wrapper img {
      width: 150px;
      margin-left: 30px; }
  .numbered-blocks__qr-text {
    display: none;
    font-family: "BrandonGrotesque", Helvetica, sans-serif;
    font-weight: 700;
    font-size: 20px;
    text-align: right;
    -ms-flex-item-align: center;
    align-self: center; }
    @media only screen and (min-width: 1024px) {
      .numbered-blocks__qr-text {
        display: block; } }

/**
 * shame.css
 * http://csswizardry.com/2013/04/shame-css/
 */
/**
 * SHAME
 *
 * Generic styles can be placed here during build but
 * must be moved to an appropriate file prior to launch.
 *
 */
.bg-white {
  background-color: #fff; }

/**
 * HELPERS
 *
 * Helper classes and mixins
 *
 */
.block {
  display: block; }

.push-hard--bottom {
  margin-bottom: 40px; }

/*
* Responsively hide and show elements a la Bootstrap
*/
.hidden {
  display: none; }

@media only screen and (max-width: 758px) {
  .hidden--palm {
    display: none !important; } }

@media only screen and (min-width: 759px) and (max-width: 1023px) {
  .hidden--lap {
    display: none !important; } }

@media only screen and (min-width: 759px) {
  .hidden--lap-and-up {
    display: none !important; } }

@media only screen and (max-width: 1023px) {
  .hidden--portable {
    display: none !important; } }

@media only screen and (min-width: 1024px) {
  .hidden--desk {
    display: none !important; } }

@media only screen and (min-width: 1400px) {
  .hidden--desk-wide {
    display: none !important; } }

.show--palm {
  display: none !important; }
  @media only screen and (max-width: 758px) {
    .show--palm {
      display: block !important; }
      .show--palm.grid__item {
        display: inline-block !important; } }

.show--lap {
  display: none !important; }
  @media only screen and (min-width: 759px) and (max-width: 1023px) {
    .show--lap {
      display: block !important; }
      .show--lap.grid__item {
        display: inline-block !important; } }

.show--lap-and-up {
  display: none !important; }
  @media only screen and (min-width: 759px) {
    .show--lap-and-up {
      display: block !important; }
      .show--lap-and-up.grid__item {
        display: inline-block !important; } }

.show--portable {
  display: none !important; }
  @media only screen and (max-width: 1023px) {
    .show--portable {
      display: block !important; }
      .show--portable.grid__item {
        display: inline-block !important; } }

.show--desk {
  display: none !important; }
  @media only screen and (min-width: 1024px) {
    .show--desk {
      display: block !important; }
      .show--desk.grid__item {
        display: inline-block !important; } }

.show--desk-wide {
  display: none !important; }
  @media only screen and (min-width: 1400px) {
    .show--desk-wide {
      display: block !important; }
      .show--desk-wide.grid__item {
        display: inline-block !important; } }
