/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Normalize
2.0 Accessibility
3.0 Alignments
4.0 Clearings
5.0 Typography
6.0 Forms
7.0 Formatting
8.0 Lists
9.0 Tables
10.0 Links
11.0 Featured Image Hover
12.0 Navigation
13.0 Layout
   13.1 Header
   13.2 Regular Content
   13.3 Posts
   13.4 Pages
   13.5 Footer
   13.6 Visual Composer
   13.7 Pagination
14.0 Widgets / sidebars
   14.1 Sidebars
   14.2 Widgets
15.0 Media
   15.1 Galleries
16.0 SVGs Fallbacks
17.0 Media Queries
18.0 Print
--------------------------------------------------------------*/
@font-face {
    font-family: 'Montserrat';
    src: url('assets/fonts/Montserrat-SemiBold.eot');
    src: local('Montserrat SemiBold'), local('Montserrat-SemiBold'),
    url('assets/fonts/Montserrat-SemiBold.eot?#iefix') format('embedded-opentype'),
    url('assets/fonts/Montserrat-SemiBold.woff2') format('woff2'),
    url('assets/fonts/Montserrat-SemiBold.woff') format('woff'),
    url('assets/fonts/Montserrat-SemiBold.ttf') format('truetype'),
    url('assets/fonts/Montserrat-SemiBold.svg#Montserrat-SemiBold') format('svg');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Montserrat';
    src: url('assets/fonts/Montserrat-Bold.eot');
    src: local('Montserrat Bold'), local('Montserrat-Bold'),
    url('assets/fonts/Montserrat-Bold.eot?#iefix') format('embedded-opentype'),
    url('assets/fonts/Montserrat-Bold.woff2') format('woff2'),
    url('assets/fonts/Montserrat-Bold.woff') format('woff'),
    url('assets/fonts/Montserrat-Bold.ttf') format('truetype'),
    url('assets/fonts/Montserrat-Bold.svg#Montserrat-Bold') format('svg');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: url('assets/fonts/OpenSans-Regular.eot');
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
    url('assets/fonts/OpenSans-Regular.eot?#iefix') format('embedded-opentype'),
    url('assets/fonts/OpenSans-Regular.woff2') format('woff2'),
    url('assets/fonts/OpenSans-Regular.woff') format('woff'),
    url('assets/fonts/OpenSans-Regular.ttf') format('truetype'),
    url('assets/fonts/OpenSans-Regular.svg#OpenSans-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
    overflow-x: hidden;
}

html, body {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    color: #121212;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    padding-top: 0;
    text-transform: uppercase;
}

h1 {
    font-size: 44px;
    line-height: 1;
}

h2 {
    font-size: 36px;
    line-height: 1;
}

h3 {
    font-size: 24px;
    line-height: 1;
}

h4 {
    font-size: 18px;
    line-height: 1;
}

h5, h6 {
    font-size: 16px;
    line-height: 1;
}

strong,
i,
em,
b,
p {
    font-size: 16px;
    padding: 0;
    margin: 0 0 20px 0;
    line-height: 20px; /* This should be the same as the margin bottom */
}

p:last-child {
    margin-bottom: 0;
}

.wrap {
    max-width: 1230px;
}

embed,
iframe,
object {
    width: 100%;
}

/*--------------------------------------------------------------
Custom Elements
--------------------------------------------------------------*/
.marginbottom-0px {
    margin-bottom: 0;
}

.marginbottom-20px {
    margin-bottom: 20px;
}

.marginbottom-40px {
    margin-bottom: 40px;
}

.marginbottom-60px {
    margin-bottom: 60px;
}

.marginbottom-100px {
    margin-bottom: 100px;
}

.filter-toggle {
    display: none;
}

.no-vacancies,
.spinner {
    display: flex;
    align-items: center;
    font-size: 16px;
    padding: 0;
    line-height: 20px;
    margin-bottom: 0;
    font-weight: 300;
}

.sd-spinner {
    width: 18px;
    margin-right: 10px;
    vertical-align: middle;
    color: #e2ae7f;
    animation: sd-spinner 2s linear infinite;
}

@keyframes sd-spinner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

.image-left-side > *:last-child .vc_column-inner {
    max-width: 600px;
    margin-right: auto;
    padding-left: 15px;
}

.image-right-side > *:first-child .vc_column-inner {
    max-width: 600px;
    margin-left: auto;
    padding-left: 15px;
}

.background-fixed .vc_column-inner {
    background-attachment: fixed;
    background-size: 50%;
    background-position: left center;
    background-repeat: no-repeat;
}

/*--------------------------------------------------------------
SD Tabs
--------------------------------------------------------------*/
.sd-tabs .sd-tabs-list {

}

.sd-tabs .sd-tabs-list > li {

}

.sd-tabs .sd-tabs-list > li.active {

}

.sd-tabs .sd-tabs-list > li:last-child {

}

.sd-tabs .sd-tabs-content > li {

}

.sd-tabs .sd-tabs-content > li.active {

}

/*--------------------------------------------------------------
6.0 Forms
--------------------------------------------------------------*/
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    font-size: inherit;
    color: #8C8C8C;
    font-family: 'Lato', sans-serif;
}

::-moz-placeholder { /* Firefox 19+ */
    font-size: inherit;
    color: #8C8C8C;
    font-family: 'Lato', sans-serif;
}

:-ms-input-placeholder { /* IE 10+ */
    font-size: inherit;
    color: #8C8C8C;
    font-family: 'Lato', sans-serif;
}

:-moz-placeholder { /* Firefox 18- */
    font-size: inherit;
    color: #8C8C8C;
    font-family: 'Lato', sans-serif;
}

.sd-form .mandatory_icon {

}

.wpcf7,
.sd-form {

}

input[type='week'],
input[type='url'],
input[type='time'],
input[type='password'],
input[type='number'],
input[type='color'],
input[type='month'],
input[type='datetime-local'],
input[type='text'],
input[type='email'],
input[type='tel'] {
    background-color: #fff;
    border: 1px solid #ebebeb;
    display: block;
    padding: 0 15px;
    height: 50px;
    width: 100%;
    font-size: 16px;
    color: #8c8c8c;
    font-family: 'Lato', sans-serif;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
    border-color: #a4a4a4;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    border: 1px solid #a4a4a4;
    display: block;
    padding: 0 15px;
    height: 50px;
    width: 100%;
    font-size: 16px;
    color: #8c8c8c;
    cursor: pointer;
    background-image: url('assets/icons/chevron-thin-down.svg');
    background-repeat: no-repeat;
    background-position: center right 20px;
    background-size: 26px;
    font-family: 'Lato', sans-serif;
}

.ui-datepicker .ui-datepicker-title {
    display: flex;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
    background-size: 15px;
    background-position: center right 10px;
    height: 30px;
}

textarea {
    background-color: #fff;
    border: 1px solid #a4a4a4;
    display: block;
    padding: 15px;
    height: 150px;
    width: 100%;
    resize: vertical;
    font-size: 16px;
    color: #8c8c8c;
    font-family: 'Lato', sans-serif;
}

button,
input[type='button'],
button[type='submit'],
input[type='submit'] {
    color: #fff;
    background-color: #000;
    transition: all .3s ease;
    font-weight: 400;
    padding: 0 20px;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 50px;
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
}

.single-vacancy button,
.single-vacancy [type='button'],
.single-vacancy button[type='submit'],
.single-vacancy input[type='submit'] {
    margin-bottom: 60px;
}

button:hover,
input[type='button']:hover,
button[type='submit']:hover,
input[type='submit']:hover {
    color: #e2ae7f;
    transition: all .3s ease;
}

/* Start privacy checkbox */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item,
.sd-form .SD-type-checkbox {
    padding: 0 0 0 30px;
    margin: 0;
    margin-bottom: 20px;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item input,
.sd-form .SD-type-checkbox input {
    display: none;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label,
.sd-form .SD-type-checkbox label {
    position: relative;
    font-size: 16px;
    font-weight: 300;
    user-select: none;
}

.sd-form .SD-type-checkbox label a {
    color: #e2ae7f;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:before,
.sd-form .SD-type-checkbox label:before {
    content: '';
    height: 20px;
    width: 20px;
    position: absolute;
    left: -30px;
    top: -2px;
    background-color: transparent;
    border: 1px solid #121212;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:hover:before,
.sd-form .SD-type-checkbox label:hover:before,
.wpcf7 .wpcf7-checkbox .wpcf7-list-item input:checked + .wpcf7-list-item-label:before,
.sd-form .SD-type-checkbox input:checked + label:before {
    background-color: #e2ae7f;
    border: 1px solid #e2ae7f;
}
/* End privacy checkbox */

/* Start whitelabel CF7 */
.wpcf7 form .wpcf7-response-output {
    margin: 0;
    padding: 0;
}
/* End whitelabel CF7 */

/* Start success messages  */
.wpcf7 form.sent .wpcf7-response-output,
.sd-success-message-container {
    padding: 20px 43px 20px 20px;
    border: none;
    background-color: #e2ae7f;
    color: white;
    margin-bottom: 20px;
    font-family: 'Lato', sans-serif;
}

.sd-success-message {
    font-weight: 200;
    font-size: 18px;
}

.sd-success-message::before {
    content: '';
    background-image: url('assets/icons/success.svg');
    color: #ffffff;
    font-size: 30px;
    position: absolute;
    right: 15px;
    top: 7px;
}
/* End success messages  */

/* Start notification messages  */
.sd-notification-message::before {
    content: '';
    background-image: url('assets/icons/info.svg');
    color: #ffffff;
    font-size: 30px;
    position: absolute;
    right: 15px;
    top: 7px;
}
/* End notification messages  */

/* Start error messages */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted  .wpcf7-response-output,
.sd-error-message-container {
    border: none;
    background-color: #e01818;
    padding: 20px 43px 20px 20px;
    position: relative;
    margin-bottom: 20px;
    color: white;
}

.sd-error-message-general {
    font-weight: 200;
    font-size: 18px;
}

.sd-error-message-general::before {
    content: '';
    background-image: url('assets/icons/error.svg');
    color: #ffffff;
    font-size: 30px;
    position: absolute;
    right: 15px;
    top: 7px;
}
/* End error messages */

.wpcf7 .ajax-loader {
    vertical-align: middle;
}

/*--------------------------------------------------------------
12.0 Navigation
--------------------------------------------------------------*/
.main-navigation {
    display: block;
    margin: 0 0 0 140px;
    width: 100%;
}

header .header-middlebar .main-navigation ul {
    font-size: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    position: unset;
}

.main-navigation ul li {
    white-space: nowrap;
}

.main-navigation ul li a {
    font-size: 16px;
    color: #121212;
    line-height: 60px;
    font-weight: 600;
    transition: all .3s ease;
    text-transform: uppercase;
}

.main-navigation ul li a:hover {
    color: #e2ae7f;
    transition: all .3s ease;
}

.single-product .main-navigation ul li.menu-item-27 > a,
.single-team .main-navigation ul li.menu-item-26 > a,
.single-vacancy:not(.internship) .main-navigation ul li.menu-item-28 > a,
.single-vacancy:not(.internship) .main-navigation ul li.menu-item-72 > a,
.single-vacancy.internship .main-navigation ul li.menu-item-73 > a,
.single-vacancy.internship .main-navigation ul li.menu-item-28 > a,
.single-news .main-navigation ul li.menu-item-24 > a,
.main-navigation ul li.current-page-ancestor > a,
.main-navigation ul li.current-menu-ancestor > a,
.main-navigation ul li.current-menu-item > a {
    color: #e2ae7f;
    transition: all .3s ease;
}

.main-navigation ul li.menu-item-has-children.focus:before,
.main-navigation ul li.menu-item-has-children:hover:before,
.main-navigation ul li.menu-item-has-children.focus:after,
.main-navigation ul li.menu-item-has-children:hover:after,
.main-navigation ul li.page_item_has_children.focus:before,
.main-navigation ul li.page_item_has_children:hover:before,
.main-navigation ul li.page_item_has_children.focus:after,
.main-navigation ul li.page_item_has_children:hover:after {
    display: none;
}

header .header-middlebar .main-navigation ul .vacancy-button {
}

header .header-middlebar .main-navigation ul .vacancy-button a {
    color: #fff;
    background-color: #000;
    display: inline-block;
    position: relative;
    max-width: 100%;
    font-size: 16px;
    line-height: 40px;
    border-radius: 0;
    text-decoration: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    font-weight: 400;
    padding: 0 20px;
    -webkit-transition: ease .3s;
    -moz-transition: ease .3s;
    -ms-transition: ease .3s;
    -o-transition: ease .3s;
    transition: ease .3s;
    margin-top: 10px;
}

header .header-middlebar .main-navigation ul .vacancy-button a:hover {
    color: #e2ae7f;
    -webkit-transition: ease .3s;
    -moz-transition: ease .3s;
    -ms-transition: ease .3s;
    -o-transition: ease .3s;
    transition: ease .3s;
}

/* Sub Menu */
.main-navigation ul li.menu-item-has-children:hover ul.sub-menu {
    display: block;
    transition: all .3s ease;
}

.main-navigation ul ul.sub-menu {
    display: none;
    transition: all .3s ease;
    border: none;
    background-color: #fff;
    padding-bottom: 20px;
    top: 60px;
    white-space: nowrap;
}

.main-navigation ul ul.sub-menu li {

}

.main-navigation ul ul.sub-menu li a {
    line-height: 22px;
    font-size: 15px;
    font-weight: 300;
    display: inline-block;
    text-transform: unset;
}

.main-navigation ul ul.sub-menu li a:hover {

}

.main-navigation ul ul.sub-menu li.current-menu-item > a {

}

/*--------------------------------------------------------------
13.1 Header
--------------------------------------------------------------*/
header.site-header.fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 999;
    background-color: #fff;
}

.admin-bar header.site-header.fixed {
    top: 32px;
}

header .wrap {
    max-width: 100vw;
    position: relative;
}

.header-middlebar-1 {
    margin-left: -15px;
    display: flex;
    align-items: center;
}

.header-middlebar-2 {
    display: flex;
    position: unset;
}

header .widget_sd_widget_button .sd-block-button.style-background {
    width: max-content;
}

/*--------------------------------------------------------------
13.2 Regular Content
--------------------------------------------------------------*/
.site-content-contain {
    margin-top: 60px;
}

.overflow-visible-row {
    overflow: visible !important;
}

.wpb_gmaps_widget.wpb_content_element {
    margin-bottom: 0;
    margin-left: -15px;
    margin-right: -15px;
}

.no-padding-right {
    padding-right: 0!important;
}

.padding-top-20 {
    padding-top: 20px!important;
}

/*--------------------------------------------------------------
13.5 Footer
--------------------------------------------------------------*/
footer {
    background-color: #232323;
    padding: 25px 0;
}

.footer-topbar {
    padding-top: 105px;
}

.footer-middlebar {
    padding: 75px 0 130px 0;
}

.footer-middlebar ul {
    list-style: none;
    font-size: 0;
}

.footer-middlebar p,
.footer-middlebar a {
    line-height: 22px;
    font-size: 16px;
    color: #fff;
    font-weight: 300;
    transition: all .3s ease;
}

.footer-middlebar a:hover {
    color: rgba(255, 255, 255, .5);
    transition: all .3s ease;
}

.footer-bottombar p,
.footer-bottombar a {
    line-height: 22px;
    font-size: 16px;
    color: rgba(255, 255, 255, .5);
    font-weight: 300;
    transition: all .3s ease;
}

.single-vacancy.internship footer li.menu-item-78 a,
.single-team footer li.menu-item-33 a,
.single-news footer li.menu-item-32 a,
footer li.current-menu-ancestor a,
footer li.current-menu-item a {
    text-decoration: underline;
}

.footer-bottombar a:hover {
    color: #fff;
    transition: all .3s ease;
}

.footer-bottombar ul {
    font-size: 0;
    list-style: none;
}

.footer-bottombar ul li {
    display: inline-block;
}

.footer-bottombar ul li:not(:last-child) {
    margin-right: 105px;
}

footer .footer-bottombar-1 {
    display: flex;
    justify-content: space-between;
}

/*--------------------------------------------------------------
13.6 Visual Composer
--------------------------------------------------------------*/
.vc_row-fluid:not(.vc_inner) {
    padding-top: 60px;
    padding-bottom: 60px;
}

.vc_row-fluid.vc_inner {
    padding-top: 0;
    padding-bottom: 0;
}

.vc_col-has-fill>.vc_column-inner,
.vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner,
.vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner,
.vc_row-has-fill>.vc_column_container>.vc_column-inner {
    padding-top: 0;
}

.vc_row.vc_row-o-equal-height > .wpb_column > .vc_column-inner > .wpb_wrapper {
    height: 100%;
}

/*--------------------------------------------------------------
13.7 Pagination
--------------------------------------------------------------*/
.sd-pagination {
    margin-top: 20px;
    position: relative;
    text-align: center;
    font-size: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sd-pagination .page-numbers {
    font-size: 16px;
    margin-right: 20px;
    padding: 0;
    color: #121212;
    transition: all .3s ease;
}

.sd-pagination .page-numbers.current {
    color: #e2ae7f;
}

.sd-pagination .page-numbers:hover {
    color: #e2ae7f;
    transition: all .3s ease;
}

.sd-pagination .page-numbers.prev {
    position: absolute;
    font-size: 16px;
    left: 0;
    margin: 0;
    color: #121212;
    background-color: transparent;
    padding: 0;
}

.sd-pagination .page-numbers.prev svg,
.sd-pagination .page-numbers.next svg{
    height: 20px;
    width: 20px;
    color: #e2ae7f;
}

.sd-pagination .page-numbers.next {
    position: absolute;
    font-size: 16px;
    right: 0;
    margin: 0;
    color: #121212;
    background-color: transparent;
}

/*--------------------------------------------------------------
14.0 Widgets / sidebars
--------------------------------------------------------------*/
h3.widget-title {
    font-size: 18px;
    line-height: 22px;
    text-transform: uppercase;
    color: #fff;
    margin-bottom: 20px;
}