/*-------------------------------------------------------------------------------------
[TABLE OF CONTENTS]

	00. RESET
	01. GENERAL
	02. BUTTON
	03. HEADER
	04. STICKY HEADER
	05. HEADER HEIGHT
	06. HAMBURGER MENU ICON
	07. PORTFOLIO
	08. THUMBNAIL OVERLAY
	09. BASIC GALLERY
	10. FOOTER STYLES
	11. REVOLUTION
	12. CIRCLE PROGRESS
	13. FEATURES
	14. PROCESS
	15. PROGRESS BAR
	16. TOOLTIP
	17. TABS
	18. ACCORDION / TOGGLE
	19. TILES
	20. PRICING & TABLES
	21. FORMS
	22. MAILCHIMP / NEWSLETTER
	23. GO TO TOP
	24. SOCIAL ICONS
	25. LIGHTGALLERY
	26. FONT ICON PAGES
	27. DIVIDERS
	28. BOX LAYOUT
	29. RESPONSIVE
	30. PROINSIGHT THEME STYLES (CSS Variables & Custom Components)
	
	Color System:
	- Brand Colors: --primary-blue, --secondary-blue, --teal-blue, etc.
	- Neutral Colors: --charcoal, --dark-gray, --text-gray, --light-gray, etc.
	- Status Colors: --success-green, --warning-yellow, --error-red, etc.
	- Typography: Inter font family
	
-------------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------------*/
/*	00. RESET
/*-----------------------------------------------------------------------------------*/
*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
:focus {
    outline: 0 !important
}
.fit-vids-style {
    display: none
}
figure {
    margin: 0;
    padding: 0;
}
figure img {
    max-width: 100%
}
iframe {
    border: none
}
::selection {
    background: var(--light-cyan); /* Safari */
    color: var(--dark-text);
}
::-moz-selection {
    background: var(--light-cyan); /* Firefox */
    color: var(--dark-text);
}
.animsition-loading,
.animsition-loading:after {
    width: 40px;
    height: 40px;
    margin-top: -20px;
    margin-left: -20px;
}
.lg-outer .lg-item:after,
.animsition-loading,
.tp-loader.spinner {
    content: "";
    height: 40px !important;
    width: 40px !important;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -20px;
    margin-left: -20px;
    background-color: transparent;
    border-top: 6px solid rgba(28,28,28,0.08);
    border-right: 6px solid rgba(28,28,28,0.08);
    border-bottom: 6px solid rgba(28,28,28,0.08);
    border-left: 6px solid var(--secondary-blue);
    -webkit-transform: translateZ();
    transform: translateZ();
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-duration: .8s;
    animation-duration: .8s;
    -webkit-animation-name: animsition-loading;
    animation-name: animsition-loading;
    border-radius: 100%;
    background: none;
}
/*-----------------------------------------------------------------------------------*/
/*	01. GENERAL
/*-----------------------------------------------------------------------------------*/
body {
    overflow-x: hidden;
    font-size: 15px;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    color: var(--text-gray);
    font-family: 'Source Sans Pro', sans-serif;
    background: none;
    display: flex;
    height: 100vh;
    flex-direction: column;
}
.navbar,
footer {
	flex-shrink: 0;
}
.content-wrapper {
    flex: 1 0 auto;
}
.container {
    padding-right: 0;
    padding-left: 0;
}
body,
li,
address {
    line-height: 24px
}
input,
button,
select,
textarea {
    font-family: inherit;
    font-weight: normal;
    color: inherit !important;
}
p {
    margin: 0 0 20px
}
a {
    color: var(--secondary-blue);
    transition: all 150ms ease-in;
}
a.line {
    transition: border 0.2s;
    padding-bottom: 1px;
    border-bottom: 1px solid transparent;
}
a.line:hover {
    border-bottom: 1px solid var(--secondary-blue);
    transition: border 0.2s;
}
a:hover,
a:focus {
    color: var(--secondary-blue);
    text-decoration: none;
}
.nocolor {
    color: var(--text-gray)
}
.nocolor:hover {
    color: var(--primary-blue)
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    /* color: var(--medium-gray); */
    color:var(--charcoal);
    margin-bottom: 10px;
    letter-spacing: -0.1px;
    font-weight: 500;
}
.image-wrapper .boxed h1,
.image-wrapper .boxed h2,
.image-wrapper .boxed h3,
.image-wrapper .boxed h4,
.image-wrapper .boxed h5,
.image-wrapper .boxed h6 {
    color: var(--medium-gray)
}
.image-wrapper .boxed p {
    color: var(--text-gray)
}
h1 {
    font-size: 24px;
    line-height: 28px;
    margin-bottom: 15px;
}
h2 {
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 15px;
}
h3 {
    font-size: 18px;
    line-height: 22px;
}
h4 {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 7px;
}
h5 {
    font-size: 15px;
    line-height: 19px;
}
h6 {
    font-size: 14px;
    line-height: 18px;
}
h1.post-title,
h2.post-title {
    font-size: 22px;
    line-height: 26px;
}
.post-title {
    margin-bottom: 5px
}
.post-title a {
    color: var(--medium-text)
}
.post-title a:hover {
    color: var(--secondary-blue)
}
.page-title {
    margin: 0;
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 2px;
    color: var(--light-gray);
    text-transform: uppercase;
}
.breadcrumbs.meta span:after {
    content: "/";
    vertical-align: middle;
    font-size: 12px;
    padding: 0 10px 0 10px;
}
.lead {
    font-size: 20px;
    line-height: 26px;
    font-weight: 400;
    /* color: var(--muted-gray); */
    color:var(--charcoal)
}
.section-title {
    margin-bottom: 40px
}
.section-title h2 {
    font-size: 14px;
    line-height: 1;
    margin-bottom: 10px;
    letter-spacing: 2px;
    color: var(--light-gray);
    text-transform: none;
}
.section-title h3 {
    font-size: 30px;
    letter-spacing: -0.6px;
    line-height: 34px;
    font-weight: 600;
    color: var(--charcoal);
    margin: 0;
    text-transform: none;
}
.section-title .lead {
    text-transform: none
}
.section-title h3 + .lead {
    margin-top: 10px
}
.inner {
    padding-top: 90px;
    padding-bottom: 90px;
}
.inner2 {
    padding-top: 60px;
    padding-bottom: 60px;
}
.inner3 {
    padding-top: 30px;
    padding-bottom: 30px;
}
.meta,
.meta a {
    color: var(--light-gray);
    font-size: 13px;
    font-weight: 600;
}
.more {
    color: var(--primary-blue);
    display: inline;
}
.more:after {
    content: "»";
    padding-left: 5px;
}
.meta a:hover,
.more:hover {
    color: var(--secondary-blue)
}
.meta {
    display: block;
    margin-bottom: 10px;
}
.meta.tags {
    margin: 0 0 10px 0 !important
}
.meta.tags a:before {
    content: "#";
    display: inline;
}
.meta.price,
.meta.price a {
    font-size: 15px;
    color: var(--primary-blue);
}
.meta.price ins {
    text-decoration: none
}
.meta.price del {
    color: var(--light-gray);
    margin-right: 3px;
}
.meta.upper {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
}
.thin {
    width: 85%;
    margin: 0 auto;
}
.thin2 {
    width: 75%;
    margin: 0 auto;
}
.light-wrapper {
    background: var(--white)
}
.dark-wrapper {
    background-color: var(--background-gray);
    color: var(--charcoal) !important;
}
.inverse-wrapper {
    background: var(--charcoal);
    color: var(--soft-gray);
    position: relative;
}
footer.inverse-wrapper a {
    color: var(--soft-gray) !important
}
footer.inverse-wrapper a:hover {
    color: var(--secondary-blue) !important
}
.inverse-wrapper h1,
.inverse-wrapper h2,
.inverse-wrapper h3,
.inverse-wrapper h4,
.inverse-wrapper h5,
.inverse-wrapper h6 {
    color: var(--white)
}
.inverse-wrapper .section-title .lead,
.inverse-wrapper .section-title h2 {
    color: var(--white)
}
.inverse-wrapper .meta {
    color: var(--gray-text)
}
.image-wrapper blockquote,
.image-wrapper .author h5,
.image-wrapper .section-title h3,
.image-wrapper .section-title .lead {
    color: var(--white) !important
}
.image-wrapper .section-title h2 {
    color: var(--light-text) !important
}
hr {
    border: 0;
    border-bottom: 1px solid var(--lighter-gray);
    padding-top: 60px;
    margin-bottom: 80px;
    box-shadow: none;
}
.inverse-wrapper hr {
    border-color: var(--border-dark)
}
.blog.single hr {
    padding-top: 50px;
    margin-bottom: 70px;
}
ul {
    padding: 0 0 0 18px
}
ol {
    padding: 0 0 0 20px
}
ul,
ol {
    margin-bottom: 15px
}
ul.circled {
    padding: 0;
    list-style: none;
}
ul.circled li:before {
    content: '●';
    margin-right: 10px;
    font-weight: normal;
    vertical-align: top;
    display: inline-block;
    color: var(--primary-blue);
    font-size: 11px;
}
.inverse-wrapper ul.circled li:before {
    color: var(--soft-gray)
}
.alert-success {
    border-color: var(--green-border)
}
.alert-info {
    border-color: var(--blue-border)
}
.alert-warning {
    border-color: var(--yellow-border)
}
.alert-danger {
    border-color: var(--pink-border)
}
.alert .close {
    line-height: 26px
}
.dropcap {
    font-weight: 800;
    display: block;
    float: left;
    font-size: 49px;
    padding: 0;
    margin: 0;
    margin: 12px 8px 0 0;
    text-transform: uppercase;
}
blockquote {
    font-size: 18px;
    line-height: 24px;
    font-weight: normal;
    color: var(--muted-gray);
    position: relative;
    border: 0;
    padding: 0 0 0 50px;
}
blockquote:before {
    position: absolute;
    width: 60px;
    height: 60px;
    font-size: 90px;
    top: 0;
    line-height: 60px;
    left: 0;
    color: var(--pale-text);
    content: "\201C";
}
blockquote small,
blockquote .small {
    text-transform: uppercase;
    font-size: 12px !important;
    font-weight: bold !important;
    letter-spacing: 2px;
}
.map-full {
    height: 100%;
    overflow: hidden;
    display: block;
    position: absolute;
    height: auto;
    bottom: 0;
    top: 0;
    left: 0;
    right: 0;
}
.col-image {
    padding: 0px;
    position: relative;
}
.col-image .bg-wrapper {
    overflow: hidden;
    position: absolute;
    height: 100%;
    padding: 0px;
    top: 0px;
}
.col-image .inner-col {
    padding-top: 90px;
    padding-bottom: 90px;
}
.bg-holder {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-size: cover !important;
    background-position: center center !important;
}
.contact-info {
    margin: 0;
    padding: 0;
    list-style: none;
}
.contact-info li {
    display: inline-block;
    margin-right: 10px;
}
.contact-info li a {
    color: var(--text-gray)
}
.contact-info li a:hover {
    color: var(--secondary-blue)
}
.contact-info i {
    color: var(--secondary-blue);
    padding-right: 5px;
}
.box {
    background: rgba(255,255,255,0.9);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
    padding: 30px;
}
.box p {
    margin: 0
}
.box p + p {
    margin-top: 20px
}
.row-offset-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.row-offset-0 > [class*="col-"],
.row-offset-0 .row-same-height > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
.row-full-height {
    height: 100%
}
.row-same-height {
    display: table;
    width: 100%;
    /* fix overflow */
    table-layout: fixed;
}
.col-lg-height,
.col-md-height,
.col-sm-height,
.col-xs-height {
    display: table-cell;
    float: none !important;
    vertical-align: middle;
}
@media (min-width: 1200px) { 
	.col-lg-height {
	    display: table-cell;
	    float: none !important;
	    vertical-align: middle;
	}
}
@media (min-width: 992px) { 
	.col-md-height {
	    display: table-cell;
	    float: none !important;
	    vertical-align: middle;
	}
}
@media (min-width: 768px) { 
	.col-sm-height {
	    display: table-cell;
	    float: none !important;
	    vertical-align: middle;
	}
}
.row-offset-0 .inner-col {
    padding: 90px
}
/*-----------------------------------------------------------------------------------*/
/*	02. BUTTON
/*-----------------------------------------------------------------------------------*/
.btn {
    color: var(--white) !important;
    background: var(--primary-blue);
    border: 0;
    margin-bottom: 10px;
    margin-right: 4px;
    font-size: 12px;
    line-height: 1;
    padding: 12px 20px;
    font-weight: 700;
    letter-spacing: 2px;
    border-radius: 0;
    text-shadow: none;
    text-transform: uppercase;
    transition: all 150ms ease-in;
    box-shadow: none;
    display: inline-block;
}
.btn.btn-square {
    padding: 11px !important;
    letter-spacing: normal;
}
.btn.fixed-width {
    width: 180px
}
@-moz-document url-prefix() { 
	.btn.btn-square {
	    padding-bottom: 10px !important
	}
	#scrollUp .btn.btn-square {
	    padding-bottom: 11px !important
	}
}
.btn.btn-large {
    padding: 13px 22px
}
.text-center .btn {
    margin-left: 4px;
    margin-right: 4px;
}
.btn-submit {
    margin: 0 !important
}
.btn:hover,
.btn:focus,
.btn:active,
.btn.active {
    background: var(--secondary-blue);
    transition: all 150ms ease-in;
    box-shadow: none;
    border-color: transparent;
}

.btn.btn-aqua {
    background: var(--primary-blue)
}
.btn.btn-blue {
    background: var(--blue-light)
}
.btn.btn-green {
    background: var(--success-green)
}
.btn.btn-lilac {
    background: var(--purple-light)
}
.btn.btn-navy {
    background: var(--navy)
}
.btn.btn-orange {
    background: var(--orange)
}
.btn.btn-pink {
    background: var(--teal-green)
}
.btn.btn-purple {
    background: var(--purple)
}
.btn.btn-red {
    background: var(--coral)
}
.btn.btn-yellow {
    background: var(--warning-yellow)
}
.btn.btn-dark {
    background: var(--medium-gray)
}
.btn.btn-white {
    background: rgba(255,255,255,0.9);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
    color: var(--dark-gray) !important;
}
.btn-aqua:hover,
.btn-aqua:focus,
.btn-aqua:active,
.btn-aqua.active {
    background: var(--teal-blue) !important
}
.btn-green:hover,
.btn-green:focus,
.btn-green:active,
.btn-green.active {
    background: var(--success-dark) !important
}
.btn-yellow:hover,
.btn-yellow:focus,
.btn-yellow:active,
.btn-yellow.active {
    background: var(--warning-dark) !important
}
.btn-red:hover,
.btn-red:focus,
.btn-red:active,
.btn-red.active {
    background: var(--red-medium) !important
}
.btn-pink:hover,
.btn-pink:focus,
.btn-pink:active,
.btn-pink.active {
    background: var(--pink-red) !important
}
.btn-orange:hover,
.btn-orange:focus,
.btn-orange:active,
.btn-orange.active {
    background: var(--orange-bright) !important
}
.btn-purple:hover,
.btn-purple:focus,
.btn-purple:active,
.btn-purple.active {
    background: var(--purple-dark) !important
}
.btn-lilac:hover,
.btn-lilac:focus,
.btn-lilac:active,
.btn-lilac.active {
    background: #c1a3c2 !important
}
.btn-blue:hover,
.btn-blue:focus,
.btn-blue:active,
.btn-blue.active {
    background: #87b0c3 !important
}
.btn-navy:hover,
.btn-navy:focus,
.btn-navy:active,
.btn-navy.active {
    background: #2c424f !important
}
.btn-white:hover,
.btn-white:focus,
.btn-white:active,
.btn-white.active {
    color: var(--secondary-blue) !important
}
.click-share .share-facebook {
    background: #4470cf
}
.click-share .share-facebook:hover {
    background-color: #4066b9
}
.click-share .share-twitter {
    background: var(--sky-blue)
}
.click-share .share-twitter:hover {
    background-color: #569cbe
}
.click-share .share-pinterest {
    background: var(--error-dark)
}
.click-share .share-pinterest:hover {
    background-color: #b0363e
}
.click-share {
    margin-top: 15px
}
.click-share ul {
    padding: 0;
    margin: 0;
    list-style: none;
    margin-bottom: -4px;
}
.click-share ul li {
    cursor: pointer;
    display: inline-block;
    padding: 0 1px;
    margin-bottom: 4px;
}
.click-share ul li .btn {
    margin: 0
}
/*-----------------------------------------------------------------------------------*/
/*	03. HEADER
/*-----------------------------------------------------------------------------------*/
.navbar {
    z-index: 1008;
    border: 0;
    border-radius: 0;
    min-height: inherit;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
}
.navbar.header1,
.navbar.header3 {
    background: var(--white)
}
.navbar.header2 {
    background: none
}
.navbar.header2 .container.boxed {
    background: rgba(255,255,255,0.9);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
}
.navbar.centered {
    background: var(--white)
}
.navbar.centered.color .navbar-collapse {
    background: var(--primary-blue)
}
.navbar.centered.extended .container {
    display: table;
    height: 100%;
}
.navbar .navbar-header {
    display: table;
    position: relative;
}
.container>.navbar-header,
.container>.navbar-collapse {
    margin: 0;
    padding: 0;
}
.navbar-brand {
    padding: 0;
    line-height: 0;
    float: none;
    height: auto;
    position: relative;
    box-shadow: none;
    margin: 0 !important;
    vertical-align: middle;
    display: table-cell;
    text-align: left;
}
.navbar-brand img {
    max-height: 55px;
    height: auto;
    width: auto;
    max-width: 100%;
}
.navbar .nav-bars-wrapper {
    display: none
}
.navbar .nav-bars-wrapper .nav-bars-inner {
    pointer-events: none
}
.navbar .navbar-collapse {
    border: 0;
    box-shadow: none;
    overflow: hidden;
}
.navbar .navbar-nav {
    margin: 0 !important
}
.navbar .navbar-nav > li > a {
    padding: 0;
    font-size: 15px;
    font-weight: 500;
    transition: all 150ms ease-in;
    line-height: 1;
    color: var(--dark-gray) !important;
    text-transform: none;
    letter-spacing: normal;
    position: relative;
}
.navbar .navbar-nav > li > a:focus,
.navbar .nav > li > a:hover,
.navbar .nav > li.current > a {
    background: none
}
.navbar .nav > li.current > a,
.navbar .nav > li > a:hover {
    color: var(--secondary-blue) !important
}
.navbar .navbar-nav > li > a:focus {
    color: inherit
}
.navbar .dropdown-menu {
    padding: 0;
    margin: 0;
    min-width: 150px;
    border: none;
    background: none;
    border-radius: 0;
    box-shadow: none;
    z-index: -1 !important;
}
.navbar .dropdown-menu li:first-child {
    border: 0
}
.navbar .dropdown-menu li a {
    background: none;
    border: none;
    color: var(--white) !important;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0;
    line-height: 1;
}
.navbar .dropdown-menu li a:hover,
.navbar .dropdown-menu li a.active,
.navbar .nav .open > a,
.navbar .nav .open > a:hover,
.navbar .nav .open > a:focus,
.navbar .dropdown-menu > li > a:hover,
.navbar .dropdown-menu > li > a:focus,
.navbar .dropdown-submenu:hover > a,
.navbar .dropdown-submenu:focus > a,
.navbar .dropdown-menu > .active > a,
.navbar .dropdown-menu > .active > a:hover,
.navbar .dropdown-menu > .active > a:focus {
    background: none
}
.navbar .dropdown-menu li a:hover,
.navbar .dropdown-menu li a.active {
    padding: 0;
    filter: none;
    line-height: 1;
}
.navbar .dropdown-menu li a:hover,
.navbar .dropdown-menu li a.active {
    color: var(--white) !important
}
.navbar .nav > li > .dropdown-menu:after {
    display: none
}
.navbar .dropdown-menu > li > a:hover,
.navbar .dropdown-menu > li > a:focus,
.navbar .dropdown-submenu:hover > a,
.navbar .dropdown-submenu:focus > a,
.navbar .dropdown-menu > .active > a,
.navbar .dropdown-menu > .active > a:hover,
.navbar .dropdown-menu > .active > a:focus {
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false)
}
.navbar .top-bar {
    color: var(--pale-gray)
}
.navbar .top-bar ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.navbar .info li {
    display: inline;
    padding-right: 10px;
}
.navbar .info.text-right li {
    padding: 0;
    padding-left: 10px;
}
.navbar .info,
.navbar .info a,
.navbar .info i {
    color: var(--white)
}
.navbar-header.dark-wrapper .info,
.navbar-header.dark-wrapper .info a,
.navbar-header.dark-wrapper .info i {
    color: var(--text-gray)
}
.navbar .info i {
    margin-right: 2px
}
.navbar .info a:hover,
.navbar .top-bar a:hover {
    color: var(--secondary-blue)
}
.navbar .top-bar .container {
    display: table
}
.navbar .info,
.navbar .social-wrapper {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
}
.navbar:not(extended) .social-wrapper ul {
    display: block;
    margin: 15px 0;
    text-align: right;
}
.navbar .social-wrapper ul li {
    display: inline-block;
    margin: 0 0 0 16px;
}
.caret {
    margin: 0;
    top: -1px;
    position: relative;
}
/*-----------------------------------------------------------------------------------*/
/*	04. STICKY HEADER
/*-----------------------------------------------------------------------------------*/
.navbar.default {
    width: 100%;
    position: absolute;
}
.navbar.fixed {
    position: fixed;
    margin: 0;
    width: 100%;
    background: rgba(255,255,255,0.9);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
}
.navbar.fixed .top-bar {
    display: none
}
.navbar.header2.fixed .container.boxed {
    background: none;
    box-shadow: none;
    padding: 0;
}
/*-----------------------------------------------------------------------------------*/
/*	05. HEADER HEIGHT
/*-----------------------------------------------------------------------------------*/
/* header1 & header3 */
.navbar.header1 .navbar-header,
.navbar.header3 .navbar-header {
    height: 80px
}
@media (min-width: 992px) { 
	.navbar.header1 .navbar-nav,
	.navbar.header3 .navbar-nav {
	    height: 80px
	}
	.navbar.header1 .navbar-nav > li > a,
	.navbar.header3 .navbar-nav > li > a {
	    line-height: 80px
	}
}
/* header2 */
.navbar.header2 .navbar-header {
    height: 65px
}
@media (min-width: 992px) { 
	.navbar.header2 .navbar-nav {
	    height: 65px
	}
	.navbar.header2 .navbar-nav > li > a {
	    line-height: 65px
	}
}
/* header4 & header5 */
@media (min-width: 992px) { 
	.navbar.centered .navbar-nav,
	.navbar.centered.fixed .navbar-nav {
	    height: 54px
	}
	.navbar.centered .navbar-nav > li > a,
	.navbar.centered.fixed .navbar-nav > li > a {
	    line-height: 54px
	}
}
/* sticky */
.navbar.fixed .navbar-header {
    height: 65px
}
@media (min-width: 992px) { 
	.navbar.fixed .navbar-nav {
	    height: 65px
	}
	.navbar.fixed .navbar-nav > li > a {
	    line-height: 65px
	}
}
/*-----------------------------------------------------------------------------------*/
/*	06. HAMBURGER MENU ICON
/*-----------------------------------------------------------------------------------*/
.nav-bars {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 0;
    width: 30px;
    height: 30px;
    font-size: 0;
    text-indent: -9999px;
    float: right;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-shadow: none;
    border-radius: none;
    border: none;
    cursor: pointer;
    -webkit-transition: background 0.3s;
    transition: background 0.3s;
    pointer-events: all;
}
.nav-bars:focus {
    outline: none
}
.nav-bars span {
    display: block;
    position: absolute;
    top: 16px;
    left: 0px;
    right: 0px;
    height: 3px;
    background: var(--dark-gray);
}
.nav-bars span::before,
.nav-bars span::after {
    position: absolute;
    display: block;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: var(--dark-gray);
    content: "";
}
.nav-bars span::before {
    top: -8px
}
.nav-bars span::after {
    bottom: -8px
}
.nav-bars span {
    -webkit-transition: background 0s 0.3s;
    transition: background 0s 0.3s;
}
.nav-bars span::before,
.nav-bars span::after {
    -webkit-transition-duration: 0.3s, 0.3s;
    transition-duration: 0.3s, 0.3s;
    -webkit-transition-delay: 0.3s, 0s;
    transition-delay: 0.3s, 0s;
}
.nav-bars span::before {
    -webkit-transition-property: top, -webkit-transform;
    transition-property: top, transform;
}
.nav-bars span::after {
    -webkit-transition-property: bottom, -webkit-transform;
    transition-property: bottom, transform;
}
.nav-bars.is-active span {
    background: none
}
.nav-bars.is-active span::before {
    top: 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.nav-bars.is-active span::after {
    bottom: 0;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.nav-bars.is-active span::before,
.nav-bars.is-active span::after {
    -webkit-transition-delay: 0s, 0.3s;
    transition-delay: 0s, 0.3s;
}
/*-----------------------------------------------------------------------------------*/
/* 	07. PORTFOLIO
/*-----------------------------------------------------------------------------------*/
.portfolio-grid .item figure {
    margin-bottom: 0
}
.portfolio-grid.detailed .item figure {
    margin-bottom: 20px
}
.portfolio-grid.col3 .items-wrapper,
.portfolio-grid.col4 .items-wrapper {
    margin-bottom: -15px;
    margin-right: -15px;
}
.portfolio-grid .item {
    float: left
}
.portfolio-grid.col3 .item,
.portfolio-grid.col4 .item {
    margin-bottom: 15px;
    width: 33.33339%;
    padding-right: 15px;
}
.portfolio-grid.col4 .item {
    width: 25%
}
.portfolio-grid.detailed .items-wrapper {
    margin-bottom: -40px
}
.portfolio-grid.detailed .item {
    margin-bottom: 40px
}
.isotope-filter {
    margin-bottom: 20px
}
.isotope-filter ul {
    padding: 0;
    margin: 0;
}
.isotope-filter ul li {
    display: inline-block;
    position: relative;
}
.isotope-filter ul li a {
    display: inline-block;
    color: var(--dark-gray);
    background: none;
    font-size: 12px;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 700;
    padding: 0;
    margin-right: 40px;
    cursor: pointer;
    position: relative;
    border: 0;
}
.isotope-filter.text-center ul li a {
    margin: 0 20px
}
.isotope-filter ul li a:hover,
.isotope-filter ul li a.is-checked {
    color: var(--secondary-blue)
}
.item-details {
    padding: 0;
    margin: 0 0 30px 0;
    list-style: none;
}
.item-details li {
    margin-bottom: 10px
}
.item-details li strong {
    font-size: 13px;
    color: var(--medium-gray);
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding-right: 3px;
}
/*-----------------------------------------------------------------------------------*/
/*	08. THUMBNAIL OVERLAY
/*-----------------------------------------------------------------------------------*/
figure {
    display: block;
    overflow: hidden;
    position: relative;
}
figure li a,
figure li a img {
    display: block;
    overflow: hidden;
    position: relative;
}
figure a img {
    display: inline;
    max-width: 100%;
}
figure a .overlay {
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    text-decoration: none;
    z-index: 1;
    transition: all 0.4s;
}
figure a .overlay:after {
    content: "";
    display: block;
    position: absolute;
    background: var(--white);
    background: rgba(255,255,255,0.85);
    top: 12px;
    left: 12px;
    right: 12px;
    bottom: 12px;
}
figure a .overlay.icon:after {
    background: rgba(255,255,255,0.7);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
figure a:hover .overlay {
    opacity: 1
}
figure a .overlay .info {
    text-align: center;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    display: table;
}
figure a .overlay .info span {
    padding: 12px 21px;
    font-size: 12px;
    color: var(--medium-gray);
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    display: table-cell;
    vertical-align: middle;
}
figure a .overlay.icon .info span:before {
    font-family: 'fontello';
    content: '\f517';
    letter-spacing: normal;
    font-size: 16px;
}
/*-----------------------------------------------------------------------------------*/
/*	09. BASIC GALLERY
/*-----------------------------------------------------------------------------------*/
.basic-gallery {
    display: block;
    padding: 0;
    margin: 0;
    width: 100%;
}
.basic-gallery li {
    display: block;
    width: 100%;
    margin-top: 50px;
}
.basic-gallery li:first-child {
    margin-top: 0
}
.basic-gallery li img {
    display: inline;
    max-width: 100%;
}
/*-----------------------------------------------------------------------------------*/
/* 	12. FOOTER STYLES
/*-----------------------------------------------------------------------------------*/
footer a {
    color: var(--text-gray)
}
footer  a:hover {
    color: var(--secondary-blue)
}
footer .meta a:hover {
    color: var(--secondary-blue) !important
}
footer .copyright {
    margin: 0
}
footer.inverse-wrapper .sub-footer {
    background: var(--charcoal)
}
.sub-footer p {
    margin-bottom: 0
}
/*-----------------------------------------------------------------------------------*/
/*	14. REVOLUTION
/*-----------------------------------------------------------------------------------*/
.tparrows {
    cursor: pointer;
    background: rgba(255,255,255,0.9);
    box-shadow: 0 1px 2px -1px rgba(0, 0, 0, 0.4);
    width: 40px;
    height: 40px;
    position: absolute;
    display: block;
    z-index: 1000;
    transition: background 200ms ease-in;
}
.tparrows:hover {
    background: rgba(255,255,255,1)
}
.tparrows:before {
    font-family: "fontello";
    font-size: 18px;
    color: var(--dark-gray);
    display: block;
    line-height: 40px;
    text-align: center;
    transition: color 200ms ease-in;
}
.tparrows:hover:before {
    color: var(--primary-blue)
}
.tparrows.tp-leftarrow:before {
    content: '\e75d'
}
.tparrows.tp-rightarrow:before {
    content: '\e75e'
}
.tp-bullet {
    background: rgba(255,255,255,0.5);
    transition: background 200ms ease-in;
    width: 13px;
    height: 13px;
}
.tp-bullet.selected,
.tp-bullet:hover {
    background: rgba(255,255,255,0.85)
}
.boxshadow {
    box-shadow: 0 0 20px rgba(0,0,0,0.2) !important
}
.tp-dottedoverlay.darkoverlay {
    background: rgba(33,33,33,0.3)
}
.tp-bannertimer {
    background: rgba(255,255,255,0.25)
}
.tp-caption.light-layer {
    background: rgba(255,255,255,0.5);
    padding: 12px 15px;
    font-size: 12px;
    color: var(--charcoal);
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 700;
    display: table-cell;
}
#slider-video {
    margin-bottom: 10px !important
}
.erinyen .tp-thumb-over {
    background: rgba(0,0,0,0.5)
}
.erinyen .tp-thumb.selected .tp-thumb-over,
.erinyen .tp-thumb:hover .tp-thumb-over {
    background: transparent
}
/*-----------------------------------------------------------------------------------*/
/* 	15. OWL CAROUSEL - REMOVED (unused section)
/*-----------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------------*/
/*	16. PARALLAX - REMOVED (unused section)
/*-----------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------------*/
/* 	17. VIDEO PARALLAX - REMOVED (unused section)
/*-----------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------------*/
/*	18. CIRCLE PROGRESS
/*-----------------------------------------------------------------------------------*/
.circle-progress-wrapper {
    padding-bottom: 40px;
    margin-bottom: -40px;
    padding-left: 35px;
    padding-right: 35px;
}
.circle-progress {
    height: auto
}
.circle-progress > svg {
    height: 100%;
    display: block;
}
.circle-progress p {
    position: absolute;
    top: 50%;
    left: 0;
    font-size: 50px;
    font-weight: bold;
    word-break: keep-all;
}
.circle-progress p:after {
    display: inline-block;
    content: "%";
    font-size: 20px;
    vertical-align: middle;
}
.circle-progress strong {
    visibility: hidden;
    position: absolute;
    bottom: -40px;
    left: 0;
    display: block;
    text-align: center;
    width: 100%;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--light-gray);
}
/*-----------------------------------------------------------------------------------*/
/*	19. FEATURES
/*-----------------------------------------------------------------------------------*/
.feature {
    padding: 0 0 0 105px;
    position: relative;
    margin-bottom: 30px;
}
.timeline .feature {
    padding: 0 0 0 230px
}
.feature .icon,
.feature figure {
    position: absolute;
    left: 0;
}
.feature figure img {
    width: 200px;
    height: auto;
}
.icon-m img {
    width: 85px;
    height: 85px;
}
.icon-s img {
    width: 70px;
    height: 70px;
}
.feature-s {
    padding: 0 0 0 85px
}
.feature.text-right {
    text-align: left
}
.facts .counter {
    font-size: 30px;
    color: var(--medium-gray);
    margin-bottom: 10px;
    letter-spacing: -0.6px;
    font-weight: 700;
}
.facts p {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--light-gray);
}
/*-----------------------------------------------------------------------------------*/
/*	20. PROCESS
/*-----------------------------------------------------------------------------------*/
.process .icon {
    display: inline-block;
    text-align: center;
    margin-bottom: 10px;
    position: relative;
}
.process .icon img {
    z-index: 3;
    position: relative;
}
.process .icon:before,
.process .icon:after {
    content: "";
    display: inline-block;
    border-bottom: 1px solid var(--lighter-gray);
    width: 130%;
    height: 0px;
    position: absolute;
    top: 45px;
    left: -105%;
    z-index: 1;
}
.process .icon:after {
    left: auto;
    right: -110%;
}
.process [class*="col-"]:first-child .icon:before,
.process [class*="col-"]:last-child .icon:after {
    display: none
}
.process,
.number-carousel {
    counter-reset: stepsNum
}
.process .number,
.number-carousel .number {
    counter-increment: stepsNum
}
.process .number:before,
.number-carousel .number:before {
    content: counter(stepsNum, decimal)
}
.process .number:after {
    content: ".";
    padding-right: 5px;
}
.number-carousel .number {
    position: absolute;
    top: 5px;
    left: 10px;
    font-size: 16px;
    color: var(--light-gray);
    font-weight: 600;
    transition: all 200ms ease-in;
}
.number-carousel .item:hover .number {
    color: var(--primary-blue)
}
/*-----------------------------------------------------------------------------------*/
/*	21. PROGRESS BAR
/*-----------------------------------------------------------------------------------*/
.progress-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.progress-list p {
    margin-bottom: 3px
}
.progress-list li {
    margin-bottom: 10px
}
.progress-list li em {
    padding-left: 8px;
    color: var(--primary-blue);
    font-style: normal;
}
.progress-list li em:before {
    content: "-";
    padding-right: 10px;
    display: inline-block;
}
.progress.plain {
    height: 30px;
    margin-bottom: 0;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
    background: none;
    border: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.progress.plain .bar {
    float: left;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
    width: 0;
    height: 100%;
    font-size: 12px;
    color: var(--white);
    text-align: center;
    text-shadow: none;
    -webkit-border-radius: 0;
    border-radius: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    background: var(--primary-blue) !important;
}
.bar-container {
    background: none !important;
    border: 1px solid var(--primary-blue);
    line-height: 1;
}
/*-----------------------------------------------------------------------------------*/
/*	 22. TOOLTIP
/*-----------------------------------------------------------------------------------*/
.tooltip {
    font: inherit
}
.tooltip-inner {
    color: var(--white);
    background-color: var(--primary-blue);
    padding: 5px 12px 5px;
}
.tooltip.top .tooltip-arrow,
.tooltip.top-left .tooltip-arrow,
.tooltip.top-right .tooltip-arrow {
    border-top-color: var(--primary-blue)
}
.tooltip.right .tooltip-arrow {
    border-right-color: var(--primary-blue)
}
.tooltip.left .tooltip-arrow {
    border-left-color: var(--primary-blue)
}
.tooltip.bottom .tooltip-arrow,
.tooltip.bottom-left .tooltip-arrow,
.tooltip.bottom-right .tooltip-arrow {
    border-bottom-color: var(--primary-blue)
}
/*-----------------------------------------------------------------------------------*/
/*	23. TABS
/*-----------------------------------------------------------------------------------*/
.nav-tabs > li > a {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.nav-tabs {
    border-bottom: 1px solid var(--lighter-gray);
    margin-bottom: 15px;
}
.nav-tabs > li {
    margin: 0 25px 0 0
}
.nav-tabs > li > a {
    border-radius: 0;
    border: 0;
    color: var(--medium-gray);
    padding-left: 0;
    padding-right: 0;
}
.nav-tabs > li > a:hover {
    background: none;
    border: 0;
    color: var(--secondary-blue);
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
    color: var(--secondary-blue);
    border: 0;
    background: none;
}
.nav-tabs > li.active > a:after {
    content: "";
    width: 100%;
    bottom: -1px;
    left: 0;
    position: absolute;
    border-bottom: 1px solid var(--primary-blue);
}
/*-----------------------------------------------------------------------------------*/
/*	24. ACCORDION / TOGGLE
/*-----------------------------------------------------------------------------------*/
.panel-group .panel {
    margin-bottom: 10px;
    background: none;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}
.panel-group .panel-heading {
    padding: 0;
    background: none !important;
    border: 0 !important;
}
.panel-group .panel-heading .panel-title {
    color: var(--medium-gray);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 24px;
    text-transform: uppercase;
    border: 1px solid var(--lighter-gray);
    border-radius: 0;
    transition: all 150ms ease-in;
}
.panel-group .panel-title > a {
    display: block;
    padding: 10px 20px;
}
.panel-group .panel-active a,
.panel-group .panel-title > a:hover {

}
.panel-group .panel-heading .panel-title:hover,
.panel-group .panel-active .panel-heading .panel-title {
    border: 1px solid var(--secondary-blue);
    color: var(--primary-blue);
}
.panel-default > .panel-heading + .panel-collapse .panel-body {
    border: 0
}
.panel-body {
    padding: 20px 0
}
/*-----------------------------------------------------------------------------------*/
/*	25. TILES
/*-----------------------------------------------------------------------------------*/
.tiles .items:after {
    content: '';
    display: block;
    clear: both;
}
.tiles {
    margin: 0 -10px -10px 0;
    overflow: hidden;
}
.tiles .item {
    float: left;
    overflow: hidden;
    margin-bottom: 10px !important;
}
.tiles .item {
    height: auto
}
.tiles .item figure {
    position: relative;
    height: 100%;
    overflow: hidden;
    margin: 0 10px 0 0;
}
.tiles .item figure img {
    position: relative;
    width: 100%;
    max-width: 100%;
}
/*-----------------------------------------------------------------------------------*/
/* 	26. PRICING & TABLES
/*-----------------------------------------------------------------------------------*/
.panel.pricing {
    text-align: center;
    border: 1px solid var(--lighter-gray);
    border-left: 0;
    border-radius: 0;
    box-shadow: none;
    background: none;
    margin: 0;
}
[class*="col-"]:first-child .panel.pricing {
    border-left: 1px solid var(--lighter-gray)
}
.panel.pricing.active {
    border-color: transparent
}
.panel.pricing.active::after {
    content: '';
    pointer-events: none;
    position: absolute;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
    width: 100%;
    height: 100%;
    box-sizing: content-box;
    border: 3px solid var(--primary-blue) !important;
    z-index: 5;
    transition: all 200ms ease-in;
}
.panel.pricing .panel-heading {
    padding: 0
}
.panel.pricing .panel-title {
    margin: 0;
    padding: 35px 0;
    font-size: 24px;
    color: var(--medium-gray);
    background: var(--white);
}
.panel.pricing table {
    margin-bottom: 0
}
.pricing .panel-body {
    padding: 35px 0 0 0;
    text-align: center;
    background: var(--white);
}
.panel.pricing .price {
    padding: 37px 0 33px;
    margin: 0;
    color: var(--primary-blue);
    background: none;
    border-top: 1px solid var(--lighter-gray);
    border-bottom: 1px solid var(--lighter-gray);
    font-weight: 700;
    background-color: var(--background-gray);
}
.price-value {
    font-size: 50px
}
.price-currency {
    display: inline-block;
    vertical-align: super;
    font-size: 16px;
}
.price-duration {
    font-size: 14px;
    display: block;
}
.price-duration:before {
    content: "/";
    padding-right: 5px;
}
.panel-desc {
    display: block;
    margin-top: 10px;
    color: var(--light-gray);
    font-size: 12px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}
.table>thead>tr>th,
.table>tbody>tr>th,
.table>tfoot>tr>th,
.table>thead>tr>td,
.table>tbody>tr>td,
.table>tfoot>tr>td {
    padding: 5px 0;
    line-height: 1;
    vertical-align: top;
}
.pricing .table > tbody > tr > td {
    border: 0
}
.panel.pricing .table > tbody > tr:nth-child(2n) {
    background: none
}
.panel-footer {
    padding: 20px 0 35px;
    background: none;
    border: 0;
    background: var(--white);
}
.panel.pricing .panel-footer a {
    margin: 0
}
/*-----------------------------------------------------------------------------------*/
/*	27. FORMS
/*-----------------------------------------------------------------------------------*/
select {
    -webkit-appearance: none;
    box-shadow: none !important;
    width: 100% !important;
    font-weight: 500;
}
label {
    font-weight: inherit
}
.form-field label {
    width: 100%
}
select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
    display: inline-block;
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
    font-weight: inherit;
    width: 100%;
    height: 38px;
    padding: 0 15px;
    margin-bottom: 15px;
    font-size: 14px;
    line-height: 36px;
    color: inherit;
    border: 1px solid var(--lighter-gray);
    border-radius: 0;
    resize: none;
    vertical-align: middle;
    box-shadow: none;
    transition: all 150ms ease-in;
    background: none;
}
.widget input {
    margin-bottom: 0
}
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
    background: none;
    box-shadow: none;
    border: 1px solid var(--light-gray);
}
textarea {
    height: 100%;
    padding: 8px 13px;
    margin-bottom: 15px;
    min-height: 200px;
    resize: vertical;
    font-weight: inherit;
}
.form-container .form-field {
    position: relative
}
.form-container .form-field i {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 13px;
    margin: 1px 0 0 0;
    line-height: 40px;
    color: var(--light-gray);
    height: 38px;
    line-height: 37px;
    border-right: 1px solid var(--lighter-gray);
    font-weight: normal;
}
.form-container .form-field input,
.form-container .form-field select {
    -moz-appearance: none
}
.form-container [class*="col-"] {
    padding-left: 10px;
    padding-right: 10px;
}
select {
    color: var(--muted-gray) !important
}
@-moz-document url-prefix() { 
	select {
	    color: var(--muted-gray) !important;
	    text-shadow: 0 0 0 transparent !important;
	}
}
.vanilla-form .btn {
    display: block
}
.vanilla-form label.custom-select {
    position: relative;
    display: block;
}
.vanilla-form label.custom-select span {
    position: absolute;
    display: inline-block;
    text-align: center;
    right: -4px;
    top: 0;
    height: 38px;
    width: 38px;
    pointer-events: none;
    padding: 8px 0 0 0;
    color: var(--muted-gray);
}
.vanilla-form label.custom-select span {

}
.vanilla-form label.custom-select span::after {
    content: '\e84c';
    font-family: 'fontello';
}
.vanilla-form input.error,
.vanilla-form textarea.error,
.vanilla-form label.custom-select select.error,
.vanilla-form label.custom-select select.error:active,
.vanilla-form label.custom-select select.error:focus {
    border: 1px solid var(--error-red)
}
.state-error,
.btn.state-error:hover {
    background: var(--error-red) !important;
    color: var(--white) !important;
    min-width: 160px !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: block !important;
    text-align: center !important;
    margin-top: 15px !important;
    vertical-align: top !important;
}
.vanilla-form .radio-set {
    margin-bottom: 10px
}
.vanilla-form .radio-set label {
    margin-right: 10px
}
.vanilla-form input[type="radio"],
.vanilla-form input[type="checkbox"] {
    position: absolute;
    pointer-events: none;
    opacity: 0;
    margin: 0;
    padding: 0;
    height: 10px;
}
.vanilla-form input[type="radio"] + span,
.vanilla-form input[type="checkbox"] + span {
    display: inline-block;
    width: 16px;
    height: 16px;
    background-color: var(--white);
    border: 1px solid var(--lighter-gray);
    text-align: center;
    vertical-align: -3px;
    position: relative;
}
.vanilla-form input[type="radio"] + span::after,
.vanilla-form input[type="checkbox"] + span::after {
    content: "";
    display: inline-block;
    opacity: 0;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
}
.vanilla-form input[type="radio"]:focus + span,
.vanilla-form input[type="checkbox"]:focus + span,
.vanilla-form input[type="radio"]:active + span,
.vanilla-form input[type="checkbox"]:active + span {
    border-color: var(--primary-blue)
}
.vanilla-form input[type="radio"]:checked + span::after,
.vanilla-form input[type="checkbox"]:checked + span::after {
    opacity: 1
}
.vanilla-form input[type="radio"].error + span,
.vanilla-form input[type="checkbox"].error + span {
    border-color: var(--error-red)
}
.vanilla-form input[type="radio"] + span {
    border-radius: 100%
}
.vanilla-form input[type="radio"] + span::after {
    border-radius: 100%;
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
}
.vanilla-form input[type="radio"]:checked + span,
.vanilla-form input[type="checkbox"]:checked + span {
    border: 1px solid var(--primary-blue)
}
.vanilla-form input[type="radio"]:checked + span::after {
    border: 4px solid var(--white)
}
.vanilla-form input[type="checkbox"] + span::after {
    height: 40%;
    width: 70%;
    background-color: transparent;
    border: 0 solid var(--primary-blue);
    top: 9px;
    left: 2px;
    -webkit-transform: rotate(-45deg) translate(50%, -75%);
    -moz-transform: rotate(-45deg) translate(50%, -75%);
    -ms-transform: rotate(-45deg) translate(50%, -75%);
    -o-transform: rotate(-45deg) translate(50%, -75%);
    transform: rotate(-45deg) translate(50%, -75%);
}
.vanilla-form input[type="checkbox"]:checked + span::after {
    border-left-width: 0.2em;
    border-bottom-width: 0.2em;
}
.vanilla-form .notification-box {
    display: block;
    padding: 15px;
    margin-bottom: 20px;
    border: 1px solid transparent;
    border-radius: 0;
}
.vanilla-form .notification-box.show-error {
    background-color: var(--error-bg);
    border-color: var(--error-border);
    color: var(--error-light);
}
.vanilla-form .notification-box.show-success {
    background-color: var(--success-bg);
    border-color: var(--success-border);
    color: var(--success-light);
}
.searchform {
    position: relative
}
.searchform input {
    width: 100%
}
.searchform input {
    margin: 0;
    padding-right: 90px;
}
.searchform .btn {
    position: absolute;
    top: 0;
    right: -5px;
    height: 38px !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    max-width: 90% !important;
    margin: 0;
}
::-webkit-input-placeholder {
    color: var(--muted-gray) !important;
    font-weight: 500 !important;
}
:-moz-placeholder {
    color: var(--muted-gray) !important;
    font-weight: 500 !important;
    opacity: 1;
}
::-moz-placeholder {
    color: var(--muted-gray) !important;
    font-weight: 500 !important;
    opacity: 1;
}
:-ms-input-placeholder {
    color: var(--muted-gray) !important;
    font-weight: 500 !important;
}
/*-----------------------------------------------------------------------------------*/
/*	28. MAILCHIMP / NEWSLETTER
/*-----------------------------------------------------------------------------------*/
.newsletter-wrapper .newsletter-form {
    background: none;
    font-family: inherit;
}
.newsletter-wrapper {
    position: relative;
    width: 100%;
}
.newsletter-wrapper .newsletter-form input[type="email"] {
    background: none;
    border: 1px solid var(--lighter-gray);
    width: 100%;
    font-weight: 500;
    transition: all 150ms ease-in;
    height: 36px;
    padding-right: 85px;
}
.newsletter-wrapper .newsletter-form input[type="email"]:focus {
    background: none;
    border: 1px solid var(--light-gray);
}
.inverse-wrapper .newsletter-wrapper .newsletter-form input[type="email"] {
    border-color: #535556 !important
}
.inverse-wrapper .newsletter-wrapper .newsletter-form input[type="email"]:focus {
    border-color: #717374 !important
}
.newsletter-wrapper .newsletter-form .btn {
    position: absolute;
    right: -4px;
    top: 0;
}
.newsletter-form input.email {
    display: block;
    padding: 8px 0;
    margin: 0;
    text-indent: 15px;
    width: 100%;
    min-width: 130px;
}
.newsletter-wrapper .newsletter-form form {
    padding: 0
}
/*-----------------------------------------------------------------------------------*/
/*	29. GO TO TOP
/*-----------------------------------------------------------------------------------*/
#scrollUp {
    bottom: 20px;
    right: 20px;
    transition: background 200ms linear;
    -webkit-backface-visibility: hidden;
    font-size: 16px;
    position: fixed !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
    display: none !important;
}
#scrollUp:hover {
    background: var(--secondary-blue) !important;
}
#scrollUp i {
    font-size: 16px
}
/*-----------------------------------------------------------------------------------*/
/*	30. SOCIAL ICONS
/*-----------------------------------------------------------------------------------*/
.social {
    padding: 0;
    margin: 0;
    margin-bottom: -16px;
    font-size: 0;
    line-height: 1;
}
.social li {
    display: inline-block;
    font-family: 'fontello-social';
    margin: 0 16px 16px 0;
}
.pull-right .social li,
.social.pull-right li {
    margin: 0 0 16px 16px
}
.text-center .social li,
.social.text-center li {
    margin: 0 8px 8px 0
}
.text-center .social,
.social.text-center {
    margin-bottom: -8px
}
.social li a {
    display: table;
    line-height: 1;
}
.social li a i {
    color: var(--light-gray);
    background: none;
    box-shadow: none;
    border: 0;
    height: auto !important;
    width: auto;
    font-size: 16px;
    transition: all 150ms ease-in;
}
.navbar .social li a i {
    color: var(--white)
}
.navbar-collapse .social li a i {
    color: var(--dark-gray)
}
.social a:hover .icon-s-pinterest {
    color: var(--error-dark) !important
}
.social a:hover .icon-s-rss {
    color: var(--orange-dark) !important
}
.social a:hover .icon-s-facebook {
    color: #4470cf !important
}
.social a:hover .icon-s-twitter {
    color: var(--sky-blue) !important
}
.social a:hover .icon-s-flickr {
    color: #ff0088 !important
}
.social a:hover .icon-s-dribbble {
    color: #d07ead !important
}
.social a:hover .icon-s-behance {
    color: #098ffa !important
}
.social a:hover .icon-s-linkedin {
    color: #3393c1 !important
}
.social a:hover .icon-s-vimeo {
    color: #099fc7 !important
}
.social a:hover .icon-s-youtube {
    color: #c8312b !important
}
.social a:hover .icon-s-skype {
    color: #2ebbf0 !important
}
.social a:hover .icon-s-tumblr {
    color: #5d82a4 !important
}
.social a:hover .icon-s-delicious {
    color: #3274d1 !important
}
.social a:hover .icon-s-500px {
    color: #00a6df !important
}
.social a:hover .icon-s-grooveshark {
    color: #f66c00 !important
}
.social a:hover .icon-s-forrst {
    color: #2f7935 !important
}
.social a:hover .icon-s-digg {
    color: #1b5891 !important
}
.social a:hover .icon-s-blogger {
    color: #fc6605 !important
}
.social a:hover .icon-s-klout {
    color: #d8390f !important
}
.social a:hover .icon-s-dropbox {
    color: #016aab !important
}
.social a:hover .icon-s-github {
    color: #4073a6 !important
}
.social a:hover .icon-s-songkick {
    color: #ff0030 !important
}
.social a:hover .icon-s-posterous {
    color: #eac954 !important
}
.social a:hover .icon-s-appnet {
    color: #0291c9 !important
}
.social a:hover .icon-s-gplus {
    color: #a84539 !important
}
.social a:hover .icon-s-stumbleupon {
    color: #eb4923 !important
}
.social a:hover .icon-s-lastfm {
    color: #be0c02 !important
}
.social a:hover .icon-s-spotify {
    color: #7cc011 !important
}
.social a:hover .icon-s-instagram {
    color: #a4765c !important
}
.social a:hover .icon-s-evernote {
    color: #82d15c !important
}
.social a:hover .icon-s-paypal {
    color: #2a608e !important
}
.social a:hover .icon-s-picasa {
    color: #9864ae !important
}
.social a:hover .icon-s-soundcloud {
    color: #ff680d !important
}
/*-----------------------------------------------------------------------------------*/
/*	31. LIGHTGALLERY
/*-----------------------------------------------------------------------------------*/
.lg-backdrop {
    background: rgba(255,255,255,1)
}
.lg-icon {
    transition: all 200ms ease-in
}
.lg-outer .lg-thumb-item {
    border-radius: 0
}
.lg-outer .lg-thumb-item,
.lg-outer .lg-thumb-item:hover {
    border-color: transparent
}
.lg-outer .lg-thumb-item.active,
.lg-outer .lg-thumb-item.active:hover {
    border-color: var(--primary-blue)
}
.lg-outer .lg-thumb {
    text-align: center
}
.lg-outer .lg-thumb-item {
    float: none;
    display: inline-block;
}
.lg-sub-html {
    z-index: 1060
}
.lg-sub-html p {
    font: inherit;
    font-size: 15px;
    color: var(--text-gray);
}
.lg-outer.lg-pull-caption-up.lg-thumb-open .lg-sub-html {
    bottom: 80px
}
.lg-outer .lg-toogle-thumb,
.lg-sub-html,
.lg-toolbar {
    background: rgba(255,255,255,0.5)
}
.lg-actions .lg-next,
.lg-actions .lg-prev {
    background: rgba(255,255,255,0.9);
    width: 40px;
    padding: 0;
    line-height: 40px !important;
    text-align: center;
    border-radius: 0;
    color: var(--dark-gray);
    font-weight: normal;
    font-family: 'fontello';
}
.lg-actions .lg-next:hover,
.lg-actions .lg-prev:hover {
    background: rgba(255,255,255,1)
}
.lg-actions .lg-next:before,
.lg-actions .lg-prev:after {
    font-family: 'fontello';
    font-size: 25px;
    border-radius: 0;
    font-weight: normal;
}
.lg-actions .lg-prev:after {
    content: '\e75d';
    margin-left: -1px;
}
.lg-actions .lg-next:before {
    content: '\e75e';
    margin-right: -1px;
}
.lg-outer .lg-toogle-thumb,
#lg-counter,
.lg-toolbar .lg-icon {
    color: var(--dark-gray)
}
.lg-toolbar .lg-icon {
    font-size: 25px
}
.lg-toolbar .lg-icon:hover,
.lg-outer .lg-toogle-thumb:hover,
.lg-actions .lg-next:hover,
.lg-actions .lg-prev:hover {
    color: var(--primary-blue)
}
.lg-outer .lg-toogle-thumb,
.lg-outer .lg-thumb-outer {
    background-color: var(--light-background)
}
.lg-outer .lg-toogle-thumb {
    border-radius: 0;
    z-index: 1061;
}
.lg-outer .lg-thumb {
    padding: 7px 0
}
.lg-outer .lg-item {
    background: none !important
}
.lg-outer .lg-item.lg-complete:after {
    display: none
}
.lg-outer .lg-video .lg-video-play {
    width: 70px;
    height: 70px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -35px;
    margin-top: -35px;
    border-radius: 100%;
    z-index: 1080;
    cursor: pointer;
    display: table;
    text-align: center;
}
.lg-outer .lg-video .lg-video-play:before {
    font-family: "fontello";
    content: "\e84f";
    display: table-cell;
    vertical-align: middle;
    color: var(--dark-gray);
    font-size: 30px;
    padding-left: 5px;
}
.lg-outer .lg-has-vimeo .lg-video-play,
.lg-outer .lg-has-html5 .lg-video-play,
.lg-outer .lg-has-youtube .lg-video-play {
    background: rgba(255,255,255,0.4);
    transition: all 200ms ease-in;
}
.lg-outer .lg-has-vimeo .lg-video-play:hover,
.lg-outer .lg-has-html5 .lg-video-play:hover,
.lg-outer .lg-has-youtube .lg-video-play:hover {
    background: rgba(255,255,255,0.7);
    transition: all 200ms ease-in;
}
.lg-outer .lg-has-vimeo:hover .lg-video-play,
.lg-outer .lg-has-html5:hover .lg-video-play,
.lg-outer .lg-has-youtube:hover .lg-video-play {
    transition: all 200ms ease-in
}
/*-----------------------------------------------------------------------------------*/
/*	32. FONT ICON PAGES
/*-----------------------------------------------------------------------------------*/
.font-icons {
    list-style: none;
    margin: 0;
    padding: 0;
}
.font-icons li {
    display: inline-block;
    font-size: 25px;
    margin-bottom: 10px;
    padding: 0 10px;
}
.alert .close {
    line-height: 20px
}
.retina-icons-code i {
    font-size: 18px
}
.retina-icons-code tr td:first-child,
.retina-icons-code tr th:first-child {
    text-align: center
}
.retina-icons-code code {
    background: none;
    white-space: normal;
}
.table-striped>tbody>tr:nth-of-type(odd) {
    background: none !important
}
.table-bordered {
    border-bottom: 1px solid rgba(0,0,0,0.2) !important;
    border-left: none;
    background: none;
}
.table-bordered th,
.table-bordered td {
    border-bottom: 1px solid rgba(0,0,0,0.2) !important
}
.retina-icons-code td {
    vertical-align: middle !important;
    padding: 20px 10px !important;
}
.retina-icons-code th {
    padding: 20px 10px !important
}
.retina-icons-code .table th,
.retina-icons-code .table td {
    border-bottom: 1px solid rgba(0,0,0,0.2) !important
}
.retina-icons-code .table-bordered>thead>tr>th,
.retina-icons-code .table-bordered>tbody>tr>th,
.retina-icons-code .table-bordered>tfoot>tr>th,
.retina-icons-code .table-bordered>thead>tr>td,
.retina-icons-code .table-bordered>tbody>tr>td,
.retina-icons-code .table-bordered>tfoot>tr>td {
    border: 1px solid rgba(0,0,0,0.2) !important
}
.retina-icons-code code {
    color: inherit
}
.budicons-list .font-icons li {
    font-size: 40px;
    margin-bottom: 40px;
    padding: 0 20px;
}
.budicons-list .retina-icons-code i {
    font-size: 30px;
    line-height: 1;
    margin-top: 5px;
    display: block;
}
.flats img {
    max-width: 100%;
    max-height: 100%;
    width: 100px;
    margin-bottom: 30px;
    height: auto;
}
/*-----------------------------------------------------------------------------------*/
/*	33. DIVIDERS
/*-----------------------------------------------------------------------------------*/
.divide0 {
    width: 100%;
    height: 0px;
}
.divide2 {
    width: 100%;
    height: 2px;
}
.divide3 {
    width: 100%;
    height: 3px;
}
.divide5 {
    width: 100%;
    height: 5px;
}
.divide10 {
    width: 100%;
    height: 10px;
}
.divide15 {
    width: 100%;
    height: 15px;
}
.divide20 {
    width: 100%;
    height: 20px;
}
.divide25 {
    width: 100%;
    height: 25px;
}
.divide30 {
    width: 100%;
    height: 30px;
}
.divide35 {
    width: 100%;
    height: 35px;
}
.divide40 {
    width: 100%;
    height: 40px;
}
.divide45 {
    width: 100%;
    height: 40px;
}
.divide50 {
    width: 100%;
    height: 50px;
}
.divide55 {
    width: 100%;
    height: 55px;
}
.divide60 {
    width: 100%;
    height: 60px;
}
.divide65 {
    width: 100%;
    height: 65px;
}
.divide70 {
    width: 100%;
    height: 70px;
}
.divide75 {
    width: 100%;
    height: 75px;
}
.divide80 {
    width: 100%;
    height: 80px;
}
.divide85 {
    width: 100%;
    height: 85px;
}
.divide90 {
    width: 100%;
    height: 90px;
}
.divide100 {
    width: 100%;
    height: 100px;
}
.rm0 {
    margin-right: 0px
}
.rm1 {
    margin-right: 1px
}
.rm2 {
    margin-right: 2px
}
.rm5 {
    margin-right: 5px
}
.rm6 {
    margin-right: 6px
}
.rm10 {
    margin-right: 10px
}
.rm15 {
    margin-right: 15px
}
.rm20 {
    margin-right: 20px
}
.rm25 {
    margin-right: 25px
}
.rm30 {
    margin-right: 30px
}
.rm40 {
    margin-right: 40px
}
.rm50 {
    margin-right: 50px
}
.lm0 {
    margin-left: 0px
}
.lm1 {
    margin-left: 1px
}
.lm5 {
    margin-left: 5px
}
.lm7 {
    margin-left: 7px
}
.lm10 {
    margin-left: 10px
}
.lm15 {
    margin-left: 15px
}
.lm20 {
    margin-left: 20px
}
.lm25 {
    margin-left: 25px
}
.lm30 {
    margin-left: 25px
}
.lm40 {
    margin-left: 40px
}
.rp5 {
    padding-right: 5px
}
.rp10 {
    padding-right: 10px
}
.rp15 {
    padding-right: 15px
}
.rp20 {
    padding-right: 20px
}
.rp30 {
    padding-right: 30px
}
.rp40 {
    padding-right: 40px
}
.rp50 {
    padding-right: 50px
}
.lp0 {
    padding-left: 0px
}
.lp10 {
    padding-left: 10px
}
.lp20 {
    padding-left: 20px
}
.lp30 {
    padding-left: 30px
}
.lp40 {
    padding-left: 40px
}
.lp50 {
    padding-left: 50px
}
.lp100 {
    padding-left: 100px
}
.tp0 {
    padding-top: 0 !important
}
.tp3 {
    padding-top: 3px
}
.tp5 {
    padding-top: 5px
}
.tp10 {
    padding-top: 10px
}
.tp20 {
    padding-top: 20px
}
.tp25 {
    padding-top: 25px
}
.tp30 {
    padding-top: 30px
}
.tp40 {
    padding-top: 40px
}
.tm4 {
    margin-top: 4px
}
.tm5 {
    margin-top: 5px
}
.tm7 {
    margin-top: 7px
}
.tm10 {
    margin-top: 10px
}
.tm15 {
    margin-top: 15px
}
.tm20 {
    margin-top: 20px
}
.tm40 {
    margin-top: 40px
}
.mbm1 {
    margin-bottom: -1px
}
.bp0 {
    padding-bottom: 0 !important
}
.bp10 {
    padding-bottom: 10px !important
}
.bp20 {
    padding-bottom: 20px !important
}
.bm0 {
    margin-bottom: 0 !important
}
.bm5 {
    margin-bottom: 5px !important
}
.bm6 {
    margin-bottom: 6px !important
}
.bm10 {
    margin-bottom: 10px !important
}
.bm15 {
    margin-bottom: 15px !important
}
.bm20 {
    margin-bottom: 20px !important
}
.bm25 {
    margin-bottom: 25px !important
}
.bm30 {
    margin-bottom: 30px !important
}
.bm40 {
    margin-bottom: 40px !important
}
.bm50 {
    margin-bottom: 50px !important
}
.bp50 {
    padding-bottom: 50px !important
}
/*-----------------------------------------------------------------------------------*/
/*	34. BOX LAYOUT
/*-----------------------------------------------------------------------------------*/
@media (min-width: 1270px) { 
	.box-layout {
	    background: transparent url(style/images/bg1.jpg) repeat fixed;
	    padding: 0;
	}
	.box-layout .content-wrapper {
	    background: var(--white);
	    position: relative;
	}
	.box-layout .content-wrapper,
	.box-layout footer.footer {
	    width: 1270px;
	    margin: 0 auto;
	    box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.2);
	}
	.box-layout .navbar.fixed {
	    left: inherit;
	    top: 0;
	    width: 1270px;
	}
}
/*-----------------------------------------------------------------------------------*/
/*	35. RESPONSIVE
/*-----------------------------------------------------------------------------------*/
@media (min-width: 992px) and (max-width: 1199px) { 
	.circle-progress-wrapper {
	    padding-left: 15px;
	    padding-right: 15px;
	}
}
@media (min-width: 992px) { 
	.feature.text-right {
	    padding: 0 105px 0 0;
	    text-align: right;
	}
	.timeline .feature.text-right {
	    padding: 0 230px 0 0
	}
	.feature.text-right .icon,
	.feature.text-right figure {
	    left: auto;
	    right: 0;
	}
	.feature-s.text-right {
	    padding: 0 85px 0 0
	}
	.timeline-item.right {
	    float: right;
	    margin-top: 40px;
	}
	.timeline-item.right .post-content {
	    margin: 20px 0 0 30px
	}
	.timeline-item.right .arrow:after {
	    left: auto;
	    right: 100%;
	    margin: 0;
	    margin-right: -45px !important;
	    z-index: 2;
	}
	.navbar .navbar-collapse {
	    float: right;
	    position: relative;
	    right: 0;
	}
	.navbar .navbar-nav {
	    float: none;
	    position: relative;
	    display: table-cell;
	    vertical-align: middle;
	    margin: 0 !important;
	}
	.navbar .navbar-nav > li {
	    margin: 0;
	    display: inline-block;
	}
	.navbar .navbar-nav > li > a {
	    padding-left: 10px;
	    padding-right: 30px;
	}
	.navbar .navbar-nav > li:last-child > a {
	    padding-right: 0
	}
	.navbar .dropdown-menu li {
	    background: var(--primary-blue);
	    border: none;
	    border-top: 1px solid rgba(255,255,255,0.2);
	}
	.navbar .dropdown-menu li a {
	    padding: 15px
	}
	.navbar .dropdown-menu li a:hover,
	.navbar .dropdown-menu li a.active {
	    padding: 15px;
	    color: var(--white) !important;
	    background: rgba(255,255,255,0.2) !important;
	}
	.navbar-nav ul ul {
	    padding-top: 6px !important;
	    padding-left: 2px !important;
	}
	.navbar-nav ul ul ul {
	    padding-left: 5px !important
	}
	.navbar-nav ul ul li {
	    border-left: 1px solid rgba(255,255,255,0.2) !important;
	    border-right: 1px solid rgba(255,255,255,0.2) !important;
	    margin: 0 2px 0 0;
	}
	.navbar.centered .navbar-header {
	    width: 100%;
	    height: auto;
	    padding: 30px 0;
	}
	.navbar.centered .navbar-brand,
	.navbar.centered .navbar-header,
	.navbar.centered .navbar-collapse {
	    float: none !important;
	    text-align: center;
	}
	.navbar.centered.extended .navbar-brand,
	.navbar.centered.extended .navbar-header,
	.navbar.centered.extended .navbar-collapse {
	    text-align: left
	}
	.navbar.centered.fixed .navbar-header {
	    display: none
	}
	.navbar.centered .navbar-nav > li {
	    margin: 0
	}
	.navbar.centered .navbar-nav > li > a {
	    padding-left: 20px;
	    padding-right: 20px;
	}
	.navbar.centered.extended .navbar-nav > li > a {
	    padding-left: 0px;
	    padding-right: 40px;
	}
	.navbar.centered.color  .navbar-nav > li > a:focus,
	.navbar.centered.color  .nav > li > a:hover,
	.navbar.centered.color  .nav > li.current > a {
	    background: rgba(255,255,255,0.2)
	}
	.navbar.centered.color .navbar-nav > li:first-child {
	    border-left: 1px solid rgba(255,255,255,0.2)
	}
	.navbar.centered.color  .navbar-nav > li {
	    border-right: 1px solid rgba(255,255,255,0.2)
	}
	.navbar.centered .navbar-collapse .navbar-nav {
	    float: none;
	    display: inline-block;
	}
	.navbar.centered .navbar-collapse .navbar-nav > li {
	    display: inline-block
	}
	.navbar.centered.color  .navbar-nav > li > a {
	    color: var(--white) !important
	}
	.navbar.header2 .container.boxed {
	    padding: 0 30px
	}
}
@media (max-width: 991px) { 
	.circle-progress-wrapper {
	    padding-left: 15px;
	    padding-right: 15px;
	}
	.navbar .container {
	    width: 100%;
	    padding: 0;
	}
	.navbar .navbar-header .navbar-brand {
	    width: auto;
	    flex: 1;
	    max-width: 70%;
	}
	.navbar .nav-bars-wrapper {
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    min-width: 40px;
	    height: 40px;
	}
	.navbar .dropdown-menu {
	    padding-left: 20px
	}
	.navbar .navbar-nav > li {
	    margin: 0 30px
	}
	.navbar .navbar-nav > li > a {
	    color: var(--white) !important
	}
	.navbar .nav > li.current > a,
	.navbar .nav > li > a:hover {
	    color: var(--secondary-blue) !important
	}
	.navbar-nav > li > a,
	.navbar .dropdown-menu li a,
	.navbar .dropdown-menu li a:hover,
	.navbar .dropdown-menu li a.active {
	    padding: 15px 0px !important
	}
	.navbar-nav .open .dropdown-menu > li > a {
	    line-height: 1
	}
	.navbar .navbar-nav li {
	    border-top: 1px solid rgba(255,255,255,0.2)
	}
	.navbar .navbar-nav > li:first-child {
	    border-top: 0
	}
	.navbar .navbar-nav .dropdown-menu {
	    border-top: 1px solid rgba(255,255,255,0.2)
	}
	.navbar .navbar-collapse {
	    background: var(--primary-blue)
	}
	.navbar.header2.default {
	    position: relative
	}
	.navbar.header2 .container.boxed {
	    background: var(--white);
	    box-shadow: none;
	}
	.navbar-header.dark-wrapper {
	    background: var(--white)
	}
	.navbar .top-bar,
	.navbar .info {
	    display: none
	}
	.navbar .navbar-header {
	    height: 65px !important
	}
	.navbar .navbar-brand img {
	    max-height: 50px;
	}
	.col-sm-12 + .col-sm-12 {
	    margin-top: 30px
	}
	.timeline:before {
	    width: 30px
	}
	.timeline-item .arrow:after {
	    left: 90px;
	    right: 100%;
	    margin: 0;
	    z-index: 2;
	    top: 40px;
	}
	.timeline-item .post-content {
	    padding-left: 75px
	}
	.timeline .date-title {
	    margin: 20px 0
	}
	.thin,
	.thin2 {
	    width: 100%
	}
	.portfolio-grid.col3 .item,
	.portfolio-grid.col4 .item {
	    width: 50%
	}
	.navbar .social-wrapper {
	    display: none
	}
	.navbar .navbar-nav {
	    float: none !important
	}
	[class*="col-md-"].sidebar {
	    padding-left: 15px !important;
	    margin-top: 20px;
	}
	.grid-view figure img {
	    width: 100%
	}
}
@media (min-width: 768px) and (max-width: 991px) { 
	.container {
	    padding-right: 15px;
	    padding-left: 15px;
	}
	.navbar .navbar-header {
	    width: 750px;
	    margin: 0 auto;
	    padding-left: 15px;
	    padding-right: 15px;
	}
}
@media (max-width: 767px) { 
	.container {
	    padding-right: 20px;
	    padding-left: 20px;
	}
	.row-offset-0 .inner-col {
	    padding: 60px 20px
	}
	.circle-progress-wrapper {
	    padding-left: 55px;
	    padding-right: 55px;
	}
	.navbar .navbar-header {
	    padding-left: 20px;
	    padding-right: 20px;
	    width: 100%;
	    display: flex;
	    align-items: center;
	    justify-content: space-between;
	}
	body:not(.onepage) .navbar.fixed {
	    position: absolute
	}
	.tp-caption.medium .btn {
	    padding: 7px 10px !important;
	    font-size: 9px !important;
	}
	.inner {
	    padding-top: 60px;
	    padding-bottom: 60px;
	}
	footer [class*="col-"] {
	    margin-bottom: 30px
	}
	.portfolio-grid.col3 .item,
	.portfolio-grid.col4 .item {
	    width: 50%
	}
	.process .icon:before,
	.process .icon:after {
	    display: none
	}
	.process [class*="col-"] {
	    margin-bottom: 30px
	}
	.process {
	    margin-bottom: -30px
	}
	.sidebar {
	    padding-left: 15px !important
	}
	.page-title,
	.breadcrumbs {
	    float: none !important
	}
	.breadcrumbs {
	    margin-top: 5px
	}
	#comments .user {
	    display: none
	}
	#comments .message-inner {
	    margin-left: 0
	}
	#comments ul.children {
	    padding: 0 0 0 25px
	}
	.about-author {
	    position: relative;
	    padding: 0;
	}
	.about-author .author-image {
	    display: none
	}
}
@media only screen and (max-width: 479px) { 
	.tp-caption.medium .btn {
	    padding: 5px 10px !important;
	    font-size: 8px !important;
	}
	.portfolio-grid.col3 .item,
	.portfolio-grid.col4 .item {
	    width: 100%
	}
	.navbar .navbar-header {
	    padding-left: 15px;
	    padding-right: 15px;
	    height: 60px !important;
	}
	.navbar .navbar-header .navbar-brand {
	    max-width: 65%;
	}
	.navbar .navbar-header .navbar-brand img {
	    max-height: 40px;
	}
	.navbar .nav-bars-wrapper {
	    min-width: 35px;
	    height: 35px;
	}
	.navbar .navbar-collapse {
	    margin-top: 10px;
	}
	.circle-progress-wrapper {
	    width: 100% !important;
	    margin-bottom: 40px !important;
	}
	.tiles .col-xs-6 {
	    width: 100%
	}
	.timeline .feature {
	    padding: 0 !important;
	    text-align: left !important;
	}
	.timeline .feature figure {
	    left: auto !important;
	    right: auto !important;
	    position: relative !important;
	    margin-bottom: 20px !important;
	}
	.timeline .feature figure img {
	    width: 100%;
	    max-width: 100%;
	}
	.timeline-item {
	    float: none !important
	}
}

.impressum-modal {
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(3px);
}

.impressum-modal-content {
  background: linear-gradient(135deg, var(--charcoal) 0%, var(--charcoal-light) 50%, var(--charcoal) 100%);
  color: var(--white);
  margin: 5% auto;
  padding: 0;
  border-radius: 8px;
  width: 90%;
  max-width: 800px;
  max-height: 85vh;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
  position: relative;
}

.impressum-content {
  padding: 40px;
  max-height: calc(85vh - 80px);
  overflow-y: auto;
  font-family: 'Inter', sans-serif;
}

.impressum-content::-webkit-scrollbar {
  width: 8px;
}

.impressum-content::-webkit-scrollbar-track {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
}

.impressum-content::-webkit-scrollbar-thumb {
  background: rgba(135, 206, 235, 0.6);
  border-radius: 4px;
}

.impressum-content::-webkit-scrollbar-thumb:hover {
  background: rgba(135, 206, 235, 0.8);
}

.impressum-close {
  position: absolute;
  right: 20px;
  top: 15px;
  color: var(--white);
  font-size: 32px;
  font-weight: 300;
  cursor: pointer;
  z-index: 10000;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.impressum-close:hover {
  background-color: rgba(255, 255, 255, 0.1);
  transform: scale(1.1);
}

.impressum-content h1 {
  color: var(--light-blue);
  font-size: 28px;
  margin-bottom: 30px;
  font-weight: 600;
  border-bottom: 2px solid rgba(135, 206, 235, 0.3);
  padding-bottom: 15px;
}

.impressum-content h2 {
  color: var(--light-blue);
  font-size: 20px;
  margin-top: 30px;
  margin-bottom: 15px;
  font-weight: 500;
}

.impressum-content p {
  line-height: 1.6;
  margin-bottom: 15px;
  color: rgba(255, 255, 255, 0.9);
}

.impressum-content strong {
  color: var(--white);
}


@media (max-width: 768px) {
  .impressum-modal-content {
    margin: 2% auto;
    width: 95%;
    max-height: 95vh;
  }
  
  .impressum-content {
    padding: 25px;
    max-height: calc(95vh - 50px);
  }
  
  .impressum-content h1 {
    font-size: 24px;
  }
  
  .impressum-content h2 {
    font-size: 18px;
  }
  
  .impressum-close {
    right: 15px;
    top: 10px;
    font-size: 28px;
    width: 35px;
    height: 35px;
  }
}


.impressum-content h3 {
  color: var(--white);
  font-size: 18px;
  margin-top: 25px;
  margin-bottom: 12px;
  font-weight: 500;
}

.impressum-content h4 {
  color: var(--white);
  font-size: 16px;
  margin-top: 20px;
  margin-bottom: 10px;
  font-weight: 500;
}

.hero-slide-bg {
  background: linear-gradient(135deg, var(--charcoal) 0%, var(--charcoal-light) 50%, var(--charcoal) 100%);
}

/* Fix Revolution Slider mobile layout issues */
.tp-parallax-wrap {
  left: 0 !important;
}


.data-intelligence-bg {
  background: linear-gradient(135deg, var(--charcoal) 0%, var(--charcoal-light) 50%, var(--charcoal) 100%);
}

.ai-illustration {
  filter: brightness(1.0) contrast(0.7) saturate(0.75) opacity(0.9);
}

.consent-wrapper {
  margin: 15px 0;
  font-size: 13px;
  color: var(--subtle-gray);
  line-height: 1.4;
}

.consent-label {
  cursor: pointer;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.consent-checkbox {
  flex-shrink: 0;
  position: relative;
}

.consent-text {
  flex: 1;
  line-height: 1.4;
}

.consent-checkbox input[type="checkbox"] {
  position: absolute;
  pointer-events: none;
  opacity: 0;
  margin: 0;
  padding: 0;
}

.consent-checkbox .checkmark {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: var(--white);
  border: 1px solid var(--lighter-gray);
  position: relative;
  cursor: pointer;
}

.consent-checkbox input[type="checkbox"]:checked + .checkmark {
  border: 1px solid var(--primary-blue);
}

.consent-checkbox .checkmark::after {
  content: "";
  display: inline-block;
  opacity: 0;
  width: 70%;
  height: 40%;
  background-color: transparent;
  border: 0 solid var(--primary-blue);
  position: absolute;
  top: 9px;
  left: 3px;
  transform: translateY(-50%) rotate(-45deg);
}

.consent-checkbox input[type="checkbox"]:checked + .checkmark::after {
  opacity: 1;
  border-left-width: 0.2em;
  border-bottom-width: 0.2em;
}

.consent-checkbox input[type="checkbox"]:focus + .checkmark,
.consent-checkbox input[type="checkbox"]:active + .checkmark {
  border-color: var(--primary-blue);
}

.privacy-link {
  color: var(--light-blue);
  text-decoration: none;
  border-bottom: 1px solid var(--light-blue);
}

.submit-btn-disabled {
  margin-top: 15px;
  opacity: 0.5;
}

.submit-btn-enabled {
  margin-top: 15px;
  opacity: 1;
}

.modal-visible {
  display: block;
}

.contact-bar {
  background: var(--background-gray);
  padding: 15px 0;
  border-top: 1px solid var(--border-gray);
}

.contact-info {
  color: var(--input-gray);
  font-size: 14px;
}

.contact-info i {
  margin-right: 5px;
  color: var(--input-gray) !important;
}

.contact-link {
  color: var(--input-gray);
  text-decoration: none;
  font-size: 14px;
}

.contact-link i {
  margin-right: 5px;
  color: var(--input-gray);
}

.footer-bg {
  background: linear-gradient(135deg, var(--charcoal) 0%, var(--charcoal-light) 50%, var(--charcoal) 100%);
}

.footer-link {
  color: var(--light-blue);
  text-decoration: none;
}

.footer-link:hover {
  color: var(--secondary-blue);
}

.modal-hidden {
  display: none;
}

/* ProInsight Theme Styles */
:root {
  /* Typography */
  --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  --font-head: "Inter", var(--font-sans);
  
  /* Brand Colors */
  --primary-blue: #0F6CBD;
  --secondary-blue: #25b7d3;
  --teal-blue: #0ba5c3;
  --light-blue: #87ceeb;
  --sky-blue: #5daed5;
  --teal-green: #0F766E;
  
  /* Neutral Colors */
  --charcoal: #283539;
  --charcoal-light: #3a4a4f;
  --dark-gray: #2e2e2e;
  --medium-gray: #3d3d3d;
  --text-gray: #4d4d4d;
  --light-gray: #aaa;
  --lighter-gray: #ccc;
  --border-gray: #e0e0e0;
  --background-gray: #f3f5f6;
  --muted-gray: #858585;
  --soft-gray: #d5d5d5;
  --pale-gray: #ececec;
  --subtle-gray: #999;
  --input-gray: #666;
  
  /* Status Colors */
  --success-green: #32bea6;
  --success-dark: #2ead97;
  --success-light: #3c763d;
  --success-bg: #dff0d8;
  --success-border: #d6e9c6;
  --warning-yellow: #f2be3e;
  --warning-dark: #e4b33a;
  --error-red: #de4747;
  --error-dark: #c53942;
  --error-light: #a94442;
  --error-bg: #f2dede;
  --error-border: #ebccd1;
  
  /* Accent Colors */
  --orange: #f26101;
  --orange-dark: #e86f04;
  --purple: #954e9d;
  --purple-light: #d1afd2;
  --navy: #344e5d;
  
  /* Pure Colors */
  --white: #ffffff;
  --black: #000000;
  
  /* Additional Colors */
  --light-cyan: #d3f1f6;
  --dark-text: #2f2f2f;
  --medium-text: #3c3c3c;
  --gray-text: #808080;
  --light-text: #d0d0d0;
  --border-dark: #909090;
  --pale-text: #cfcfcf;
  --blue-light: #93bfd3;
  --coral: #e04f5f;
  --red-medium: #ce4857;
  --pink-red: #e02859;
  --orange-bright: #e45b01;
  --purple-dark: #88478f;
  --green-border: #c0d6ae;
  --blue-border: #a3d5df;
  --yellow-border: #eddebf;
  --pink-border: #ddb8be;
  --light-background: var(--light-background);
  
  /* Legacy - keep brand for backwards compatibility */
  --brand: var(--primary-blue);
}

body { 
  font-family: var(--font-sans); 
}

h1, h2, h3, h4 { 
  font-family: var(--font-head); 
  font-weight: 600; 
  letter-spacing: -0.01em; 
}

p, li { 
  line-height: 1.6; 
}

.lead, .post-meta { 
  font-variant-numeric: tabular-nums; 
}

/* Portfolio grid image styling */
#references .portfolio-grid .item img {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(1.08) contrast(0.82) saturate(0.92) !important;
}

#references .portfolio-grid .item figure::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--primary-blue);
  mix-blend-mode: color;
  opacity: 0.02;
  pointer-events: none;
}

/* Hero slider image styling */
#home .rev_slider > ul > li > img {
  filter: brightness(0.10) contrast(0.96) saturate(0.92) !important;
}

/* Modern Hero Section - CSS Grid/Flexbox Implementation */
.hero-section {
  min-height: 400px;
  background: linear-gradient(135deg, var(--charcoal) 0%, var(--charcoal-light) 50%, var(--charcoal) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.hero-content {
  max-width: 1170px;
  width: 100%;
  padding: 40px 20px;
  z-index: 2;
}

.hero-title {
  font-size: 42px;
  line-height: 1.19;
  font-weight: 600;
  color: var(--white);
  margin-bottom: 20px;
  opacity: 0;
  transform: translateY(30px);
  animation: fadeInUp 1.5s ease-out 0.5s forwards;
}

.hero-subtitle {
  font-size: 22px;
  line-height: 1.18;
  font-weight: 400;
  color: var(--white);
  margin: 0;
  opacity: 0;
  transform: translateY(30px);
  animation: fadeInUp 1.5s ease-out 1s forwards;
}

@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Responsive Design - Tablet */
@media (max-width: 1024px) {
  .hero-title {
    font-size: 36px;
    line-height: 1.17;
  }
  
  .hero-subtitle {
    font-size: 20px;
    line-height: 1.4;
  }
}

/* Responsive Design - Mobile */
@media (max-width: 768px) {
  .hero-section {
    min-height: 350px;
  }
  
  .hero-content {
    padding: 30px 15px;
  }
  
  .hero-title {
    font-size: 28px;
    line-height: 1.21;
    margin-bottom: 15px;
  }
  
  .hero-subtitle {
    font-size: 16px;
    line-height: 1.5;
  }
}

/* Responsive Design - Small Mobile */
@media (max-width: 480px) {
  .hero-section {
    min-height: 300px;
  }
  
  .hero-content {
    padding: 20px 10px;
  }
  
  .hero-title {
    font-size: 24px;
    line-height: 1.25;
  }
  
  .hero-subtitle {
    font-size: 14px;
    line-height: 1.57;
  }
}

/* Fallback for browsers without mix-blend-mode support - DISABLED */
/*@supports not (mix-blend-mode: color) {
  #home .rev_slider > ul > li::after { 
    background: rgba(37, 183, 211, 0.10); 
  }
}*/
/* Hide scroll-to-top button to prevent tooltip conflicts */
#scrollUp {
    display: none !important;
}


Current timestamp: Sat, Sep  6, 2025  2:38:49 PM
