/*
Theme Name: North View
Author: Concise Studio
Author URI: https://concise-studio.com
Description: Theme for North View Mortgages
Version: 20200904
*/

html {
    position: relative;
}

.container-fluid {
    max-width: 1280px;
}

a,
a:hover, a:focus {
    outline: none;
}

/*navbar*/

header {
    z-index: 9999;
    position: relative;
}

.navbar.navbar-custom {
    position: relative;
    display: block;
    background-color: #fff;
	border-radius: 0;
	box-shadow: none;
	border: medium none;
	background-image: none;
	padding: 15px 0 0;
	margin-bottom: 0;
}

.navbar.navbar-custom ul {
    padding: 20px 0 0;
}

.navbar.navbar-custom ul li {
	padding: 0;
	margin: 0 35px 0 0;
    list-style: none;
    display: inline-block;
    position: relative;
}

.navbar.navbar-custom ul li:last-child {
    margin-right: 0;
}

.navbar.navbar-custom ul li a {
    color: #0084b2;
    font-size: 18px;
    padding: 10px 0;
}


.navbar.navbar-custom .navbar-right-menu li a {
    color: #000000;
}

.navbar.navbar-custom .navbar-right-menu li a:hover,
.navbar.navbar-custom .navbar-right-menu li a:focus,
.navbar.navbar-custom .navbar-right-menu li.current_page_item a,
.navbar.navbar-custom .navbar-right-menu li.current-menu-item > a  {
    color: #0083b3;
    text-decoration: none;
    outline: none;
}

.navbar-logo {
    display: inline-block;
    margin-bottom: 15px;
}

.navbar-logo img {
    height: 70px;
}

.menu-mobile-toggle-wrapper {
    padding-top: 25px;
}

/*Header contact*/

.header-contact-wrap {
    letter-spacing: -0.3em;
    padding-top: 15px;
}
.header-contact-wrap i {
    display: inline-block;
    font-size: 30px;
    line-height: 1;
    color: #004274;
    letter-spacing: normal;
    width: 20%;
    padding-right: 5px;
    vertical-align: middle;
}

.header-contact-wrap .header-contact-block {
    display: inline-block;
    width: 80%;
    letter-spacing: normal;
    text-align: left;
    vertical-align: middle;
}

.header-contact-block a,
.header-contact-block span {
    display: block;
    color: #004274;
}
.header-contact-block a:first-child,
.header-contact-block span:first-child {
    font-weight: 600;
}

/*main menu*/

.main-menu-block {
    background-color: #243547;
    z-index: 9999;
    position: relative;
}

.navbar-main-menu {
    margin: 0;
    text-align: left;
    clear: both;
	display: -webkit-flex;
    display: flex;
    flex: 1 1 100%;
    flex-flow: row nowrap;
    justify-content: space-between;
    width: 100%;
    position: relative;
}

.navbar-main-menu ul {
}
.navbar-main-menu li {
    position: relative;
	margin: 0 35px 0 0;
    list-style: none;
    display: inline-block;
    line-height: 18px;
}

.navbar.navbar-custom ul li:last-child {
    margin-right: 0;
}

.navbar.navbar-custom ul li a {
    color: #0084b2;
    font-size: 18px;
    padding: 10px 0;
}

.navbar-main-menu > li > a {
    height: 50px;
    color: #fff;
    font-size: 18px;
    display: block;
    line-height: 18px;
    position: relative;
    padding: 15px 0;
}

.navbar-main-menu > li > a:hover::after,
.navbar-main-menu > li > a:focus::after,
.navbar-main-menu > li.current_page_item > a::after,
.navbar-main-menu > li.current-menu-item > a::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 3px;
    background-color: #0084b2;
    bottom: 0;
    left: 0;
}

.navbar-main-menu > li.current_page_item:first-child > a::after,
.navbar-main-menu > li.current-menu-item:first-child > a::after {
    display: none;
}

.navbar-main-menu li a:hover,
.navbar-main-menu li a:focus,
.navbar-main-menu li.current_page_item > a,
.navbar-main-menu li.current-menu-item > a {
    text-decoration: none;
    outline: none;
}

.navbar-main-menu li > .sub-menu  {
    display: none;
	z-index: 3333;
	width: 100%;
	position: absolute;
    top: 47px;
    border-top: 3px solid #0084b2;
	background-color: #fff;
    margin: 0;
    padding: 0 !important;
    min-width: 200px;
    text-align: left;
    border-top: 3px solid #0084b2;
    z-index: 98;
}

.navbar-main-menu li .sub-menu li {
	display: block;
    margin: 0;
    background-color: #fff;
    border-bottom: 1px solid #0084b2;
}
.navbar-main-menu li .sub-menu li a {
    color: #000;
    font-size: 16px;
    display: block;
    padding: 10px;
}

.navbar-main-menu li .sub-menu li a:hover,
.navbar-main-menu li .sub-menu li a:focus,
.navbar-main-menu li .sub-menu li.current_page_item a,
.navbar-main-menu li .sub-menu li.current-menu-item a {
    color: #000;
    border-bottom: none;
    background-color: #e3e3e3;
}

/*boxes*/

.margin-block {
    margin: 100px 0;
}

.bg-white {
    background-color: #fff;
}

.main-banner .carousel .item{
    height: 390px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.carousel-control i {
    font-size: 70px;
    line-height: 70px;
    top: 45%;
    position: absolute;
}
.carousel-control.right i {
    right: 20px;
}
.carousel-control.left i {
    left: 20px;
}

.carousel-caption {
    left: 0;
    right: auto;
}

.carousel-indicators {
    bottom: 0;
}

.carousel-indicators li,
.carousel-indicators .active  {
    width: 40px;
    height: 4px;
    border-radius: 0;
    margin: 0 3px;
    border-color: #dce0eb;
}

.carousel-indicators .active {
    background-color: #dce0eb;
}

.arrow-icon {
    left: -9px;
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #d2eef6 transparent transparent;
    bottom: 50%;
    position: absolute;
}

.arrow-icon-top {
    border-width: 0 10px 10px;
    left: 48.5%;
    border-style: solid;
    border-color: transparent transparent #d2eef6 transparent;
    bottom: auto;
    top: -9px;
    position: absolute;
}


.arrow-icon-white {
    border-color: transparent transparent #fff transparent;
}

/*

.main-banner.arrow-block::after {
    border-color: transparent #d2eef6 transparent transparent;
}
*/

.main-banner h3 {
    display: block;
    width: 100%;
    padding: 10px 20px;
    background-color: rgba(0,0,0,0.8);
    color: #e3e3e3;
    
}
.banner-block {
    color: #fff;
    padding: 30px 20px;
    align-items: flex-end;
    align-content: center !important;
	display: -webkit-flex;
    display: flex;
}

.banner-block a {
    color: #fff;
    text-decoration: underline;
}

.box-blue {
    background-color: #dce0eb;
} 
.box-grey {
    background-color: #e3e3e3;
} 

.box-colored {
    position: relative;
}

.box-colored.box-white {
    background-color: #fff;
    border-color: #f4f4f4;
}
/*

.col-products .box-colored:nth-child(2n+2){
    border-right: none;
}

.col-products .box-colored:nth-child(2n+1){
    border-left: none;
}
*/

.col-products .box-colored:nth-child(3n+1) {
    border-left: none;
}

.col-products .box-colored:first-child,
.col-products .box-colored:nth-child(2),
.col-products .box-colored:nth-child(3) {
    border-top: none;
}
.col-products .box-colored:nth-child(3n+3) {
    border-right: none;
}

.col-products .box-colored:last-child,
.col-products .box-colored:nth-child(4),
.col-products .box-colored:nth-child(5) {
    border-bottom: none;
}

.box-inline .box-colored {
    border-top: none;
    border-bottom: none;
}

.box-inline .box-colored:first-child {
    border-left: none;
}


.box-inline .box-colored:last-child {
    border-right: none;
}

.box-inline .box-colored:nth-child(2n+2) {
    border: none;
}

.col-products a,
.products-tiles a {
    color: #000;
}

.col-products a:hover,
.col-products a:focus,
.products-tiles a:hover,
.products-tiles a:focus {
    background-color: #c0c5cb;
    text-decoration: none;

}

.col-products a:hover .arrow-icon-sm,
.col-products a:focus .arrow-icon-sm {
    border-color: transparent transparent #dce0eb;
}

.col-products a:hover .arrow-icon,
.col-products a:focus .arrow-icon {
    border-color: transparent #dce0eb transparent transparent;
}

.box-colored {
    border: 1px solid #fff;
    text-align: center;
    padding: 20px;
}

.box-banner {
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
    background-image: url("img/banner-main.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: auto;
}

.box-colored-image {
    padding-top: 20px;
    height: 60px;
}

.box-colored p {
    text-align: left;
}

/*Side Panel*/

.side-panel {
    -webkit-box-shadow: 0px 0px 10px 0px rgba(164,164,164,1);
    -moz-box-shadow: 0px 0px 10px 0px rgba(164,164,164,1);
    box-shadow: 0px 0px 10px 0px rgba(164,164,164,1);
    min-height: 100%;
    z-index: 200;
    background-color: #f4f4f4;
}

.side-panel h4 {
    text-align: center;
}
.side-panel h4 a {
    color: #000000;
    font-size: 30px;
    padding-left: 3px;
}

.call-form {
    position: relative;
    padding: 10px 20px;
    width: auto;
    top: 0;
}
.call-form form {
    width: 100%;
}

.text-lined {
    color: #000;
    font-size: 18px;
    display: inline-block;
    width: 100%;
    letter-spacing: -0.3em;
    padding: 20px 0 30px;
}

.text-lined span {
	color: #000;
    letter-spacing: normal;
    width: 20%;
    display: inline-block;
    text-align: center;
}
.text-lined:before {
    background-color: #000;
    content: " ";
    display: inline-block;
    height: 3px;
    vertical-align: middle;
    width: 40%;
    letter-spacing: normal;
}
.text-lined:after {
    background-color: #000;
    content: " ";
    display: inline-block;
    height: 3px;
    vertical-align: middle;
    width: 40%;
    letter-spacing: normal;
}

.form-control,
.form-control:focus {
    box-shadow: none;
}

.call-form .btn {
    width: 100%;
    padding: 17px;
}

.message-sent .glyphicon-send {
    display: block;
    height: 120px;
    font-size: 100px;
    color: #fff;
}


/*testimonial block*/

.testimonial-block {
    background-color: #fff;
    margin: 100px 0;
}
.testimonials-banner {
    background-image: url('img/bg-testimonial.jpg');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 100px 0;
}

.testimonial-content {
    padding: 10px 20px;
    font-size: 18px;
}

.testimonial-extra-info {
    font-size: 18px;
    color: #6b6c70;
}

.testimonial-text {
    display: block;
    width: 100%;
    letter-spacing: -0.3em;
}
.testimonial-text span {
    display: inline-block;
    width: 75%;
    letter-spacing: normal;
}

.testimonial-text:before {
    background: rgba(0, 0, 0, 0) url("img/icon-quote.svg") no-repeat scroll center center;
    content: "";
    display: inline-block;
    height: 40px;
    vertical-align: top;
    width: 25%;
}

/*Help client list*/

.list-block {
    margin-top: 100px;
}

.banner-inner .glyphicon {
    font-size: 100px;
    display: block;
    margin: 0 auto;
    text-align: center;
}

.title-small {
    font-size: 18px;
    margin: 0;
} 

.list-block .title-small .glyphicon {
    display: block;
    text-align: center;
    font-size: 30px;
    padding-bottom: 10px;
    vertical-align: middle;
}

.col-list-title .glyphicon {
    display: block;
    margin: 0 auto 10px;
    
}

.col-list .btn-primary {
    padding: 20px;
}


.margin-wrapper {
    display: flex;
    height: 100%;
    width: 100%;
}
.margin-wrapper-inner, 
.margin-wrapper > h3 {
    margin: auto;
}

.list-block-content a {
    border: 1px solid #f4f4f4;
    border-bottom: none;
    border-right: none;
}

.list-block-content a:hover,
.list-block-content a:focus {
    text-decoration: none;
    border: 1px solid #f4f4f4;
}

.list-block-content a:hover .glyphicon,
.list-block-content a:focus .glyphicon {
    color: #fff;
}

.list-block-content .box-colored:first-child,
.list-block-content .box-colored:nth-child(2) {
    border-top: none;
}

.list-block-content .box-colored:nth-child(7) {
    border-bottom: none;
} 


.list-block-content a.btn-primary:hover,
.list-block-content a.btn-primary:focus {
    text-decoration: none;
    border-bottom: none;
    border-right: none;
}
/*

.list-block-content a h3 {
    margin-top: 15px;
}
*/

/*FAQ*/

.box-dark-blue {
    background-color: #2f4052;
    color: #fff;
}

.box-content {
    font-size: 16px;
    padding: 20px;
}
.box-content h3 {
    margin-top: 0;
}

.box-dark-blue.arrow-block::after {
    border-color: transparent #dce0eb transparent transparent;
}


.box-dark-blue img {
    margin: 0 auto;
    display: block;
}

.arrow-block::after {
    right: -1px;
    content: '';
    border-style: solid;
    border-width: 10px 10px 10px 0;
    border-color: transparent #fff transparent transparent;
    bottom: 45%;
    position: absolute;
}
.arrow-right::after {
    left: -1px;
    content: '';
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #fff;
    bottom: 50%;
    position: absolute;
    right: auto;
}

.arrow-top::after {
    border-color: #fff transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0;
    content: "";
    position: absolute;
    right: 50%;
    top: -1px;
    z-index: 99;
}

.arrow-top.arrow-dark::after {
    border-color: #2f4052 transparent transparent;
}

.arrow-top {
    position: relative;
}

.content-inner-wrapper {
    background-color: #f4f4f4;
}

.banner-inner {
    margin: auto;
}

.faq-block h3 {
    text-align: left;
    width: 100%;
    margin: 0;
    padding: 10px 0;
}

.faq-banner .btn {
    border: 1px solid #dce0eb;
    display: inline-block;
    font-size: 18px;
    text-decoration: none;
    background-color: #dce0eb;
    color: #2f4052;
}

.faq-banner .btn:hover,
.faq-banner .btn:focus {
    background-color: #c0c5cb;
    border: 1px solid #c0c5cb;
}

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

.arrow-dark.arrow-left::after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #2f4052;
    position: absolute;
    left: -2px;
    top: 45%;
    content: '';
}


.faq-block .btn-block {
    border-color: transparent;
}
.faq-block .btn-block:hover,
.faq-block .btn-block:focus {
    text-decoration: none;
    background-color: #c0c5cb;
}

.faq-block .btn-block img {
    display: block;
    margin: 0 auto;
    height: 40px;
}
.faq-block .btn-block span {
    font-size: 18px;
    padding-top: 5px;
    display: block;
    color: #333;
}

.box-faq-header {
    padding: 0 20px;
}

.box-question {
    padding: 20px;
}
.box-question h3 {
    margin-top: 0;  
    margin-bottom: 20px;
}

.box-question a {
    display: block;
    padding-bottom: 20px;
    font-size: 16px;
    color: #6c6c70;
}

.box-question a:hover,
.box-question a:focus {
    text-decoration: none;
    color: #000;
}

/*contact us*/

.map-section {
    margin-bottom: 100px;
}
.map-section iframe {
    min-height: 100%;
} 


/*FAQ*/

.faq-info {
    padding-top: 20px;
}

.faq-info .faq-header {
    margin-bottom: 20px;
    border-bottom: 1px solid #f4f4f4;
}

.faq-info .box-dark-blue h3 {
    padding: 0;
    margin: 0;
}
.faq-info .box-dark-blue h3 img {
    height: 30px;
    display: inline;
}

.faq-tab {
    padding: 0;
    margin: 0;
}
.faq-tab li {
    list-style: none;
}
.faq-tab li a {
    display: block;
    color: #fff;
    font-size: 18px;
}
.faq-tab li.active a {
    color: #000;
    background-color: #d2eef6;
}
.faq-tab li a:hover,
.faq-tab li a:focus {
    text-decoration: none;
}

/*FAQ mobile*/

.accordion-box h3 {
    font-size: 18px;
}

.accordion-box h3 a {
    padding: 20px;
    color: #fff;
    text-decoration: none;
    display: block;
    position: relative;
}

.accordion-box-wrapper .box-content p {
    color: #000;
}

.accordion-box-wrapper .box-content {
    padding: 20px;
    background-color: #fff;
}

.accordion-box h3 a:hover {
    background-color: #1c2732;
}


.accordion-box-wrapper .box-content[role="tabpanel"]::before  {
    border-color: #2f4052 transparent transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    top: -1px;
    content: "";
    position: absolute;
    right: 50%;
    z-index: 99;
}

/*

.accordion-box h3 a[aria-expanded="true"]:hover::after  {
    border-color: #1c2732 transparent transparent transparent;
}

.accordion-box h3 a[aria-expanded="true"]::after {
    border-color: #2f4052 transparent transparent transparent;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    bottom: -9px;
    content: "";
    position: absolute;
    right: 50%;
    z-index: 99;
    
}
*/


/*services */

.service-main-info{
    padding: 20px 0;
    margin: 10px 0;
}

.service-info {
    padding: 20px;
    margin: 10px 0;
    background-color: #fff;
}

.service-info,
.service-info .box-content,
.service-info p,
.service-info ul li,
.service-info a,
.service-main-info,
.service-main-info .box-content,
.service-main-info p,
.service-main-info ul li,
.service-main-info a {
    font-size: 18px;
}

.image-block {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.box-content {
    padding: 20px;
}
.box-content p:last-child {
    margin-bottom: 0;
}

.bg-blue-shadow-img {
    position: relative;
}
.bg-blue-shadow {
    display: block;
    background-color: rgba(0,104,135,0.56);
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/*Case Studies*/

.case-study {
    margin: 30px 0;
}

.case-study .box-content {
    padding: 20px;
}

.case-study-block {
    padding: 0 20px;
}
.case-study-block h3 {
    padding: 15px 0;
    margin: 0;
}

.case-study-list {
    margin: 0 0 20px;
    padding: 0;
}
.case-study-list li {
    list-style: none;
}



/*product's tiles*/

.products-tiles > .flex-box {
    border: 1px solid #fff;
}

.products-tiles > .flex-box:first-child {
    border-left: none;
    border-top: none;
}

.products-tiles > .flex-box:nth-child(2) {
    border-top: none;
}

.products-tiles > .flex-box:nth-child(3) {
    border-top: none;
    border-right: none;
}

.products-tiles > .flex-box:nth-child(3n+1) {
    border-left: none;
}

.products-tiles > .flex-box:nth-child(3n+3) {
    border-right: none;
}


.content-inner-wrapper {
    min-height: calc(100vh - 365px);
}

/*404*/

.no-content-wrapper {
    min-height: calc(100vh - 397px);
    padding: 20vh 0;
    text-align: center;
}


.buttons-inline a {
    margin: 20px 10px;
    transition: all 0.2s;
}

.btn-primary.btn-primary-reverse {
    background-color: #fff;
    color: #2f4052;
    border: 1px solid #2f4052;
}


.btn-primary.btn-primary-reverse:hover {
    background-color: #0f151b;
    color: #fff;
    border: 1px solid #0f151b;
}

/*Footer*/

footer {
    background-color: #fff;
}

.footer-info {
    padding: 20px;
}

.footer-info p {
    padding-top: 10px;
}

.footer-menu {
    padding: 20px;
    margin: 0;
}

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

.footer-menu li {
    list-style: none;
}
.footer-menu li a {
    color: #000;
    font-size: 14px;
}

.footer-menu li a:hover,
.footer-menu li a:focus,
.footer-menu li.current_page_item a,
.footer-menu li.current-menu-item  a {
    text-decoration: none;
    color: #0084b2;
}

.copyright {
    padding: 0 20px 5px;
}
.copyright p {
    padding-bottom: 0;
}
