/* -----------------------------------------------------------------------------------

	0.	RESET & CLEARFIX
	1.	BASICS (body, headers, links, etc)
	2. 	GENERAL ELEMENTS
	3.	HEADER
	4.	FOOTER
	5. 	MENU
	6. 	MENU TOGGLE (Hamburger)
	7. 	HEADER / MENU OPTIONS
	8. 	HERO / PAGETITLE
	9. 	PORTFOLIO
	10. BLOG
	11. COMMENTS
	12. PAGE LOADER
	13. PAGINATION
	14. EXTERN PLUGINS (smartscroll,masonry,revolution slider, owl)
	15. COLUMNS SECTION
	16. FULLWIDTH SECTION
	17. THUMB OVERLAY EFFECT
	18. ANIMATIONS (portfolio, hero, text, ...)
	19. ELEMENTS / SHORTCODES
	20. WIDGETS
	21. CUSTOM STYLE
	
----------------------------------------------------------------------------------- */


/*---------------------------------------------- 

0. RESET & CLEARFIX

------------------------------------------------*/

.btn {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 16px;
    color: #fff;
    background-color: #333;
    padding: 5px 20px;
    border-radius: 20px;
    margin-top: 30px;
    display: inline-block;
}

a.btn:hover {
    color: #fff;
}

.logo {
    font-size: 2rem;
    font-weight: 900;
    font-family: 'Montserrat', sans-serif;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
.overlaycaption,
figure,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
}

ol,
ul {
    list-style: none;
}

:focus {
    outline: 0;
}


/* deleting the default appearence for form elements */

input[type=text],
input[type=password],
input[type=submit],
input[type=button],
textarea,
button,
select {
    -moz-appearance: none;
    -webkit-appearance: none;
}


/* HTML5 display definitions */

article,
aside,
details,
.overlaycaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
dialog {
    display: block;
}

audio,
canvas,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
}

[hidden] {
    display: none;
    visibility: hidden;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    font-size: 0;
    height: 0;
}

.clearfix {
    *display: inline-block;
    height: 1%;
}

.clear {
    clear: both;
    display: block;
    font-size: 0;
    height: 0;
    line-height: 0;
    width: 100%;
}


/* Disable hover pointers on scrolling (class set by js)*/

.disable-hover,
.disable-hover * {
    pointer-events: none !important;
}

.mt-5 {
    margin-top: 150px;
}


/*---------------------------------------------- 

1. BASICS

------------------------------------------------*/

html {
    height: 100%;
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    /* Prevent iOS text size adjust on orientation change without disabling user zoom */
    -ms-text-size-adjust: 100%;
    position: relative;
}

body {
    font-family: 'Montserrat', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 16px;
    line-height: 25px;
    color: rgba(0, 0, 0, 0.6);
    text-align: left;
    position: relative;
    background: #ffffff;
    min-height: 100%;
}

::selection {
    background: #000000;
    color: #ffffff;
}

::-moz-selection {
    background: #000000;
    color: #ffffff;
}

::-webkit-selection {
    background: #000000;
    color: #ffffff;
}


/* Headings
---------------------------------------- */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Playfair Display';
    font-weight: 400;
    letter-spacing: -0.02em;
    color: #000000;
}

h1 i,
h2 i,
h3 i,
h4 i,
h5 i,
h6 i,
h1 em,
h2 em,
h3 em,
h4 em,
h5 em,
h6 em {
    font-style: italic;
}

h1 b,
h2 b,
h3 b,
h4 b,
h5 b,
h6 b,
h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong,
h6 strong {
    font-weight: 700;
}

.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4,
.text-light h5,
.text-light h6,
h1.text-light,
h2.text-light,
h3.text-light,
h4.text-light,
h5.text-light,
h6.text-light {
    color: #ffffff;
}

h1 {
    font-size: 66px;
    line-height: 80px;
}

h2 {
    font-size: 48px;
    line-height: 61px;
}

h3 {
    font-size: 34px;
    line-height: 46px;
}

h4 {
    font-size: 24px;
    line-height: 35px;
}

h5 {
    font-size: 20px;
    line-height: 31px;
}

h6 {
    font-size: 16px;
    line-height: 25px;
}


/* Headers Spacing */

div h1,
div h2,
div h3,
div h4,
div h5,
div h6 {
    margin-top: 30px;
}

i+h1,
i+h2,
i+h3,
i+h4,
i+h5,
i+h6 {
    margin-top: 15px;
}

div h1:first-child,
div h2:first-child,
div h3:first-child,
div h4:first-child,
div h5:first-child,
div h6:first-child {
    margin-top: 0px !important;
}

h1+h1,
h1+h2,
h1+h3,
h1+h4,
h1+h5,
h1+h6,
h2+h1,
h2+h2,
h2+h3,
h2+h4,
h2+h5,
h2+h6,
h3+h1,
h3+h2,
h3+h3,
h3+h4,
h3+h5,
h3+h6,
h4+h1,
h4+h2,
h4+h3,
h4+h4,
h4+h5,
h4+h6,
h5+h1,
h5+h2,
h5+h3,
h5+h4,
h5+h5,
h5+h6,
h6+h1,
h6+h2,
h6+h3,
h6+h4,
h6+h5,
h6+h6 {
    margin-top: 10px;
}

h3+h4,
h3+h5,
h3+h6,
h4+h3,
h5+h3,
h6+h3 {
    margin-top: 8px;
}

h4+h5,
h4+h6,
h5+h4,
h6+h4 {
    margin-top: 6px;
}

h5+h5,
h5+h6,
h6+h5,
h6+h6 {
    margin-top: 4px;
}

.title-alt {
    font-family: 'Montserrat';
    font-weight: 300;
    letter-spacing: 0.01em;
}

.title-alt b,
.title-alt strong {
    font-weight: 500;
}

.uppercase {
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
}


/* headings with link */

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #000000;
}

.text-light h1 a,
.text-light h2 a,
.text-light h3 a,
.text-light h4 a,
.text-light h5 a,
.text-light h6 a {
    color: #ffffff;
}


/* Forms
---------------------------------------- */

::-webkit-input-placeholder {
    color: #000000;
}

:-moz-placeholder {
    color: #000000;
}

::-moz-placeholder {
    color: #000000;
}

:-ms-input-placeholder {
    color: #000000;
}

.text-light ::-webkit-input-placeholder {
    color: #ffffff;
}

.text-light :-moz-placeholder {
    color: #ffffff;
}

.text-light ::-moz-placeholder {
    color: #ffffff;
}

.text-light :-ms-input-placeholder {
    color: #ffffff;
}

input[type=text],
input[type=password],
input[type=email],
textarea {
    font-family: 'Montserrat';
    font-weight: 400;
    font-size: 16px;
    background: rgba(0, 0, 0, 0.06);
    border: none;
    line-height: 22px;
    height: 22px;
    color: #000000;
    padding: 11px 10px;
    transition: all 200ms ease;
    -moz-border-radius: 0px;
    -khtml-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    resize: none;
}

.text-light:not(.transparent) input[type=text],
.text-light:not(.transparent) input[type=password],
.text-light:not(.transparent) input[type=email],
.text-light:not(.transparent) textarea {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.24);
}

input[type=text]:focus,
input[type=password]:focus,
input[type=email]:focus,
textarea:focus {
    border-color: #000000;
}

.text-light input[type=text]:focus,
.text-light input[type=password]:focus,
.text-light input[type=email]:focus,
.text-light textarea:focus {
    border-color: #ffffff;
}

input.false[type=text],
input.false[type=password]:focus,
input.false[type=email],
textarea.false {
    border-color: #fa4d5a;
}

input[type=text],
input[type=password],
input[type=email] {
    width: 100%;
    max-width: calc(100% - 20px);
}

textarea {
    width: 100%;
    min-height: 10rem;
    max-width: calc(100% - 20px);
}

input[type=submit],
input[type=button],
button {
    cursor: pointer;
    -moz-border-radius: 0px;
    -khtml-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    display: inline-block;
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 13px;
    line-height: 22px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 5px;
    transition: all 0.2s ease;
    color: #ffffff;
    padding: 10px 40px;
    background: #000000;
    border: none;
    position: relative;
}

.text-light input[type=submit],
.text-light input[type=button],
.text-light button {
    background: #ffffff;
    color: #000000;
}

input[type=submit]:hover,
input[type=button]:hover,
button:hover {
    background: rgba(0, 0, 0, 0.7);
    color: #ffffff;
}

.text-light input[type=submit]:hover,
.text-light input[type=button]:hover,
.text-light button:hover {
    background: rgba(255, 255, 255, 0.7);
    color: #000000;
}

select {
    background: rgba(0, 0, 0, 0.06);
    border: none;
    font-size: 14px;
    font-weight: 500;
    height: 44px;
    width: auto;
    max-width: 100%;
    text-overflow: ellipsis;
    padding: 8px 20px 8px 8px;
    color: #000000;
    -moz-border-radius: 0px;
    -khtml-border-radius: 0px;
    -webkit-border-radius: 0px;
    border-radius: 0px;
    min-width: 120px;
    background-image: url(../assets/select-arrow.png);
    background-position: center right;
    background-repeat: no-repeat;
    -webkit-background-size: 16px 6px;
    -moz-background-size: 16px 6px;
    -o-background-size: 16px 6px;
    background-size: 16px 6px;
}

.text-light select {
    border-color: #3d3d3d;
    color: #ffffff;
    background: #0f0f0f;
    background-image: url(../assets/select-arrow-light.png);
}

.text-light select:focus {
    border-color: #ffffff;
}

select option {
    cursor: pointer;
    padding: 5px 7px;
}

label {
    font-weight: 500;
    font-size: 16px;
    width: 100%;
    color: rgba(0, 0, 0, 0.6);
    display: block;
    transition: color 0.2s ease;
}

.text-light label {
    color: #ffffff;
}

.form-row.check-error label {
    color: #ce4a4a;
}

label abbr {
    color: rgba(0, 0, 0, 0.5);
    text-decoration: none;
}

input[type=radio]+label,
input[type=checkbox]+label {
    display: inline-block;
    width: auto;
    margin-left: 5px;
}

form {
    margin-top: 25px;
    padding: 1px 0 0 0;
    /* work around for margin from form-row */
}

div form:first-child {
    margin: 0;
}

form .form-row {
    margin-top: 25px;
    position: relative;
}

div form:first-child .form-row:first-child,
div form:first-child .form-row.one-half:nth-child(2),
div form:first-child .form-row.one-third:nth-child(2),
div form:first-child .form-row.one-third:nth-child(3),
div form:first-child .form-row.two-third:nth-child(2),
div form:first-child .form-row.one-fourth:nth-child(2),
div form:first-child .form-row.one-fourth:nth-child(3),
div form:first-child .form-row.one-fourth:nth-child(4),
div form:first-child .form-row.two-fourth:nth-child(2),
div form:first-child .form-row.two-fourth:nth-child(3) {
    margin-top: 0px;
}

.form-row.hidden {
    display: none;
}

form .form-submit {
    margin-top: 25px;
}

form .form-note {
    position: fixed;
    z-index: 10;
    bottom: 50px;
    left: calc(50% - 150px);
    width: 300px;
    display: none;
}

form .form-note.visible {
    -webkit-animation: show-hide 5s 1;
    -moz-animation: show-hide 5s 1;
    -ms-animation: show-hide 5s 1;
    animation: show-hide 5s 1;
}

@-webkit-keyframes show-hide {
    0% {
        opacity: 0;
        visibility: visible;
    }
    20% {
        opacity: 1;
    }
    80% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

@-moz-keyframes show-hide {
    0% {
        opacity: 0;
        visibility: visible;
    }
    20% {
        opacity: 1;
    }
    80% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes show-hide {
    0% {
        opacity: 0;
        visibility: visible;
    }
    20% {
        opacity: 1;
    }
    80% {
        opacity: 1;
    }
    100% {
        opacity: 0;
        visibility: hidden;
    }
}


/* Table
---------------------------------------- */

table {
    margin-top: 25px;
    border-collapse: collapse;
    /*table-layout: fixed;*/
    width: 100%;
    max-width: 100%;
}

div table:first-child {
    margin-top: 0px;
}

table thead th {
    font-family: 'Montserrat';
    font-weight: 500;
    color: #000000;
    font-size: 14px;
    line-height: 20px;
}

.text-light table thead th {
    color: #ffffff;
}

table tr {
    border-bottom: 1px solid #e0e0e0;
}

table thead tr {
    border-bottom: 2px solid #e0e0e0;
}

.text-light table tr {
    border-color: #3d3d3d !important;
}

table tbody td {
    padding: 10px 0;
}

table tbody tr:first-child td {
    padding-top: 0px;
}

table thead+tbody tr:first-child td {
    padding-top: 10px;
}

table thead th {
    padding-bottom: 10px;
}

table thead tr th:last-child,
table tbody tr td:last-child {
    text-align: right;
}

.table-scroll {
    max-width: 100%;
    overflow-y: scroll;
    margin-top: 25px;
}

div .table-scroll:first-child {
    margin-top: 0px;
}

.table-scroll table {
    min-width: 550px;
}


/* Links
---------------------------------------- */

a {
    text-decoration: none;
    cursor: pointer;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0.0);
    color: #000000;
    transition: color 0.15s ease;
}

a:hover {
    color: rgba(0, 0, 0, 0.6);
}

.text-light a {
    color: #ffffff;
}

.text-light a:hover {
    color: rgba(255, 255, 255, 0.7);
}

.blog-content p a {
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}


/* Embedded content
---------------------------------------- */

img,
object,
video,
audio {
    max-width: 100%;
    height: auto;
    display: inline-block;
    margin: 0;
    vertical-align: top;
}

img {
    width: auto;
    max-width: 100%;
    border: 0;
    -ms-interpolation-mode: bicubic;
}

p img {
    margin-top: 25px;
}

p img:first-child {
    margin-top: 0px;
}

img.alignleft {
    margin: 3px 25px 25px 0;
    float: left;
}

img.alignright {
    margin: 3px 0px 25px 25px;
    float: right;
}

p+video,
p+audio {
    margin-top: 25px;
}


/* Lists
---------------------------------------- */

ul {
    margin-top: 15px;
    margin-left: 30px;
    list-style: disc;
}

ul.no-list-style {
    list-style: none;
    margin-left: 0px;
}

div ul:first-child,
li ul:first-child {
    margin-top: 0px;
}

ol {
    margin-top: 15px;
    margin-left: 30px;
    list-style: decimal;
}

div ol:first-child,
li ol:first-child {
    margin-top: 0px;
}

ul li,
ol li {
    margin-top: 5px;
}

ul li:first-child,
ol li:first-child {
    margin-top: 0px;
}


/* Others
---------------------------------------- */

p {
    margin-top: 15px;
}

div p:first-child {
    margin-top: 0px;
}

strong,
b,
dt {
    font-weight: 500;
}

i,
dfn,
em {
    font-style: italic;
}

blockquote {
    font-family: 'Playfair Display';
    font-weight: 400;
    letter-spacing: -0.02em;
    font-size: 28px;
    line-height: 42px;
    color: #000000;
    position: relative;
    max-width: 1200px;
    margin: 40px auto;
}

#page-title blockquote {
    font-size: 36px;
    line-height: 54px;
}

[class*='wrapper'] blockquote {
    max-width: 100%;
}

.text-light blockquote,
blockquote.text-light {
    color: #ffffff;
}

div blockquote:first-child {
    margin-top: 0px;
}

div blockquote:last-child {
    margin-bottom: 0px;
}

blockquote>p:first-of-type::before,
blockquote>p:first-of-type::after {
    content: open-quote;
    font-size: 1.5em;
    line-height: 0;
    vertical-align: -0.25em;
    margin-right: .2em;
}

blockquote>p:first-of-type::after {
    content: close-quote;
    margin-right: 0;
    margin-left: .2em;
}

blockquote>p a {
    color: #000000;
}

blockquote>p a:hover {
    color: rgba(0, 0, 0, 0.6);
}

blockquote cite {
    display: block;
    font-size: 16px;
    line-height: 24px;
    font-family: 'Montserrat';
    font-weight: 300;
    letter-spacing: 0.02em;
    font-style: normal;
    color: #000000;
    margin-top: 15px;
}

.text-light blockquote cite,
blockquote.text-light cite {
    color: rgba(255, 255, 255, 0.8);
}

blockquote cite::before {
    content: "-";
    margin-right: 10px;
}

blockquote figure {
    margin: 20px auto 0 auto;
    width: 80px;
    height: 80px;
    border-radius: 60px;
    overflow: hidden;
    text-align: center;
}

blockquote p {
    margin: 0;
}

pre {
    padding: 20px;
    margin-top: 20px;
    font-size: 13px;
    line-height: 18px;
    background: #000000;
    color: rgba(255, 255, 255, 0.8);
    display: block;
    border-radius: 3px;
}

div pre:first-child {
    margin-top: 0px;
}

code {
    padding: 0 7px 0 5px;
    display: inline-block;
    border-radius: 3px;
    background: #d9d9d9;
    color: #000000;
    font-size: 13px;
    line-height: 18px;
    position: relative;
    top: -1px;
    font-style: italic;
}

small {
    font-size: 14px;
    line-height: 20px;
}


/*---------------------------------------------- 

2. GENERAL ELEMENTS

------------------------------------------------*/

#page-content {
    overflow: hidden;
    margin: 0;
    min-width: 1200px;
    max-width: 100%;
}

#page-body {
    width: 100%;
}

.wrapper,
.wrapper-small,
.wrapper-big {
    width: 1200px;
    margin: 0 auto;
    max-width: calc(100% - 100px);
}

.wrapper-small {
    width: 780px;
}

.wrapper-big {
    width: calc(100% - 100px);
    max-width: 1680px;
}

.wrapper::after,
.wrapper-small::after,
.wrapper-big::after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    font-size: 0;
    height: 0;
}

.main-content {
    width: calc(100% - 330px);
}

aside.sidebar {
    width: 280px;
    margin-bottom: 50px;
}

.left-float {
    float: left;
}

.right-float {
    float: right;
}

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

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

.text-light {
    color: rgba(255, 255, 255, 0.8);
}


/* icons */

i[class*='ion-'],
i[class*='fa-'] {
    color: #000000;
}


/*---------------------------------------------- 

3. HEADER

------------------------------------------------*/

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100% !important;
    height: auto;
    margin: 0 !important;
    max-width: none !important;
    z-index: 1501;
    background: #ffffff;
    border-bottom: 1px solid rgba(0, 0, 0, 0.0);
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    transition: border 0.4s ease;
}

header.not-sticky {
    position: absolute;
}

header.text-light {
    background: #000000;
}

header:not(.transparent)+#hero,
header:not(.transparent)+#page-body {
    margin-top: 80px;
}

header.small-header {
    border-color: rgba(0, 0, 0, 0.08);
}

header.small-header.text-light {
    border-color: rgba(255, 255, 255, 0.24);
}

header .header-inner {
    padding: 0;
    position: relative;
}

header.wrapper .header-inner {
    width: 1200px;
    margin: 0 auto;
    max-width: calc(100% - 100px);
}

header #logo {
    position: relative;
    z-index: 10;
    padding: 25px 50px;
    height: 30px;
    float: left;
    transition: padding 0.3s ease;
}

header.wrapper:not(.small-header) #logo {
    padding: 50px 0;
}

header.wrapper #logo {
    padding-left: 0;
}

header #logo .text-logo {
    font-weight: 600;
    font-size: 28px;
    text-transform: uppercase;
    line-height: 30px;
    letter-spacing: 0.05em;
}

header #logo img {
    max-height: 100%;
    transition: all 0.3s ease;
}

header #logo img#dark-logo+img#light-logo {
    position: absolute;
    top: 25px;
    left: 50px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

header.wrapper:not(.small-header) #logo img#dark-logo+img#light-logo {
    top: 50px;
}

header.wrapper #logo img#dark-logo+img#light-logo,
header #logo.logo-centered img#dark-logo+img#light-logo {
    left: 0;
}

header.text-light:not(.transparent) #logo img#dark-logo,
header.text-light.transparent:not(.hero-invisible) #logo img#dark-logo {
    opacity: 0;
    visibility: hidden;
}

header.text-light:not(.transparent) #logo img#dark-logo+img#light-logo,
header.text-light.transparent:not(.hero-invisible) #logo img#dark-logo+img#light-logo {
    opacity: 1;
    visibility: visible;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #logo img#dark-logo {
    opacity: 1;
    visibility: visible;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #logo img#dark-logo+img#light-logo {
    opacity: 0;
    visibility: hidden;
}


/*---------------------------------------------- 

4. FOOTER

------------------------------------------------*/

#footer {
    background: rgba(0, 0, 0, 0.06);
    width: 100%;
}

#footer.text-light {
    background: #000000;
}

#footer .footer-inner {
    padding: 50px 0;
}

#footer .footer-bottom {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    padding: 25px 0;
}

#footer.text-light .footer-bottom {
    border-color: rgba(255, 255, 255, 0.26);
}

#footer .footer-bottom .last-col {
    text-align: right;
}

#footer .column {
    margin-right: 100px;
}

#footer [class*='wrapper'] .one-half {
    width: calc(50% - 50px);
}

#footer [class*='wrapper'] .one-third {
    width: calc(33.33% - 66.66px);
}

#footer [class*='wrapper'] .two-third {
    width: calc(66.6% - 33.33px);
}


/* ((25*2)/3) - (25/3) */

#footer [class*='wrapper'] .one-fourth {
    width: calc(25% - 75px);
}

#footer [class*='wrapper'] .two-fourth {
    width: calc(50% - 50px);
}

#footer [class*='wrapper'] .three-fourth {
    width: calc(75% - 25px);
}


/* back to top */

#footer #backtotop {
    position: fixed;
    bottom: -35px;
    right: 25px;
    text-indent: 9999px;
    width: 20px;
    height: 20px;
    transition: all 0.5s ease;
    z-index: 1000;
}

#footer #backtotop.visible {
    bottom: 25px;
}

#footer.text-light #backtotop {
    background: #ffffff;
    padding: 10px;
}

#footer #backtotop::before {
    content: "";
    height: 16px;
    width: 3px;
    background: #000000;
    display: block;
    transition: all 0.2s ease 0.2s;
    position: absolute;
    top: calc(50% - 7px);
    left: calc(50% - 1px);
    transition: background-color 0.3s ease;
}

#footer #backtotop:hover::before {
    background-color: #666666;
}

#footer #backtotop::after {
    content: "";
    position: absolute;
    top: calc(50% - 2px);
    left: calc(50% - 6px);
    border-left: 3px solid #000000;
    border-top: 3px solid #000000;
    display: block;
    width: 10px;
    height: 10px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: border-color 0.3s ease;
}

#footer #backtotop:hover::after {
    border-color: #666666;
}


/*---------------------------------------------- 

5. 	MENU

------------------------------------------------*/

#menu-inner {
    width: 0;
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    overflow: hidden;
    background: #ffffff;
    border-left: 1px solid rgba(0, 0, 0, 0.08);
    -webkit-background-clip: padding-box;
    /* for Safari */
    background-clip: padding-box;
    /* for IE9+, Firefox 4+, Opera, Chrome */
    -webkit-transition: all 600ms cubic-bezier(0.600, 0.300, 0.000, 1.000);
    -moz-transition: all 600ms cubic-bezier(0.600, 0.300, 0.000, 1.000);
    -o-transition: all 600ms cubic-bezier(0.600, 0.300, 0.000, 1.000);
    transition: all 600ms cubic-bezier(0.600, 0.300, 0.000, 1.000);
    /* custom */
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.300, 0.000, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.300, 0.000, 1.000);
    -o-transition-timing-function: cubic-bezier(0.600, 0.300, 0.000, 1.000);
    transition-timing-function: cubic-bezier(0.600, 0.300, 0.000, 1.000);
    /* custom */
}

header.text-light:not(.transparent) #menu-inner {
    background: #000000;
    border-color: rgba(255, 255, 255, 0.24);
}

header.menu-is-open #menu-inner {
    width: 340px;
}

nav#main-nav {
    width: 340px;
    max-height: calc(100% - 300px);
    position: absolute;
    top: 50%;
    left: 0;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    transition: all 0.2s ease;
}

nav#main-nav ul {
    width: 340px;
    list-style: none;
    margin: 0;
    padding: 0;
    -webkit-transform: translateX(50%);
    -moz-transform: translateX(50%);
    -ms-transform: translateX(50%);
    -o-transform: translateX(50%);
    transform: translateX(50%);
    transition: transform 0.6s ease;
}

header.menu-is-open nav#main-nav ul,
header.menu-open nav#main-nav ul {
    -webkit-transform: translateX(0) !important;
    -moz-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    -o-transform: translateX(0) !important;
    transform: translateX(0) !important;
}

nav#main-nav>ul>li {
    margin: 10px 0;
    display: block;
    padding: 0 25px;
    position: relative;
    left: 0px;
}

nav#main-nav>ul>li:first-child {
    margin-top: 0;
}

nav#main-nav>ul>li:last-child {
    margin-bottom: 0;
}

nav#main-nav ul>li>a {
    font-family: 'Playfair Display';
    font-weight: 700;
    font-size: 40px;
    display: block;
    width: auto;
    letter-spacing: -0.02em;
    color: #000000;
    height: 50px;
    line-height: 50px;
    position: relative;
    transition: all 0.2s ease;
    overflow: hidden;
}

header.text-light:not(.transparent) nav#main-nav ul>li>a,
header.text-light.menu-open.transparent:not(.hero-invisible) nav#main-nav ul>li>a {
    color: #ffffff;
}

nav#main-nav ul>li>a:hover,
nav#main-nav ul>li.current-menu-item>a,
nav#main-nav ul>li:hover>a {
    color: rgba(0, 0, 0, 0.6);
}

header.text-light:not(.transparent) nav#main-nav ul>li>a:hover,
header.text-light:not(.transparent) nav#main-nav ul>li.current-menu-item>a,
header.text-light:not(.transparent) nav#main-nav ul>li:hover>a,
header.text-light.menu-open.transparent:not(.hero-invisible) nav#main-nav ul>li>a:hover,
header.text-light.menu-open.transparent:not(.hero-invisible) nav#main-nav ul>li.current-menu-item>a,
header.text-light.menu-open.transparent:not(.hero-invisible) nav#main-nav ul>li:hover>a {
    color: rgba(255, 255, 255, 0.7);
}

nav#main-nav ul.underline>li>a::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 5px;
    left: 0;
    background: #000000;
    opacity: 0;
    transition: all 0.3s ease;
}

nav#main-nav ul.underline>li>a:hover::after,
nav#main-nav ul.underline>li.current-menu-item>a::after {
    bottom: 0px;
    opacity: 1;
}

header.text-light:not(.transparent) nav#main-nav ul.underline>li>a::after,
header.text-light.menu-open.transparent:not(.hero-invisible) nav#main-nav ul.underline>li>a::after {
    background: #ffffff;
}

header.menu-open nav#main-nav ul>li>a {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    height: 30px;
    line-height: 30px;
}

nav#main-nav ul.sub-menu li.menu-item-has-children a {
    position: relative;
}

nav#main-nav ul.sub-menu li.menu-item-has-children>a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2px;
    height: 4px;
    width: 4px;
    border-top: 1.5px solid #000000;
    border-right: 1.5px solid #000000;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    display: none;
}

nav#main-nav ul>li>a span {
    display: inline-block;
}

nav#main-nav>ul>li ul.sub-menu {
    margin: 0;
    padding: 10px 0 12px 2px;
    display: none;
    width: auto;
    -webkit-transform: translateX(0) !important;
    -moz-transform: translateX(0) !important;
    -ms-transform: translateX(0) !important;
    -o-transform: translateX(0) !important;
    transform: translateX(0) !important;
}

nav#main-nav ul.sub-menu ul.sub-menu {
    padding: 15px 0 15px 15px;
    margin: 0;
    display: none;
}

header:not(.menu-open) nav#main-nav ul.sub-menu li:last-child>ul.sub-menu {
    padding-bottom: 0;
}

nav#main-nav ul.sub-menu li {
    margin: 4px 0 4px 0;
}

nav#main-nav ul.sub-menu>li>a {
    font-family: 'Montserrat';
    font-weight: 400;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    font-size: 14px;
    height: 22px;
    line-height: 22px;
    display: block;
}

header.menu-open nav#main-nav ul.sub-menu>li>a {
    letter-spacing: 0;
    text-transform: none;
    font-size: 13px;
    height: 20px;
    line-height: 20px;
}


/* Menu widgets */

#menu-widget,
#header-widget {
    width: 280px;
    position: absolute;
    bottom: 25px;
    left: 50px;
    text-align: left;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateX(60px);
    -moz-transform: translateX(60px);
    -ms-transform: translateX(60px);
    -o-transform: translateX(60px);
    transform: translateX(60px);
    transition: all 0.5s ease;
}

header:not(.menu-full-center):not(.menu-full-columns) #menu-widget,
#header-widget {
    font-size: 14px;
    line-height: 20px;
}

header.menu-is-open #menu-widget {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition-delay: 0.4s;
    -webkit-transform: translateY(0px) translateX(0px) !important;
    -moz-transform: translateY(0px) translateX(0px) !important;
    -ms-transform: translateY(0px) translateX(0px) !important;
    -o-transform: translateY(0px) translateX(0px) !important;
    transform: translateY(0px) translateX(0px) !important;
}

#menu-widget .widget {
    margin-top: 25px;
}

#menu-widget .widget:first-child {
    margin-top: 0px;
}


/*---------------------------------------------- 

6. 	MENU TOGGLE (Hamburger)

------------------------------------------------*/

.menu-toggle {
    width: 80px;
    height: 80px;
    max-height: 100%;
    float: right;
    position: relative;
    display: block;
    cursor: pointer;
    overflow: hidden;
    z-index: 10;
    margin-right: 22px;
    transition: height 0.3s ease, transform 0.4s ease;
}

header.wrapper:not(.small-header) .menu-toggle {
    height: 130px;
}

header.wrapper .menu-toggle {
    margin-right: -27px;
}


/* cross icon / animation */

.menu-toggle span.hamburger,
.menu-toggle span.hamburger::after,
.menu-toggle span.hamburger::before {
    content: "";
    display: block;
    width: 24px;
    height: 3px;
    background: #000000;
    position: absolute;
    top: 50%;
    margin-top: -1px;
    left: 50%;
    margin-left: -12px;
    -webkit-transition: all 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition: all 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition: all 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition: all 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition-delay: 0.15s;
}

header.text-light:not(.transparent) .menu-toggle span.hamburger,
header.text-light:not(.transparent) .menu-toggle span.hamburger::after,
header.text-light:not(.transparent) .menu-toggle span.hamburger::before,
header.text-light.transparent:not(.hero-invisible) .menu-toggle span.hamburger,
header.text-light.transparent:not(.hero-invisible) .menu-toggle span.hamburger::after,
header.text-light.transparent:not(.hero-invisible) .menu-toggle span.hamburger::before {
    background: #ffffff;
}

.menu-toggle span.hamburger::after {
    margin-top: -7px;
    top: 0;
    transition-delay: 0.27s;
}

.menu-toggle span.hamburger::before {
    margin-top: 7px;
    top: 0;
    transition-delay: 0.2s;
}

.menu-is-open .menu-toggle span.hamburger,
.menu-is-open .menu-toggle span.hamburger::after,
.menu-is-open .menu-toggle span.hamburger::before {
    transition-delay: 0.12s;
    -webkit-transform: translateX(60px);
    -moz-transform: translateX(60px);
    -ms-transform: translateX(60px);
    -o-transform: translateX(60px);
    transform: translateX(60px);
}

.menu-is-open .menu-toggle span.hamburger::after {
    transition-delay: 0s;
}

.menu-is-open .menu-toggle span.hamburger::before {
    transition-delay: 0.07s;
}


/* cross icon / animation */

.menu-toggle span.cross::before,
.menu-toggle span.cross::after {
    content: "";
    display: block;
    width: 24px;
    height: 3px;
    background: #000000;
    position: absolute;
    top: 50%;
    margin-top: -1.5px;
    left: 50%;
    margin-left: -12px;
    -webkit-transition: transform 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition: transform 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition: transform 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition: transform 0.3s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -webkit-transform: translateY(-70px) translateX(-70px) rotate(45deg);
    -moz-transform: translateY(-70px) translateX(-70px) rotate(45deg);
    -ms-transform: translateY(-70px) translateX(-70px) rotate(45deg);
    -o-transform: translateY(-70px) translateX(-70px) rotate(45deg);
    transform: translateY(-70px) translateX(-70px) rotate(45deg);
    transition-delay: 0.12s;
}

header.text-light:not(.transparent) .menu-toggle span.cross::before,
header.text-light:not(.transparent) .menu-toggle span.cross::after {
    background: #ffffff;
}

.menu-toggle span.cross::after {
    transition-delay: 0s;
    -webkit-transform: translateY(-70px) translateX(70px) rotate(-45deg);
    -moz-transform: translateY(-70px) translateX(70px) rotate(-45deg);
    -ms-transform: translateY(-70px) translateX(70px) rotate(-45deg);
    -o-transform: translateY(-70px) translateX(70px) rotate(-45deg);
    transform: translateY(-70px) translateX(70px) rotate(-45deg);
}

.menu-is-open .menu-toggle span.cross::before {
    transition-delay: 0.12s;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.menu-is-open .menu-toggle span.cross::after {
    transition-delay: 0.24s;
    -webkit-transform: rotate(-45deg) !important;
    -moz-transform: rotate(-45deg) !important;
    -ms-transform: rotate(-45deg) !important;
    -o-transform: rotate(-45deg) !important;
    transform: rotate(-45deg) !important;
}


/*---------------------------------------------- 

7. HEADER / MENU OPTIONS

------------------------------------------------*/


/* Open Menu (menu-open) */

@media only screen and (min-width:769px) {
    header.menu-open .menu-toggle {
        display: none;
    }
    header.menu-open #menu-inner {
        background: none;
        width: auto;
        position: relative;
        top: auto;
        right: auto;
        float: right;
        z-index: 15;
        overflow: visible;
        margin-right: 50px;
        border: none;
    }
    header.menu-open.wrapper #menu-inner {
        margin-right: 0px;
    }
    header.menu-open nav#main-nav {
        width: auto;
        max-height: none;
        position: relative;
        top: auto;
        left: auto;
        overflow-y: visible;
        overflow-x: visible;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0)
    }
    header.menu-open nav#main-nav ul {
        width: auto;
        margin: 0;
    }
    header.menu-open #menu-widget {
        display: none;
    }
    header.menu-open nav#main-nav>ul>li {
        margin: 0 10px;
        display: inline-block;
        padding: 25px 0;
        transition: padding 0.3s ease;
    }
    header.menu-open.wrapper:not(.small-header) nav#main-nav>ul>li {
        padding: 50px 0;
    }
    header.menu-open nav#main-nav>ul>li:first-child {
        margin-left: 0
    }
    header.menu-open nav#main-nav>ul>li:last-child {
        margin-right: 0
    }
    header.menu-open nav#main-nav ul.sub-menu {
        margin: 0;
        padding: 15px 0;
        display: block;
        position: absolute;
        top: 80px;
        left: 0;
        width: 200px;
        background: #000000;
        text-align: left;
        visibility: hidden;
        opacity: 0;
        filter: alpha(opacity=0);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        -webkit-transition: all .4s ease .2s;
        -moz-transition: all .4s ease .2s;
        -o-transition: all .4s ease .2s;
        -ms-transition: all .4s ease .2s;
        transition: all .4s ease .2s;
        z-index: 2;
    }
    header.menu-open.wrapper nav#main-nav ul.sub-menu {
        margin-top: 15px;
    }
    header.menu-open nav#main-nav>ul>li>ul.sub-menu.add-gap {
        left: auto;
        right: 0
    }
    header.menu-open nav#main-nav li a:hover+ul.sub-menu,
    header.menu-open nav#main-nav li ul.sub-menu:hover {
        transition-delay: 0s;
        visibility: visible;
        opacity: 1;
        filter: alpha(opacity=100);
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
    }
    header.menu-open nav#main-nav ul.sub-menu ul.sub-menu {
        top: 0;
        left: -201px;
        border: none;
        padding: 15px 0;
    }
    header.menu-open nav#main-nav ul.sub-menu li {
        margin: 4px 0;
        padding: 0 20px;
        position: relative
    }
    header.menu-open nav#main-nav ul.sub-menu li.menu-item-has-children>a::after {
        display: block;
        border-color: #ffffff;
    }
    header.menu-open nav#main-nav ul.sub-menu>li>a {
        color: #ffffff;
    }
}


/* Full Menu Center (menu-full-center) */

header[class*='menu-full'] #menu-inner {
    border: none;
}

header.menu-is-open[class*='menu-full'] #menu-inner {
    width: 100%;
}

header[class*='menu-full'] nav#main-nav {
    left: 50%;
    margin-left: -170px;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    text-align: center;
}

header.menu-is-open[class*='menu-full'] nav#main-nav {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    transition-delay: 0.4s;
    transition-duration: 0.6s;
}

header[class*='menu-full'] nav#main-nav ul {
    width: auto;
}

header[class*='menu-full'] nav#main-nav ul li {
    padding: 0;
}

header.menu-full-center #menu-inner #menu-widget {
    width: calc(100% - 50px);
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
    overflow: hidden;
}

header.menu-full-center.wrapper #menu-inner #menu-widget {
    width: 1200px;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(0px) !important;
    -moz-transform: translateX(-50%) translateY(0px) !important;
    -ms-transform: translateX(0%) translateY(0px) !important;
    -o-transform: translateX(-50%) translateY(0px) !important;
    transform: translateX(-50%) translateY(0px) !important;
    overflow: hidden;
}

header.menu-full-center #menu-inner #menu-widget>.widget {
    max-width: 300px;
    float: left;
}

header.menu-full-center #menu-inner #menu-widget>.widget:nth-child(2) {
    float: right;
    margin-top: 0px;
}


/* Full Menu Columns (menu-full-columns) */

header.menu-full-columns nav#main-nav {
    margin-left: -330px;
    width: 300px;
    height: 400px;
    text-align: left;
}

header.menu-full-columns nav#main-nav>ul {
    width: auto;
}

header.menu-full-columns nav#main-nav>ul>li {
    padding: 0;
}

header.menu-full-columns #menu-inner #menu-widget {
    width: 300px;
    height: 400px !important;
    padding: 0;
    max-height: calc(100% - 300px);
    position: absolute;
    top: 50%;
    left: auto;
    right: 50%;
    margin-right: -330px;
    overflow-y: scroll;
    overflow-x: hidden;
    text-align: left;
    -webkit-transform: translateY(-50%) translateX(0px) !important;
    -moz-transform: translateY(-50%) translateX(0px);
    -ms-transform: translateY(-50%) translateX(0px) !important;
    -o-transform: translateY(-50%) translateX(0px) !important;
    transform: translateY(-50%) translateX(0px) !important;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] .widget {
    color: rgba(0, 0, 0, 0.6);
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h1,
header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h2,
header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h3,
header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h4,
header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h5,
header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget h6 {
    color: #000000;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget a {
    color: #000000;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #menu-widget a:hover {
    color: rgba(0, 0, 0, 0.6);
}


/* header transparent */

header.transparent {
    background: none;
    border: none;
}

header.transparent {
    pointer-events: none;
}

header.transparent #logo a,
header.transparent #menu-inner,
header.transparent #menu #main-nav,
header.transparent #menu .menu-toggle,
header.transparent #menu #menu-widget,
header.transparent #header-widget {
    pointer-events: auto;
}


/* Logo centered */

header #logo.logo-centered {
    padding-left: 0;
    padding-right: 0;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}

header #logo.logo-centered~#header-widget {
    display: block;
    width: auto;
    opacity: 1;
    filter: alpha(opacity=1);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
    -webkit-transform: translateX(0px) translateY(50%) !important;
    -moz-transform: translateX(0px) translateY(50%) !important;
    -ms-transform: translateX(0px) translateY(50%) !important;
    -o-transform: translateX(0px) translateY(50%) !important;
    transform: translateX(0px) translateY(50%) !important;
    bottom: 50%;
    max-height: 90%;
    margin: 0;
    overflow: hidden;
}

header.wrapper #logo.logo-centered~#header-widget {
    left: 0;
}

header #logo.logo-centered~#header-widget .widget:nth-child(2n),
header #logo.logo-centered~#header-widget .widget:nth-child(3n),
header #logo.logo-centered~#header-widget .widget:nth-child(4n) {
    display: none;
}

header #logo.logo-centered~#menu #menu-inner #menu-widget .widget {
    display: none;
}

header #logo.logo-centered~#menu #menu-inner #menu-widget .widget:nth-child(2n) {
    display: block;
    margin-top: 0;
}

header.text-light.transparent.hero-invisible #logo.logo-centered~#header-widget {
    color: rgba(0, 0, 0, 0.8);
}


/*---------------------------------------------- 

8. HERO / PAGETITLE

------------------------------------------------*/

#hero {
    position: relative;
    overflow: hidden;
    width: 100%;
    background-image: url(../images/header.svg);
    background-color: rgba(0, 0, 0, 0.06);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: top left;
    margin-bottom: 4%;
}

#page-content>#hero:first-child {
    width: 100%;
    margin: 0;
}

#hero.hero-full {
    min-height: 100vh;
}

#hero.hero-big {
    min-height: 75vh;
}


/* hero pagetitle */

#hero #page-title {
    padding-top: 100px;
    padding-bottom: 100px;
    position: relative;
}

#hero #page-title:not(.wrapper):not(.wrapper-small) {
    width: calc(100% - 100px);
    padding-left: 50px;
    padding-right: 50px;
}

#hero.hero-full #page-title,
#hero.hero-big #page-title {
    margin-top: 0px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -o-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}

#hero.hero-full #page-title.title-top,
#hero.hero-big #page-title.title-top,
#hero.hero-full #page-title.title-bottom,
#hero.hero-big #page-title.title-bottom,
#hero.hero-full #page-title.push-bottom:not(.title-top),
#hero.hero-big #page-title.push-bottom:not(.title-top) {
    top: 0;
    -webkit-transform: translateY(0%) translateX(-50%);
    -moz-transform: translateY(0%) translateX(-50%);
    -ms-transform: translateY(0%) translateX(-50%);
    -o-transform: translateY(0%) translateX(-50%);
    transform: translateY(0%) translateX(-50%);
}

#hero.hero-full #page-title.title-bottom,
#hero.hero-big #page-title.title-bottom {
    top: auto;
    bottom: 0;
}

#hero.hero-full #page-title.push-bottom:not(.title-top),
#hero.hero-big #page-title.push-bottom:not(.title-top) {
    top: auto;
    bottom: 0;
}


/* google map for hero*/

#hero>.google-map {
    height: 400px;
}

#hero.hero-full>.google-map {
    min-height: 100vh;
}

#hero.hero-big>.google-map {
    min-height: 75vh;
}


/* norfound */

.notfound {
    display: inline-block;
    width: 240px;
    height: 240px;
    border: 4px solid #000000;
    border-radius: 999px;
    line-height: 200px;
    font-size: 90px;
}


/*---------------------------------------------- 

9. PORTFOLIO

------------------------------------------------*/

.portfolio-category {
    font-family: 'Montserrat';
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
}

.text-light .portfolio-category {
    color: #ffffff;
}

.portfolio-info {
    margin-top: 15px;
    margin-bottom: 15px;
}

.portfolio-category+.portfolio-name {
    margin-top: 0px;
}


/* portfolio-single */

#portfolio-single {
    overflow: hidden;
}

.single-portfolio .single-content {
    width: calc(50% - 100px);
    padding-left: 100px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.single-portfolio .single-content.right-float {
    padding-left: 0;
    padding-right: 100px;
}

[class*='wrapper'] .single-content {
    padding: 0;
    width: calc(45% - 100px);
}

.single-portfolio .single-media {
    width: 50%;
}

[class*='wrapper'] .single-media {
    width: 55%;
}

.single-title+* {
    margin-top: 50px;
}

.single-title>p {
    margin-top: 8px;
}


/* filter */

.filter {
    list-style: none;
    padding: 0;
    margin: 0 !important;
}

.filter li {
    display: inline-block;
    margin: 0 25px 15px 0;
}

.filter.align-right li,
.align-right .filter li {
    margin: 0 0 15px 25px;
}

.filter.align-center li,
.align-center .filter li {
    margin: 0 13px;
}

.filter li:first-child {
    margin-left: 0;
}

.filter li:last-child {
    margin-right: 0;
}

.filter li a {
    font-family: 'Montserrat';
    font-weight: 400;
    font-size: 15px;
    line-height: 21px;
    color: #000000;
    position: relative;
    transition: color 0.15s ease;
    padding-bottom: 3px;
    display: inline-block;
}

.filter li a:hover,
.filter li.active a {
    color: rgba(0, 0, 0, 0.6);
}

.filter li a::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 5px;
    left: 0;
    background: rgba(0, 0, 0, 0);
    transition: all 0.3s ease;
}

.filter li.active a::after {
    bottom: 0px;
    background: rgba(0, 0, 0, 0.12);
}


/*---------------------------------------------- 

10. BLOG

------------------------------------------------*/

.post-date {
    font-family: 'Montserrat';
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
}

.text-light .post-date {
    color: #ffffff;
}

.post-meta+.post-name {
    margin: 0;
}

.blog-item .blog-info .post-name+p {
    margin-top: 25px;
}

#page-title .post-meta+.post-name,
#blog-single .post-meta+.post-name {
    margin-top: 10px;
}

#page-title .post-name+.post-meta,
#blog-single .post-name+.post-meta {
    margin-top: 20px;
}

.post-cat {
    font-family: 'Playfair Display';
    font-weight: 400;
    letter-spacing: 0em;
    font-style: italic;
    font-size: 13px;
    color: rgba(0, 0, 0, 0.6);
    display: inline-block;
    margin-left: 10px;
}

div .post-cat:first-child {
    margin-left: 0px;
}

.text-light .post-cat {
    color: rgba(255, 255, 255, 0.7);
}

#page-title .post-cat {
    font-size: 16px;
    line-height: 25px;
}

.post-cat a {
    position: relative;
}

.post-cat a::after {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 5px;
    left: 0;
    background: rgba(0, 0, 0, 0);
    transition: all 0.3s ease;
}

.post-cat a:hover::after {
    bottom: -3px;
    background: rgba(0, 0, 0, 0.12);
}

.text-light .post-cat a:hover::after {
    background: rgba(255, 255, 255, 0.24);
}

.blog-info {
    margin-top: 25px;
}

div .blog-info:first-child {
    margin-top: 0;
}

.blog-info .read-more {
    margin-top: 25px;
}


/* classic blog */

.classic-blog .blog-item {
    margin-bottom: 50px;
}

.classic-blog .blog-item:last-child {
    margin-bottom: 0;
}


/* minimal grid blog */

.minimal-grid-blog .blog-item .full-link {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 3;
}

.minimal-grid-blog .blog-item .blog-bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    background-position: center center !important;
    background-size: cover !important;
    transition: opacity 0.3s ease;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.minimal-grid-blog .blog-item .blog-bg::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.minimal-grid-blog .blog-item .blog-item-inner {
    padding: 2.5rem;
    position: relative;
    z-index: 1;
}

.minimal-grid-blog .blog-item .blog-item-inner .post-name {
    min-height: 15rem;
}

.minimal-grid-blog .blog-info .read-more {
    margin-top: 25px;
}

.minimal-grid-blog .blog-item .post-date,
.minimal-grid-blog .blog-item .post-cat,
.minimal-grid-blog .blog-item .post-name,
.minimal-grid-blog .blog-item .read-more,
.minimal-grid-blog .blog-item .sr-button-with-arrow::before,
.minimal-grid-blog .blog-item .sr-button-with-arrow::after {
    transition: all 0.3s ease;
}

.minimal-grid-blog .blog-item:hover .post-date,
.minimal-grid-blog .blog-item:hover .post-cat,
.minimal-grid-blog .blog-item:hover .post-name,
.minimal-grid-blog .blog-item:hover .read-more,
.minimal-grid-blog .blog-item:hover blockquote,
.minimal-grid-blog .blog-item:hover blockquote p a,
.minimal-grid-blog .blog-item:hover blockquote cite {
    color: #ffffff;
}

.minimal-grid-blog .blog-item:hover .sr-button-with-arrow {
    border-color: rgba(255, 255, 255, 0.18);
}

.minimal-grid-blog .blog-item:hover .sr-button-with-arrow::before {
    background: #ffffff;
}

.minimal-grid-blog .blog-item:hover .sr-button-with-arrow::after {
    border-color: #ffffff;
}

.minimal-grid-blog .blog-item:hover .blog-bg {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}


/* minimal list blog */

.minimal-list-blog .blog-item {
    text-align: center;
    margin-bottom: 100px;
}


/* quote post type */

.blog-item.format-quote .blog-item-inner {
    background: rgba(0, 0, 0, 0.06);
    padding: 25px;
}

.blog-item.format-quote blockquote {
    margin: 0;
    font-size: 26px;
    line-height: 36px;
}

.minimal-grid-blog .blog-item.format-quote .blog-item-inner {
    background: none;
    padding: 2.5rem;
}

.minimal-grid-blog .blog-item.format-quote blockquote {
    min-height: 15rem;
    font-size: 24px;
    line-height: 34px;
}

.minimal-grid-blog .blog-item.format-quote .post-meta {
    visibility: hidden;
}


/*	Single Blog
-------------------------------------------------*/

#blog-single .blog-media {
    width: 900px;
    max-width: calc(100% - 100px);
    margin: 0 auto;
    margin-top: 50px;
}

.main-content .blog-media {
    max-width: 100% !important;
}

#blog-single .blog-media:first-child,
#blog-single div .blog-media:first-child {
    margin-top: 0px;
}

#blog-single .blog-content {
    margin-top: 50px;
}

#blog-single .blog-content:first-child,
#blog-single div .blog-content:first-child {
    margin-top: 0px;
}

#blog-single .blog-share {
    margin-top: 25px;
}

#blog-single #single-pagination {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}


/*---------------------------------------------- 

11. COMMENTS

------------------------------------------------*/


/* Comments 
----------------------------*/

.comments {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    margin-top: 50px;
    padding-top: 25px;
    padding-bottom: 25px;
}

#single-pagination+.comments {
    margin-top: 0px;
}

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

.comments .comment-list {
    margin-top: 25px;
}

.comments .comment-list .comment {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
}

.comments .comment-list .comment:first-child {
    margin-top: 0px;
}

.comments .comment .comment-inner {
    overflow: hidden;
    position: relative;
}

.comments .comment .children {
    margin-left: 50px;
    margin-top: 25px;
}

.comments .user {
    float: left;
    width: 50px;
    -moz-border-radius: 999px;
    -webkit-border-radius: 999px;
    -o-border-radius: 999px;
    border-radius: 999px;
}

.comments .user img {
    -moz-border-radius: 999px;
    -webkit-border-radius: 999px;
    -o-border-radius: 999px;
    border-radius: 999px;
}

.comments .time {
    font-size: 14px;
    line-height: 22px;
    text-transform: none;
    letter-spacing: normal;
    margin-top: 0px;
    display: block;
    color: rgba(0, 0, 0, 0.6);
}

.comments .name .comment-name {
    display: inline-block;
}

.comments .comment-content {
    margin-left: 70px;
    position: relative;
}

.comments .comment-reply-link,
.comments #cancel-comment-reply-link {
    display: inline-block;
    font-weight: 500;
    font-size: 14px;
    line-height: 17px;
    margin-left: 15px;
    color: rgba(0, 0, 0, 0.6);
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.comments .comment-reply-link:hover,
.comments #cancel-comment-reply-link:hover {
    color: #000000;
}

.comments #respond {
    margin-top: 25px;
}


/* Leave comment
----------------------------*/

.leavecomment {
    margin-top: 50px;
    margin-bottom: 100px;
}

#single-pagination+.leavecomment {
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    margin-top: 0px;
    padding-top: 25px;
}

#respond form {
    margin-top: 0px;
}


/*---------------------------------------------- 

12. PAGE LOADER

------------------------------------------------*/

#page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100001;
    /* big z-index for revolution slider */
    background: #ffffff;
    -webkit-transition: opacity 0.4s ease;
    -moz-transition: opacity 0.4s ease;
    -ms-transition: opacity 0.4s ease;
    -o-transition: opacity 0.4s ease;
    transition: opacity 0.4s ease;
    transition-delay: 1.2s;
}

.loaded #page-loader {
    opacity: 0;
}

.loading-end #page-loader {
    display: none;
}

#page-loader .loader-name {
    max-width: 80px;
    max-height: 80px;
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#page-loader .loader-circle {
    width: 150px;
    height: 150px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    stroke: #000000;
    stroke-dashoffset: 1000;
    stroke-dasharray: 1000;
    stroke-width: 5;
    stroke-linejoin: round;
    stroke-linecap: round;
    fill: none;
    -webkit-transition: all 1.2s ease;
    -moz-transition: all 1.2s ease;
    -ms-transition: all 1.2s ease;
    -o-transition: all 1.2s ease;
    transition: all 1.2s ease;
}

#page-loader .loader-circle svg {
    display: none;
}

.loaded #page-loader .loader-circle svg {
    display: block;
}

.loaded #page-loader .loader-circle {
    stroke-dashoffset: 150;
    stroke-dasharray: 1000;
}

#page-loader.pulsing .loader-circle::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 150px;
    height: 150px;
    border-radius: 100px;
    background: transparent;
    -webkit-animation: white-shadow 1.5s infinite;
    -moz-animation: white-shadow 1.5s infinite;
    -ms-animation: white-shadow 1.5s infinite;
    animation: white-shadow 1.5s infinite;
}

@-webkit-keyframes white-shadow {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, .2);
        -webkit-transition: box-shadow .3s ease-in-out
    }
    80% {
        box-shadow: 0 0 0 30px transparent;
        -webkit-transform: translate3d(0, 0, 0);
        -webkit-transition: box-shadow .4s ease-in-out
    }
}

@-moz-keyframes white-shadow {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, .2);
        -moz-transition: box-shadow .3s ease-in-out
    }
    80% {
        box-shadow: 0 0 0 30px transparent;
        -moz-transform: translate3d(0, 0, 0);
        -moz-transition: box-shadow .4s ease-in-out
    }
}

@keyframes white-shadow {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, .2);
        -webkit-transition: box-shadow .3s ease-in-out;
        -moz-transition: box-shadow .3s ease-in-out;
        transition: box-shadow .3s ease-in-out
    }
    80% {
        box-shadow: 0 0 0 30px transparent;
        -webkit-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -o-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        -webkit-transition: box-shadow .4s ease-in-out;
        -moz-transition: box-shadow .4s ease-in-out;
        transition: box-shadow .4s ease-in-out
    }
}

.loaded #page-loader.pulsing .loader-circle::after {
    -moz-animation-name: none;
    -webkit-animation-name: none;
    -ms-animation-name: none;
    animation-name: none;
}


/*---------------------------------------------- 

13. PAGINATION

------------------------------------------------*/

#single-pagination,
#page-pagination {
    padding: 50px 50px;
}

[class*='wrapper'] #single-pagination,
[class*='wrapper'] #page-pagination {
    padding: 50px 0;
}

#single-pagination+div[class*='spacer-']:last-child {
    display: none;
}

.pagination {
    list-style: none;
    margin: 0;
    padding: 0;
    text-align: center;
    height: 20px;
}

#single-pagination .pagination {
    height: 22px;
}


/* fix for center vertically */

.pagination::after {
    content: "";
    display: block;
    clear: both;
    visibility: hidden;
    font-size: 0;
    height: 0;
}

.pagination li {
    float: left;
    margin: 0;
    padding: 0;
    display: block;
}

.pagination li.inactive {
    opacity: 0;
    visibility: hidden;
}

.pagination li.next,
.pagination li.prev {
    min-width: 170px;
    max-width: 50%;
}

.pagination li.next {
    float: right;
    text-align: right;
}

.pagination li.back {
    width: 40px;
    float: none;
    display: inline-block;
}

.pagination li a,
.image-pagination li span.next,
.image-pagination li span.prev {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 16px;
    color: #000000;
    height: 22px;
    line-height: 22px;
    display: block;
    transition: all 0.3s ease;
    float: left;
    position: relative;
    text-align: left;
}

.text-light .pagination li a,
.image-pagination li .text-light span.next,
.image-pagination li .text-light span.prev {
    color: #ffffff;
}

.pagination li a:hover {
    color: rgba(0, 0, 0, 0.6);
}

.pagination li.next a,
.image-pagination li span.next {
    float: right;
    text-align: right;
}

.pagination li a[data-title]::after {
    content: attr(data-title);
    font-family: 'Playfair Display';
    font-weight: 300;
    font-size: 20px;
    color: rgba(0, 0, 0, 1);
    height: auto;
    line-height: 28px;
    display: block;
    position: relative;
    left: 23px;
    max-width: 300px;
    transition: all 0.3s ease;
}

.pagination li.next a[data-title]::after {
    left: auto;
    right: 23px;
}

.pagination li a[data-title]:hover::after {
    color: rgba(0, 0, 0, 0.6);
}

.pagination li a[data-title]:not([data-title='']) {
    color: rgba(0, 0, 0, 0.6);
    height: auto;
}

.pagination li.next a .icon,
.pagination li.prev a .icon,
.image-pagination li .next .icon,
.image-pagination li .prev .icon {
    display: block;
    height: 22px;
    min-width: 8px;
    float: left;
    position: relative;
    margin-right: 15px;
}

.pagination li.next a .icon,
.image-pagination li .next .icon {
    float: right;
    margin-left: 15px;
    margin-right: 0;
}

.pagination li.next a .icon::before,
.pagination li.prev a .icon::before,
.image-pagination li .next .icon::before,
.image-pagination li .prev .icon::before {
    content: "";
    width: 6px;
    height: 2px;
    background: #000000;
    display: block;
    position: relative;
    top: calc(50% - 2px);
    margin-left: 2px;
    transition: all 0.3s ease;
    opacity: 0;
}

.pagination li.next a .icon::before,
.image-pagination li .next .icon::before {
    margin-right: 2px;
    margin-left: 0;
    float: right;
}

.pagination li.next a:hover .icon::before,
.pagination li.prev a:hover .icon::before,
.image-pagination li:hover .next .icon::before,
.image-pagination li:hover .prev .icon::before {
    width: 16px;
    opacity: 1;
}

.text-light .pagination li.next a .icon::before,
.text-light .pagination li.prev a .icon::before,
.image-pagination li .text-light .next .icon::before,
.image-pagination li .text-light .prev .icon::before {
    background: #ffffff;
}

.pagination li.next a .icon::after,
.pagination li.prev a .icon::after,
.image-pagination li .next .icon::after,
.image-pagination li .prev .icon::after {
    content: "";
    position: absolute;
    top: calc(50% - 1px);
    left: 2px;
    border-left: 2px solid #000000;
    border-bottom: 2px solid #000000;
    display: block;
    width: 6px;
    height: 6px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.3s ease;
}

.pagination li.next a .icon::after,
.image-pagination li .next .icon::after {
    border: none;
    border-top: 2px solid #000000;
    border-right: 2px solid #000000;
    left: auto;
    right: 2px;
}

.pagination li.next a:hover .icon::after,
.pagination li.prev a:hover .icon::after,
.image-pagination li:hover .next .icon::after,
.image-pagination li:hover .prev .icon::after {
    width: 8px;
    height: 8px;
}

.text-light .pagination li.next a .icon::after,
.text-light .pagination li.prev a .icon::after,
.image-pagination li .text-light .next .icon::after,
.image-pagination li .text-light .prev .icon::after {
    border-color: #ffffff;
}

.pagination li.back a {
    width: 22px;
    height: 22px;
    float: none;
    margin: 0 auto;
    position: relative;
    display: block;
}

.pagination li.back a::after,
.pagination li.back a::before,
.pagination li.back a .icon::after,
.pagination li.back a .icon::before {
    content: "";
    width: 10px;
    height: 10px;
    position: absolute;
    top: 0;
    left: 0;
    background: #000000;
    transition: all 0.3s ease;
}

.pagination li.back a::before {
    top: auto;
    bottom: 0;
}

.pagination li.back a .icon::before {
    left: auto;
    right: 0;
}

.pagination li.back a .icon::after {
    top: auto;
    bottom: 0;
    left: auto;
    right: 0;
}

.pagination li.back a:hover::after,
.pagination li.back a:hover::before,
.pagination li.back a:hover .icon::after,
.pagination li.back a:hover .icon::before {
    background: rgba(0, 0, 0, 0.6);
}


/* pagination with pages */

#page-pagination .pagination li.page {
    display: inline-block;
    float: none;
    margin: 0 !important;
    height: 22px;
    line-height: 22px;
    position: relative;
}

#page-pagination .pagination li.page span,
#page-pagination .pagination li.page a {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 15px;
    color: #000000;
    height: 29px;
    line-height: 30px;
    width: 15px;
    display: block;
    transition: all 0.2s ease;
    float: left;
    position: relative;
    top: -4px;
    left: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    text-align: center;
}

#page-pagination .pagination li.page span.current {
    margin: 0 3px;
    color: rgba(0, 0, 0, 0.6);
}

#page-pagination .pagination li.page a {
    border-color: transparent;
}

#page-pagination .pagination li.page a:hover {
    color: rgba(0, 0, 0, 0.6);
}


/* image pagination */

#single-pagination.image {
    padding: 0;
}

.image-pagination {
    padding: 0;
    margin: 0;
    list-style: none;
    overflow: hidden;
}

.image-pagination li {
    float: left;
    width: 50%;
    margin: 0;
}

.image-pagination li span.next,
.image-pagination li span.prev {
    margin-top: 15px;
    font-family: 'Montserrat';
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 14px;
    float: none;
}

.image-pagination li .overlay-caption {
    padding-top: 20%;
    background: rgba(0, 0, 0, 0.0);
    background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#80000000', GradientType=0);
}


/*---------------------------------------------- 

14. EXTERN PLUGINS (smartscroll,masonry,revolution slider, owl)

------------------------------------------------*/


/* smartscroll */

.smartscroll-container .smart-col {
    width: 50%;
    float: left;
    overflow: hidden;
}

.smartscroll-container .smart-col:last-child {
    margin-right: 0px !important;
}

.smartscroll-container[data-columns="2"] .smart-col {
    width: 50%;
}

.smartscroll-container[data-columns="3"] .smart-col {
    width: 33.33%;
}

.smartscroll-container[data-columns="4"] .smart-col {
    width: 25%;
}

.smartscroll-container[data-columns="5"] .smart-col {
    width: 20%;
}


/* smartscroll spaced */

.smartscroll-container[class*='smartscroll-spaced'] {
    width: calc(100% - 25px);
    margin: 25px 0 25px 25px;
}

.smartscroll-container.smartscroll-spaced-big {
    width: calc(100% - 50px);
    margin: 50px 0 50px 50px;
}

[class*='wrapper'] .smartscroll-container[class*='smartscroll-spaced'] {
    width: calc(100% + 25px);
    margin: 25px 0 25px 0;
}

[class*='wrapper'] .smartscroll-container.smartscroll-spaced-big {
    width: calc(100% + 50px);
    margin: 50px 0 50px 0;
}

.smartscroll-container[class*='smartscroll-spaced'] .smart-col {
    margin-right: 25px;
}

.smartscroll-container.smartscroll-spaced-big .smart-col {
    margin-right: 50px;
}

.smartscroll-container[class*='smartscroll-spaced'][data-columns="2"] .smart-col {
    width: calc(50% - 25px);
}

.smartscroll-container[class*='smartscroll-spaced'][data-columns="3"] .smart-col {
    width: calc(33.33% - 25px);
}

.smartscroll-container[class*='smartscroll-spaced'][data-columns="4"] .smart-col {
    width: calc(25% - 25px);
}

.smartscroll-container[class*='smartscroll-spaced'][data-columns="5"] .smart-col {
    width: calc(20% - 25px);
}

.smartscroll-container.smartscroll-spaced-big[data-columns="2"] .smart-col {
    width: calc(50% - 50px);
}

.smartscroll-container.smartscroll-spaced-big[data-columns="3"] .smart-col {
    width: calc(33.33% - 50px);
}

.smartscroll-container.smartscroll-spaced-big[data-columns="4"] .smart-col {
    width: calc(25% - 50px);
}

.smartscroll-container.smartscroll-spaced-big[data-columns="5"] .smart-col {
    width: calc(20% - 50px);
}

.smartscroll-container[class*='smartscroll-spaced'] .smartscroll-item {
    margin-top: 25px;
}

.smartscroll-container.smartscroll-spaced-big .smartscroll-item {
    margin-top: 50px;
}

.smartscroll-container[class*='smartscroll-spaced'] .smartscroll-item:first-child {
    margin-top: 0px !important;
}


/* masonry / isotope */

.isotope-grid {
    width: 100%;
    overflow: hidden;
    margin-top: 50px;
}

.filter+.isotope-grid {
    margin-top: 35px;
}

div .isotope-grid:first-child {
    margin-top: 0px;
}

[class*='wrapper'] .isotope-grid {
    width: 100%;
}

.isotope-grid[class*='isotope-spaced'] {
    width: calc(100% - 25px);
    left: 25px;
    margin-bottom: -25px;
}

[class*='wrapper'] .isotope-grid[class*='isotope-spaced'] {
    width: calc(100% + 25px);
    left: 0;
}

.isotope-grid[class*='isotope-spaced-big'] {
    width: calc(100% - 50px);
    left: 50px;
    margin-bottom: -50px;
}

[class*='wrapper'] .isotope-grid[class*='isotope-spaced-big'] {
    width: calc(100% + 50px);
}

.isotope-grid .isotope-item {
    margin-right: 0px;
    margin-bottom: 0px;
    float: left;
    overflow: hidden;
    position: relative;
}

.isotope-grid[class*='isotope-spaced'] .isotope-item {
    margin-bottom: 25px;
    margin-right: 25px;
}

.isotope-grid[class*='isotope-spaced-big'] .isotope-item {
    margin-bottom: 50px;
    margin-right: 50px;
}

.isotope-grid .isotope-item {
    width: 25%;
}

.isotope-grid[class*='isotope-spaced'] .isotope-item {
    width: calc(50% - 25px);
}

.isotope-grid[class*='isotope-spaced-big'] .isotope-item {
    width: calc(50% - 50px);
}

.isotope-grid.style-column-2 .isotope-item {
    width: 50%;
}

.isotope-grid.style-column-2 .isotope-item.double-width {
    width: 100%;
}

.isotope-grid.style-column-3 .isotope-item {
    width: 33.33%;
}

.isotope-grid.style-column-3 .isotope-item.double-width {
    width: 66.66%;
}

.isotope-grid.style-column-4 .isotope-item {
    width: 25%;
}

.isotope-grid.style-column-4 .isotope-item.double-width {
    width: 50%;
}

.isotope-grid.style-column-5 .isotope-item {
    width: 20%;
}

.isotope-grid.style-column-5 .isotope-item.double-width {
    width: 40%;
}

.isotope-grid.style-column-2[class*='isotope-spaced'] .isotope-item {
    width: calc(50% - 25px);
}

.isotope-grid.style-column-2[class*='isotope-spaced'] .isotope-item.double-width {
    width: calc(100% - 25px);
}

.isotope-grid.style-column-3[class*='isotope-spaced'] .isotope-item {
    width: calc(33.33% - 25px);
}

.isotope-grid.style-column-3[class*='isotope-spaced'] .isotope-item.double-width {
    width: calc(66.66% - 25px);
}

.isotope-grid.style-column-4[class*='isotope-spaced'] .isotope-item {
    width: calc(25% - 25px);
}

.isotope-grid.style-column-4[class*='isotope-spaced'] .isotope-item.double-width {
    width: calc(50% - 25px);
}

.isotope-grid.style-column-5[class*='isotope-spaced'] .isotope-item {
    width: calc(20% - 25px);
}

.isotope-grid.style-column-5[class*='isotope-spaced'] .isotope-item.double-width {
    width: calc(40% - 25px);
}

.isotope-grid.style-column-2[class*='isotope-spaced-big'] .isotope-item {
    width: calc(50% - 50px);
}

.isotope-grid.style-column-2[class*='isotope-spaced-big'] .isotope-item.double-width {
    width: calc(100% - 50px);
}

.isotope-grid.style-column-3[class*='isotope-spaced-big'] .isotope-item {
    width: calc(33.33% - 50px);
}

.isotope-grid.style-column-3[class*='isotope-spaced-big'] .isotope-item.double-width {
    width: calc(66.66% - 50px);
}

.isotope-grid.style-column-4[class*='isotope-spaced-big'] .isotope-item {
    width: calc(25% - 50px);
}

.isotope-grid.style-column-4[class*='isotope-spaced-big'] .isotope-item.double-width {
    width: calc(50% - 50px);
}

.isotope-grid.style-column-5[class*='isotope-spaced-big'] .isotope-item {
    width: calc(20% - 50px);
}

.isotope-grid.style-column-5[class*='isotope-spaced-big'] .isotope-item.double-width {
    width: calc(40% - 50px);
}

.isotope-grid.style-column-list {
    width: 100% !important;
    left: 0;
    text-align: center;
}

.isotope-grid.style-column-list .isotope-item {
    width: 100%;
    margin-right: 0px;
}

.isotope-grid.style-column-list[class*='isotope-spaced'] a.thumb-hover {
    display: inline-block;
    margin: 0 auto;
    width: auto;
}

.isotope-grid.style-column-list .lazy-wrapper {
    margin: 0 auto;
}


/* lazy load */

.lazy-wrapper {
    width: 100%;
    display: block;
    background: rgba(0, 0, 0, 0.06);
    transition: background 1s ease;
}

.isotope-grid .isotope-item .lazy-wrapper {
    /*display: initial !important;*/
}

.lazy-wrapper.loaded {
    width: auto !important;
    max-width: inherit !important;
    height: auto !important;
    min-height: auto !important;
    display: initial !important;
    background: transparent;
}

.lazy-wrapper .lazy-img {
    opacity: 0;
    transition: opacity 0.6s ease;
    display: block;
}

.lazy-wrapper.loaded .lazy-img {
    opacity: 1;
}


/* mute video for phat background video */

.phatvideo-bg .mute-video {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    bottom: 20px !important;
    left: auto !important;
    right: 20px !important;
}

.phatvideo-bg .mute-video.unmute::after {
    content: "";
    height: 1px;
    width: calc(100% + 4px);
    position: absolute;
    top: calc(50% - 1px);
    left: -2px;
    background: #ffffff;
}


/* revolution slider navigation */

.tparrows.dani-nav,
.tparrows.custom {
    background: none !important;
    width: 30px;
    height: 30px;
    transition: width 0.3s ease, margin 0.3s ease;
}

.tparrows.dani-nav::before,
.tparrows.custom::before {
    content: "" !important;
    width: 24px;
    height: 3px;
    background: #ffffff;
    display: block;
    transition: all 0.2s ease;
    position: absolute;
    top: calc(50% - 1.5px);
    left: 0;
}

.tparrows.dani-nav.dani-dark::before,
.tparrows.custom.dani-dark::before {
    background: #000000;
}

.tp-leftarrow.tparrows.dani-nav::before,
.tp-leftarrow.tparrows.custom::before {
    left: 5px;
}

.tparrows.dani-nav::after,
.tparrows.custom::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;
    display: block;
    width: 12px;
    height: 12px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.2s ease;
}

.tp-leftarrow.tparrows.dani-nav::after,
.tp-leftarrow.tparrows.custom::after {
    border: none;
    border-bottom: 3px solid #ffffff;
    border-left: 3px solid #ffffff;
    left: 5px;
}

.tparrows.dani-nav.dani-dark::after,
.tparrows.custom.dani-dark::after {
    border-color: #000000;
}

.tp-bullets.dani-bullets .tp-bullet,
.tp-bullets.custom .tp-bullet {
    width: 10px;
    height: 10px;
    display: block;
    background: none;
    border-radius: 30px;
}

.tp-bullets.dani-bullets .tp-bullet::before,
.tp-bullets.custom .tp-bullet::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    width: 6px;
    height: 6px;
    background: #ffffff;
    display: block;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    transition: all 0.2s ease;
}

.tp-bullets.dani-bullets.dani-dark .tp-bullet::before,
.tp-bullets.custom.dani-dark .tp-bullet::before {
    background: #000000;
}

.tp-bullets.dani-bullets .tp-bullet.selected::before,
.tp-bullets.custom .tp-bullet.selected::before {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
}


/* Slider caption */

.tp-caption.dani-caption {
    font-family: 'Playfair Display';
    font-weight: 400;
    letter-spacing: -0.02em;
    color: #000000;
}

.tp-caption.dani-caption strong,
.tp-caption.dani-caption b {
    font-weight: 700;
}

.text-light .tp-caption.dani-caption {
    color: #ffffff;
}

.tp-caption.dani-caption.title-alt {
    font-family: 'Montserrat';
    font-weight: 300;
    letter-spacing: 0.01em;
}

.tp-caption.dani-caption.title-alt strong {
    font-weight: 500;
}


/* contact form 7 */

.wpcf7 .wpcf7-form {
    margin-top: 0px;
}

.wpcf7-form>p {
    margin-top: 25px;
}

.wpcf7-form>p:first-child,
.wpcf7-form>div:first-child+p {
    margin: 0;
}

.wpcf7-response-output {
    margin: 25px 0 0 0 !important;
    color: #ffffff !important;
    padding: 15px !important;
    background: #000000;
    border: none !important;
}

.wpcf7-validation-errors {
    background: #ce4a4a !important;
}

.wpcf7-not-valid-tip {
    color: #ce4a4a !important;
    font-weight: 300;
    font-size: 13px !important;
    line-height: 20px !important;
    margin-top: 5px !important;
}


/*---------------------------------------------- 

15. COLUMNS SECTION

------------------------------------------------*/

.column-section {
    margin-top: 50px;
}

div .column-section:first-child {
    margin-top: 0px;
}

.column {
    float: left;
    margin-right: 25px;
    min-height: 1px;
    box-sizing: border-box;
}

.column.push-right {
    float: right;
    margin-right: 0 !important;
}

.col-sticky .column {
    margin: 0 !important;
}

[class*='wrapper'] .column-section .column:first-child {
    margin-left: 0px;
}

.spaced-big .column {
    margin-right: 100px;
}

.one-full {
    width: calc(100% - 50px);
    float: none;
    margin-right: 0;
}

.one-half {
    width: calc(50% - 37.5px);
}

.one-third {
    width: calc(33.33% - 33.33px);
}

.two-third {
    width: calc(66.66% - 41.66px);
}


/* ((25*4)/3) + (25/3) */

.one-fourth {
    width: calc(25% - 31.25px);
}

.two-fourth {
    width: calc(50% - 37.5px);
}

.three-fourth {
    width: calc(75% - 43.75px);
}

.one-fifth {
    width: calc(20% - 30px);
}

.two-fifth {
    width: calc(40% - 35px);
}

.three-fifth {
    width: calc(60% - 40px);
}

.four-fifth {
    width: calc(80% - 45px);
}

.one-sixth {
    width: calc(16.66% - 29.1px);
}

.two-sixth {
    width: calc(33.33% - 33.3px);
}

.three-sixth {
    width: calc(50% - 37.4px);
}

.four-sixth {
    width: calc(66.66% - 41.6px);
}

.five-sixth {
    width: calc(83.33% - 45.7px);
}

[class*='wrapper'] .one-full {
    width: 100%;
    float: none;
    margin-right: 0;
}

[class*='wrapper'] .one-half {
    width: calc(50% - 12.5px);
}

[class*='wrapper'] .one-third {
    width: calc(33.33% - 16.66px);
}

[class*='wrapper'] .two-third {
    width: calc(66.6% - 8.33px);
}


/* ((25*2)/3) - (25/3) */

[class*='wrapper'] .one-fourth {
    width: calc(25% - 18.75px);
}

[class*='wrapper'] .two-fourth {
    width: calc(50% - 12.5px);
}

[class*='wrapper'] .three-fourth {
    width: calc(75% - 6.25px);
}

[class*='wrapper'] .one-fifth {
    width: calc(20% - 20px);
}

[class*='wrapper'] .two-fifth {
    width: calc(40% - 15px);
}

[class*='wrapper'] .three-fifth {
    width: calc(60% - 10px);
}

[class*='wrapper'] .four-fifth {
    width: calc(80% - 5px);
}

[class*='wrapper'] .one-fifth {
    width: calc(16.66% - 20.8px);
}

[class*='wrapper'] .two-fifth {
    width: calc(33.33% - 16.7px);
}

[class*='wrapper'] .three-fifth {
    width: calc(50% - 12.5px);
}

[class*='wrapper'] .four-fifth {
    width: calc(66.66% - 8.4px);
}

[class*='wrapper'] .five-fifth {
    width: calc(83.33% - 4.2px);
}

[class*='wrapper'] .spaced-big .one-half {
    width: calc(50% - 50px);
}

[class*='wrapper'] .spaced-big .one-third {
    width: calc(33.33% - 66.66px);
}

[class*='wrapper'] .spaced-big .two-third {
    width: calc(66.6% - 25px);
    margin-right: 75px;
}


/* ((75*2)/3) - (75/3) */

[class*='wrapper'] .spaced-big .one-fourth {
    width: calc(25% - 37.5px);
    margin-right: 75px;
}


/* ((75*2)/3) - (75/3) */

.col-sticky .one-full {
    width: 100%;
}

.col-sticky .one-half {
    width: 50%;
}

.col-sticky .one-third {
    width: 33.33%;
}

.col-sticky .two-third {
    width: 66.66%;
}

.col-sticky .one-fourth {
    width: 25%;
}

.col-sticky .two-fourth {
    width: 50%;
}

.col-sticky .three-fourth {
    width: 75%;
}

.col-sticky .one-fifth {
    width: 20%;
}

.col-sticky .two-fifth {
    width: 40%;
}

.col-sticky .three-fifth {
    width: 60%;
}

.col-sticky .four-fifth {
    width: 80%;
}

.col-sticky .one-sixth {
    width: 16.66%;
}

.col-sticky .two-sixth {
    width: 33.33%;
}

.col-sticky .three-sixth {
    width: 50%;
}

.col-sticky .four-sixth {
    width: 66.66%;
}

.col-sticky .five-sixth {
    width: 83.33%;
}

.last-col {
    margin-right: 0px !important;
}


/*---------------------------------------------- 

16. FULLWIDTH SECTION

------------------------------------------------*/

.fullwidth-section .fullwidth-content {
    padding: 100px 0;
}

.fullwidth-section.notoppadding .fullwidth-content {
    padding-top: 0;
}

.fullwidth-section.nobottompadding .fullwidth-content {
    padding-bottom: 0;
}


/*---------------------------------------------- 

17. THUMB OVERLAY EFFECT

------------------------------------------------*/

.thumb-hover {
    overflow: hidden;
    height: auto;
    display: block;
    width: 100%;
    max-width: 100%;
    position: relative;
    margin: 0;
    padding: 0;
}


/* overlay caption */

.thumb-hover .overlay-caption {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    padding: 2rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 2;
}

.thumb-hover .overlay-caption:not(.align-left):not(.align-right) {
    text-align: center;
}

.thumb-hover .overlay-caption.bottom {
    top: inherit;
    bottom: 0;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.thumb-hover .overlay-caption.top {
    top: 0;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.thumb-hover .overlay-caption .caption-sub+h1.caption-name,
.thumb-hover .overlay-caption h1.caption-name+.caption-sub {
    margin-top: 8px;
}

.thumb-hover .overlay-caption .caption-sub+h2.caption-name,
.thumb-hover .overlay-caption h2.caption-name+.caption-sub {
    margin-top: 7px;
}

.thumb-hover .overlay-caption .caption-sub+h3.caption-name,
.thumb-hover .overlay-caption h3.caption-name+.caption-sub {
    margin-top: 4px;
}

.thumb-hover .overlay-caption.hidden {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: opacity 0.3s ease;
}

.thumb-hover:hover .overlay-caption.hidden {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.thumb-hover .overlay-caption.hidden .caption-sub,
.thumb-hover .overlay-caption.hidden .caption-name {
    display: block;
    -webkit-transform: translateY(-20px);
    -moz-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.3s ease 0.1s;
}

.thumb-hover .overlay-caption.align-left.hidden .caption-sub,
.thumb-hover .overlay-caption.align-left.hidden .caption-name {
    -webkit-transform: translateX(-20px);
    -moz-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
}

.thumb-hover .overlay-caption.align-right.hidden .caption-sub,
.thumb-hover .overlay-caption.align-right.hidden .caption-name {
    -webkit-transform: translateX(20px);
    -moz-transform: translateX(20px);
    -ms-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
}

.thumb-hover .overlay-caption.hidden .caption-name {
    transition-delay: 0.2s;
}

.thumb-hover:hover .overlay-caption.hidden .caption-sub,
.thumb-hover:hover .overlay-caption.hidden .caption-name {
    -webkit-transform: translateX(0px) translateY(0px);
    -moz-transform: translateX(0px) translateY(0px);
    -ms-transform: translateX(0px) translateY(0px);
    -o-transform: translateX(0px) translateY(0px);
    transform: translateX(0px) translateY(0px);
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.caption-dark .caption-sub,
.caption-dark .caption-name {
    color: #000000;
    transition: color 0.41s ease;
}

.caption-light .caption-sub,
.caption-light .caption-name {
    color: #ffffff;
    transition: color 0.41s ease;
}


/* thumb arrow */

.thumb-hover .thumb-arrow {
    display: block;
    width: 0px;
    height: 3px;
    background: #000000;
    position: absolute;
    left: calc(100% - 2rem - 27px);
    bottom: calc(2rem + 9px);
    transition: all 0.2s ease 0.2s;
    visibility: hidden;
    z-index: 2;
}

.thumb-hover:hover .thumb-arrow {
    width: 24px;
    transition-delay: 0.1s;
    visibility: visible;
}

.thumb-hover .overlay-caption.bottom+.thumb-arrow {
    top: calc(2rem + 9px);
    bottom: auto;
}

.thumb-hover .overlay-caption.align-left+.thumb-arrow {
    left: 2rem;
}

.thumb-hover.text-light .thumb-arrow {
    background: #ffffff;
}

.thumb-hover .thumb-arrow::after {
    content: "";
    position: absolute;
    top: 1.5px;
    right: 0;
    border-right: 1px solid #000000;
    border-top: 1px solid #000000;
    display: block;
    width: 0;
    height: 0;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.25s ease;
}

.thumb-hover:hover .thumb-arrow::after {
    width: 12px;
    height: 12px;
    border-width: 3px;
    transition-delay: 0.2s;
}

.thumb-hover.text-light .thumb-arrow::after {
    border-color: #ffffff;
}


/* social widget for thumb hover */

.thumb-hover .socialmedia-widget {
    position: absolute;
    left: calc(100% - 2rem);
    bottom: 2rem;
    opacity: 0;
    z-index: 2;
    transition: all 0.4s ease;
    margin: 0;
}

.thumb-hover:hover .socialmedia-widget {
    transition-delay: 0.2s;
    opacity: 1;
}

.thumb-hover .overlay-caption.bottom+.socialmedia-widget {
    top: 2rem;
    bottom: auto;
}

.thumb-hover .overlay-caption.align-left+.socialmedia-widget {
    left: 2rem;
}


/* img effect */

.thumb-hover img {
    -webkit-transition: all 0.6s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition: all 0.6s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition: all 0.6s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition: all 0.6s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
}

.thumb-hover:not(.play-on-hover):hover img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
}


/* overlay effect */

.thumb-hover.overlay-effect::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #ffffff;
    z-index: 1;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: opacity 0.4s ease;
}

.thumb-hover.overlay-effect.text-light::before {
    background: #000000;
}

.thumb-hover.overlay-effect:hover::before {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.thumb-hover.text-light.overlay-effect:hover::before {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.thumb-hover.overlay-effect:hover .caption-sub,
.thumb-hover.overlay-effect:hover .caption-name {
    color: #000000;
}

.thumb-hover.text-light.overlay-effect:hover .caption-sub,
.thumb-hover.text-light.overlay-effect:hover .caption-name {
    color: #ffffff;
}


/* video hover */

.thumb-hover.play-on-hover:hover img {
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}


/*---------------------------------------------- 

18. ANIMATIONS (portfolio, hero, text, ...)

------------------------------------------------*/


/* portfolio + hero animation */

.portfolio-container.portfolio-animation .portfolio-item .item-inner,
#hero.hero-animation {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: transform 1s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition: transform 1s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition: transform 1s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition: transform 1s cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    -o-transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
    transition-timing-function: cubic-bezier(0.600, 0.000, 0.200, 1.000);
}

.isotope-grid.portfolio-container.portfolio-animation .portfolio-item .item-inner {
    transition-duration: 0.8s;
}

.portfolio-container.portfolio-animation .portfolio-item.animated .item-inner,
#hero.hero-animation.animated {
    -webkit-transform: translateX(0%);
    -moz-transform: translateX(0%);
    -ms-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
}


/* text animation */

.text-animation .line-animation {
    display: block;
    overflow: hidden;
}

.text-animation .line-animation>span {
    display: block;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
    -webkit-transition: transform 0.8s cubic-bezier(0.600, 0.040, 0.170, 0.980);
    -moz-transition: transform 0.8s cubic-bezier(0.600, 0.040, 0.170, 0.980);
    -o-transition: transform 0.8s cubic-bezier(0.600, 0.040, 0.170, 0.980);
    transition: transform 0.8s cubic-bezier(0.600, 0.040, 0.170, 0.980);
    -webkit-transition-timing-function: cubic-bezier(0.600, 0.040, 0.170, 0.980);
    -moz-transition-timing-function: cubic-bezier(0.600, 0.040, 0.170, 0.980);
    -o-transition-timing-function: cubic-bezier(0.600, 0.040, 0.170, 0.980);
    transition-timing-function: cubic-bezier(0.600, 0.040, 0.170, 0.980);
}

.text-animation .line-animation:nth-child(2n)>span {
    transition-delay: 0.06s;
}

.text-animation .line-animation:nth-child(3n)>span {
    transition-delay: 0.12s;
}

.text-animation .line-animation:nth-child(4n)>span {
    transition-delay: 0.18s;
}

.portfolio-item .text-animation .line-animation>span,
.hero-animation .text-animation .line-animation>span {
    transition-delay: 0.8s !important;
}

.portfolio-item .text-animation .line-animation:nth-child(2n)>span,
.hero-animation .text-animation .line-animation:nth-child(2n)>span {
    transition-delay: 0.86s !important;
}

.portfolio-item .text-animation .line-animation:nth-child(3n)>span,
.hero-animation .text-animation .line-animation:nth-child(3n)>span {
    transition-delay: 0.92s !important;
}

.text-animation.animated .line-animation>span,
.animated .text-animation .line-animation>span {
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}


/* general animation */

[class*='do-anim'] {
    transition: all 0.6s ease;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(50px);
    -moz-transform: translateY(50px);
    -ms-transform: translateY(50px);
    -o-transform: translateY(50px);
    transform: translateY(50px);
}

.animated[class*='do-anim'] {
    -webkit-transform: translate(0);
    -moz-transform: translate(0);
    -ms-transform: translate(0);
    -o-transform: translate(0);
    transform: translateY();
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}


/*---------------------------------------------- 

19. ELEMENTS

------------------------------------------------*/


/*	Buttons
-------------------------------------------------*/

.sr-button {
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 13px;
    line-height: 21px;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-align: center;
    border: 2px solid rgba(0, 0, 0, 0.12);
    color: #000000 !important;
    display: inline-block;
    padding: 10px 40px;
    transition: all 0.2s ease;
    max-width: 100%;
    margin: 2px 0 3px 0;
}

.text-light .sr-button {
    border-color: rgba(255, 255, 255, 0.26);
    color: #ffffff !important;
}

.sr-button:hover {
    border-color: rgba(0, 0, 0, 0.3);
}

.text-light .sr-button:hover {
    border-color: rgba(255, 255, 255, 0.5);
}

.sr-button.button-mini {
    font-size: 9px;
    line-height: 16px;
    padding: 4px 20px;
}

.sr-button.button-small {
    font-size: 11px;
    line-height: 19px;
    padding: 7px 30px;
}

.sr-button.button-medium {
    font-size: 13px;
    line-height: 21px;
    padding: 10px 40px;
}

.sr-button.button-big {
    font-size: 16px;
    line-height: 24px;
    padding: 14px 50px;
}

.sr-button.style-2 {
    border: none;
    background: #000000;
    color: #ffffff !important;
}

.sr-button.style-2:hover {
    background: rgba(0, 0, 0, 0.7);
}

.text-light .sr-button.style-2 {
    background: #ffffff;
    color: #000000 !important;
}

.text-light .sr-button.style-2:hover {
    background: rgba(255, 255, 255, 0.7);
}

.sr-button.style-3 {
    border: none;
    background: rgba(0, 0, 0, 0.06);
}

.sr-button.style-3:hover {
    background: rgba(0, 0, 0, 0.15);
}

.text-light .sr-button.style-3 {
    background: rgba(255, 255, 255, 0.24);
}

.text-light .sr-button.style-3:hover {
    background: rgba(255, 255, 255, 0.40);
}


/* with arrow button */

.sr-button-with-arrow {
    position: relative;
    display: inline-block;
    padding-left: 25px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
}

.text-light .sr-button-with-arrow {
    border-color: rgba(255, 255, 255, 0.18);
}

.sr-button-with-arrow::before {
    content: "";
    width: 14px;
    height: 2px;
    background: #000000;
    display: block;
    transition: all 0.2s ease 0.2s;
    position: absolute;
    top: calc(50% - 1px);
    left: 0;
}

.text-light .sr-button-with-arrow::before {
    background: #ffffff;
}

.sr-button-with-arrow::after {
    content: "";
    position: absolute;
    top: calc(50% - 0px);
    left: 5px;
    border-top: 2px solid #000000;
    border-right: 2px solid #000000;
    display: block;
    width: 6px;
    height: 6px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    transition: all 0.3s ease;
}

.text-light .sr-button-with-arrow::after {
    border-color: #ffffff;
}


/* icon button */

.sr-button-icon {
    display: inline-block;
    font-size: 16px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    border: 2px solid rgba(0, 0, 0, 0.5);
    -moz-border-radius: 50px;
    -khtml-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    transition: all 0.3s ease;
    position: relative;
}

.sr-button-icon:hover {
    border-color: #000000;
    color: #000000;
}

.text-light .sr-button-icon {
    border-color: rgba(255, 255, 255, 0.5);
}

.text-light .sr-button-icon:hover {
    border-color: #ffffff;
    color: #ffffff;
}

.sr-button-icon.button-mini {
    font-size: 10px;
    width: 30px;
    height: 30px;
    line-height: 30px;
}

.sr-button-icon.button-small {
    font-size: 13px;
    width: 45px;
    height: 45px;
    line-height: 45px;
}

.sr-button-icon.button-medium {
    font-size: 16px;
    width: 60px;
    height: 60px;
    line-height: 60px;
}

.sr-button-icon.button-big {
    font-size: 20px;
    width: 80px;
    height: 80px;
    line-height: 80px;
}

.sr-button-icon i {
    color: #000000;
}

.text-light .sr-button-icon i {
    color: #ffffff;
}

.sr-button-icon.style-2 {
    border: none;
    background: #000000;
    color: #ffffff !important;
}

.sr-button-icon.style-2 i {
    color: #ffffff !important;
}

.sr-button-icon.style-2:hover {
    background: rgba(0, 0, 0, 0.8);
}

.text-light .sr-button-icon.style-2 {
    background: #ffffff;
    color: #000000 !important;
}

.text-light .sr-button-icon.style-2 i {
    color: #000000 !important;
}

.text-light .sr-button-icon.style-2:hover {
    background: rgba(255, 255, 255, 0.8);
}

.sr-button-icon.style-3 {
    border: none;
    background: rgba(0, 0, 0, 0.06);
}

.sr-button-icon.style-3:hover {
    background: rgba(0, 0, 0, 0.15);
}

.text-light .sr-button-icon.style-3 {
    background: rgba(255, 255, 255, 0.24);
}

.text-light .sr-button-icon.style-3:hover {
    background: rgba(255, 255, 255, 0.40);
}

.sr-button-icon i.fa {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.sr-button-icon i.fa-play {
    margin-left: 3%;
}


/*	separator (hr)
-------------------------------------------------*/

hr {
    border: none;
    background: rgba(0, 0, 0, 0.12);
    height: 1px;
    width: 100%;
    margin: 0;
    margin-left: 0;
}

.text-light hr {
    background: rgba(255, 255, 255, 0.18);
}

.align-center hr,
hr.align-center {
    margin-left: auto;
    margin-right: auto;
}

.align-right hr,
hr.align-right {
    margin-left: auto;
    margin-right: 0;
}

hr.mini {
    width: 25px;
}

hr.small {
    width: 50px;
}

hr.medium {
    width: 100px;
}

hr.big {
    width: 200px;
}


/*	spacer
-------------------------------------------------*/

div[class*='spacer-'] {
    display: block;
}

.spacer-mini {
    height: 15px;
}

.spacer-small {
    height: 25px;
}

.spacer-medium {
    height: 50px;
}

.spacer-big {
    height: 100px;
}

div[class*='spacer-']+p,
div[class*='spacer-']+div,
cdiv[class*='spacer-']+blockquote,
div[class*='spacer-']+ul,
div[class*='spacer-']+h1,
div[class*='spacer-']+h2,
div[class*='spacer-']+h3,
div[class*='spacer-']+h4,
div[class*='spacer-']+h5,
div[class*='spacer-']+h6 {
    margin-top: 0px !important;
}


/*	sr-vertical-gallery
-------------------------------------------------*/

.sr-vertical-gallery {
    margin: 0;
    list-style: none;
    padding: 0;
}

.sr-vertical-gallery li {
    margin: 0;
    padding: 0;
    display: block;
    text-align: center;
}

.sr-vertical-gallery li a.thumb-hover {
    display: inline-block !important;
    margin: 0 auto;
    width: auto;
}

.sr-vertical-gallery li .lazy-wrapper {
    margin: 0 auto;
}

.sr-vertical-gallery.gallery-spaced li {
    margin: 25px 0 0 0;
}

.sr-vertical-gallery.gallery-spaced li:first-child {
    margin: 0;
}


/*	Inline Video
-------------------------------------------------*/

.inline-video {
    position: relative;
    cursor: pointer;
    display: inline-block;
    max-width: 100%;
}

.slider-item.inline-video,
.parallax-section.inline-video {
    display: inherit;
}

.inline-video::before {
    content: "\f488";
    font-family: "Ionicons";
    color: #ffffff;
    font-size: 30px;
    width: 55px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    padding-left: 5px;
    border: 2px solid rgba(255, 255, 255, 0.5);
    -moz-border-radius: 50px;
    -khtml-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    transition: all 0.3s ease;
}

.inline-video:hover::before {
    border-color: #ffffff;
}

.inline-video .inline-iframe-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.inline-video .inline-iframe-container .close-inline-video {
    color: #ffffff;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    position: absolute;
    top: 20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    border: 2px solid rgba(255, 255, 255, .5);
    -moz-border-radius: 50px;
    -khtml-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    transition: all 0.3s ease;
}

.inline-video .inline-iframe-container .close-inline-video:hover {
    border-color: #ffffff;
}

.inline-video.active .inline-iframe-container:hover .close-inline-video {
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.inline-video .inline-iframe-container .close-inline-video::before {
    content: "\f12a";
    font-family: "Ionicons";
    font-size: 15px;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    left: 0;
}


/*	team member
-------------------------------------------------*/

.team-role {
    font-family: 'Montserrat';
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
}

.team-role+.team-name {
    margin: 0;
}

.text-light .team-role {
    color: #ffffff;
}

.team-infos {
    margin-top: 25px;
}

div .team-infos:first-child {
    margin: 0;
}


/*	Tabs
------------------------------------------------*/

.tabs {
    margin-top: 25px;
}

div .tabs:first-child {
    margin-top: 0px;
}

.tabs ul.tab-nav {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative;
    overflow: hidden;
}

.tabs ul.tab-nav li {
    display: inline-block;
    margin: 0 20px 0 0;
    position: relative;
    padding-bottom: 5px;
}

.tabs ul.tab-nav li::after {
    content: "";
    width: 100%;
    height: 1px;
    background: rgba(0, 0, 0, 0.12);
    position: absolute;
    bottom: 5px;
    left: 0;
    opacity: 0;
    filter: alpha(opacity=0);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: 0;
}

.text-light .tabs ul.tab-nav li::after {
    background: rgba(255, 255, 255, 0.24);
}

.tabs ul.tab-nav li.active::after {
    bottom: 0px;
    opacity: 1;
    filter: alpha(opacity=100);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.tabs ul.tab-nav li.active a {
    color: rgba(0, 0, 0, 0.6);
}

.tabs .tab-container {
    margin-top: 25px;
}

.tabs .tab-container .tab-content.active {
    display: block !important;
}


/* tabs button */

.tabs-button ul.tab-nav li {
    background: rgba(0, 0, 0, 0.06);
    padding: 10px 25px;
    margin: 0 1px 1px 0;
    float: left;
}

.tabs-button ul.tab-nav li::after {
    transition: none;
    bottom: -1px !important;
    background: rgba(0, 0, 0, 0.06) !important;
}

.tabs-button .tab-container {
    margin-top: 0px;
    background: rgba(0, 0, 0, 0.06);
    padding: 25px;
}


/*	Toggle
------------------------------------------------*/

.toggle-item,
.accordion {
    margin-top: 25px;
}

.toggle-item+.toggle-item {
    margin-top: 1px;
}

div .toggle-item:first-child,
div .accordion:first-child {
    margin: 0;
}

.toggle-title {
    position: relative;
    cursor: pointer;
    background: rgba(0, 0, 0, 0.06);
    padding: 10px 25px 10px 50px;
}

.toggle-title:hover .toggle-name {
    color: rgba(0, 0, 0, 0.6);
}

.toggle-title::after {
    content: "\f218";
    font-family: "Ionicons";
    font-size: 12px;
    line-height: 20px;
    color: #1a1a1a;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    left: 25px;
    margin-top: -10px;
    text-align: left;
}

.text-light .toggle-title::after {
    color: #ffffff;
}

.toggle-title.toggle-active::after {
    content: "\f209";
}

.toggle-inner {
    background: rgba(0, 0, 0, 0.06);
    padding: 10px 25px 25px 25px;
}


/*	alert
-------------------------------------------------*/

div[class*='alert-'] {
    background: #000000;
    color: #ffffff;
    padding: 25px;
    margin-top: 25px;
}

div div[class*='alert-']:first-child {
    margin: 0;
}

div[class*='alert-'] .alert-title {
    color: #ffffff;
}

div[class*='alert-'] .alert-title+p {
    margin-top: 5px;
}

div.alert-info {
    background: #6da3cd;
}

div.alert-error {
    background: #ce4a4a;
}

div.alert-confirm {
    background: #a8ce77;
}


/*---------------------------------------------- 

20. WIDGETS

------------------------------------------------*/


/* General Widgets
-------------------------------- */

.widget {
    margin-top: 50px;
    height: auto;
}

div .widget:first-child {
    margin-top: 0px;
}

.widget-title+div,
.widget-title+ul,
.widget-title+p,
.widget-title+ol {
    margin-top: 15px;
}


/* Menu Widget
-------------------------------- */

.widget ul:not(.socialmedia-widget) {
    list-style: none;
    padding: 0;
    margin-left: 0;
}

.widget ul:not(.socialmedia-widget) li a {
    font-weight: 400;
    display: block;
    letter-spacing: 0.02em;
    transition: color 0.15s ease;
}

.widget ul:not(.socialmedia-widget) ul.sub-menu {
    margin: 0;
    padding: 0 0 0 10px;
}

.widget ul:not(.socialmedia-widget) ul.sub-menu li a {
    font-size: 14px;
    line-height: 18px;
}


/* Categorie Widget
-------------------------------- */

.widget_categories ul li a {
    display: inline-block !important;
}


/* Social Media Widget
-------------------------------- */

.socialmedia-widget {
    margin: 15px 0 0 0;
    padding: 0;
    list-style: none;
}

div .socialmedia-widget:first-child {
    margin: 0;
}

.socialmedia-widget li {
    display: inline-block;
    margin: 0;
    position: relative;
}

.socialmedia-widget li a {
    line-height: 20px;
    color: #000000;
    /*transition: all 0.2s ease;*/
    display: block;
    text-align: center;
    padding: 0 6px 0 6px;
}

.socialmedia-widget li:first-child a {
    padding-left: 0px;
}

.socialmedia-widget li:last-child a {
    padding-right: 0px;
}

.text-light:not(.transparent) .socialmedia-widget li a {
    color: #ffffff;
}

header.text-light:not(.hero-invisible) #header-widget .socialmedia-widget li a {
    color: #ffffff;
}

header.text-light.transparent.menu-is-open[class*='menu-full'] #header-widget .socialmedia-widget li a {
    color: #000000;
}

.socialmedia-widget li a::before {
    display: block;
    transition: all 0.15s ease;
    font-family: FontAwesome;
    font-size: 16px;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.socialmedia-widget li.facebook a::before {
    content: "\f09a";
}

.socialmedia-widget li.twitter a::before {
    content: "\f099"
}

.socialmedia-widget li.tumblr a::before {
    content: "\f173";
}

.socialmedia-widget li.vimeo a::before {
    content: "\f194";
}

.socialmedia-widget li.dribbble a::before {
    content: "\f17d";
}

.socialmedia-widget li.deviantart a::before {
    content: "\f1bd";
}

.socialmedia-widget li.behance a::before {
    content: "\f1b4";
}

.socialmedia-widget li.flickr a::before {
    content: "\f16e";
}

.socialmedia-widget li.linkedin a::before {
    content: "\f0e1";
}

.socialmedia-widget li.rss a::before {
    content: "\f09e";
}

.socialmedia-widget li.googleplus a::before {
    content: "\f0d5";
}

.socialmedia-widget li.pinterest a::before {
    content: "\f0d2";
}

.socialmedia-widget li.youtube a::before {
    content: "\f167";
}

.socialmedia-widget li.mail a::before {
    content: "\f1fa";
}

.socialmedia-widget li.instagram a::before {
    content: "\f16d";
}

.socialmedia-widget li.xing a::before {
    content: "\f168";
}

.socialmedia-widget li.dropbox a::before {
    content: "\f16b";
}

.socialmedia-widget li.stumbleupon a::before {
    content: "\f1a4";
}

.socialmedia-widget li.delicious a::before {
    content: "\f1a5";
}

.socialmedia-widget li.wordpress a::before {
    content: "\f19a";
}

.socialmedia-widget li.vk a::before {
    content: "\f189";
}

.socialmedia-widget li.soundcloud a::before {
    content: "\f1be";
}

.socialmedia-widget li.spotify a::before {
    content: "\f1bc";
}

.socialmedia-widget li.codepen a::before {
    content: "\f1cb";
}

.socialmedia-widget li.github a::before {
    content: "\f09b";
}

.socialmedia-widget li.lastfm a::before {
    content: "\f202";
}

.socialmedia-widget li.jsfiddle a::before {
    content: "\f1cc";
}

.socialmedia-widget li.mixcloud a::before {
    content: "\f289";
}

.socialmedia-widget li.skype a::before {
    content: "\f17e";
}

.socialmedia-widget li.url a::before {
    content: "\f0ac";
}

.socialmedia-widget li.facebook a:hover {
    color: #446ebf !important;
}

.socialmedia-widget li.twitter a:hover {
    color: #39aadc !important;
}

.socialmedia-widget li.tumblr a:hover {
    color: #4c6781 !important;
}

.socialmedia-widget li.vimeo a:hover {
    color: #15c9f5 !important;
}

.socialmedia-widget li.dribbble a:hover {
    color: #f14980 !important;
}

.socialmedia-widget li.deviantart a:hover {
    color: #2ea06f !important;
}

.socialmedia-widget li.behance a:hover {
    color: #00b0f0 !important;
}

.socialmedia-widget li.flickr a:hover {
    color: #f04783 !important;
}

.socialmedia-widget li.linkedin a:hover {
    color: #81d3fd !important;
}

.socialmedia-widget li.rss a:hover {
    color: #ff8322 !important;
}

.socialmedia-widget li.googleplus a:hover {
    color: #d63d1e !important;
}

.socialmedia-widget li.pinterest a:hover {
    color: #c81e1e !important;
}

.socialmedia-widget li.youtube a:hover {
    color: #ee423d !important;
}

.socialmedia-widget li.mail a:hover {
    color: #74624d !important;
}

.socialmedia-widget li.instagram a:hover {
    color: #95604b !important;
}

.socialmedia-widget li.xing a:hover {
    color: #036567 !important;
}

.socialmedia-widget li.dropbox a:hover {
    color: #008cd2 !important;
}

.socialmedia-widget li.stumbleupon a:hover {
    color: #f94213 !important;
}

.socialmedia-widget li.delicious a:hover {
    color: #1b59c3 !important;
}

.socialmedia-widget li.wordpress a:hover {
    color: #118bc0 !important;
}

.socialmedia-widget li.vk a:hover {
    color: #29577b !important;
}

.socialmedia-widget li.soundcloud a:hover {
    color: #ff7700 !important;
}

.socialmedia-widget li.spotify a:hover {
    color: #80b900 !important;
}

.socialmedia-widget li.codepen a:hover {
    color: #171515 !important;
}

.socialmedia-widget li.github a:hover {
    color: #171515 !important;
}

.socialmedia-widget li.lastfm a:hover {
    color: #f94f14 !important;
}

.socialmedia-widget li.jsfiddle a:hover {
    color: #0c9de8 !important;
}

.socialmedia-widget li.mixcloud a:hover {
    color: #29587c !important;
}

.socialmedia-widget li.skype a:hover {
    color: #00aef3 !important;
}

.socialmedia-widget li.url a:hover {
    color: #579abc !important;
}

.socialmedia-widget.text-style.list li {
    display: block;
    padding-bottom: 8px;
}

.socialmedia-widget.text-style.list li a {
    text-align: inherit;
    padding: 0;
}

.socialmedia-widget.text-style li a {
    font-size: 14px;
    font-weight: 400;
    color: #000000;
    padding: 0 8px 2px 8px;
}

.socialmedia-widget.text-style li:first-child a {
    padding-left: 0px;
}

.socialmedia-widget.text-style li:last-child a {
    padding-right: 0px;
}

.socialmedia-widget.text-style li a::before {
    display: none;
}

.socialmedia-widget.text-style li a::after {
    content: "";
    width: calc(100% - 16px);
    height: 1px;
    position: absolute;
    bottom: 5px;
    left: 8px;
    background: rgba(0, 0, 0, 0);
    transition: all 0.3s ease;
}

.socialmedia-widget.text-style li:first-child a::after {
    width: calc(100% - 8px);
    left: 0;
}

.socialmedia-widget.text-style li:last-child a::after {
    width: calc(100% - 8px);
}

.socialmedia-widget.text-style li a:hover::after {
    bottom: 0px;
    background: rgba(0, 0, 0, 0.12);
}


/* Search Widget
-------------------------------- */

.widget_search form.searchform {
    position: relative;
    margin-top: 15px;
}

.widget_search form.searchform:first-child {
    margin: 0;
}

.widget_search form.searchform input[type=submit] {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    padding: 0;
    height: 40px;
    opacity: 0;
    z-index: 2;
}

.widget_search form.searchform::before {
    content: "";
    width: 14px;
    height: 2px;
    background: #000000;
    display: block;
    position: absolute;
    bottom: 20px;
    right: 13px;
    z-index: 1;
}

.text-light:not(.transparent) .widget_search form.searchform::before {
    background: #ffffff;
}

.widget_search form.searchform::after {
    content: "";
    position: absolute;
    bottom: 13px;
    right: 13px;
    border-top: 2px solid #000000;
    border-right: 2px solid #000000;
    display: block;
    width: 6px;
    height: 6px;
    -webkit-transform: translateY(-50%) rotate(45deg);
    -moz-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    -o-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
    z-index: 1;
}

.text-light:not(.transparent) .widget_search form.searchform::after {
    border-color: #ffffff;
}


/* Tag Cloud 
------------------------------------------------*/

.widget_tag_cloud a {
    background: rgba(0, 0, 0, 0.06);
    display: inline-block;
    color: #000000;
    font-size: 13px !important;
    font-weight: 400;
    line-height: 19px;
    padding: 4px 7px;
    margin: 0 3px 5px 0;
}

.widget_tag_cloud a:hover {
    background: rgba(0, 0, 0, 0.12);
}


/*	Recent Posts
------------------------------------------------*/

.widget_recent_entries li {
    margin-top: 15px;
}

.widget_recent_entries li a {
    font-family: 'Playfair Display';
    font-weight: 400;
    letter-spacing: 0;
}

.widget_recent_entries li span.post-date {
    font-size: 14px;
    line-height: 18px;
    text-transform: none;
    letter-spacing: normal;
    margin-top: 4px;
    display: block;
    color: rgba(0, 0, 0, 0.6);
}

.text-light:not(.transparent) .widget_recent_entries li span.post-date {
    color: rgba(255, 255, 255, 0.7);
}


/*	Recent Comments
------------------------------------------------*/

.widget_recent_comments li {
    margin-top: 15px;
    font-size: 14px;
    line-height: 18px;
    color: rgba(0, 0, 0, 0.6);
}

.text-light:not(.transparent) .widget_recent_comments li {
    color: rgba(255, 255, 255, 0.7);
}

.widget_recent_comments li a {
    display: inline-block;
    font-size: 16px;
    line-height: 22px;
}

.widget_recent_comments li span.comment-author-link a {
    font-family: 'Playfair Display';
    font-weight: 400;
    font-size: 14px;
    line-height: 18px;
}

.widget_recent_comments li span {
    color: #000000;
}


/*	Archive Widget
------------------------------------------------*/

.widget_archive ul li a {
    display: inline-block !important;
}


/*	Dribbble Widget
------------------------------------------------*/

.dribbble-widget {
    width: calc(100% + 10px);
    margin-bottom: -10px;
}

.dribbble-widget>div {
    width: calc(25% - 10px);
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 10px;
}

.dribbble-widget.col-3>div {
    width: calc(33.33% - 10px);
}

.dribbble-widget>div a {
    transition: opacity 0.2s ease;
}

.dribbble-widget>div a:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.dribbble-widget>div img {
    width: 100%;
}


/*---------------------------------------------- 

21. CUSTOM STYLE

------------------------------------------------*/


/* 	Depending on your logo height you want to use, please adapt the values below */

header #logo {
    height: 30px;
}

header.menu-open nav#main-nav ul>li>a {
    height: 30px;
    line-height: 30px;
}

header .menu-toggle {
    height: calc(50px + 30px);
}

header.wrapper:not(.small-header) .menu-toggle {
    height: calc(100px + 30px);
}

header:not(.transparent)+#hero,
header:not(.transparent)+#page-body {
    margin-top: calc(50px + 30px);
}

header.wrapper:not(.transparent)+#hero,
header.wrapper:not(.transparent)+#page-body {
    margin-top: calc(100px + 30px);
}

header:not(.transparent)+#hero.hero-full {
    min-height: calc(100vh - 50px - 30px);
}

header:not(.transparent)+#hero.hero-big {
    min-height: calc(75vh - 50px - 30px);
}

header.wrapper:not(.transparent)+#hero.hero-full {
    min-height: calc(100vh - 100px - 30px);
}

header.wrapper:not(.transparent)+#hero.hero-big {
    min-height: calc(75vh - 100px - 30px);
}

header.menu-open nav#main-nav>ul>li>ul.sub-menu {
    top: calc(50px + 30px);
}

header.transparent+#hero.hero-auto #page-title,
header.transparent+#hero #page-title.title-top {
    padding-top: calc(125px + 30px);
}

header.wrapper.transparent+#hero.hero-auto #page-title,
header.wrapper.transparent+#hero #page-title.title-top {
    padding-top: calc(150px + 30px);
}

.parallax-section {
    background: url(../images/agency-hero-2.jpg);
    background-position: cover;
}

.parallax-section1 {
    background: url(../images/about.jpg) no-repeat;
    background-size: cover;
    width: 100%;
    background-position: center center;
}

.parallax-section2 {
    background: url(../images/travel.jpg) no-repeat;
    background-size: cover;
    width: 100%;
    background-position: center center;
}

.pdf i {
    color: #fff;
    margin-left: 20px;
}

.pdf {
    padding: 5px;
    border: 1px solid #fff;
    border-radius: 3px;
}

.title {
    font-size: 3rem;
    font-weight: 500;
}