/*--------------------------------------------------------------
>>> 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: 'Ubuntu';
    src: url('assets/fonts/Ubuntu-Light.eot');
    src: local('Ubuntu Light'), local('Ubuntu-Light'),
    url('assets/fonts/Ubuntu-Light.eot?#iefix') format('embedded-opentype'),
    url('assets/fonts/Ubuntu-Light.woff2') format('woff2'),
    url('assets/fonts/Ubuntu-Light.woff') format('woff'),
    url('assets/fonts/Ubuntu-Light.ttf') format('truetype'),
    url('assets/fonts/Ubuntu-Light.svg#Ubuntu-Light') format('svg');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Ubuntu';
    src: url('assets/fonts/Ubuntu-Regular.eot');
    src: local('Ubuntu Regular'), local('Ubuntu-Regular'),
    url('assets/fonts/Ubuntu-Regular.eot?#iefix') format('embedded-opentype'),
    url('assets/fonts/Ubuntu-Regular.woff2') format('woff2'),
    url('assets/fonts/Ubuntu-Regular.woff') format('woff'),
    url('assets/fonts/Ubuntu-Regular.ttf') format('truetype'),
    url('assets/fonts/Ubuntu-Regular.svg#Ubuntu-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

html, body,
input, select, textarea, button {
    font-family: 'Ubuntu', sans-serif;
    font-size: 18px;
    color: #121212;
    font-weight: 300;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Ubuntu', sans-serif;
    font-weight: normal;
    line-height: 40px;
}

h1 {
    font-size: 40px;
}

h2 {
    font-size: 28px;
}

h3 {
    font-size: 20px;
}

h4, h5, h6 {
    font-size: 18px;
}

p {
    font-size: 18px;
    padding: 0;
    margin: 0 0 20px 0;
    line-height: 40px; /* This should be the same as the margin bottom */
}

p:last-child {
    margin-bottom: 0;
}

.wrap {
    max-width: 1630px;
}

embed,
iframe,
object {
    width: 100%;
}

/*--------------------------------------------------------------
Custom Elements
--------------------------------------------------------------*/
.marginbottom-0px {
    margin-bottom: 0;
}

.marginbottom-20px {
    margin-bottom: 20px;
}

.marginbottom-40px {
    margin-bottom: 40px;
}

.filter-toggle {
    display: none;
}

.sd-spinner {
    width: 18px;
    margin-right: 10px;
    vertical-align: middle;
    color: #008000;
    animation: sd-spinner 2s linear infinite;
}

svg .red {
    color: #E1251B;
}

svg .white {
    color: #FFF;
}

@keyframes sd-spinner {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    100% {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn);
    }
}

.vc_row.sidebar-row {
    padding-top: 0;
    padding-bottom: 0;
}

.sidebar-row .left-sidebar > .vc_column-inner > .wpb_wrapper {
    background-color: #F4EFFA;
    padding: 80px 30px;
}

.sidebar-row  .right-sidebar > .vc_column-inner > .wpb_wrapper {
    max-width: 1120px;
    margin-top: 80px;
    margin-bottom: 80px;
    margin-right: auto;
}

.sd-cookie-notice .sd-cookie-notice-inner {
    background-color: #F4EFFA;
    box-shadow: 4px 4px 25px 0 rgba(0, 0, 0, .3);
}

.sd-cookie-notice .sd-cookie-notice-buttons-container .sd-cookie-notice-accept-cookie {
    background-color: transparent;
    font-size: 18px;
    color: #121212;
    padding: 5px 20px;
    margin-right: 20px;
    border: 2px solid #4A3667;
    transition: .2s ease-in-out;
}

.sd-cookie-notice .sd-cookie-notice-buttons-container .sd-cookie-notice-accept-cookie:hover {
    background-color: #4A3667;
    color: #FFF;
}

.sd-cookie-notice .sd-cookie-notice-buttons-container .sd-cookie-notice-save-cookie {
    color: #121212;
    text-decoration: underline;
}

.sd-cookie-notice .sd-cookie-notice-buttons-container .sd-cookie-notice-save-cookie:hover {
    text-decoration: none;
}
/*--------------------------------------------------------------
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: #727272;
}

::-moz-placeholder { /* Firefox 19+ */
    font-size: inherit;
    color: #727272;
}

:-ms-input-placeholder { /* IE 10+ */
    font-size: inherit;
    color: #727272;
}

:-moz-placeholder { /* Firefox 18- */
    font-size: inherit;
    color: #727272;
}

.sd-form .mandatory_icon {

}

.sd-form {
    background-color: #4a3667;
    padding: 40px;
}

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: #FFF;
    border: 2px solid #4A3667;
    border-radius: 0;
    display: block;
    padding: 0 15px;
    height: 40px;
    width: 100%;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #FFF;
    border: 0 none;
    border-radius: 5px;
    display: block;
    padding: 0 15px;
    height: 50px;
    width: 100%;
}

textarea {
    background: #FFF;
    border: 2px solid #4A3667;
    border-radius: 5px;
    display: block;
    padding: 15px;
    height: 150px;
    width: 100%;
    resize: vertical;
}

button,
input[type='button'],
button[type='submit'],
input[type='submit'] {
    background: #FFF;
    border: 2px solid #4A3667;
    padding: 0 10px;
    height: 40px;
    color: #414141;
    transition: all .2s ease;
}

button:hover,
input[type='button']:hover,
button[type='submit']:hover,
input[type='submit']:hover {
    background-color: #4A3667;
    color: #FFF;
    transition: all .2s ease;
}

/* Start privacy checkbox */
.wpcf7 .wpcf7-checkbox .wpcf7-list-item,
.sd-form .SD-type-checkbox {
    padding: 0 0 0 20px;
    margin: 0;
}

.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: 18px;
    font-weight: normal;
    color: #fff;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label a {
    color: #fff;
    text-decoration: underline;
}


.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:before,
.sd-form .SD-type-checkbox label:before {
    content: '';
    height: 15px;
    width: 15px;
    position: absolute;
    left: -20px;
    top: 2px;
    background-color: #f4effa;
    border: 2px solid #f4effa;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item .wpcf7-list-item-label:hover:before,
.sd-form .SD-type-checkbox label:hover:before {
    background-color: #f4effa;
    cursor: pointer;
}

.wpcf7 .wpcf7-checkbox .wpcf7-list-item input:checked + .wpcf7-list-item-label:before,
.sd-form .SD-type-checkbox input:checked + label:before {
    background-color: #f4effa;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='currentColor' d='M438.6 105.4C451.1 117.9 451.1 138.1 438.6 150.6L182.6 406.6C170.1 419.1 149.9 419.1 137.4 406.6L9.372 278.6C-3.124 266.1-3.124 245.9 9.372 233.4C21.87 220.9 42.13 220.9 54.63 233.4L159.1 338.7L393.4 105.4C405.9 92.88 426.1 92.88 438.6 105.4H438.6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 10px;
}
/* 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 {
    background-color: #73ff88;
    padding: 20px 43px 20px 20px;
    border-radius: 10px;
    position: relative;
    border: 2px solid #0eb427;
    margin-bottom: 20px;
}

.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 {
    background-color: #ffa1a0;
    padding: 20px 43px 20px 20px;
    border-radius: 10px;
    position: relative;
    margin-bottom: 20px;
    border: 2px solid #DD4847;
}

.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 ul,
.main-navigation > div > ul {
    display: flex;
}

.main-navigation ul {
    font-size: 0;
}

.main-navigation ul li:not(:last-child) {
    margin-right: 40px;
}

.main-navigation .menu > li.menu-item-has-children > a::after {
    content: '';
    background-image: url('/wp-content/uploads/2022/08/angle-down-solid-white.svg');
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    height: 13px;
    width: 10px;
    bottom: 10px;
    left: calc(50% - 10px);
}

.main-navigation ul li a {
    font-weight: normal;
    color: #FFF;
    font-size: 18px;
    line-height: 80px;
    transition: all .3s ease;
}

.main-navigation ul li a:hover {
    color: #FFF;
    text-decoration: underline;
    transition: all .3s ease;
}

.main-navigation ul li.current-menu-item > a {
    text-decoration: underline;
}

.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;
}

/* Sub Menu */
.main-navigation ul ul.sub-menu {
    opacity: 0;
    visibility: hidden;
    background: #F4EFFA;
    border: 0;
    padding: 20px;
    transition: all .3s ease;
    white-space: nowrap;
    min-width: 200px;
}

.main-navigation .menu li.menu-item-has-children:hover > ul.sub-menu {
    opacity: 1;
    display: block;
    visibility: visible;
    transition: all .3s ease;
}

.main-navigation ul ul.sub-menu li {
    margin: 0;
}

.main-navigation ul ul.sub-menu li a {
    position: relative;
    color: #121212;
    line-height: 35px;
    display: inline-flex;
    width: 100%;
    align-items: center;
    padding-left: 15px;
}

.main-navigation ul ul.sub-menu li a:before {
    content: '';
    background-image: url('/wp-content/uploads/2022/08/angle-right-solid-black.svg');
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    height: 14px;
    width: 10px;
    left: 0;
}

.main-navigation ul ul.sub-menu li.current-menu-item > a {

}

.main-navigation .menu li.menu-item-has-children .sub-menu .sub-menu {
    left: calc(100% + 20px);
    top: -19px;
}

.main-navigation .menu .sub-menu li.menu-item-has-children > a {
    padding-right: 15px;
}

.main-navigation .menu .sub-menu li.menu-item-has-children > a:after {
    content: '';
    background-image: url('/wp-content/uploads/2022/08/angle-right-solid-black.svg');
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
    height: 14px;
    width: 10px;
    right: 0;
}

.main-navigation .menu .sub-menu li.menu-item-has-children:hover > a {
    text-decoration: underline;
}

/*--------------------------------------------------------------
13.1 Header
--------------------------------------------------------------*/
header.site-header.fixed {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 999;
    background-color: #4a3667;
}

.admin-bar header.site-header.fixed {
    top: 32px;
}

header .header-middlebar-wrap-inner {
    height: 80px;
    display: flex;
    align-items: center;
}

.header-middlebar-1 {
    display: flex;
    align-items: center;
    column-gap: 20px;
    justify-content: space-between;
}

.header-middlebar-2 {
    display: flex;
    align-items: center;
}

.header-middlebar-2 *:not(:last-child) {
    margin-right: 50px;
}

.header-middlebar-2 a {
    color: #fff;
    font-weight: normal;
}

.header-middlebar-2 a:hover {
    color: #fff;
}

.header-middlebar-3 {
    text-align: right;
}

/*--------------------------------------------------------------
13.2 Regular Content
--------------------------------------------------------------*/
.site-content-contain {
    margin-top: 80px;
}

/*--------------------------------------------------------------
13.5 Footer
--------------------------------------------------------------*/
footer {
    background-color: #4a3667;
}

footer p,
footer a {
    color: #fff;
}

footer a:hover {
    color: #fff;
    text-decoration: underline;
}

.footer-middlebar {
    padding: 95px 0 150px 0;
}

.footer-bottombar ul,
.footer-middlebar ul {
    list-style: none;
    font-size: 0;
}

.footer-bottombar ul .sub-menu,
.footer-middlebar ul .sub-menu {
    display: none;
}

.footer-middlebar ul li {
    line-height: 40px;
    color: #fff;
    font-size: 18px;
}

.footer-middlebar a {
    text-decoration: underline;
}

.footer-middlebar .address-container a {
    text-decoration: none;
}

.footer-bottombar {
    padding-bottom: 20px;
}

.footer-bottombar a {
    text-decoration: underline;
}

.footer-bottombar ul li {
    display: inline;
    color: #fff;
    font-size: 15px;
}

.footer-bottombar ul li:not(:last-child)::after {
    content: '|';
    margin: 0 20px;
}
/*--------------------------------------------------------------
13.6 Visual Composer
--------------------------------------------------------------*/
.vc_row-fluid:not(.vc_inner) {
    padding-top: 80px;
    padding-bottom: 80px;
}

.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;
}

.sd-pagination .page-numbers {
    font-size: 18px;
    margin-right: 5px;
    color: blue;
}

.sd-pagination .page-numbers.current {
    font-size: 18px;
    margin-right: 5px;
    color: red;
}

.sd-pagination .page-numbers.prev {
    position: absolute;
    font-size: 16px;
    left: 15px;
    top: 0;
    margin: 0;
    color: #ffffff;
}

.sd-pagination .page-numbers.next {
    position: absolute;
    font-size: 16px;
    right: 15px;
    top: 0;
    margin: 0;
    color: #ffffff;
}

/*--------------------------------------------------------------
14.0 Widgets / sidebars
--------------------------------------------------------------*/
h3.widget-title {
    color: #fff;
    font-weight: normal;
    font-size: 20px;
    line-height: 35px;
    margin-bottom: 15px;
}