@import url(https://fonts.googleapis.com/css?family=Roboto:400,700,300,500);

/* */

.provider-logos img {
	padding: 20px;
}

@media only screen {
    .row {
        max-width: 1200px;
    }

    *, *:after, *:before {
        box-sizing: border-box;
    }

    #products h2 {
	    font-size: 36px;
    }

    body, input, textarea, button {
        font: 14px/1.7 'Roboto', sans-serif;    
        -webkit-font-smoothing: antialiased;
        -webkit-text-size-adjust: 100%;    
        color: #888;   
        outline: 0;    
    }

    body, html {
        width: 100%;
        height: 100%;
        display: table;
        table-layout: fixed;
        background: #FFF;
    }

    body > header,
    body > nav,
    body > main,
    body > footer {
        display: table-row;
    }

    body > main {
        height: 100%;
    }

    p {    
        margin: 1em 0;
    }

    h1, h2, h3, h4, h5, h6 {
        padding: 0;
        margin: 0;
        clear: both;
    }

    a {
        color: #6501B3;
    }

    a:hover {
        color: #8D8D8B;
    }

    strong {
        font-weight: 500;
    }

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

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

    ul { 
       list-style: disc outside none; 
       margin: 0 0 16px 32px;
    }

    ol { 
       list-style: decimal outside none; 
       margin: 0 0 16px 32px;
    }

    ul ul, ol ul { 
       list-style: circle outside none; 
       margin: 0 0 0 32px;
    }

    ol ol, ul ol { 
       list-style: lower-latin outside none; 
       margin: 0 0 0 32px;
    }

    li {
        display: list-item;
    }

    li:empty {
        display: none !important;
    }

    /* header */

    body > header .banner {
        padding: 30px 0;
        background: #FFF;
        border-top: 3px solid #6501B3;
        text-align: center;
    }

    body > header .logo {
        position: relative;
        display: block;
        max-height: 100px;
        height: auto;
        padding: 0 0;
        margin-bottom: 20px;
		top: auto;
    }

    body > header .logo img {
        position: relative;
        display: inline-block;
        max-width: 100%;
        max-height: 100%;
        height: auto;
        width: auto;
    }

    body > header .contact {
        display: none;
    }

    body > header .contact a {
        text-decoration: none;
    }
    
    body > header .call-action {
        font-weight: 600;
    }

    body > header .call-action a {
        display: inline-block;
        padding: 8px 10px;
        text-decoration: none;
        width: 100%;
        font-weight: 400;
    }

    body > header .call-action .call-us {
        background: #6501B3;
        color: #FFF;
        margin-bottom: 0.5rem;
    }

    body > header .call-action .request-callback {
        background: #DDD;
        color: #444;
    }

    /* nav */

    body > nav .menu {
        background-color: #EEE;
    }

    body > nav .search {
        display: none;
    }

    body > nav ul {
        display: none;
    }

    body > nav .select-menu-wrapper {
        position: relative;
        display: inline-block;    
        width: 100%;
    }

    body > nav .select-menu {
        display: inline-block;
        width: 100%;
        margin: 5px 0;
        padding: 0 12px;
        height: 32px;
    }
    
    #gallery {
        display: none;
    }

    /* Welcome */

    .welcome {
        display: block !important;
        padding: 60px;
        text-align: center;
        border-bottom: 1px solid #ddd;
    }

    .welcome h2 {
        font-weight: 300;
        font-size: 1.6rem;
        text-transform: uppercase;
    }

    .welcome h3 {
        font-weight: 300;
        font-size: 1.2rem;
        font-style: italic;
        max-width: 840px;
        margin: 0 auto;
    }

    .panels {
        padding: 60px 0;
    }

    /* Panels general */

    .panel {
        color: #777;
        position: relative;
        margin-bottom: 1rem;
    }

    .panel h2 {
        font-size: 1.2rem;
        margin-bottom: 1em;
        font-weight: 500;
        color: #6501B3;
    
    }

    .panel h2:before {
        content: "\f015";
        font-family: "FontAwesome";
        display: inline-block;
        padding-right: 1rem;
        color: #777;
    }

    .panel.mortgagefinder h2:before {
        content: "\f002";
    }

	.panel.calculators h2:before {
        content: "\f1ec";
    }
	
	.panel.getintouch h2:before {
        content: "\f086";
    }

    .panel.whychooseus h2:before {
        content: "\f007";
    }

    .panel.news h2:before {
        content: "\f1ea";
    }

    .panel a.more {
        text-decoration: none;
        font-weight: 500;
    }

    .panel.home {
        text-align: center;
        border-bottom: 1px solid #EEE;
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }

    .panel.home:last-child {
        margin-bottom: 0;
        border-bottom: 0;
    }

    .panel.home a.more {
        display: inline-block;
        background: #6501B3;
        color: #FFF;
        padding: 10px 16px;
    }

    .panel.subPage {
        background: #F1F1F1;
        padding: 1rem;    
    }

    .side.submenu {
        display: none;
    }

    .panel.news ul {
        margin: 0 0 10px 25px;
    }

    .panel.news ul li {
        padding-bottom: 3px;
    }

    .panel.news ul li a {
        color: #494949;
        text-decoration: none;
    }

    .panel.news ul li a:hover {
        color: #6501B3;
    }

    body > main.subpage .header {
        padding: 30px 0;
        background: #6501B3;
        position: relative;
    }

    body > main.subpage .header h2 {
        font-size: 1.5rem;
        font-weight: 500;
        color: #FFF;
        margin: 0;    
    }

    body > main.subpage .subheader {
        font-size: 1.5rem;
        color: #777;
    }

    body > main.subpage .page {
        padding: 40px 0;
    }

    #contact-info a:hover,
    body > header .contact a:hover,
    body > footer .footer-main a:hover {
        text-decoration: underline;
    }

    /* footer */

    body > footer .footer-main {
        padding: 60px 0;
        background: #f5f5f5;
    }

    body > footer .footer-main a {
        text-decoration: none;
    }

    body > footer .copyright a:hover {
        color: #91979F;
    }

    body > footer .feeStatement {
        display: block;
        margin-bottom: 15px;
    }

    body > footer .footer-main > .row > .column.half p:first-of-type,
    body > footer .footer-main > .row > .column.three-quarters p:first-of-type {
	    display: inline;
    }

    body > footer .footer-main > .row > .column.half p:nth-of-type(2),
    body > footer .footer-main > .row > .column.three-quarters p:nth-of-type(2) {
	    margin: 15px 0 0;
    }

    body > footer h4 {
        color: #6501B3;
        text-transform: uppercase;
        margin-bottom: 1rem;
        font-weight: 500;
    }

    body > footer .telephone {
        font-size: 24px;
    }

    body > footer .copyright {
        background: #6501B3;
        color: #FFF;
        padding: 10px 0;    
    }

    body > footer .copyright a {
        color: #FFF;
        text-decoration: none;
        margin-left: 15px;
    }

    body > footer #SocialContainer {
        margin-bottom: 1rem;
    }

    body > footer .footer-links {
        text-align: left;
    }

    body > footer .footer-links a {
        margin: 0 1rem 0 0;
    }

    /* #SocialArea */

    #SocialArea .title {
        display: none;
    }

    #SocialArea a {
        text-decoration: none;
    }

    #SocialArea a.socialIcon.facebook:after {
        content: "\f09a";
        background-color: #4c66a4;
    }

    #SocialArea a.socialIcon.twitter:after {
        content: "\f099";
        background-color: #4099FF;
    }

    #SocialArea a.socialIcon.linkedin:after {
        content: "\f0e1";
        background-color: #006797;
    }

    #SocialArea a.socialIcon.googleplus:after {
        content: "\f0d5";
        background-color: #D34836;
    }
	
	#SocialArea a.socialIcon.instagram:after {
        content: "\f16d";
        background-color: #D34836;
    }
	
	#SocialArea a.socialIcon.youtube:after {
        content: "\f16a";
        background-color: #FF0000;
    }

    #SocialArea a.socialIcon:after {
        display: inline-block;
        font-family: 'FontAwesome';  
        color: #FFF;
        font-size: 13px;
        margin-right: 10px;    
        width: 25px;
        height: 25px;
        line-height: 25px;
        text-align: center;
        border-radius: 3px;
        background-color: #BDC3C7;    
    }

    #SocialArea a.socialIcon:hover:after {
        background-color: #555;
    }

    #SocialArea a.socialIcon:last-of-type:after {
        margin-right: 0;
    }

    /* Breadcrumbs */

    .breadcrumb {
        list-style: none;
        margin: 0;
        font-size: 14px;
        padding-top: 5px;
        color: #8D8D8B;
        z-index: 2;
        position: relative;
    }

    .breadcrumb a {
        color: #EEE;
    }

    .breadcrumb a:hover {
        color: #FFF;
    }

    .breadcrumb li:first-of-type {
        display: none;
    }

    .breadcrumb li {
        float: left;
        margin-right: 0.5em;
    }

    .breadcrumb li .divider {
        margin-left: 0.5em;
    }

    .breadcrumb:after{
        content: "";
        display: block;
        height: 0;
        clear: both;
    }

    /* Contact */
    /* Form */

    .ir-input {
       padding-bottom: 24px;
       width: 100%;
    }

    .ir-input:after {
        content: "";
        display: block;
        clear: both;
    }

    .ir-input label {    
        display: block;
        font-size: 16px;
        font-weight: 700;
        line-height: 48px;
    }

    .ir-input input,
    .ir-input select {
        font-size: 16px;
        color: #666;

        border: 0;
        border-bottom: 2px solid #DDD;   

        outline: none;
        height: 48px;
        line-height: 48px;
        padding: 0 8px;
        width: 100%;   
        transition: border 0.2s ease-in-out;
    }

    .ir-input select {
        border: 2px solid #DDD;  
    }

    .ir-input textarea {
        font-size: 16px;    
        color: #666;
        width: 100%;
        height: 200px;
        border: 2px solid #DDD;
        outline: 0;
        padding: 8px;
        resize: vertical;
        transition: border 0.2s ease-in-out;
    }

    .ir-input label.radio input {
        display: inline-block;
        width: auto;
    }

    .ir-input select:focus,
    .ir-input textarea:focus {
        border: 3px solid #6501B3;
        background: #FAFAFA;
    }

    .ir-input input:focus {
        border-bottom: 3px solid #6501B3;
        background: #FAFAFA;
    }

    .ir-input button {
        float: right;
        line-height: 48px;
        padding: 0 16px;
        background: #6501B3;
        font-size: 16px;
        color: #FFF;
        border: none;
        position: relative;    
        cursor: pointer;
        outline: none;
        border-radius: 2px;
    }

    .ir-input button:hover {
        background: #8D8D8B;
    }

    .ir-input .contact-disclaimer p {
        border: 1px solid #ddd;
        padding: 16px;
    }

    .tip {
        color: firebrick;
    }

    .tip.success {
        color: #1E824C;
    }

    /* Callback Form */

    .callback-panel {
        padding: 60px 0;
        background-color: #EEE;
        position: relative;
    }

    .callback-panel > .row {
	    position: relative;
        padding: 0 20px;
    }

    .callback-panel h4 {
        color: #6501B3;
	    text-align: center;
        font-size: 1.5em;
        margin-bottom: 1.5rem;
    }

    #callback {
        position: relative;
        text-align: center;
    }

    #callback .callback-input {
        box-sizing: border-box;	
        overflow: hidden;
        display: inline;
        float: left;    
        width: 100%;
        margin-bottom: 16px;
        padding: 10px 16px;
        text-align: center;
        border-radius: 4px;
        border: 1px solid #8D8D8B;
    }

    #callback .btn-form {
        display: inline-block;
        text-align: center;
        background-color: #6501B3;
        color: #FFF;
        cursor: pointer;
        text-decoration: none;
        border-radius: 4px;
        border: none;
    }

    #callback .btn-form:hover {
	    background-color: #8D8D8B;
    }

    #callback .response:not(:empty) {
        display: inline-block;
        margin-top: 32px;
        font-size: 1.2em;
        color: #FFF;    
        line-height: 48px;
        padding: 0 24px;
        border-radius: 2px;
    }

    #callback .response.error {
        background: firebrick;
    }

    #callback .response.success {
        background: #43A047;
    }

    #callback .callback-disclaimer p {
        margin-top: 2rem;
        display: block;    
        float: left;
        width: 100%;
        font-size: 14px;
    }

    /* accordion */

    .accordion {
        list-style: none;
        margin: 0;    
    }

    .accordion li {    
        padding-bottom: 1px;
    }

    .accordion li .accordion-content {
        display: none;
        padding: 16px;
        border: 1px solid #ddd;
    }

    .accordion li:first-of-type .accordion-content {
        display: block;
    }

    .accordion h5 {
        cursor: pointer;
        margin: 0;
    }

    /* Misc */

    .boxed-content {
	    background-color: #f5f5f5;
	    padding: 15px;
	    border: 1px solid #e1e1e1;
    }

    .lender-logos img {
	    float: left;
	    display: block;
	    margin: 15px;
    }

    .lender-logos img:first-child {
	    margin-left: 0;
    }

    .lender-logos img:last-child {
	    margin-right: 0;
    }

    /* #contact-info */

    #contact-info h5 {
        display: block;
        padding: 16px;
        background: #6501B3;
        color: #FFF;
    }

    #contact-info h5 i {
        margin-right: 8px;
    }

    #contact-info a {
        text-decoration: none;
    }

    /* Testimonials */

    #Testimonials {
	    list-style: none;
	    margin: 0;
    }

    #Testimonials .testimonial {
	    padding: 15px;
	    border: 1px solid #e7e7e7;
	    margin: 20px 0;
    }

    #Testimonials .testimonialAuthor {
	    margin: 0;
	    font-weight: bold;
    }

    /* Team */

    #team_wrapper a {
	    text-decoration: none;
    }

    .team_item {
	    float: left;
	    margin: 5px;
        padding: 3px;
        width: 205px;
        height: 250px;
        background-color: #454f54;
    }

    .team_item:hover {
        background-color: #6501B3;
    }

    .team_item a {
        color: #fff;
    }

    .team_item .member-img {
	    width: 100%;
	    height: 190px;
	    background-size: cover;
	    background-position: top center;
	    background-color: #EEE;
    }

    .team_item span {
	    display: block;
        padding-left: 7px;
    }

    .team_item .member-name {
        font-weight: bold;
        font-size: 17px;
    }

    .team_item .member-role {
        font-size: 13px;
    }

    .team_item .member-name::after {
        content: "\f138";
        font-family: FontAwesome;
        float: right;
        padding: 10px 7px 0 0;
        font-size: 25px;
    }

    .team_member_photo {
        float: left;
        height: 120px;
        width: 120px;
        margin: 0 1rem 1rem 0;
        border: 1px solid #ddd;
        overflow: hidden;
    }

    .team_member_photo img {
        width: 100%;
    }

    .team_member_name {
        font-size: 2rem;
        font-weight: bold;
        text-transform: uppercase;
        line-height: 1;
        padding-top: 1.5rem;
        color: #6501B3;
    }

    .team_member_role {
        font-size: 1.5rem;
        color: #777;
    }

    .team_member_contact {
        clear: both;
    }

    .team_member_email,
    .team_member_telephone {
        margin-bottom: 1rem;
    }

    .team_member_telephone a, 
    .team_member_email a {
        display: block;
        padding: 0.8rem 1.5rem;
        background: #777;
        color: #fff;
        text-align: center;
        text-decoration: none;
    }

    .team_member_telephone a:hover, .team_member_email a:hover {
        background: #6501B3;
    }

    .team_member_telephone a>span:before {
        content: "\f095";
        font-family: FontAwesome;
        padding-right: 0.5rem;
    }
    
    .team_member_email a>span:before {
        content: "\f003";
        font-family: FontAwesome;
        padding-right: 0.5rem;
    }

    .btn {
        display: block;
        text-align: center;
        margin-bottom: 1rem;
        color: #fff;
        background: #6501B3;
        border-radius: 4px;
        padding: 10px 16px;
        text-decoration: none;
    }
}

@media only screen and (min-width: 28em) {
	body > header .call-action a {
        width: 40%;
        margin: 0 1rem !important;
	}
}

@media only screen and (min-width: 64.063em) {
    .subpage .callback-panel {
        display: none;
    }

    body > header .logo {
        float: left;
        margin-bottom: 0;
    }

    body > header .call-action {
        display: none;
    }
    
    body > header .contact {
        display: block;
        text-align: right;
        float: right;
    }

    body > header .contact strong {
        color: #6501B3;
    }

    body > header .contact .telephone {
        font-size: 25px;
    }

    body > nav .search {
        display: block;
        float: right;
    }

    body > nav .search input {
        margin: 5px 0;    
        height: 32px;
        padding: 0 8px;
        color: #91979F;
        border: none;
        border: 1px solid #DADADA;
    }

    body > nav .search input[type="submit"] {
        background: #FFF;
        color: #777;
        cursor: pointer
    }

    body > nav .select-menu-wrapper {
        max-width: 300px;
    }

    .outer {
        display: table;
        height: 100%;
        width: 100%;
    }

    .outer .middle {
        display: table-cell;
        vertical-align: middle;
        margin: 0 auto;    
        height: 100%;        
    }

    .gallery-wrapper {
        position: relative;
    }

    #gallery {
        display: block;
        position: relative;
        height: 400px;
    }
    
    #gallery .caption {
        font-weight: 300;
        font-size: 1.5rem;
        color: #fff;       
    }
    
    #gallery .slick-slide {
        height: 100%;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
    }
        
    #gallery .slick-list,
    #gallery .slick-track {
        height: 100%;
    }

    #progress {
        display: block;
        height: 4px;
        margin: 0;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 10;
        background-color: #6501B3;
    }

    .welcome {        
        padding: 60px 0 0 0;
        text-align: center;
        border-bottom: none;
    }

    .team_member_email,
    .team_member_telephone {
        float: left;
        display: block;
        width: 48.5%;    
    }

    .team_member_email {
        margin-right: 3%;
    }

    #ImageRotator li .bannerText .bannerStrapline {
        width: 980px;
        padding-right: 340px;
    }

    body > nav .toggle-nav {
        display: none;
    }
    body > nav .select-menu-wrapper, 
    body > nav .select-menu {
        display: none;
    }

    body > nav .search {
        margin-top: 7px;
    }

    body > nav ul {
        display: block;
        margin: 0;
        float: left;
    }

    body > nav ul li {
        list-style: none;
        display: inline-block;
    }

    body > nav ul li a {
        display: block;
        line-height: 56px;
        padding: 0 9px;   
        color: #777;
        text-decoration: none;
        font-size: 14px;
        font-weight: 300;
    }

    body > nav ul li a:hover {
        background-color: #6501B3;
		color: #fff;
    }

    body > nav ul li.current a {
        position: relative;
        background: #6501B3;
        color: #FFF;
    }	

    body > nav ul ul {
        display: none;
    }
    
    .panel.home a.more {
        display: block;
        position: absolute;
        bottom: 0;
        left: 0;
        background: none;
        color: #6501B3;
        padding: 0
    }

    .panel.home a.more:hover {
        color: #8D8D8B;
    }
    
    .panel.home {    
        box-sizing: border-box;	
        overflow: hidden;
        display: inline;
        float: left;
        text-align: left;
        position: relative;
        margin-right: 3%;
        margin-bottom: 0;
        padding-bottom: 0;
        border: 0;
    } 

    .panel.home h2:after {
        content: "";
        display: block;
        width: 60px;
        height: 1px;
        background: #6501B3;
        margin-top: 12px;
    }

    .panel.home:last-child {
        margin-right: 0;
    }
    
    .panel.home:nth-last-child(1) {
        width: 100%;
    }

    .panel.home:nth-last-child(2),
    .panel.home:nth-last-child(2) ~ .panel.home {
        width: 48.5%;    
    } 

    .panel.home:nth-last-child(3),
    .panel.home:nth-last-child(3) ~ .panel.home {
        width: 31.333%;
    } 

    .panel.home:nth-last-child(4),
    .panel.home:nth-last-child(4) ~ .panel.home {
        width: 22.75%;   
    } 

    .side.submenu {
        display: block;
        padding: 0;
        background: none;
        margin-bottom: 1rem;
    }

    .side.submenu ul {
        margin: 0;
        list-style: none;    
    }

    .side.submenu a {
        display: block;
        padding: 10px 20px;
        border-bottom: 3px solid #FFF;
        color: #6501B3;
        background: #F1F1F1;
        text-decoration: none;
        border-radius: 2px;
    }

    .side.submenu a:hover {
        background: #E4E4E4;
        
    }

    .side.submenu a.current {
        color: #FFF;
        background: #6501B3;
    }

    .side.submenu a:before {
        content: "\f054";
        font-family: "FontAwesome";
        padding-right: 8px;
        font-size: 0.8em;
    }

    body > main.subpage .contact-area .contact-info {
        float: left;
        width: 48.5%;
        margin-right: 3%;
    }

    body > main.subpage .contact-area .contact-form {
        float: right;
        width: 48.5%;
    }

    #callback .callback-input {
        margin-bottom: 0;
        margin-right: 3%;
        width: 22.75%;        
    }

    #callback .callback-input:last-child {
        margin-right: 0;
    }

    body > footer .footer-links {
        text-align: right;
    }

    body > footer .footer-links a {
        margin: 0 0 0 1rem;
    }
}

@media only screen and (min-width: 90.063em) {
    #ImageRotator li .bannerText .bannerStrapline {
        width: 1200px;
        padding-right: 560px;
    }
	
    body > nav ul li a {
        padding: 0 15px;   
		font-size: 15px;
    }
	
    .ir-input {
       width: 640px;
    }

    .ir-input label {
        float: left;
        width: 220px;
    }

    .ir-input select,
    .ir-input input,
    .ir-input textarea {
        float: left;
        width: 420px;
    }    
}
/* EDITOR PROPERTIES - PLEASE DON'T DELETE THIS LINE TO AVOID DUPLICATE PROPERTIES */

 
        .outer {
        display: table;
        height: 100%;
        width: 100%;
        }

        .outer .middle {
        display: table-cell;
        vertical-align: middle;
        margin: 0 auto;
        height: 100%;
        }

        .gallery-wrapper {
        position: relative;
        }

        #gallery {
        display: block;
        position: relative;
        height: 400px;
        }

        #gallery .caption {
        font-weight: 300;
        font-size: 1.5rem;
        color: #fff;
        }

        #gallery .slick-slide {
        height: 100%;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center;
        }

        #gallery .slick-list,
        #gallery .slick-track {
        height: 100%;
        }
