html,
button,
input,
select,
textarea {
    color: #454139;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

audio,
canvas,
img,
video {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

a, a:visited, a:link, a:active {
    text-decoration: none;
    outline: 0;
}

a:hover {
    text-decoration: none;
}

img, embed, object, video {
    max-width: 100%;
}

/* layout */

body {
    background-color: #fff;
    letter-spacing: 0.5px;
}

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

.group:before, .group:after {
    content: "";
    display: table;
}

.group:after {
    clear: both;
}

.group {
    zoom: 1;
}

html {
    font-size: 16px;
    line-height: 24px;
}

/* font-family: 'gira-sans', Verdana, Helvetica Neue, Helvetica, Arial, sans-serif; */

input {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
}

body {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 1em;
    line-height: 1.5;
    font-weight: 300;
}

h1 {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 2.618em;
    line-height: 1.2;
    margin: 0 0 0.75em 0;
    font-weight: 700;
    color: #3F7EB7;
}

h2, h3 {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 1.618em;
    line-height: 1.2;
    margin: 1.5em 0 0.5em 0;
    color: #3F7EB7;
    font-weight: 700;
}

h4 {
    font-size: 1em;
    line-height: 1.5;
    margin: 0 0 0.5em 0;
    color: #2B282B;
}

h4 a, h4 a:visited, h4 a:link, h4 a:active {
    color: #0000ee;
}

h4 a:hover {
    color: #8080f7;
    text-decoration: none;
}

p {
    margin-top: 0em;
    margin-bottom: 1.5em;
    color: #666;
}

p a, p a:visited, p a:link, p a:active {
    color: #a00625;
    text-decoration: none;
}

p a:hover {
    color: #a00625;
    text-decoration: none;
}

p strong {
    font-weight: 700;
    color: #2B282B;
}

p em {
    color: #999;
}

ul {
    margin: 0.5em 0 1em 3em;
    padding: 0;
    display: inline-block;
}

ul li {
    padding: 0 0 0.5em 0;
    list-style: circle;
    color: #666;
}

ul li strong {
    color: #2B282B;
}

ul li a, ul li a:visited, ul li a:link, ul li a:active {
    color: #a00625;
    text-decoration: none;
}

ul li a:hover {
    color: #a00625;
    text-decoration: none;
}

ol {
    margin: 0.5em 0 1em 3em;
    padding: 0;
    display: inline-block;
}

ol li {
    color: #666;
    padding: 0 0 0.5em 0;
    list-style: decimal;
}

ol li a {
    color: #a00625;
    text-decoration: none;
}

ol li a:hover {
    color: #a00625;
    text-decoration: none;
}

small {
    color: #999;
    font-weight: 300;
}

/* page */

.page_wrap {
    width: 100%;
    margin: 0 auto;
}

/* layout */

.layout_bg {
    width: 100%;
    float: left;
    display: inline;
}

.layout_full {
    width: 95%;
    /*max-width: 1152px;*/
    margin: 0 auto;
}

@media only screen and (max-width: 460px) {

    .layout_full {
        width: 90%;
    }

}

.layout_brand {
    width: 85%;
    margin: 0 auto;
}

@media only screen and (max-width: 1280px) {
    .layout_brand {
        width: 95%;
    }
}

.layout_slider {
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
}

.layout {
    width: 90%;
    max-width: 1152px;
    margin: 0 auto;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

hr {
    border-top: 3px solid #ccc;
    margin: 3em auto;
    width: 25%;
    height: 0;
    clear: both;
}

hr:last-child {
    border-top: 0px;
}

.border_bottom {
    border-bottom: 3px solid #eee;
}

.no_border_bottom {
    border-bottom: 0;
}

.border {
    border: 1px solid #eee;
}

.border_dark {
    border: 1px solid #999;
}

/* colours */

.brand_red {
    color: #ed1a3b;
}
.brand_yellow {
    color: #ffcb08;
}
.brand_blue {
    color: #009fdf;
}
.brand_light_blue {
    color: #81cbf1;
}
.brand_grey {
    color: #636466;
}
.brand_light_grey {
    color: #ebeced;
}
.brand_orange {
    color: #faa61a;
}

.grey {
    background-color: #eee;
}

.black {
    background-color: #000;
}

.white {
    background-color: #fff;
}

.blue {
    background-color: #20a4f3;
}

.red {
    background-color: #a00625;
}

.light_grey {
    background-color: #d0ccd0;
}

.dark_grey {
    background-color: #605856;
}

.bg {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg_red {
    background-image: url('/img/bg_red.jpg');
    background-position: 0% 0%;
}

.bg_light_grey {
    background-image: url('/img/bg_light_grey.jpg');
}

.bg_dark_grey {
    background-image: url('/img/bg_dark_grey.jpg');
    background-position: 100% 0%;
}

.bg_green {
    background-image: url('/img/bg_green.jpg');
    background-position: 0% 0%;
}

/* cols */

.col_hide {
    display: inline;
}

@media only screen and (max-width: 600px) {

    .col_hide {
        display: none;
    }

}

.col_nav {
    display: block;
    float: left;
    margin: 1% 0 1% 1.6%;
}

.col_nav:first-child {
    margin-left: 0;
}

.col_nav_left {
    width: 32.26%;
}

.col_nav_right {
    width: 66.13%;
}

@media only screen and (max-width: 460px) {

    .col_nav_left {
        width: 66.13%;
    }

    .col_nav_right {
        width: 32.26%;
    }

}

.col {
    display: block;
    float: left;
    margin: 1% 0 1% 1.6%;
}

.col_snippets {
    margin: 0;
}
.col_snippets_bg {
    margin: 0 0 0 1.6%;
}

.col_promo {
    margin: 0 0 0 1.6%;
}

@media only screen and (max-width: 600px) {

    .col {
        display: block;
        float: left;
        margin: 1% 0 1% 0%;
    }

}

.col_no_margin {
    margin-left: 0;
}

.col:first-child {
    margin-left: 0;
}

.col_12_of_12 {
    width: 100%;
}

.col_11_of_12 {
    width: 91.53%;
}

.col_10_of_12 {
    width: 83.06%;
}

.col_9_of_12 {
    width: 74.6%;
}

.col_8_of_12 {
    width: 66.13%;
}

.col_7_of_12 {
    width: 57.66%;
}

.col_6_of_12 {
    width: 49.2%;
}

.col_5_of_12 {
    width: 40.73%;
}

.col_4_of_12 {
    width: 32.26%;
}

.col_3_of_12 {
    width: 23.8%;
}

.logo_3_of_12 {
    width: 23.8%;
}

.col_2_of_12 {
    width: 15.33%;
}

.col_1_of_12 {
    width: 6.86%;
}

@media only screen and (max-width: 600px) {

    .col_6_of_12 {
        width: 100%;
    }

    .col_3_of_12 {
        width: 100%;
    }

    .col_8_of_12 {
        width: 100%;
    }

    .col_4_of_12 {
        width: 100%;
    }

}

/* padding */

.p {
    padding: 1.5em;
}

.p_d_t {
    padding-top: 3em;
}

.mobile_p_d_t {
    padding-top: 3em;
}

@media only screen and (max-width: 600px) {

    .mobile_p_d_t {
        padding-top: 1.5em;
    }

}

.p_t {
    padding-top: 1.5em;
}

.p_h_t {
    padding-top: 0.75em;
}

.p_b {
    padding-bottom: 1.5em;
}

.p_h_b {
    padding-bottom: 0.75em;
}

.p_d_b {
    padding-bottom: 3em;
}

.p_r {
    padding-right: 1.5em;
}

.p_l {
    padding-left: 1.5em;
}

/* margins */

.m_b {
    margin-bottom: 1.5em;
}
.m_t {
    margin-top: 1.5em;
}

/* logo */

.z_10 {
    z-index: 10;
}

.z_20 {
    z-index: 20;
}

.logo_desktop {
    display: block;
}

@media only screen and (max-width: 768px) {
    .logo_desktop {
        display: none;
    }
}

.logo_mobile {
    display: none;
}

@media only screen and (max-width: 768px) {
    .logo_mobile {
        display: block;
        padding: 9px 0 0 0;
    }
}

.logo_bg {
    position: absolute;
    z-index: 9999;
}

.logo {
    margin: 0;
    display: block;
}

.logo h2 {
    margin: 0;
    padding: 0;
    color: #0000ee;
    font-weight: 700;
}

.logo h2 a, .logo h2 a:visited, .logo h2 a:link, .logo h2 a:active {
    color: #0000ee;
}

.logo h2 a:hover {
    color: #8080f7;
    text-decoration: underline;
}

/* nav mini */

.nav_mini ul {
    margin: 0;
    padding: 0;
}

.nav_mini ul li {
    list-style: none;
    margin: 0;
    padding: 0 0.375em;
    display: inline-block;
    color: #2B282B;
    font-weight: 700;
}

.nav_mini ul li a {
    display: block;
    font-weight: 300;
    color: #605856;
}

.nav_mini ul li a:hover {
    color: #605856;
}

/* nav */

.nav_menu {
    width: 36px;
    height: 36px;
    color: #fff;
}

.nav {
    padding: 6px 0 0 0;
}

.nav ul {
    margin: 0;
    padding: 0;
}

.nav ul li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-block;
}

.nav ul li.phone {
    font-weight: 700;
    padding: 0.25em 1.5em 0.25em 3em;
    color: #2B282B;
}

.nav ul li a {
    display: block;
    font-weight: 400;
    color: #fff;
    padding: 12px;
    font-size: 18px;
    line-height: 24px;
}

.nav ul li a:hover {
    color: #fff;
}

.nav ul li.here a {
    font-weight: 700;
    color: #fff;
}

/* drop */

.nav ul li a.drop {
    display: block;
    font-weight: 400;
    color: #fff;
    padding: 12px;
    font-size: 18px;
    line-height: 24px;
}

.nav ul li a.drop:hover {
    color: #fff;
}

.nav ul li.here a.drop {
    font-weight: 400;
    color: #fff;
}

.nav ul li:hover a.drop {
    color: #fff;
}

/* drop down */

.nav ul li ul {
    width: 13em;
    padding: 0;
    margin: 0;
    text-align: left;
    background-color: #fff;
}
.nav ul li ul li {
    padding: 0;
    margin: 0;
    display: block;
    border-bottom: 2px solid #ccc;
}

.nav ul li ul li:last-child {
   border-bottom: 0px;
}

.nav ul li ul li a, .nav ul li.here ul li a {
    display: block;
    font-weight: 400;
    color: #666;
    padding: 12px 24px;
    border: 0;
    font-size: 18px;
    line-height: 24px;
}

.nav ul li ul li a:hover, .nav ul li.here ul li a:hover {
    color: #2B282B;
}

/* superfish */

.sf_menu, .sf_menu * {
    margin: 0;
    padding: 0;
    list-style: none;
}

.sf_menu li {
    position: relative;
}

.sf_menu ul {
    position: absolute;
    display: none;
    top: 100%;
    left: -12px;
    z-index: 9999;
}

.sf_menu > li {
    display: inline-block;
}

.sf_menu li:hover > ul,
.sf_menu li.sfHover > ul {
    display: block;
}

.sf_menu a {
    display: block;
    position: relative;
}

.sf_menu ul ul {
    top: 0;
    left: 100%;
}

/* features */

.features {
    margin: 0 0 3.2% 0;
}

.features p {
    color: #ccc;
}

.img_black {

    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.features_hover:hover .img_black {
    background-image: linear-gradient( -45deg, rgba(237,25,58,0.5), rgba(250,165,25,1) );
}

.img_white {
    background: rgba(255, 255, 255, 0.5);
    display: block;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.absolute {
    position: absolute;
}

/* slider  */

.s50 {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 8;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.hot {
    background-image: linear-gradient( 45deg, rgba(237,25,58,0.5), rgba(250,165,25,1) );
}
.cold {
    background-image: linear-gradient( 45deg, rgba(237,24,124,1), rgba(62,168,215,1) );
}

/* #faa519 #ed193a */

.s50_caption {
    position: absolute;
    z-index: 9;
    top: 4em;
    left: 5em;
    padding-right: 3em;
}

.s50_caption h2 {
    font-size: 48px;
    line-height: 56px;
    margin: 0 0 12px 0;
    color: #fff;
    font-weight: 900;
    display: block;
    font-style: italic;
}

.s50_caption p {
    font-size: 20px;
    line-height: 28px;
    margin: 0;
    color: #fff;
    font-weight: 400;
    display: block;
}

a.s50_btn {
    font-size: 1em;
    line-height: 1.5;
    margin: 1.5em 0 0 0;
    color: #fff;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #fff;
    padding: 0.5em 1em 0.4em 1em;
}

.s50_mobile_bg {
    background-image: none;
}

.s50_caption_mobile {
    text-align: center;
    padding: 1.5em 3em;
}

.s50_caption_mobile h2 {
    font-size: 1em;
    line-height: 1.5;
    margin: 0 0 0.5em 0;
    color: #fff;
    font-weight: 700;
    display: block;
}

.s50_caption_mobile p {
    font-size: 0.75em;
    line-height: 1.5;
    margin: 0;
    font-weight: 300;
    color: #fff;
}

a.s50_btn_mobile {
    font-size: 0.75em;
    line-height: 1.5;
    margin: 1.5em auto;
    color: #fff;
    font-weight: 700;
    display: block;
    width: 50%;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #fff;
    padding: 0.5em 1em 0.4em 1em;
}

@media only screen and (max-width: 600px) {

    .s50_mobile_bg {
        background-image: linear-gradient( 45deg, rgba(237,25,58,1), rgba(250,165,25,1) );
    }

    .cold {
        display: none;
    }

    .s50_caption {
        display: none;
    }

    .s50_caption_mobile {
        display: block;
    }

}

/* home_slider */

.slider_50 {
    float: left;
    display: inline;
    width: 50%;
}

.slider_full {
    position: absolute;
    bottom: 1.5em;
    right: 1.5em;
    z-index: 9;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.75);
    padding: 0.75em 1.5em;
}

.slider_half {
    position: absolute;
    z-index: 9;
    width: 75%;
    top: 55%;
    left: 50%;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    text-align: center;
}

.slider_btn {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em 0.4em 1em;
    font-weight: 700;
    outline: 0;
    color: #fff;
    background-color: #0000ee;
    border-left: 1px solid #0000ee;
    border-right: 1px solid #0000ee;
    border-top: 1px solid #0000ee;
    border-bottom: 1px solid #0000ee;
    text-transform: uppercase;
    margin: 1.5em 0 0 0;
}

.slider_red_btn {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em 0.4em 1em;
    font-weight: 700;
    letter-spacing: 0.5px;
    outline: 0;
    color: #a00625;
    background-color: #fff;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    border-bottom: 5px solid #a00625;
    text-transform: uppercase;
    margin: 1.5em 0 0 0;
}

.slider_caption h2 {
    font-size: 1.375em;
    line-height: 1.5;
    margin: 0;
    color: #000;
    font-weight: 300;
    display: inline-block;
}

.slider_caption h2 a {
    color: #a00625;
    font-weight: 700;
    text-decoration: underline;
}

.slider_caption h3 {
    font-size: 2em;
    line-height: 1.5;
    margin: 0 0 0.25em 0;
    color: #000;
    font-weight: 700;
    display: inline-block;
}

.slider_caption p {
    font-size: 1.25em;
    line-height: 1.4;
    margin: 0;
    color: #605856;
    font-weight: 300;
}

.slider_caption p a {
    color: #d0ccd0;
    font-weight: 700;
    text-decoration: underline;
}

/* feature_slider */

.feature_50 {
    float: left;
    display: inline;
    width: 50%;
}

.feature_full {
    position: absolute;
    bottom: 1.5em;
    right: 1.5em;
    z-index: 99;
    background-color: #fff;
    background-color: rgba(255, 255, 255, 0.75);
    padding: 0.75em 1.5em;
}

.feature_half {
    position: absolute;
    z-index: 99;
    top: 40%;
    left: 50%;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    text-align: center;
}

.feature h2 {
    font-size: 1.375em;
    line-height: 1.5;
    margin: 0;
    color: #2B282B;
    font-weight: 300;
    display: inline-block;
}

.feature h2 a {
    color: #a00625;
    font-weight: 700;
    text-decoration: underline;
}

.feature_red_btn {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em 0.4em 1em;
    font-weight: 700;
    letter-spacing: 0.5px;
    outline: 0;
    color: #a00625;
    background-color: #fff;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    border-bottom: 5px solid #a00625;
    text-transform: uppercase;
    margin: 1.5em 0 0 0;
}

.feature h3 {
    font-size: 2em;
    line-height: 1.5;
    margin: 0 0 0.25em 0;
    color: #2B282B;
    font-weight: 700;
    display: inline-block;
}

.feature p {
    font-size: 1.25em;
    line-height: 1.4;
    margin: 0;
    color: #605856;
    font-weight: 300;
}

.feature p a {
    color: #d0ccd0;
    font-weight: 700;
    text-decoration: underline;
}

/* slider */

.slider {
    width: 100%;
    margin: 0 auto;
}

/* slider_home */

.slider_home {
    padding-bottom: 33%;
}

@media only screen and (max-width: 600px) {

    .slider_home {
        padding-bottom: 100%;
    }

}

.slider_cell_home {
    width: 100%;
    height: 100%;
    margin-right: 0;
}

/* slider_feature */

.slider_feature {
    padding-bottom: 25%;
}

.slider_cell_feature {
    width: 100%;
    height: 100%;
    margin-right: 0;
}

/* slider_common */

.slider .flickity-viewport {
    position: absolute;
    width: 100%;
}

/* video */

.player_full {
    position: relative;
    padding-top: 115.7514404%;
}

.player_small {
    position: relative;
    padding-top: 56.2757202%;
}

.player iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;

}

/* promo */

.promo_btn {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em 0.4em 1em;
    font-weight: 700;
    outline: 0;
    color: #fff;
    background-color: #a00625;
    border-left: 1px solid #a00625;
    border-right: 1px solid #a00625;
    border-top: 1px solid #a00625;
    border-bottom: 5px solid #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 1.5em 0 0 0;
}

.promo h3 {
    font-size: 1.618em;
    line-height: 1.5;
    margin: 0 0 0.5em 0;
    color: #2B282B;
    font-weight: 700;
    display: inline-block;
}

.promo h3 a {
    color: #a00625;
    font-weight: 700;
    text-decoration: underline;
}

.promo p {
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    color: #2B282B;
    font-weight: 300;
}

.promo p a {
    color: #a00625;
    font-weight: 300;
    text-decoration: underline;
}

.promo p strong {
    color: #2B282B;
    font-weight: 700;
}

.promo small a {
    color: #a00625;
}

/* promo entry */

.outline {
    border: 0px solid #eee;
}

.promo_entry_margin {
    margin: 0.5em;
}

.entry .promo_entry_bg {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.entry .promo_entry_overlay {
    /*background-color: rgba(250,166,27,1);*/
    /* background-image: linear-gradient( 45deg, rgba(237,25,58,0.75), rgba(250,165,25,1) ); */
    /* margin: 1.5em; */
    background-color: #eee;
}

.entry .promo_entry h2 {
    font-size: 48px;
    line-height: 54px;
    margin: 0;
    color: #2B282B;
    font-weight: 700;
    display: block;
    text-transform: none;
}

.entry .promo_entry h2 sup {
    font-size: 18px;
    color: #2B282B;
    margin: 0;
    font-weight: 400;
}

.entry .promo_entry h2 sup.month {
    font-size: 18px;
    color: #2B282B;
    font-weight: 400;
    margin: 0;
}

.entry .promo_entry h3 {
    font-size: 18px;
    line-height: 24px;
    margin: 6px 0 0 0;
    color: #2B282B;
    font-weight: 700;
    display: block;

}

.entry .promo_entry h4 {
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 24px 0;
    color: #2B282B;
    font-weight: 400;
    display: block;
    text-transform: capitalize;
}

.entry .promo_entry h3 a {
    color: #666;
    font-weight: 400;
    text-decoration: none;
}

.entry .promo_entry small a {
    color: #666;
}

.entry .promo_entry ul {
    margin: 24px 0 0 0;
    padding: 0;
    display: block;
}

.entry .promo_entry ul li {
    font-size: 18px;
    line-height: 24px;
    margin: 0;
    padding: 0 0 6px 0;
    color: #666;
    font-weight: 400;
    list-style: none;
    border-bottom: 0px solid #ddd;
}

.entry .promo_entry ul li:last-child {
    border-bottom: 0;
}

.entry .promo_entry_btn {
    outline: 0;
    text-align: center;
    font-size: 20px;
    line-height: 28px;
    margin: 24px 0 0 0;
    color: #fff;
    font-weight: 700;
    display: inline-block;
    background-color: #3F7EB7;
    padding: 12px 24px;
    border-radius: 24px;
}

.entry .promo_entry_btn:hover {
    color: #fff;
    background-color: #3F7EB7;
}

/* social */

.social a {
    display: inline-block;
    margin: 0 0.5em 0 0;
    border: 3px solid #000;
}

/* status */

.network_status a {
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    color: #00a651;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #00a651;
    padding: 0.5em 1em 0.4em 1em;
}

.m-right {
    text-align: right;
}

@media only screen and (max-width: 460px) {

    .m-right {
        text-align: center;
    }

}

.modal_status h4 {
    font-size: 2.618em;
    color: #fff;
    margin: 0;
    padding: 0;
}

.modal_status {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    padding: 0;
}

.modal_status_overlay {
    z-index: 9998;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
}

.modal_status_close {
    top: 0;
    right: 0;
    position: absolute;
    background-color: #000;
    color: #fff;
    padding: 0.25em 0.75em;
    font-size: 1em;
    font-weight: 700;
    cursor: pointer;
}

.modal_status_closed {
    display: none;
}

/* loader */

#loader {
    display: none;
}

.loader {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    padding: 0;
}

.loader_bg {
    z-index: 9998;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.75);
}

.btn_cancel {
    outline: 0;
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    color: #faa519;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #faa519;
    background-color: #fff;
    padding: 0.5em 1em 0.4em 1em;
}

.btn_cancel:hover {
    color: #7d530d;
    border: 4px solid #7d530d;
}

/* snippets */

.snippets h3 {
    font-weight: 300;
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 2.618em;
}

.snippets p {
    color: #ddd;
    font-weight: 300;
    margin: 0;
    font-size: 1em;
}

a.snippets_btn {
    font-size: 0.75em;
    line-height: 1.5;
    margin: 1.5em 0 0 0;
    color: #ed193a;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #ed193a;
    padding: 0.5em 1em 0.4em 1em;
}

@media only screen and (max-width: 460px) {

    .snippets h3 {
        font-size: 1.618em;
    }

}

/* plans */

.plans_home_bg {
    background-color: #7d520c;
}

.plans_home h3 {
    font-size: 2.618em;
    line-height: 1.5;
    margin: 0;
    color: #faa519;
    font-weight: 300;
    display: block;
}
.plans_home h3 sup {
    color: #ccc;
    font-size: 0.5em;
}

.plans_home h4 {
    font-size: 1em;
    line-height: 1.5;
    margin: 0 0 0.75em 0;
    color: #fff;
    font-weight: 300;
    display: block;
}

.plans_home h4 sup {
    color: #666;
}

.plans_home ul {
    margin: 0;
    padding: 0;
    display: block;
}

.plans_home ul li {
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    padding: 0.5em 0;
    color: #fee8c5;
    font-weight: 300;
    list-style: none;
    border-bottom: 4px solid #fbbc53;
}

.plans_home ul li:last-child {
    border-bottom: 0;
}

.plans_home_btn {
    font-size: 1em;
    line-height: 1.5;
    margin: 0.75em 0 0 0;
    color: #fff;
    font-weight: 700;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #fff;
    padding: 0.5em 1em 0.4em 1em;
    text-align: center;
}

.text_right {
    text-align: right;
}

/* availability */

.availability h2 {
    font-weight: 300;
    margin: 0 0 0.5em 0;
    padding: 0;
    color: #666;
    font-size: 3.618em;
}

.availability p {
    color: #999;
    font-weight: 300;
    margin: 0;
}

a.availability_btn {
    font-size: 1em;
    line-height: 1.5;
    margin: 1.5em 0 0 0;
    color: #faa519;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #faa519;
    padding: 0.5em 1em 0.4em 1em;
}

@media only screen and (max-width: 460px) {

    .availability h2 {
        font-size: 1.618em;
    }

}

/* support */

.support h2 {
    font-weight: 300;
    margin: 0 0 0.25em 0;
    padding: 0;
    color: #faa519;
    font-size: 2.618em;
}

.support p {
    color: #ccc;
    font-weight: 300;
    margin: 0 0 0.75em 0;
    font-size: 1.125em;
}

.support h2 a {
    color: #faa519;
}

@media only screen and (max-width: 460px) {

    .support h2 {
        font-size: 1.618em;
        margin: 0 0 0.75em 0;
        line-height: 1.5;
    }

    .support p {
        color: #999;
        font-weight: 300;
        margin: 0;
        font-size: 1em;
        line-height: 1.5;
    }

}

/* tagline */

.tagline h2 {
    font-weight: 300;
    margin: 0 0 0.5em 0;
    padding: 0;
    color: #faa519;
    font-size: 2.618em;
}

.tagline p {
    color: #999;
    font-weight: 300;
    margin: 0;
}

/* images */

.mini_header_caption h1 {
    font-size: 2.618em;
    line-height: 1.2;
    margin: 0 0 0.25em 0;
    color: #fff;
    font-weight: 300;
    display: block;
}

.mini_header_caption p {
    font-size: 1.125em;
    line-height: 1.5;
    margin: 0;
    color: #eee;
    font-weight: 300;
    display: block;
}

.business_img {
    background-image: url('../img/bg_business.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.mobile_img {
    background-image: url('../img/bg_mobile.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.gradient_bg {
    background-image: linear-gradient( -45deg, rgba(237,25,58,0.75), rgba(250,165,25,0.75) );
}

/* copyright */

.copyright p {
    color: #d0ccd0;
    font-size: 0.8em;
}

/* footer */

.footer_img {
    background-image: url('../img/bg_hills.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    /* background-attachment: fixed; */
    background-size: cover;
}

.footer_bg {
    /*background-color: #333;*/
    background-image: linear-gradient( 45deg, rgba(237,25,58,0.5), rgba(250,165,25,1) );
    /*background-image: linear-gradient( 45deg, rgba(255,51,153,0.5), rgba(139,210,238,1) );*/
}

.footer h2 {
    font-weight: 300;
    font-size: 2.618em;
    margin: 1.5em 0 0 0;
    padding: 0;
    color: #fff;
    text-align: center;
}

.footer h3 {
    font-weight: 300;
    font-size: 1.25em;
    margin: 0 0 0.5em 0;
    padding: 0;
    color: #fff;
}

.footer h3 a {
    color: #fff;
    text-decoration: none;
}

.footer h3 a:hover {
    color: #fff;
    text-decoration: underline;
}

.footer ul {
    margin: 0;
    padding: 0;
}

.footer ul li {
    list-style: none;
    margin: 0 0 0.375em 0;
    padding: 0;
}

.footer ul li a {
    color: #eee;
    font-weight: 400;
    display: block;
}

.footer ul li a:hover {
    color: #fff;
    text-decoration: underline;
}

.m_center {
    text-align: left;
}

@media only screen and (max-width: 600px) {

    .footer h2 {
        font-size: 1.618em;
        line-height: 1.5;
        margin-bottom: 0;
    }

    .footer h3 {
        font-size: 1em;
        margin: 0 0 0.75em 0;
    }

    .footer ul {
        width: 100%;
        margin: 0.75em 0 1.5em 0;
    }

    .footer ul li a {
        font-size: 1em;
    }

    .m_center {
        text-align: center;
    }

}

/* features */

.vc {
    position: absolute;
    top: 50%;
    left: 50%;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    text-align: center;
    z-index: 2;
}

.features_hover:hover h3 {
    text-decoration: underline;
}

/* urgent */

.urgent {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
}

.urgent h4 {
    font-size: 2.618em;
    color: #fff;
    margin: 0;
    padding: 0;
}

.urgent_overlay {
    z-index: 9998;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
}

.urgent_close {
    top: 0;
    right: 0;
    position: absolute;
    background-color: #2B282B;
    color: #fff;
    padding: 0.25em 0.75em;
    font-size: 1em;
    font-weight: 700;
    cursor: pointer;
}

.urgent_closed {
    display: none;
}

/* entry heading */

.entry_nav {
    padding: 144px 0 0 0;
}

@media only screen and (max-width: 1280px) {
    .entry_nav {
        padding: 50px 0 0 0;
    }
}

.entry_gradient {
    background: linear-gradient(45deg, #22C0ED, #FE007C);
    padding: 0 0 72px 0;
}

.entry_gradient h1 {
    font-size: 60px;
    line-height: 64px;
    margin: 0;
    color: #fff;
    font-weight: 700;
    font-family: 'Barlow', Helvetica Neue, Helvetica, Arial, sans-serif;
    padding: 0;
    text-transform: uppercase;
}

@media only screen and (max-width: 1280px) {
    .entry_gradient h1 {
        font-size: 60px;
        line-height: 64px;
    }
}

@media only screen and (max-width: 1024px) {
    .entry_gradient h1 {
        font-size: 48px;
        line-height: 52px;
    }
}

@media only screen and (max-width: 768px) {
    .entry_gradient h1 {
        font-size: 60px;
        line-height: 64px;
    }
}

@media only screen and (max-width: 468px) {
    .entry_gradient h1 {
        font-size: 60px;
        line-height: 64px;
    }
}

.entry_gradient p {
    font-size: 24px;
    line-height: 28px;
    margin: 24px 0 72px 0;
    color: #DDB1D6;
    font-weight: 400;
    font-family: 'Barlow', Helvetica Neue, Helvetica, Arial, sans-serif;
    padding: 0;
    text-transform: uppercase;
}

@media only screen and (max-width: 1280px) {
    .entry_gradient p {
        font-size: 24px;
        line-height: 28px;
        margin: 0 0 72px 0;
    }
}

@media only screen and (max-width: 1024px) {
    .entry_gradient p {
        font-size: 18px;
        line-height: 24px;
        margin: 0 0 144px 0;
    }
}

@media only screen and (max-width: 768px) {
    .entry_gradient p {
        font-size: 30px;
        line-height: 34px;
        margin: 48px 0 144px 0;
    }
}

@media only screen and (max-width: 468px) {
    .entry_gradient p {
        font-size: 24px;
        line-height: 28px;
        margin: 48px 0 72px 0;
    }
}

.entry_heading_bg {
    height: 120px;
}

.entry_heading_image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

/* entry */

.entry h1 {
    color: #2B282B;
    font-size: 36px;
    line-height: 40px;
    font-weight: 700;
    margin: 0 0 24px 0;
    padding: 0;
}

.entry h2 {
    font-size: 24px;
    line-height: 28px;
    margin: 36px 0 12px 0;
    color: #2B282B;
    font-weight: 700;
}

.entry h3 {
    font-size: 24px;
    line-height: 28px;
    margin: 36px 0 12px 0;
    color: #2B282B;
    font-weight: 700;
}

.entry h4 {
    font-size: 24px;
    line-height: 28px;
    margin: 36px 0 12px 0;
    color: #2B282B;
    font-weight: 700;
}

.entry p {
    margin: 0 0 24px 0;
    color: #666;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.entry p a {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #fff;
}

.entry p a:hover {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #3F7EB7;
}

.entry p strong {
    font-weight: 700;
    color: #2B282B;
}

.entry p em {
    font-weight: 400;
    color: #666;
    font-style: normal;
}

.entry ul {
    margin: 0 0 12px 24px;
    padding: 0;
    display: inline-block;
}

.entry ul li {
    padding: 0 0 6px 0;
    list-style: disc;
    color: #666;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.entry ul li:last-child {
    padding: 0;
}

.entry ul li strong {
    color: #2B282B;
    font-weight: 700;
}

.entry ul li a, .entry ul li a:visited, .entry ul li a:link, .entry ul li a:active {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #fff;
}

.entry ul li a:hover {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #3F7EB7;
}

.entry ol {
    margin: 0 0 12px 24px;
    padding: 0;
    display: inline-block;
}

.entry ol li {
    padding: 0 0 12px 0;
    list-style: decimal;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    color: #666;
}

.entry ol li:last-child {
    padding: 0;
}

.entry ol li strong {
    color: #2B282B;
    font-weight: 700;
}

.entry ol li a, .entry ol li a:visited, .entry ol li a:link, .entry ol li a:active {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #fff;
}

.entry ol li a:hover {
    color: #3F7EB7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #3F7EB7;
}

/* list */

.list h1 {
    color: #2B282B;
    font-size: 36px;
    line-height: 40px;
    font-weight: 700;
    margin: 0 0 24px 0;
    padding: 0;
}

.list h2 {
    font-size: 24px;
    line-height: 28px;
    margin: 0 0 12px 0;
    color: #2B282B;
    font-weight: 700;
    display: inline-block;
    border-bottom: 3px solid #fff;
}

.list_hover:hover h2 {
    color: #2B282B;
    border-bottom: 3px solid #2B282B;
}

.list h3 {
    font-size: 18px;
    line-height: 24px;
    margin: 0;
    color: #2B282B;
    font-weight: 700;
}

.list h4 {
    font-size: 18px;
    line-height: 24px;
    margin: 0;
    color: #2B282B;
    font-weight: 700;
}

.list p {
    margin: 0 0 24px 0;
    color: #666;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.list p a {
    color: #3ea8d7;
    font-weight: 400;
    text-decoration: none;
    display: inline-block;
    border-bottom: 3px solid #fff;
}

.list p a:hover {
    color: #3ea8d7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #3ea8d7;
}

.list p strong {
    font-weight: 700;
    color: #2B282B;
}

.list ul {
    margin: 0.5em 0 1em 3em;
    padding: 0;
    display: inline-block;
}

.list ul li {
    padding: 0 0 6px 0;
    list-style: disc;
    color: #666;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.list ul li strong {
    color: #2B282B;
    font-weight: 700;
}

.list ul li a, .list ul li a:visited, .list ul li a:link, .list ul li a:active {
    color: #3ea8d7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #fff;
}

.list ul li a:hover {
    color: #3ea8d7;
    font-weight: 400;
    text-decoration: none;
    border-bottom: 3px solid #3ea8d7;
}

/* sub_nav_parent */

.sub_nav_bg {
    background-color: #fff;
}

.sub_nav h4 {
    color: #999;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 18px;
    line-height: 24px;
    margin: 0 0 0 24px;
    padding: 0;
}

.sub_nav ul {
    margin: 12px 0;
    padding: 0;
    display: block;
    /*border: 1px solid #ccc;*/
    padding: 12px 0;
}

.sub_nav ul li {
    padding: 0;
    list-style: none;
    display: block;
}

.sub_nav ul li a, .sub_nav ul li a:visited, .sub_nav ul li a:link, .sub_nav ul li a:active {
    color: #666;
    text-decoration: none;
    outline: 0;
    display: block;
    padding: 6px 24px;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    border-left: 3px solid #fff;
}

.sub_nav ul li a:hover {
    color: #2B282B;
    text-decoration: none;
    background-color: #fff;
}

.sub_nav ul li.here a {
    font-weight: 700;
    color: #2B282B;
    background-color: #fff;
}

.sub_nav ul li.here a:hover {
    color: #2B282B;
}

.sub_nav ul li.here_list a {
    font-weight: 700;
    color: #2B282B;
}

.sub_nav ul li.here_list a:hover {
    color: #2B282B;
}

/* sub_nav_child */

.sub_nav ul li.here ul {
    margin: 6px 0 6px 0;
    padding: 0;
    display: block;
    border: 0;
}

.sub_nav ul li.here ul li {
    padding: 0;
    list-style: none;
    display: block;
}

.sub_nav ul li.here ul li a, .sub_nav ul li.here ul li a:visited, .sub_nav ul li.here ul li a:link, .sub_nav ul li.here ul li a:active {
    color: #999;
    text-decoration: none;
    outline: 0;
    display: block;
    padding: 6px 24px;
    font-weight: 400;
    background-color: #fff;
    border-left: 3px solid #3ea8d7;
    font-size: 18px;
    line-height: 24px;
}

.sub_nav ul li.here ul li a:hover {
    color: #2B282B;
    text-decoration: none;
}

.sub_nav ul li.here ul li.here a {
    color: #2B282B;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
}

/* blocks */

.entry .image_block h2 {
    font-weight: 300;
    margin: 1.5em 0 0.5em 0;
    padding: 0;
    color: #666;
    font-size: 1.618em;
}

.action_block h3 {
    font-weight: 300;
    margin: 0 0 0.5em 0;
    padding: 0;
    color: #0000ee;
    text-transform: uppercase;
    font-size: 1.618em;
}

.action_block p {
    margin: 0;
}

.form_btn_primary_icon {
    vertical-align: middle;
    display: inline-block;
    width: 20px;
    height: 20px;
}

.cta {
    font-size: 18px;
    line-height: 18px;
    margin: 0;
    color: #fff;
    font-weight: 700;
    display: inline-block;
    border: 3px solid #3F7EB7;
    padding: 12px 24px;
    outline: 0;
    background-color: #3F7EB7;
    border-radius: 24px;
}

.border_top {
    border-top: 5px solid #eee;
}

.border_right {
    border-right: 5px solid #eee;
}

/* highlight_block */

.highlight_block_bg {
    background-color: #faa519;
    padding: 1.5em;
}

.highlight_block h2 {
    font-weight: 700;
    margin: 0 0 6px 0;
    padding: 0;
    color: #2B282B;
    font-size: 18px;
    line-height: 24px;
}

.highlight_block p {
    margin: 0;
    color: #666;
    font-size: 18px;
    line-height: 24px;
}

.columns_block h3 {
    font-weight: 700;
    margin: 1.5em 0 0.5em 0;
    padding: 0;
    color: #2B282B;
    font-size: 18px;
    line-height: 24px;
}

.columns_block p {
    color: #999;
}

/* new fibre */

.fibre_header {
    padding: 3em 0;
}

.fibre_header h1 {
    font-size: 3.618em;
    line-height: 1.2;
    margin: 0 0 0.25em 0;
    color: #fff;
    font-weight: 300;
    display: block;
    padding: 0;
}
.fibre_header p {
    font-size: 1.25em;
    line-height: 1.5;
    margin: 0;
    color: #fff;
    font-weight: 300;
    display: block;
    padding: 0;
}
.fibre_header p em {
    color: #fff;
}
.fibre_header p strong {
    color: #fff;
}

.fibre_bg {
    background-image: linear-gradient( -45deg, rgba(237,25,58,0.5), rgba(250,165,25,1) );
}

.fibre_plans_bg {
    background-image: linear-gradient( -45deg, rgba(237,25,58,1), rgba(250,165,25,1) );
}

.fibre_img {
    background-image: url('../img/family_fibre_bg.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.fibre h1 {
    color: #000;
    font-size: 3.618em;
    font-weight: 300;
    margin: 0 0 0.75em 0;
    padding: 0;
}

@media only screen and (max-width: 460px) {

    .fibre h1 {
        font-size: 2.618em;
    }

}

.fibre h2 {
    font-size: 1.618em;
    margin: 2em 0 1em 0;
    color: #faa61a;
    font-weight: 700;
}

.fibre h2:first-child {
    font-size: 1.618em;
    margin: 0 0 1em 0;
    color: #faa61a;
    font-weight: 700;
}

.fibre h3 {
    font-size: 1.25em;
    margin: 2em 0 1em 0;
    color: #faa61a;
    font-weight: 700;
}

.fibre h4 {
    font-size: 1em;
    margin: 2em 0 1em 0;
    color: #faa61a;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.fibre p {
    margin: 0 0 1.5em 0;
    color: #444;
    font-size: 1em;
}

.fibre p a {
    color: #faa61a;
    font-weight: 300;
    text-decoration: underline;
}

.fibre p a:hover {
    color: #faa61a;
    font-weight: 300;
    text-decoration: underline;
}

.fibre p strong {
    font-weight: 700;
    color: #000;
}

.fibre ul {
    margin: 0.5em 0 1em 3em;
    padding: 0;
    display: inline-block;
}

.fibre ul li {
    padding: 0 0 1em 0;
    list-style: circle;
    color: #444;
    font-size: 1em;
}

.fibre ul li strong {
    color: #fff;
    font-weight: 700;
}

.fibre ul li a, .fibre ul li a:visited, .fibre ul li a:link, .fibre ul li a:active {
    color: #faa61a;
    text-decoration: underline;
}

.fibre ul li a:hover {
    color: #faa61a;
    text-decoration: underline;
}

.fibre ol {
    margin: 0.5em 0 1em 3em;
    padding: 0;
    display: inline-block;
}

.fibre ol li {
    padding: 0 0 0.5em 0;
    list-style: decimal;
    color: #444;
    font-size: 1em;
}

.fibre ol li strong {
    color: #fff;
    font-weight: 700;
}

.fibre ol li a, .fibre ol li a:visited, .fibre ol li a:link, .fibre ol li a:active {
    color: #faa61a;
    text-decoration: underline;
}

.fibre ol li a:hover {
    color: #faa61a;
    text-decoration: underline;
}

.fibre_costs {
    width: 100%;
    text-align: center;
    margin: 0 0 1.5em 0;
    padding: 0;
}

.fibre_costs th {
    margin: 0;
    padding: 0.75em 0.25em;
    color: #000;
}

.fibre_costs td {
    font-size: 1em;
    color: #000;
    margin: 0;
    padding: 0.75em 0.25em;
    border-bottom: 3px solid #eee;
}

.fibre_costs .speed {
    width: 10%;
}

.fibre_costs .cost {
    width: 18%;
}

.fibre_costs th img {
    width: 25%;
}

.fibre_costs th.spark img {
    width: 25%;
}

.fibre_costs td sup {
    color: #faa61a;
}

.fibre_costs td strong {
    font-weight: 700;
}

.fibre_most_popular {
    background-color: #faa61a;
    padding: 0.375em 0.75em;
}

.fibre_plans_yellow {
    background-color: #faa61a;
}

.fibre_plans_grey {
    background-color: #ccc;
}

.fibre_plans_red {
    background-image: url('../img/bg_business.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    /* background-color: #ed1a3b; */
}

.fibre .fibre_plans h2 {
    font-size: 2.618em;
    line-height: 1.5;
    margin: 0;
    color: #fff;
    font-weight: 700;
    display: block;
    text-transform: none;
}

.fibre .fibre_plans h2 sup {
    font-size: 0.5em;
    color: #fff;
    margin: 0;
    font-weight: 300;
}

.fibre .fibre_plans h2 span.cost {
    font-weight: 300;
}

.fibre_plans ul {
    margin: 0;
    padding: 0;
    display: block;
}

.fibre_plans ul li {
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    padding: 0 0 0.25em 0;
    color: #fff;
    font-weight: 300;
    list-style: none;
}

.fibre_plans_btn {
    outline: 0;
    text-align: center;
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    color: #999;
    font-weight: 700;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #fff;
    background-color: #fff;
    padding: 0.5em 0.75em 0.4em 0.75em;
    box-shadow: 0 14px 28px rgba(0,0,0,0.12), 0 4px 8px rgba(0,0,0,0.12);
    transition: all 0.1s cubic-bezier(.25,.8,.25,1);
}

.fibre_plans_btn:hover {
    color: #999;
    background-color: #fff;
    border: 4px solid #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 2px 4px rgba(0,0,0,0.12);
}

.fibre_plans_yellow .fibre_plans_btn {
    color: #faa61a;
}

/* steps */

.signup_bg {
    background-image: linear-gradient( 45deg, rgba(237,24,124,0.75), rgba(62,168,215,1) );
}

.signup_img {
    background-image: url('../img/bg_business.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.signup_pbx_bg {
    background-image: linear-gradient( -45deg, rgba(237,25,58,0), rgba(250,165,25,1) );
}

.signup_pbx {
    background-image: url('../img/bg_pbx.jpg');
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.banner_header {
    padding: 3em 0;
    text-align: center;
}

.banner_header h1 {
    font-size: 48px;
    line-height: 54px;
    margin: 0;
    color: #fff;
    font-weight: 700;
    display: block;
    padding: 0;
    font-family: 'Barlow', Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    text-transform: uppercase;
}
.banner_header p {
    font-size: 18px;
    line-height: 24px;
    margin: 0;
    color: #666;
    font-weight: 400;
    display: block;
    padding: 0;
    font-family: 'Barlow', Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
}

.form_header {
    padding: 3em 0;
}

.form_header h1 {
    font-size: 2.618em;
    line-height: 1.2;
    margin: 0 0 0.25em 0;
    color: #fff;
    font-weight: 300;
    display: block;
    padding: 0;
}
.form_header p {
    font-size: 1em;
    line-height: 1.5;
    margin: 0;
    color: #eee;
    font-weight: 300;
    display: block;
    padding: 0;
}

.step_bg {
    background-color: #faa519;
}

.step ul {
    margin: 0;
    padding: 0;
    width: 100%;
}

.step ul li {
    list-style: none;
    font-weight: 300;
    display: inline-block;
    padding: 0.5em 0.5em 0.5em 0.5em;
    margin: 0;
    font-size: 1em;
}

.step ul li.here {
    color: #faa61a;
    font-weight: 300;
}

.step ul li.prev {
    color: #999;
    font-weight: 300;
}

.step ul li.prev a {
    color: #999;
    text-decoration: underline;
}

.step ul li.prev a:hover {
    color: #2B282B;
    text-decoration: underline;
}

.step ul li.next {
    color: #ccc;
}

/* summary */

.your_order h3 {
    font-size: 1.375em;
    line-height: 1.5;
    margin: 0 0 0.25em 0;
    color: #2B282B;
    font-weight: 700;
    display: block;
    padding: 0;
}

.summary_hide {
    display: none;
}

.summary .street_address p {
    line-height: 1.5;
    font-size: 0.8em;
    margin: 0;
    color: #2B282B;
    text-transform: capitalize;
    font-weight: 300;
}

.summary .street_address p a {
    color: #faa61a;
    text-decoration: none;
}
.summary .street_address p a:hover {
    color: #faa61a;
    text-decoration: underline;
}

.summary a {
    color: #0000ee;
    text-decoration: underline;
}

.summary a:hover {
    color: #8080f7;
    text-decoration: none;
}

.summary .deal {
    /* background-color: #eee; */
}

.summary .deal {
    color: #2B282B;
}

.summary .deal strong {
    color: #2B282B;
}

.payment_frequency {
    display: none;
}

.debit_amount {
    display: none;
}

.bank_amount {
    display: none;
}

.summary_hide {
    display: none;
}

.summary_name_hide {
    display: none;
}

.summary_cost_hide {
    display: none;
}

.summary_type_hide {
    display: none;
}

.summary_term_hide {
    display: none;
}

.summary_phone_line_hide {
    display: none;
}

.line_maintenance_hide {
    display: none;
}

.static_ip_hide {
    display: none;
}

.printed_invoices_hide {
    display: none;
}

.number_with_hold_hide {
    display: none;
}

.do_not_disturb_hide {
    display: none;
}

.caller_id_hide {
    display: none;
}

.call_waiting_hide {
    display: none;
}

.voice_mail_hide {
    display: none;
}

.national_calling_bundles_hide {
    display: none;
}

.international_calling_bundles_hide {
    display: none;
}

.mobile_calling_bundles_hide {
    display: none;
}

.phone_add_ons_hide {
    display: none;
}

.wiring_hide {
    display: none;
}

.data_add_ons_hide {
    display: none;
}

.other_payment_hide {
    display: none;
}

.other_id_hide {
    display: none;
}

.desk_phone_type_hide {
    display: none;
}

.summary .deal .summary_type {
    color: #2B282B;
    font-size: 1em;
    font-weight: 300;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
}

.summary .deal .summary_cost {
    color: #faa61a;
    font-size: 3.618em;
    font-weight: 400;
    margin: 0;
    padding: 0;
}

.summary .deal .summary_cost sup {
    color: #faa61a;
    font-size: 0.5em;
}

.summary .deal .summary_add_on {
    color: #2B282B;
    font-size: 1em;
    font-weight: 300;
    margin: 0;
    padding: 0;
}

.summary .deal .summary_name {
    color: #fff;
    font-size: 0.75em;
    margin: 0;
}

.summary .add_on {
    color: #2B282B;
    font-size: 1em;
}

.summary small {
    text-transform: capitalize;
}

/* table */

.table {
    border: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    color: #2B282B;
}

.table td strong {
    color: #2B282B;
}

.table .one_off_total {
    font-weight: 400;
    color: #2B282B;
}

/* table_price */

.table_price {
    border: 0;
    margin: 0;
    padding: 0;
    width: 100%;
}

.table_price th {
    text-align: left;
    font-size: 18px;
    line-height: 24px;
    padding: 0 0 6px 0;
    font-weight: 700;
    color: #2B282B;
}

.table_price td {
    font-size: 18px;
    line-height: 24px;
    padding: 6px 12px;
    border: 1px solid #ccc;
    font-weight: 400;
    color: #666;
}

.table_price td.price {
    color: #666;
    font-weight: 400;
}

/* note */

.note p {
    font-size: 0.75em;
    color: #ccc;
}

/* package */

.float_right {
    float: right;
}

.relative {
    position: relative;
}

.package_bg {
    background-color: #faa519;
}

.most_popular {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    background-color: #faa61a;
    /* background-image: linear-gradient( 45deg, rgba(237,25,58,0.5), rgba(250,165,25,1) ); */
    color: #fff;
    font-weight: 300;
    font-size: 0.65em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 0.5em 0.75em 0.3em 0.75em;
}

.package_cost {
    color: #2B282B;
    font-size: 2.618em;
    line-height: 1.5;
    font-weight: 300;
    margin: 0;
}

.package_cost sup {
    font-size: 0.5em;
    color: #2B282B;
}

.package_name {
    color: #999;
}

/* prepay */

.prepay__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 12px;
    align-items: center;
}

.package_cost__prepay {
    color: #2B282B;
    font-size: 24px;
    line-height: 32px;
    font-weight: 700;
    margin: 0;
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
}

.package_cost__prepay sup {
    font-size: 13px;
    font-weight: 400;
    color: #2B282B;
}

.package_name__prepay {
    color: #999;
}

.package_name__prepay {
    color: #999;
    font-size: 16px;
    line-height: 20px;
    font-weight: 400;
    margin: 0 0 12px 0;
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
}

.package_term__prepay {
    color: #2B282B;
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    margin: 0;
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
}

/* address_checker */

.address_list_hide {
    display: none;
}

.address {
    background-color: #fff;
    color: #666;
    padding: 0.5em 1em;
    text-transform: capitalize;
    width: 50%;
    border-bottom: 1px solid #ccc;
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
}

.address:hover {
    background-color: #eee;
    color: #000;
    cursor: pointer;
}

p.family_filter_p {
    font-size: 1em;
    margin: 0;
}

/* forms */

.label_checkbox a.a_checkbox {
    color: #2B282B;
}
.label_checkbox a.a_checkbox:hover {
    color: #2B282B;
}

.form h4 {
    font-weight: 700;
    color: #2B282B;
    font-size: 1em;
}

.form h4 a {
    color: #faa519;
}

.form h4 a:hover {
    color: #faa519;
}

.form p {
    font-size: 0.75em;
    line-height: 1.5;
    margin: 0;
    color: #999;
    font-weight: 300;
    display: block;
    padding: 0;
}

.form p a {
    color: #faa519;
}

.form p a:hover {
    color: #faa519;
}

.border_left {
    border-left: 5px solid #faa61a;
}

.summary_modem_postal_hide {
    display: none;
}

.summary_modem_buy_hide {
    display: none;
}

.summary_modem_rent_hide {
    display: none;
}

.summary_speed_hide {
    display: none;
}

.modem_rent_cost_hide {
    display: none;
}

.modem_cost_hide {
    display: none;
}

.modem_rent_hide {
    display: none;
}

.credit_check_hide {
    display: none;
}

.credit_card_hide {
    display: none;
}

.moving_from_provider_hide {
    display: none;
}

.postal_address_hide {
    display: none;
}

.existing_phone_broadband_line_hide {
    display: none;
}

.fibre_hide {
    display: none;
}

.drivers_licence_hide {
    display: none;
}

.passport_hide {
    display: none;
}

.direct_debit_hide {
    display: none;
}

.internet_banking_hide {
    display: none;
}

.national_call_bundle_hide {
    display: none;
}

.label_radio_border {
    border: 1px solid #eee;
}

.label_hover:hover {
    background-color: #eee;
    cursor: pointer;
}

.label_hover:hover.radio_selected {
    background-color: #eee;
}

.radio_selected {
    background-color: #eee;
}

.radio_disabled {
    outline: 1px solid #eee;
}

.form_text p {
    margin: 0;
}

.label_radio_package {
    display: block;
    margin: 0;
    padding: 1.5em;
    color: #2B282B;
}

.label_radio {
    display: block;
    margin: 0;
    padding: 0.5em 1.5em;
    color: #2B282B;
}

.label_radio_disabled {
    display: block;
    margin: 0;
    padding: 0.5em 1.5em;
    color: #ccc;
}

.label_radio sup {
    color: #999;
}

.label_radio_slice {
    display: block;
    margin: 0;
    padding: 0.5em 1.5em;
    color: #2B282B;
}

.label_radio_slice sup {
    color: #999;
}

.label_radio_group {
    display: block;
    margin: 0;
    padding: 0.5em 1.5em;
    color: #2B282B;
}

.label_checkbox {
    display: block;
    margin: 0;
    padding: 0;
    color: #999;
    font-size: 1em;
    line-height: 1.5;
}

.label_checkbox a {
    text-decoration: none;
    color: #0000ee;
}

.label_checkbox a:hover {
    text-decoration: underline;
    color: #8080f7;
}

.label {
    display: block;
    margin: 0;
    padding: 0 0 6px 0;
    color: #666;
    font-size: 20px;
    line-height: 28px;
    font-weight: 400;
}

.label span {
    text-transform: none;
    font-weight: 300;
    color: #999;
}

.radio_group h4 {
    color: #fff;
    padding: 0.5em 1.5em;
    background-color: #faa519;
    margin: 0 0 1.5em 0;
}

.radio_group h4 span {
    font-weight: 300;
}

.radio_field {
    margin: 0 0.25em 0 0;
}

.address_field {
    border: 1px solid #ccc;
    padding: 0.5em 1em;
    color: #999;
    margin: 0;
    text-transform: capitalize;
}

.g-recaptcha {
    margin: 0 0 0.5em 0;
}

.textarea_field {
    border: 1px solid #ddd;
    padding: 0.75em 1.5em;
    color: #2B282B;
    margin: 0 0 0.5em 0;
    height: 6em;
    font-family: "gira-sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
}

.field {
    border: 1px solid #ddd;
    padding: 0.75em 1.5em;
    color: #2B282B;
    margin: 0 0 0.5em 0;
}

.amount_field {
    border: 1px solid #ddd;
    padding: 0.75em 1.5em;
    color: #2B282B;
    margin: 0 0 0.5em 0;
}

.no_border_field {
    border: 0;
    color: #2B282B;
}

.field_5 {
    width: 5%;
}

.field_10 {
    width: 10%;
}

.field_25 {
    width: 25%;
}

.field_50 {
    width: 50%;
}

@media only screen and (max-width: 460px) {

    .field_50 {
        width: 90%;
    }

}

.field_75 {
    width: 90%;
}

.field_100 {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.file_field {
    border: 0;
    padding: 0.75em 0;
    color: #2B282B;
    margin: 0 0 0.5em 0;
}

.checkbox_field {
    font-size: 1em;
    margin: 0 0.5em 0 0;
}

.btn_submit {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em;
    font-weight: 300;
    outline: 0;
    color: #fff;
    background-color: #faa519;
    border-left: 1px solid #faa519;
    border-right: 1px solid #faa519;
    border-top: 1px solid #faa519;
    border-bottom: 1px solid #faa519;
    text-transform: uppercase;
    margin: 1.5em 0 0 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.btn_submit:hover {
    background-color: #7d530d;
    border-left: 1px solid #7d530d;
    border-right: 1px solid #7d530d;
    border-top: 1px solid #7d530d;
    border-bottom: 1px solid #7d530d;
}

.btn_submit_disabled {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em;
    font-weight: 300;
    outline: 0;
    color: #999;
    background-color: #eee;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
    text-transform: uppercase;
    margin: 1.5em 0 0 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.btn_summary_get_started_now {
    font-size: 1em;
    display: block;
    width: 100%;
    padding: 0.5em 1em;
    font-weight: 700;
    outline: 0;
    color: #fff;
    background-color: #000;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    text-transform: uppercase;
}

.btn_get_started_now {
    font-size: 1em;
    display: inline-block;
    padding: 0.5em 1em;
    font-weight: 700;
    outline: 0;
    color: #fff;
    background-color: #0000ee;
    border-left: 1px solid #0000ee;
    border-right: 1px solid #0000ee;
    border-top: 1px solid #0000ee;
    border-bottom: 1px solid #0000ee;
    text-transform: uppercase;
}

.btn_next {
    outline: 0;
    font-size: 1em;
    line-height: 1.5;
    margin: 1em 0 0 0;
    color: #faa519;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #faa519;
    background-color: #fff;
    padding: 0.5em 1em 0.4em 1em;
}

.btn_next:hover {
    color: #7d530d;
    border: 4px solid #7d530d;
}

.btn_prev {
    outline: 0;
    font-size: 1em;
    line-height: 1.5;
    margin: 1em 0 0 0;
    color: #ddd;
    font-weight: 700;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: 4px solid #ddd;
    background-color: #fff;
    padding: 0.5em 1em 0.4em 1em;
    border-radius: 5px;
}

.btn_prev:hover {
    color: #999;
    border: 4px solid #999;
}

.loading {
    background-color: #fff;
    background-image: url('../img/ajax_loader.gif');
    background-size: 25px 25px;
    background-position: right 7px center;
    background-repeat: no-repeat;
}

/* hardware */

.hardware h2 {
    font-size: 1.375em;
    font-weight: 700;
    color: #999;
    margin: 0 0 0.25em 0;
    padding: 0;
}

.hardware h3 {
    font-size: 1em;
    font-weight: 700;
    color: #000;
    margin: 0.75em 0 0.25em 0;
    padding: 0;
}

.hardware p {
    margin: 0 0 0.75em 0;
    color: #000;
    font-size: 1em;
}

a.btn_counter {
    font-size: 1em;
    font-weight: 400;
    color: #000;
    margin: 0 0 0 0.25em;
    padding: 0.4em 1em;
    float: left;
    display: inline;
    border: 1px solid #eee;
    background-color: #eee;
}

.hardware_field {
    font-size: 1em;
    border: 1px solid #ddd;
    padding: 0.5em 1em;
    color: #000;
    margin: 0 0.25em 0 0.25em;
    width: 10%;
    float: left;
    display: inline;
}

/* accessories */

a.btn_accessories {
    font-size: 1em;
    font-weight: 400;
    color: #000;
    margin: 0 0 0 0.25em;
    padding: 0.4em 1em;
    float: left;
    display: inline;
    border: 1px solid #eee;
    background-color: #eee;
}

.accessories_field {
    font-size: 1em;
    border: 1px solid #ddd;
    padding: 0.5em 1em;
    color: #000;
    margin: 0 0.25em 0 0.25em;
    width: 10%;
    float: left;
    display: inline;
}

/* sip_trunks */

a.btn_sip_trunks {
    font-size: 1em;
    font-weight: 400;
    color: #000;
    margin: 0 0 0 0.25em;
    padding: 0.4em 1em;
    float: left;
    display: inline;
    border: 1px solid #eee;
    background-color: #eee;
}

a.btn_sip_trunks:hover {
    font-size: 1em;
    font-weight: 400;
    color: #fff;
    margin: 0 0 0 0.25em;
    padding: 0.4em 1em;
    float: left;
    display: inline;
    border: 1px solid #ccc;
    background-color: #ccc;
}

.sip_trunks_field {
    font-size: 1em;
    border: 1px solid #ddd;
    padding: 0.5em 1em;
    color: #000;
    margin: 0 0.25em 0 0.25em;
    width: 10%;
    float: left;
    display: inline;
}

input:focus,
select:focus,
textarea:focus,
button:focus {
    outline: none;
}

/* tabs */

.tabs {
    font-size: 1em;
    display: inline-block;
    padding: 1em 3em;
    font-weight: 700;
    outline: 0;
    color: #0000ee;
    background-color: #ccc;
    text-transform: uppercase;
    margin: 0.75em 0.5em 0 0;
}

.tabs sup {
    font-weight: 400;
}

.tabs sup {
    color: #999;
}

.tabs.selected sup {
    color: #bfbffb;
}

.tabs.not_available sup {
    color: #ddd;
}

.tabs.selected {
    color: #fff;
    background-color: #0000ee;
    margin: 0.75em 0 0 0;
}

.tabs.not_available {
    color: #ddd;
    background-color: #fff;
    border-top: 0;
}

/* helper */

.helper a {
    background-color: #faa519;
    padding: 0.25em 0.5em;
    font-size: 0.6em;
    font-weight: 300;
    color: #fff;
}

h4 .helper a {
    color: #fff;
}

.modal {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 9999;
    padding: 1.5em;
    width: 75%;
}

.modal_overlay {
    z-index: 9998;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.75);
}

.modal_close {
    top: 0;
    right: 0;
    position: absolute;
    background-color: #faa61a;
    color: #fff;
    padding: 0.25em 0.75em;
    font-size: 1em;
    font-weight: 700;
    cursor: pointer;
}

.modal_closed {
    display: none;
}

/* faq */

fb_12 {
    margin: 0 0 12px 0;
}

.question span {
    float: right;
}

.question h2 {
    color: #666;
    font-weight: 400;
    margin: 0;
    font-size: 18px;
    line-height: 24px;
}

.answer {
    display: none;
}

.faq_border {
    border: 2px solid #ccc;
}

.faq_border:hover {
    border: 2px solid #666;
}

.faq_border_selected {
    border: 2px solid #666;
}

.answer h2 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.answer h3 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.answer h4 {
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
}

.answer p {
    margin: 24px 0 0 0;
    color: #666;
    font-size: 18px;
    line-height: 24px;
}

.answer ul {
    margin-top: 24px;
}

.answer ul li {
    color: #666;
}

.answer ol {
    margin-top: 24px;
}

.answer ol li {
    color: #666;
}

/* ip payments */

.ip_payments_frame {
    width: 100%;
    overflow: none;
    height: 550px;
    background-color: #fff;
    padding: 0;
    border: 0;
}

/* chrome yellow hack */

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
}

/* model validation */

.errors {
    margin: 0 0 1.5em 0;
    display: block;
}

.errors p {
    color: red;
    font-weight: 700;
    font-size: 1em;
    margin: 0;
}

.error_field {
    border: 1px solid red;
}

/* bank */

.bank_100 {
    float: left;
    display: inline;
    width: 100%;
}

.bank ul {
    margin: 0;
    padding: 0;
    width: 100%;
}
.bank ul li {
    float: left;
    list-style: none;
    margin: 0;
    padding: 0;
}

.bank ul li.number {
    width: 19%;
    margin-right: 1%;
}

.bank ul li.branch {
    width: 19%;
    margin-right: 1%;
}

.bank ul li.account {
    width: 29%;
    margin-right: 1%;
}

.bank ul li.suffix {
    width: 30%;
}

/* plans wifi router additions */

.requirements__hide {
    display: none;
}

.router__hide {
    display: none;
}

/* validation */

span.LV_validation_message {
    margin: 0 0 1.5em 0;
    display: block;
}

.LV_invalid {
    /*
    background-color: red;
    padding: 0.25em 0.5em;
    */
    color: red;
    font-weight: 700;
    font-size: 0.75em;

}

.LV_valid {
    /*
    background-color: green;
    padding: 0.25em 0.5em;
    */
    color: green;
    font-weight: 700;
    font-size: 0.75em;
    display: none;
}

span.LV_validation_message.LV_valid {
    display: none;
}

.label_checkbox .LV_invalid {
    font-size: 1em;
}
.label_checkbox .LV_valid {
    font-size: 1em;
}

/* type */

.type_1 h1, .type_1 p {
    font-family: "gira-sans";
}

.type_1 h1 {
    font-size: 2.618em;
    font-weight: 300;
    margin: 0 0 0.5em 0;
}

.type_1 p {
    font-size: 1.125em;
    color: #888;
    font-weight: 300;
}

.type_3 h1, .type_3 p {
    font-family: "azo-sans-web";
}

.type_3 h1 {
    font-size: 2.618em;
    font-weight: 300;
    margin: 0 0 0.5em 0;
}

.type_3 h2 {
    font-family: "azo-sans-web";
    font-size: 2.618em;
    font-weight: 700;
    color: #000;
    margin: 0 0 0.5em 0;
}

.type_3 p {
    font-size: 1.125em;
    color: #888;
    font-weight: 300;
}

.y {
    background-color: #faa519;
}

.r {
    background-color: #ed193a;
}

.type_3.y h1 {
    color: #fff;
}

.type_3.y p {
    color: #fee8c5;
}

.type_3.r h1 {
    color: #fff;
}

.type_3.r p {
    color: #fac5ce;
}

.type_3.black h1 {
    color: #fff;
}

.gradient {
    background-image:
            linear-gradient(
                    to right,
                    #faa519, #ed193a
            );
}

.type_3.gradient h1 {
    color: #fff;
}

.type_3.gradient p {
    color: #fac5ce;
}

/* form builder */

ul.nav_tabs {
    margin: 0;
    padding: 0;
    float: left;
    display: inline-block;
}

ul.nav_tabs li {
    margin: 0;
    pading: 0;
    float: left;
    display: inline-block;
}

.ul nav_tabs li a {
    font-family: "gira-sans", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 400;
    font-size: 0.75em;
    display: block;
}

ul.nav_tabs li.active a {
    color: #000;
    text-decoration: none;
    background-color: #eee;
    padding: 0.5em 1em 0.4em 1em;
    border: 1px solid #eee;
}

ul.nav_tabs li.disabled a {
    text-decoration: none;
    padding: 0.5em 1em 0.4em 1em;
}

ul.nav_tabs li a:hover {
    text-decoration: none;
}

ul.errors li {
    color: red;
    font-family: "Barlow", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
}

.row label.label {
    display: block;
    margin: 0;
    padding: 0 0 12px 0;
    font-size: 20px;
    line-height: 28px;
    font-weight: 400;
    color: #666;
}

.row label.required {

}

.row .form-control {
    border: 3px solid #ccc;
    padding: 12px 24px;
    color: #2B282B;
    margin: 0 0 12px 0;
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 24px;
    font-weight: 400;
    font-family: "Barlow", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
    color: #666;
}

.row .btn_submit {
    font-size: 20px;
    line-height: 20px;
    display: inline-block;
    padding: 12px 24px;
    font-weight: 700;
    outline: 0;
    color: #fff;
    background-color: #ed187c;
    text-transform: uppercase;
    margin: 12px 0 0 0;
    font-family: "Barlow", "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
    border: 0;
}

.row .btn_submit:hover {
    background-color: #ed187c;
    border: 0;
}

/* select field */

.select {
    position: relative;
    display: inline-block;
    width: 100%;
    margin-bottom: 12px;
}

.select select {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 18px;
    display: inline-block;
    cursor: pointer;
    border-radius: 0;
    outline: 0;
    background: #fff;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    border: 3px solid #ccc;
    padding: 12px 24px;
    color: #2B282B;
    margin: 0 0 12px 0;
    width: 100%;
    font-weight: 400;
    color: #666;
}

.select select::-ms-expand {
    display: none;
}

.select select:hover,
.select select:focus {
    color: #2B282B;
    background: #fff;
}

.select select:disabled {
    pointer-events: none;
    opacity: .5;
}

.select__arrow {
    position: absolute;
    top: 20px;
    right: 15px;
    width: 0;
    height: 0;
    pointer-events: none;
    border-width: 8px 5px 0 5px;
    border-style: solid;
    border-color: #ed187c transparent transparent transparent;
}

.select select:hover ~ .select__arrow,
.select select:focus ~ .select__arrow {
    border-top-color: #000;
}

.select select:disabled ~ .select__arrow {
    border-top-color: #fff;
}

/* checkboxes */

.control-group {
    display: inline-block;
    width: 200px;
    height: 210px;
    margin: 10px;
    padding: 30px;
    text-align: left;
    vertical-align: top;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0,0,0,.1);
}

.control {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 18px;
    position: relative;
    display: block;
    margin-bottom: 15px;
    padding-left: 25px;
    cursor: pointer;
    font-weight: 400;
    color: #666;
}

.control label::after {
    left: 25px;
}

.control input {
    position: absolute;
    z-index: -1;
    opacity: 0;
}

.control__indicator {
    position: absolute;
    top: 2px;
    left: 0;
    width: 17px;
    height: 17px;
    background: #fff;
    border: 3px solid #ccc;
}

.control--radio .control__indicator {
    border-radius: 50%;
}

/* Hover and focus states */
.control:hover input ~ .control__indicator,
.control input:focus ~ .control__indicator {
    background: #fff;
}

/* Checked state */
.control input:checked ~ .control__indicator {
    background: #fff;
}

/* Hover state whilst checked */
.control:hover input:not([disabled]):checked ~ .control__indicator,
.control input:checked:focus ~ .control__indicator {
    background: #fff;
}

/* Disabled state */
.control input:disabled ~ .control__indicator {
    pointer-events: none;
    opacity: .6;
    background: #fff;
}

/* Check mark */
.control__indicator:after {
    position: absolute;
    display: none;
    content: '';
}

/* Show check mark */
.control input:checked ~ .control__indicator:after {
    display: block;
}

/* Checkbox tick */
.control--checkbox .control__indicator:after {
    top: 3px;
    left: 6px;
    width: 3px;
    height: 8px;
    transform: rotate(45deg);
    border: solid #faa519;
    border-width: 0 2px 2px 0;
}

/* Disabled tick colour */
.control--checkbox input:disabled ~ .control__indicator:after {
    border-color: #7b7b7b;
}

/* Radio button inner circle */
.control--radio .control__indicator:after {
    top: 6px;
    left: 6px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #faa519;
}

/* Disabled circle colour */
.control--radio input:disabled ~ .control__indicator:after {
    background: #7b7b7b;
}

/* mobile */

.mobile_off {
    display: inline;
}

@media only screen and (max-width: 1280px) {

    .mobile_off {
        display: none;
    }

}

/* faa519 */

.margin_24_top {
    margin: 24px 0 0 0;
}

.no_bullet ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.no_bullet ul li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mobile_on {
    display: none;
}

/*
.mobile_on ul {
    margin: 2em 1.5em 0 0;
    padding: 0;
    float: right;
}

.mobile_on ul li {
    list-style: none;
    margin: 0;
    padding: 0;
    display: inline-block;
    color: #2B282B;
    font-weight: 700;
    text-align: right;
}

.mobile_on ul li a {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    display: block;
    font-weight: 400;
    color: #2B282B;
    padding: 0;
    font-size: 18px;
    line-height: 24px;
}

.mobile_on ul li a:hover {
    color: #2B282B;
}
*/

@media only screen and (max-width: 1280px) {
    .mobile_on {
        display: inline;
    }
}


/* nav_mobile */

#nav_mobile {
    display: none;
    padding: 0 0 24px 0;
}

@media only screen and (min-width: 1280px) {
    #nav_mobile {
        display: none !important;
        visibility: hidden;
    }
}

#nav_mobile ul {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
    /*border-top: 2px solid #eee;*/
}

#nav_mobile ul li {
    display: block;
    padding: 0 1em;
    margin: 0;
    border-bottom: 1px solid #fff;
}
#nav_mobile ul li:last-child {
    border-bottom: 0px;
}
#nav_mobile ul li a, #nav_mobile ul li a:visited, #nav_mobile ul li a:link {
    font-family: "Barlow", Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 400;
    color: #fff;
    outline: 0;
    font-size: 18px;
    line-height: 24px;
    display: block;
    padding: 12px 0;
}
#nav_mobile ul li a.nav_js {
    color: #fff;
}
#nav_mobile ul li a:hover {
    color: #fff;
    text-decoration: none;
}
#nav_mobile ul li.here a {
    color: #fff;
}

#nav_mobile ul li ul.nav_mobile_off {
    display: none;
}
#nav_mobile ul li ul li ul.sub_nav_mobile_off {
    display: none;
}

/* drop_down_1 */

#nav_mobile ul li ul {
    margin: 0 0 18px 0;
    width: 100%;
    border-top: 0;
    padding: 0;
}
#nav_mobile ul li ul li {
    padding: 0 0 0 24px;
}
#nav_mobile ul li ul li a, #nav_mobile ul li ul li a:visited, #nav_mobile ul li ul li a:link {
    color: #fff;
    font-weight: 400;
}
#nav_mobile ul li ul li a:hover {
    color: #fff;
    text-decoration: none;
}

/* drop_down_2 */

#nav_mobile ul li ul li ul {
    border-top: 0;
    padding: 0;
    margin: 0 0 18px 0;
}

#nav_mobile ul li ul li ul li a, #nav_mobile ul li ul li ul li a:visited, #nav_mobile ul li ul li ul li a:link {
    color: #fff;
    font-weight: 400;
}
#nav_mobile ul li ul li ul li a:hover {
    color: #fff;
    text-decoration: none;
}

/* nav_mobile_arrow */

.nav_mobile_arrow_up, .sub_nav_mobile_arrow_up {
    float: right;
    display: inline-block;
    color: #fff;
    transition: 300ms ease;
    /*
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #faa519;
    overflow: hidden;
    transition: 300ms ease;
    */
}

.nav_mobile_arrow_down, .sub_nav_mobile_arrow_down {
    float: right;
    display: inline-block;
    color: #fff;
    transition: 300ms ease;
    /*
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #000;
    -moz-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    transition: 300ms ease;
    */
}

/* helpers */

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

@media print,
(-o-min-device-pixel-ratio: 5/4),
(-webkit-min-device-pixel-ratio: 1.25),
(min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */
    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}

.form__field__group {
    width: 100%;
    float: left;
    display: block;
    margin: 12px 0 0 0;
}

.form__field__group.first_child {
    margin: 0;
}

.form__field__group h3 {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #000;
    margin: 0 0 8px 0;
    padding: 0;
}

.form__field__group p {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 12px;
    line-height: 18px;
    font-weight: 400;
    color: #888;
    margin: 0;
    padding: 0;
}

.form__field__group p a, .form__field__group p a:visited, .form__field__group p a:link, .form__field__group p a:active {
    color: #000;
    text-decoration: none;
    border-bottom: 1px solid #000;
}

.form__field__group p a:hover {
    color: #000;
    text-decoration: none;
}

/* cards */

.form__plans {
    margin: 0;
}

.form__plans__relative {
    position: relative;
}

.form__plans__icon {
    position: absolute;
    width: 24px;
    height: 24px;
    top: 16px;
    right: 16px;
}

.form__plans__icon--primary {
    fill: #ccc;
    stroke: #ccc;
    stroke-width: 3px;
}

input[type=radio]:checked + label svg circle.form__plans__icon--primary {
    fill: #EF1A1C;
    stroke: #EF1A1C;
}

.form__plans__icon--secondary {
    fill: #fff;
}

.form__radio__hidden {
    display: none;
}

.form__plans__card {
    box-sizing: border-box;
    border: 3px solid #ccc;
    padding: 16px;
    /* border-radius: 5px; */
    float: left;
    display: block;
    width: 100%;
    cursor: pointer;
}

@media (max-width: 1024px) {
    .form__plans__card {
        margin: 0 0 16px 0;
    }
}

@media (max-width: 1024px) {
    .form__plans__card.last {
        margin: 0;
    }
}

input[type=radio]:checked + label.form__plans__card {
    border: 3px solid #EF1A1C;
    background-color: #FCE2E3;
}

.form__plans__card h6 {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #444;
    /*
    text-transform: uppercase;
    letter-spacing: 1px;
    */
    margin: 0;
    padding: 0 0 16px 0;
}

.form__plans__card h2 {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    font-size: 32px;
    color: #000;
    margin: 0;
    padding: 0 0 8px 0;
}

.form__plans__card h2 small {
    font-size: 16px;
}

.form__plans__card h3 {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    font-size: 14px;
    color: #000;
    margin: 0;
    padding: 0 0 8px 0;
}

.form__plans__card h3 small {
    font-size: 14px;
}

.form__plans__card p {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 18px;
    color: #666;
    margin: 0;
    padding: 0;
}

.form__plans__card p small {
    font-size: 12px;
    color: #888;
    line-height: 18px;
    margin: 0;
    padding: 0;
}

.form__plans__card ul {
    margin: 16px 0 0 0;
    padding: 0;
}

.form__plans__card ul li {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 16px;
    color: #666;
}

.form__flex {
    display: flex;
}

@media (max-width: 1024px) {
    .form__flex {
        display: block;
    }
}

.form__flex__space-between {
    justify-content: space-between;
}

.form__flex__space-around {
    justify-content: space-around;
}

.form__flex__align-items {
    align-items: center;
}

.form__g60 {
    width: 70%;
}

@media (max-width: 1024px) {
    .form__g60 {
        width: 100%;
    }
}

.form__g25 {
    width: 25%;
}

@media (max-width: 1024px) {
    .form__g25 {
        width: 100%;
    }
}

.form__f100 {
    width: 100%;
}

.form__f80 {
    width: 80%;
}

@media (max-width: 1024px) {
    .form__f80 {
        width: 100%;
    }
}

.form__f75 {
    width: 60%;
}

@media (max-width: 1024px) {
    .form__f75 {
        width: 100%;
    }
}

.form__f45 {
    width: 48%;
}

@media (max-width: 1024px) {
    .form__f45 {
        width: 100%;
    }
}

.form__f50 {
    width: 50%;
}

@media (max-width: 1024px) {
    .form__f50 {
        width: 100%;
    }
}

.form__f30 {
    width: 30%;
}

.form__f33 {
    width: 31%;
}

@media (max-width: 1024px) {
    .form__f33 {
        width: 100%;
    }
}

.form__f25 {
    width: 25%;
}

@media (max-width: 1024px) {
    .form__f25 {
        width: 100%;
    }
}

.form__f15 {
    width: 15%;
}

@media (max-width: 1024px) {
    .form__f15 {
        width: 100%;
    }
}

.router_less_plan_show {
    display: none;
}

.router_less_plan_show p {
    font-family: Verdana, Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 13px;
    color: #666;
}