@charset "UTF-8";

/*
 *  [Table of contents]

    Theme Default CSS
    01. Common Style
    02. Preloader
    03. Above Header
    04. Navigation
    05. Slider
    06. Info Section
    07. Heading Section
    08. Service Section
    09. Design Section
    10. Projects Section
    11. Team Section
    12. Gallery Section
    13. Price Section
    14. Fun Fact Section
    15. Testimonials Section
    16. CTA Section
    17. Blog Post Section
    18. Footer Section
    19. Scrolling Up
    20. Shapes
    21. Breadcrumb Section
    22. About Text Section
    23. Steps Section
    24. Our Timeline Section
    25. Our Skills Section
    26. Pagination Section
    27. Tab Filter Section
    28. FAQ Page
    29. Author-Area Section
    30. Comments-Area Section
    31. Form Part for Comment Section
    32. Careers Page
    33. Locations Page
    34. Support Page
    35. Contact Page
    36. Contact V2 Page
    37. 404 Page
    38. Coming-Soon Page
    39. Boxed Layout CSS

*/

:root {
    --bs-black: #000000;
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc221c;
    --bs-orange: #fd7e14;
    --bs-orange-dark: #ee4a34;
    --bs-orange-dark-light: #fae4df;
    --bs-yellow: #ffcc00;
    --bs-green: #28a745;
    --bs-teal: #20c997;
    --bs-cyan: #17a2b8;
    --bs-white: #ffffff;
    --bs-gray: #dedede;
    --bs-gray-light: #e1e1e1;
    --bs-gray-dark: #343a40;
    --bs-primary: #bf9728;
    --bs-primary-dark: #997920;
    --bs-primary-light: #f9f5ea;
    --bs-primary-shadow: rgb(191 151 40 / 0.5);
    --bs-secondary: #282b2f;
    --bs-secondary-dark: #101318;
    --secondary-color-100: #282b2f;
    --secondary-color-200: #404246;
    --secondary-color-700: #b7b8ba;
    --secondary-color-800: #e7e7e8;
    --bs-success: #28a745;
    --bs-info: #17a2b8;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #343a40;
    --bs-font-sans-serif: 'Karla',system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
    --bs-font-monospace: SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
    --bs-font-awesome: "FontAwesome";
    --bs-gradient: linear-gradient(180deg,rgba(255,255,255,0.15),rgba(255,255,255,0));
    --bs-gradient-image: linear-gradient(180deg,rgba(255,255,255,0.15),rgba(255,255,255,0));
    --bs-shadow: 2px 5px 20px rgba(0, 0, 0, .2);
    --bs-radius: 0.1875rem;
    --bs-theme-radius: 6.25rem;
    --bs-transition: all .35s cubic-bezier(.645,.045,.355,1);
    --bs-transition-slow: all .55s cubic-bezier(.645,.045,.355,1);
    --bs-transition-very-slow: all .75s cubic-bezier(.645,.045,.355,1);
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary-dark);
    --bs-btn-hover-border-color: var(--bs-primary-dark);
    --bs-btn-focus-shadow-rgb: 49,132,253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary-dark);
    --bs-btn-active-border-color: var(--bs-primary-dark);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.bg-primary-light {
    background-color: var(--bs-primary-light);
}

::-webkit-selection {
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

::selection {
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

/* Basic Typography Structure */

*:not(table *) {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    word-break: break-word;
}

html,
body {
    overflow-x: hidden;
}

body:not(.admin-bar) {
    position: relative;
}

.h1, 
.h2, 
.h3, 
.h4, 
.h5, 
.h6, 
h1, 
h2, 
h3, 
h4, 
h5, 
h6{
    margin-bottom: 1.75rem;
}

a {
    color: var(--bs-primary);
    text-decoration-thickness: .1rem;
    text-underline-offset: 3px;
    text-decoration: underline;
    outline: none;
    transition: all .3s ease-in-out;
    -webkit-transition: all .3s ease-in-out;
}

a:hover,
a:active,
a:focus {
    color: var(--bs-primary);
    text-decoration: none;
}

a:hover svg,
a:active svg,
a:focus svg,
button:hover svg,
button:active svg,
button:focus svg {
    fill: var(--bs-primary);
}

a:hover,
a:active,
button:focus {
    box-shadow: none;
}

button[type=submit]:focus, 
button:focus, 
input[type="button"]:focus,
input[type="reset"]:focus, 
input[type="submit"]:focus,
a.btn:focus {
    outline-width: 1px;
    outline-offset: -3px;
    outline-style: dotted;
    text-decoration: none;
}

a, area, button, input, label, select, summary, textarea, svg {
    -ms-touch-action: manipulation;
    touch-action: manipulation;
    -webkit-transition: var(--bs-transition);
    transition: var(--bs-transition);
}

button, input, optgroup, select, textarea {
    margin: 0;
}

button, input {
    overflow: visible;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border: 0;
    display: block;
}

em, cite, q {
    font-style: italic;
}

code, kbd, tt, var, samp, pre {
    -webkit-hyphens: none;
    -moz-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    background: var(--bs-secondary);
    color: var(--bs-white);
    padding: 1px 0.3125rem;
    border-radius: 0px;
    font-size: 88%;
}

pre {
    display: block;
    margin: 0 0 0.625rem;
    font-size: 0.8125rem;
    word-break: break-all;
    word-wrap: break-word;
    border: 1px solid var(--bs-gray-light);
    border-radius: 0px;
    overflow: auto;
}

table {
    margin-bottom: 1.75rem;
}

table>thead {
    vertical-align: bottom;
}

table,
th,
td {
  border: 1px solid var(--bs-gray-300);
}

table th, table td {
    padding: 1rem;
    vertical-align: top;
}

table th, table td {
    padding-top: .5rem;
    padding-bottom: .5rem;
}

table.btn-table td {
    vertical-align: middle;
}

.table-striped>tbody>tr:nth-of-type(odd) {
    --bs-table-accent-bg: var(--bs-white);
    color: var(--bs-secondary);
}

figure {
    margin: 0;
}

address,
table,
pre {
    width: 100%;
}

small {
    font-size: 80%;
}

fieldset {
    border: 1px solid var(--bs-gray-light);
    margin: 1.5rem 0.125rem;
    padding: 0.625rem 1.5625rem 1.25rem;
    border-radius: 0;
}

iframe {
    max-width: 100%;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
    border-radius: 0;
}

button[type="submit"],
input[type="button"],
input[type="reset"],
input[type="submit"] {
    display: inline-block;
    font-weight: 600;
    line-height: 1.5;
    background-color: var(--bs-primary);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: var(--bs-white);
    position: relative;
    z-index: 0;
    overflow: hidden;
    border: 2px solid transparent;
    padding: 0.45rem 1.375rem;
    letter-spacing: 0.05rem;
    font-size: 1rem;
    border-radius: .25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.comment-metadata .edit-link a, 
.comment-body .reply a,
.scrolling-btn, 
.more-link,
.bs-tab-filter a, 
form button,
.bs-post-pagination div.nav a,
.btn:not(.btn-link):not(.btn-play):not(.btn-video) {
    position: relative;
    overflow: hidden;
    z-index: 0;
    text-decoration: none;
    transition: 0.5s all ease;
}

.btn {
    border-radius: 5px;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
    outline: 1px dotted;
    outline-offset: -2px;
}

input[type="text"]:not(.adminbar-input),
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea,
.form-control {
    border-radius: 4px;
    display: block;
    line-height: 1.5;
    font-size: 0.97rem;
    font-weight: 400;
    padding: 0.45rem;
    vertical-align: middle;
    width: 100%;
    background-color: var(--bs-white);
    border: 1px solid var(--bs-gray-light);
    outline: none;
    letter-spacing: 0.5px;
    box-shadow: none;
    -webkit-transition: var(--bs-transition);
    transition: var(--bs-transition);
}

input[type="number"]{
    padding-right: 0;
}

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, 
select:focus,
input[type="text"]:hover, 
input[type="email"]:hover,
input[type="url"]:hover, 
input[type="password"]:hover,
input[type="search"]:hover, 
input[type="number"]:hover,
input[type="tel"]:hover, 
input[type="range"]:hover,
input[type="date"]:hover, 
input[type="month"]:hover,
input[type="week"]:hover, 
input[type="time"]:hover,
input[type="datetime"]:hover, 
input[type="datetime-local"]:hover,
input[type="color"]:hover, 
textarea:hover, 
select:hover {
    background-color: var(--bs-white);
    border-color: var(--bs-primary);
    outline: none;
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

select {
    border: 1px solid var(--bs-gray-300);
    border-radius: 0;
    display: block;
    font-size: 92%;
    font-weight: 500;
    padding: 0.375rem 0.75rem;
    min-height: 50px;
    position: relative;
    text-decoration: none;
    white-space: nowrap;
    width: 100%;
    box-shadow: none;
    overflow: auto !important;
    outline: 0;
    background-color: var(--bs-white);
}

textarea {
    height: 8.125rem;
    overflow: auto;
    resize: vertical;
}

input[type=radio] {
    border-radius: 50%;
    margin-right: 0.25rem;
    line-height: 0.75rem;
}

button:hover, 
button:focus, 
a:hover, 
a:focus,
button.btn:hover, 
button.btn:focus, 
.form-control:focus,
a.btn:hover, 
a.btn:focus, 
button.btn:hover, 
button.btn:focus,
button[type=submit]:hover, 
button[type=button]:hover,
input[type="reset"]:hover,
button[type=submit]:focus, 
input[type="button"]:focus,
input[type="reset"]:focus {
    box-shadow: none !important;
}

button[type=submit]:hover, 
button[type=button]:hover,
input[type="reset"]:hover,
button[type=submit]:focus, 
input[type="button"]:focus,
input[type="reset"]:focus {
    color: var(--bs-white);
    background-color: var(--bs-secondary);
}

/* End Basic Typography Structure */

body.boxed{
    max-width: 1500px;
    margin: 0 auto;
    box-shadow: 0 8px 15px 0 rgb(0 0 0 / 20%);
    overflow-x: hidden;
}

/* Header CSS */

.header{
    position: relative;
}

.above_header{
    background-color: var(--bs-secondary-dark);
    color: var(--bs-white);
}

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

.above_header ul li{
    display: inline-block;
}

.above_header a{
    display: block;
    text-decoration: none;
    color: var(--bs-white);
}

.header_left{
    display: flex;
    align-items: center;
    justify-content: start;
}

.header_contact li a{
    padding: 0.9375rem 1.25rem;
}

.header_contact li + li{
    border-left: 1px solid var(--bs-gray-800);
}

.header_contact li:first-child a{
    padding-left: 0;
}

.header_contact li a i{
    margin-right: 0.3125rem;
    color: var(--bs-primary);
}

.header_contact li a:hover,
.header_contact li a:focus{
    color: var(--bs-primary);
}

.header_right{
    display: flex;
    align-items: center;
    justify-content: end;
}

.header_social_icons li + li{
    margin-left: 0.3125rem;
}

.header_social_icons li a{
    width: 1.875rem;
    height: 1.875rem;
    line-height: 1.875rem;
    text-align: center;
    display: block;
    background-color: var(--bs-secondary);
    color: var(--bs-white);
    border-radius: 0.25rem;
}

.header_social_icons li a:hover,
.header_social_icons li a:hover{
    background-color: var(--bs-primary);
}

@media screen and ( max-width: 768px ){

    .header_left,
    .header_right{
        justify-content: center;
    }

    .header_left{
        border-bottom: 1px solid var(--bs-gray-800);
    }

    .header_right{
        padding: 0.625rem 0;
    }

}

/* Site Navigation */

.main_navigation{
    background-color: var(--bs-white);
    padding: 0.9375rem 0;
}

.main_navigation.is_transparent:not(.sticky_fixed){
    position: absolute;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--bs-white);
    z-index: 2;
}

.main_navigation.is_transparent:not(.sticky_fixed) .custom-logo-link,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu > li > a,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu_right > li > a{
    color: var(--bs-white);
}

.main_navigation.is_transparent:not(.sticky_fixed) .custom-logo-link:hover,
.main_navigation.is_transparent:not(.sticky_fixed) .custom-logo-link:focus,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu li:hover > a,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu li:focus > a,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu li.current_page_item > a,
.main_navigation.is_transparent:not(.sticky_fixed) .main_menu li:focus-within > a{
    color: var(--bs-primary);
}

@keyframes slide-down {
      0% {
          opacity: 1;
          transform: translateY(-100%);
      } 
      100% {
          opacity: 1;
          transform: translateY(0);
      } 
}

.sticky_fixed{
    padding: 0.325rem 0;
    position: fixed;
    z-index: 99998;
    top: 0;
    left: 0;
    right: 0;
    -webkit-animation: slide-down 1.07s;
    animation: slide-down 1.07s;
    box-shadow: 0 8px 20px 0 rgb(0 0 0 / 10%);
}

@media screen and ( min-width: 782px ){

    .admin-bar .sticky_fixed{
        top: 32px;
    }

}

@media screen and ( min-width: 600px ) and ( max-width: 782px ){

    .admin-bar .sticky_fixed{
        top: 46px;
    }

}

.header_logo{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.custom-logo-link{
    color: var(--bs-secondary-dark);
}

.custom-logo-link,
.custom-logo-link:hover,
.custom-logo-link:focus{
    text-decoration: none;
}

.site_title{
    font-size: 1.75rem;
    margin-bottom: 0;
}

.site_description{
    margin-bottom: 0;
}

.main_navigation.is_transparent:not(.sticky_fixed) .header_logo a:has(.custom-logo),
.main_navigation:not(.is_transparent) .header_logo .header_transparent_logo,
.main_navigation.is_transparent.sticky_fixed .header_logo .header_transparent_logo{
    display: none;
}

.main_menu{
    margin: 0;
    padding: 0;
    list-style: none;
}

.main_menu li{
    display: inline-block;
    position: relative;
}

.main_menu li a{
    display: block;
    text-decoration: none;
    font-weight: 600;
    color: var(--bs-secondary-dark);
    padding: 0.4375rem 1.25rem;
}

.main_menu li:hover > a,
.main_menu li:focus > a,
.main_menu li.current_page_item > a,
.main_menu li:focus-within > a{
    color: var(--bs-primary);
}

.main_menu ul{
    min-width: 200px;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 9999;
    background-color: #fff;
    transform-origin: top;
    animation-fill-mode: forwards;
    transform: scale(1, 0);
    transition: all 0.2s linear;
    border-bottom: 2px solid var(--bs-primary);
    box-shadow: 0 8px 20px 0 rgb(0 0 0 / 10%);
}

.main_menu li:hover > ul,
.main_menu li:focus-within > ul {
    transform-origin: top;
    animation-fill-mode: forwards;
    transform: scale(1, 1);
    transition: all 0.2s linear;
}

.main_menu ul li{
    display: block;
}

.main_menu ul li a{
    font-size: 0.975rem;
    font-weight: 600;
}

.main_menu ul li + li{
    border-top: 1px solid var(--bs-gray-200);
}

.main_menu ul ul{
    top: 0;
    left: 100%;
}

.main_menu li.menu-item-has-children > a, 
.main_menu li.page_item_has_children > a{
    padding-right: 1.875rem;
}

.main_menu li.menu-item-has-children > a::after, 
.main_menu li.page_item_has_children > a::after {
    content: "\f107";
    font-family: 'FontAwesome';
    margin-left: 0.625rem;
    margin-right: 0;
    position: absolute;
    right: 0.625rem;
    transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    position: absolute;
    top: 50%;
}

.main_menu ul li.menu-item-has-children > a::after,
.main_menu ul li.page_item_has_children > a::after{
    transform: translate(0%, -50%) rotate(-90deg);
    -moz-transform: translate(0%, -50%) rotate(-90deg);
    -webkit-transform: translate(0%, -50%) rotate(-90deg);
    -ms-transform: translate(0%, -50%) rotate(-90deg);
    -o-transform: translate(0%, -50%) rotate(-90deg);
}

.main_menu_right{
    margin: 0;
    padding: 0;
    list-style: none;
    margin-left: 1rem;
}

.main_menu_right > li{
    display: inline-block;
    position: relative;
    padding: 0.4375rem 0;
}
.main_menu_right > li + li{
    margin-left: 1rem;
}

.main_menu_right li a{
    color: var(--bs-secondary);
}

.main_menu_right li:hover > a,
.main_menu_right li:focus > a,
.main_menu_right li:focus-within > a{
    color: var(--bs-primary) !important;
}

.main_menu_right > li:has(.favorite-value),
.main_menu_right > li:has(.compare-value){
    margin-right: 1rem;
}

.main_menu_right li .cart-total,
.main_menu_right li .compare-total,
.main_menu_right li .favorite-total{
    position: relative;
    padding: 0;
}

.main_menu_right li .cart-value,
.main_menu_right li .compare-value,
.main_menu_right li .favorite-value {
    display: inline-block;
    background: var(--bs-primary);
    color: var(--bs-white);
    width: 20px;
    height: 20px;
    line-height: 20px;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 400;
    text-align: center;
    position: absolute;
    z-index: 1;
    margin: -3px 0 0 -2px;
}

.shopping_cart {
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1;
    width: 300px;
    max-width: 300px;
    padding: 1rem;
    color: var(--bs-primary);
    background: var(--bs-white);
    border-radius: 0 3px 3px;
    border: 0;
    border-top: 3px solid var(--bs-primary);
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 15px 30px -5px rgb(0 0 0 / 10%);
    transition: all 0.2s;
    transform: translate3d(0, -5px, 0);
}

.main_menu_right li:hover .shopping_cart, 
.main_menu_right li:focus-within .shopping_cart {
    opacity: 1;
    transform: scale(1, 1);
    visibility: visible;
}

.shopping_cart{
    color: var(--bs-secondary);
}

.shopping_cart a{
    text-decoration: none;
    color: var(--bs-primary);
}

.shopping_cart > ul {
    padding: 0;
    margin: 0;
    list-style: none;
    padding-top: 1rem;
    padding-bottom: 1rem;
    list-style: none;
    max-height: 200px;
    overflow-x: hidden;
    overflow-y: auto;
}

.shopping_cart > ul > li{
    font-size: 0.875rem;
    line-height: 1;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 8px 0;
}

.shopping_cart > ul > li + li{
    border-top: 1px solid var(--bs-gray-300);
}

.shopping_cart > ul > li > a:has(img){
    width: 48px;
    height: 48px;
    overflow: hidden;
}

.shopping_cart > ul > li a:has(.item-img){
    display: flex;
    align-items: center;
    gap: 5px;
}

.shopping_cart > ul > li > .quantity{
}

.shopping_cart a.remove{
    display: block;
    width: 20px !important;
    height: 20px !important;
    line-height: 20px !important;
    background-color: red;
    color: #ffffff !important;
    border-radius: 50px;
    text-align: center;
}

.shopping_cart a.remove:hover{
    color: #ffffff !important;
}

.woocommerce-mini-cart__total{
    text-align: right;
}

.shopping_cart .button{
    display: inline-block;
    padding: 10px 20px;
    border-radius: 4px;
    background-color: var(--bs-primary);
    color: var(--bs-white);
    transition: all .5s ease-in-out;
}

.shopping_cart .button:hover,
.shopping_cart .button:focus{
    background-color: var(--bs-secondary);
    color: var(--bs-white);
}

.shopping_cart .button + .button{
    margin-left: 1rem;
}

.woocommerce-mini-cart__buttons{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.shopping_cart .woocommerce-mini-cart__empty-message{
    margin: 0;
}

/* Mobile menu */

.mobile-menus{
    background-color: var(--bs-white);
}

.mobile-menus.is_transparent:not(.sticky_fixed){
    position: absolute;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.7);
    color: var(--bs-white);
    z-index: 2;
}

.mobile-menus.is_transparent:not(.sticky_fixed) .mobile-menu-inner a:has(.custom-logo),
.mobile-menus:not(.is_transparent) .mobile-menu-inner .header_transparent_logo,
.mobile-menus.is_transparent.sticky_fixed .mobile-menu-inner .header_transparent_logo{
    display: none;
}

.mobile-menus .mobile-menu-container .header_transparent_logo{
    display: none;
}

.mobile-menu-inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.mobile-menus .site-logo{
    margin: 1.125rem 0;
}

.mobile-menus .site-logo a{
    display: block;
    margin: 0 auto;
}

.mobile-menus .mobile-menu-logo .site-logo{
    padding: 0 1rem;
}

.mobile-menu-inner button{
    border: 1px solid var(--bs-gray-500);
    color: var(--bs-gray-500);
    margin: 0 0 0 20px;
}

.mobile-menu-inner button:hover,
.mobile-menu-inner button:focus{
    border: 1px solid var(--bs-primary) !important;
    background-color: var(--bs-primary) !important;
    color: var(--bs-white) !important;
    outline: 1px dotted;
    box-shadow: none;
}

.mobile-menu-inner button:after{
    display: none;
}

.mobile-menus .main-menu-list{
    margin: 0;
    padding: 0;
    list-style: none;
}

.mobile-menus .main-menu-list li{
    display: block;
    padding: 0;
}

.mobile-menus .main-menu-list li a{
    position: relative;
    color: var(--bs-secondary);
    text-decoration: none;
    display: block;
    padding: 7px 15px;
}

.mobile-menus .main-menu-list li a span{
    font-size: 12px;
    width: 20px;
    height: 20px;
    line-height: 20px;
    background-color: var(--bs-primary);
    color: #ffffff;
    display: block;
    position: absolute;
    top: 0;
    right: -8px;
    text-align: center;
    border-radius: 100%;
}

.mobile-menu-container{
    position: fixed;
    top: 0;
    left: -100%;
    right: auto;
    bottom: 0;
    z-index: 99999;
    transition: .3s;
    width: 100%;
    height: 100%;
}

.mobile-menu-container-overlay{
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 50%);
    width: 100%;
    height: 100%;
}

.mobile-menu-container-inner{
    width: auto;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #ffffff;
    min-width: 250px;
}

.mobile-menu-container.active{
    left: 0;
}

.mobile-menu-container .mobile-menu-close{
    position: absolute !important;
    top: 30px;
    right: 30px;
    z-index: 1 !important;
    width: 30px;
    height: 30px;
    line-height: 1;
}

.mobile-menu-container .mobile-menu-close:after{
    display: none;
}

.mobile-menu-container .btn.btn-close{
    border: 2px solid var(--bs-white);
    background-color: var(--bs-white);
    background-image: none;
    border-radius: 50%;
    opacity: 1;
    font-size: 1rem;
    color: var(--bs-secondary);
}

.mobile-menu-container .btn.btn-close:hover,
.mobile-menu-container .btn.btn-close:focus{
    box-shadow: none;
    border: 2px solid var(--bs-primary);
    background-color: var(--bs-primary);
    color: var(--bs-white);
    outline: 1px dotted;
    outline-offset: -2px;
}

.mobile-menu{
    overflow-y: auto;
    height: 80%;
}

.mobile-menu::-webkit-scrollbar {
    width: 0.425rem;
  }

.mobile-menu::-webkit-scrollbar-thumb {
    border-radius: 0.425rem;
}

.mobile-menu ul{
    margin: 0;
    padding: 0;
    list-style: none;
}

.mobile-menu ul li{
    border-bottom: 1px solid var(--bs-gray-300);
}

.mobile-menu ul li:first-child{
    border-top: 1px solid var(--bs-gray-300);
}

.mobile-menu ul li a{
    font-size: .9rem;
    font-weight: 600;
    display: block;
    text-decoration: none;
    padding: 7px 15px;
    color: var(--bs-secondary);
    position: relative;
}

.mobile-menu ul li:hover > a,
.mobile-menu ul li:focus > a,
.mobile-menu ul li.current_page_item > a,
.mobile-menu ul li:focus-within > a{
    background-color: #f3f3f3;
    color: var(--bs-primary);
}

.mobile-menu ul li a button{
    width: 28px;
    height: 28px;
    line-height: 1;
    padding: 5px;
    font-size: .8rem;
    position: absolute !important;
    top: 50%;
    right: 5px;
    transform: translateY(-50%);
    z-index: 10 !important;
    margin: 0;
    border-radius: 50%;
    background-color: var(--bs-secondary);
    color: var(--bs-white);
}

.mobile-menu ul li a button:hover,
.mobile-menu ul li a button:focus{
    background-color: var(--bs-primary) !important;
    color: var(--bs-white) !important;
    box-shadow: none;
}

.mobile-menu ul li a button:after{
    display: none;
}

.mobile-menu ul ul{
    margin-left: 1.25rem;
    display: none;
}

.mobile-menu ul ul li:last-child{
    border-bottom: 0;
}

.mobile-menu ul > li.open > ul{
    display: block;
}

.mobile-menus .main-menu-list li.menu-cart-icon a{
    padding-right: 6px;
    display: inline-block;
}

/* End Header CSS */


/* Big Banner Slider */

.big_banner,
.banner{
    position: relative;
}

.big_banner .banner:before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: var(--bs-big-banner-overlay-color);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: var(--bs-big-banner-overlay-alpha);
}

@media screen and ( max-width: 768px ){

    .big_banner .owl-carousel .owl-item img{
        min-height: 500px;
        object-fit: cover;
    }

}

.banner_content_area{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    /*background-color: rgba(0, 0, 0, 0.5);*/
}

.banner_content_area .banner_subtitle{
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--bs-white);
    margin-bottom: 0.625rem;
}

.banner_content_area .banner_subtitle span{
    color: var(--bs-primary);
}

.banner_content_area .banner_title{
    font-size: 3.75rem;
    font-weight: 600;
    color: var(--bs-white);
    margin-bottom: 1.5rem;
}

.banner_content_area .banner_desc{
    font-size: 1.125rem;
    font-weight: 400;
    color: var(--bs-white);
    margin-bottom: 2rem;
}

.banner_content_area .btn{
    font-size: 1rem;
    font-weight: 600;
}

.banner_content_area .btn + .btn{
    margin-left: 1rem;
}

.banner_content_area .btn i{
    margin-left: 5px;
}

.owl-item.active .banner_content_area .banner_subtitle {
    animation: 1s .3s fadeInUp both;  
    animation-delay: 1s;
}
.owl-item.active .banner_content_area .banner_title {
    animation: 1s .4s fadeInUp both;
    animation-delay: 1s;
}
.owl-item.active .banner_content_area .banner_desc {
    animation: 1s .3s fadeInUp both;
    animation-delay: 1s;
}
.owl-item.active .banner_content_area .btn {
    animation: 1s .9s fadeInUp both;
    animation-delay: 1s;
}

@media screen and ( min-width: 1024px ){

    .banner_content.text-start,
    .banner_content.text-end,
    .banner_content.text-center{
        max-width: 58.33333333%;
    }

    .banner_content.text-end{
        margin-left: 0;
        margin-right: auto;
    }

    .banner_content.text-center{
        margin-left: auto;
        margin-right: auto;
    }

    .banner_content.text-end{
        margin-left: auto;
        margin-right: 0;
    }

}

@media screen and ( max-width: 768px ){

    .banner_content_area .banner_title{
        font-size: 2.625rem;
        margin-bottom: .865rem;
    }

    .banner_content_area .banner_desc{
        font-size: 0.985rem;
        margin-bottom: 1rem;
    }

    .banner_content_area .btn{
        font-size: 1rem;
    }

}

.big_banner .owl-carousel.owl-theme .owl-dots{
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
}

.big_banner .owl-carousel.owl-theme .owl-nav button{
    width: 45px;
    height: 45px;
    line-height: 45px;
    text-align: center;
    font-size: 1.325rem;
    background-color: var(--bs-white);
    border: 2px solid var(--bs-white);
    color: var(--bs-secondary);
    transform: skew(-10deg) translateY(-50%);
    box-shadow: none;
}

.big_banner .owl-carousel.owl-theme .owl-nav button:hover,
.big_banner .owl-carousel.owl-theme .owl-nav button:focus{
    background-color: var(--bs-primary);
    border: 2px solid var(--bs-primary);
}

.owl-carousel.owl-theme{
    overflow: hidden;
}

.owl-carousel.owl-theme .owl-nav button,
.owl-carousel.owl-theme .owl-nav .owl-prev,
.owl-carousel.owl-theme .owl-nav .owl-next{
    background-color: rgba(0, 0, 0, .5);
    color: var(--bs-white);
    border: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    border-radius: 4px;
    font-size: 1.125rem;
    font-weight: 600;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    margin: 0;
    transition: .5s;
}

.owl-carousel.owl-theme .owl-nav button:hover,
.owl-carousel.owl-theme .owl-nav button:focus{
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
}

.owl-carousel.owl-theme .owl-nav .owl-prev {
    left: -100%;
}

.owl-carousel.owl-theme:hover .owl-nav .owl-prev {
    left: 2%;
}

.owl-carousel.owl-theme .owl-nav .owl-next {
    right: -100%;
}

.owl-carousel.owl-theme:hover .owl-nav .owl-next {
    right: 2%;
}

.owl-carousel.owl-theme .owl-dots{
    text-align: center;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.owl-carousel.owl-theme .owl-dots .owl-dot {
    background: none;
    border: 2px solid var(--bs-gray-300);
    border-radius: 100%;
    width: 20px;
    height: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 3px;
    -webkit-transition: all .35s cubic-bezier(.645,.045,.355,1);
    transition: all .35s cubic-bezier(.645,.045,.355,1);
    position: relative;
    box-shadow: 0 0 1px rgb(0 0 0 / 50%);
}

.owl-carousel.owl-theme .owl-dots .owl-dot:hover,
.owl-carousel.owl-theme .owl-dots .owl-dot:focus {
    background: none;
    box-shadow: none;
}

.owl-carousel.owl-theme .owl-dots .owl-dot span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    background: var(--bs-primary);
    transition: .5s;
    border-radius: 100%;
    transform: translateX(-50%) translateY(-50%);
}

.owl-carousel.owl-theme .owl-dots .owl-dot.active{
    border-color: var(--bs-primary);
}

.owl-carousel.owl-theme .owl-dots .owl-dot.active span {
    width: 50%;
    height: 50%;
}

.owl-slider-nav{
    margin-left: 10px;
    display: flex;
}

.owl-slider-nav button{
    width: 30px;
    height: 30px;
    line-height: 30px;
    font-size: 1rem;
    margin: 0;
    padding: 0;
    text-align: center;
    background-color: rgb(255 255 255 / 5%);
    color: var(--bs-primary);
}

.owl-slider-nav button + button{
    border-left: 0;
}

.owl-slider-nav button:hover,
.owl-slider-nav button:focus{
    background-color: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: none;
}

/* End Big Banner Slider */

/* Frontpage Section */

.section{
    padding: 2.8125rem 0;
    position: relative;
    overflow: hidden;
}

.header_section{
    position: relative;
    margin-bottom: 3rem;
}

.header_section_container:has(.header_section_right){
    position: relative;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
}

.header_section_details{
    text-align: center;
}

.section_title_wrap{
    margin-bottom: .5rem;
}

.header_section_container:has(.header_section_right) .header_section_details{
    text-align: left;
}

.section_title_wrap span{
    display: block;
}

.section_title_wrap .section_subtitle{
    font-size: 1.125rem;
    color: var(--bs-primary);
    margin-bottom: 0.625rem;
}

.section_title_wrap .section_title{
    font-size: 2.25rem;
    font-weight: 600;
    color: var(--bs-secondary-dark);
    text-transform: uppercase;
    letter-spacing: 0.16px;
    margin-bottom: 0.625rem;
}

.section_desc{
    font-size: 1.125rem;
    color: var(--bs-secondary);
    margin-bottom: 0;
}

.section_bg_container{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    overflow: hidden;
}

.section_bg_container img{
    opacity: 1;
    position: absolute;
    left: 50%;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    object-fit: cover;
    margin-left: -1px;
    transform: translate3d(0, 0, 0);
    -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: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transition: inherit;
}

.section_bg_container:before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.has_section_bg_image .section_title,
.has_section_bg_image .section_desc{
    color: var(--bs-white);
}

/* End Frontpage Section */

/* Services */

.service{
    margin-bottom: 1.875rem;
}

.service a{
    text-decoration: none;
}

.service_container{
    display: flex;
    align-items: start;
    gap: 0.875rem;
}

.service_icon{
    font-size: 2.625rem;
}

.service_title{
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: .5rem;
}

.service_title a{
    color: var(--bs-secondary);
}

.service_title a:hover,
.service_title a:focus{
    color: var(--bs-primary);
}

.service_desc{
    font-size: 0.9375rem;
    color: var(--bs-secondary);
    margin: 0;
}

/* End Services */

/* Testimonial */

.testimonial_desc{
    position: relative;
    background-color: var(--bs-white);
    color: var(--bs-gray-600);
    padding: 1.5625rem 1.875rem;
    border: 1px solid var(--bs-gray-300);
    border-radius: 4px;
    margin-bottom: 1.625rem;
}

.testimonial_desc:after {
    position: absolute;
    content: '';
    left: 12%;
    bottom: -.5rem;
    border-radius: 0;
    width: 1rem;
    height: 1rem;
    border-left: 1rem solid var(--bs-white);
    transform: rotate(45deg);
    z-index: 0;
    box-shadow: 5px 5px 1px -4px rgb(0 0 0 / 8%);
}

.testimonial_footer{
    display: flex;
    align-items: center;
    gap: 0.925rem;
    padding: 0 1.875rem;
}

.testimonial_image{
    width: 3.75rem;
    height: 3.75rem;
    border-radius: 100%;
    overflow: hidden;
}

.testimonial_image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial_footer a{
    color: var(--bs-secondary);
    text-decoration: none;
}

.has_section_bg_image .testimonial_footer .testimonial_title,
.has_section_bg_image .testimonial_footer a{
    color: var(--bs-white);
}

.testimonial_footer a:hover,
.testimonial_footer a:focus{
    color: var(--bs-primary);
}

.testimonial_footer .testimonial_title{
    margin-bottom: .125rem;
}

.testimonial_footer .testimonial_designation{
    color: var(--bs-primary);
}

/* End Testimonial */

/* Team */

.team{
    border: 1px solid var(--bs-gray-300);
    margin-bottom: 1.875rem;
    border-radius: 4px;
    overflow: hidden;
}

.team_image{
    position: relative;
    overflow: hidden;
    z-index: 0;
}

.team_image:before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.team:hover .team_image:before{
    opacity: 1;
}

.team_image a{
    display: block;
    width: 100%;
    height: 100%;
}

.team_image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all .3s ease-in-out;
}

.team:hover .team_image img{
    transform: scale(1.1) translateY(10px);
}

.team_content{
    padding: 1rem;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.team_content:after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: var(--bs-primary);
    position: absolute;
    top: -100%;
    left: 0;
    right: 0;
    transition: all 0.3s ease-in-out;
    z-index: -1;
}

.team:hover .team_content:after{
    top: 0;
}

.team_title{
    font-weight: 600;
    margin-bottom: .5rem;
}

.team_title a{
    text-decoration: none;
    color: var(--bs-secondary);
    transition: all 0.3s;
}

.team_designation{
    color: var(--bs-primary);
    letter-spacing: 0.06rem;
}

.team:hover .team_title a,
.team:hover .team_designation{
    color: var(--bs-white);
}

.team_social_icons{
    position: absolute;
    left: 1rem;
    bottom: 1rem;
    overflow: hidden;
    z-index: 2;
}

.team_social_icons ul{
    margin: 0;
    padding: 0;
    list-style: none;
    transition: all .3s ease-in-out;
    transform: translateY(100%);
    position: relative;
    z-index: 1;
}

.team:hover .team_social_icons ul{
    transform: translateY(0);
}

.team_social_icons ul li{
    display: block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background-color: var(--bs-white);
    color: var(--bs-primary);
}

.team_social_icons ul li a{
    width: 100%;
    height: 100%;
    transition: all .3s ease-in-out;
}

.team_social_icons ul li a:hover,
.team_social_icons ul li a:focus{
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

.share{
    display: block;
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    background-color: var(--bs-primary);
    color: var(--bs-white);
    position: relative;
    z-index: 2;
}

/* End Team */

/* News */

.news{
    position: relative;
    border: 1px solid var(--bs-gray-300);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 1.875rem;
}

.news_image{
    position: relative;
    overflow: hidden;
}

.news_image img{
    transition: all .3s ease-in-out;
}

.news:hover .news_image img{
    transform: scale(1.1);
}

.news_overlay{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transition: all .3s ease-in-out;
}

.news:hover .news_overlay{
    background-color: rgba(0, 0, 0, 0.5);
}

.news_overlay .news_icon{
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background-color: var(--bs-primary);
    color: var(--bs-white);
    border-radius: 100%;
    opacity: 0;
    transition: all .3s ease-in-out;
    transform: translateY(50px);
}

.news:hover .news_overlay .news_icon{
    opacity: 1;
    transform: translateY(0);
}

.news_content{
    padding: 1.5625rem 1.875rem;
}

.news_title{
    font-size: 1.375rem;
    font-weight: 600;
    margin-bottom: .5rem;
}

.news_title a{
    color: var(--bs-secondary);
    text-decoration: none;
}

.news_title a:hover,
.news_title a:focus{
    color: var(--bs-primary);
}

.news_meta{
    display: block;
    font-size: 0.875rem;
    margin-bottom: 0.875rem;
    color: var(--bs-gray-600);
}

.news_meta span + span{
    margin-left: 0.625rem;
}

.news_meta a{
    color: var(--bs-secondary);
    text-decoration: none;
}

.news_meta a:hover,
.news_meta a:focus{
    color: var(--bs-primary);
}

.news_content p:last-child{
    margin: 0;
}

.more-link{
    font-weight: 600;
    display: inline-block;
    padding: 0.5rem 1rem;
    background-color: var(--bs-gray-100);
    color: var(--bs-secondary);
    border-radius: 4px;
    text-decoration: none;
    position: relative;
    transition: all .3s ease-in-out;
    vertical-align: middle;
    cursor: pointer;
    max-width: fit-content;
}

.more-link:hover,
.more-link:focus{
    text-decoration: none;
    color: var(--bs-white);
}

.more-link:before{
    content: '';
    display: block;
    width: 100%;
    height: 0;
    background-color: var(--bs-primary);
    position: absolute;
    left: 0;
    bottom: 0;
    transition: all .3s ease-in-out;
    z-index: -1;
}

.more-link:hover:before,
.more-link:focus:before{
    height: 100%;
}

p:not(.more-link-container) .more-link{
    display: block;
    margin-top: 1rem;
}

/* End News */

/* Contact */

.contact_section{
    padding-bottom: 0;
}

.contact_section_form{
    padding: 1.875rem;
    background-color: var(--bs-gray-100);
    border: 1px solid var(--bs-gray-300);
    margin-bottom: 1.875rem;
    border-radius: 4px;
}

.wpcf7 label{
    font-weight: 600;
}

.wpcf7 label,
.wpcf7 .wpcf7-form-control-wrap{
    display: block;
}

.wpcf7 .wpcf7-form-control-wrap{
    margin-top: 0.5rem;
}

.wpcf7-checkbox .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item{
    margin-left: 0;
}

.wpcf7-checkbox .wpcf7-list-item + .wpcf7-list-item,
.wpcf7-radio .wpcf7-list-item + .wpcf7-list-item{
    margin-left: 1rem;
}

.wpcf7-form p{
    margin-bottom: 0.8rem;
}

.contact_bottom{
    background-color: var(--bs-primary);
    color: var(--bs-white);
    padding: 1.5625rem 0;
}

.contact_info{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

@media screen and ( max-width: 768px ){

    .contact_info{
        justify-content: start;
        margin-bottom: 1rem;
    }

    .contact_bottom .col-12 + .col-12{
        margin-top: 1rem;
    }

}

.contact_info_icon{
    font-size: 2rem;
}

.contact_info_title{
    font-size: 1.125rem;
    margin-bottom: 0;
}

.contact_info_content p{
    margin-bottom: 0;
}

/* End Contact */

/* Page Header */

.page_header{
    position: relative;
}

.page_header_above{
    position: relative;
    background-color: var(--bs-gray-100);
    overflow: hidden;
    z-index: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    background-attachment: var(--bs-subheader-bg-attachment);
    display: flex;
    align-items: center;
    min-height: 120px;
}

.page_header_above.has_section_bg_image:before{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: var(--bs-subheader-bg-color);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    opacity: var(--bs-subheader-bg-alpha);
}

.page_header_above.has_section_bg_image .page_header_title{
    color: var(--bs-white);
}

.page_header_title{
    font-size: 2.25rem;
    margin-bottom: 0;
}

.page_header_below{
    padding: 12px 0;
    position: relative;
}

.breadcrumbs{
    margin-bottom: 0;
    padding: 0;
    list-style: none;
}

.breadcrumbs li{
    display: inline-block;
    font-size: 0.75rem;
}

.breadcrumbs li + li{
    margin-left: .5rem;
}

.breadcrumbs li a{
    position: relative;
    text-decoration: none;
}

.breadcrumbs li a:after{
    content: '/';
    display: inline-block;
    margin-left: .5rem;
    color: var(--bs-secondary);
}

/* End Page Header */

/* Error Page */

.error_code,
.error_code b{
    font-size: 20.625rem;
    letter-spacing: 0.6258rem;
    font-weight: 600;
    line-height: 1;
}

.error_code b{
    color: var(--bs-primary);
}

.error_title {
    font-size: 2.25rem;
    letter-spacing: 0.2rem;
    margin-bottom: 0.938rem;
}

.error_subtitle{
    font-size: 1.125rem;
}

/* End Error Page */

/* Widgets */

@media screen and ( max-width: 768px ){
    .secondary{
        margin-top: 1.875rem;
    }
}

.sidebar .widget {
    border: 1px solid var(--bs-gray-200);
    padding: 1.563rem 1rem 1.563rem;
    margin-bottom: 1.75rem;
}

.widget .widget-title{
    font-size: 1.375rem;
    font-weight: 600;
    margin-bottom: 2.875rem;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
}

.sidebar .widget .widget-title{
    text-transform: none;
    letter-spacing: 0;
    position: relative;
    padding: 0.625rem 0.9375rem;
    margin: -25px -16px 1.325rem;
    background-color: #E6EAEF;
    background-image: linear-gradient(0deg, #E6EAEF, white);
    color: var(--bs-secondary);
}

.widget .widget-title img{
    display: inline-block;
}

.widget a{
    text-decoration: none;
}

.widget a:hover,
.widget a:focus{
    text-decoration: none;
}

.widget ul,
.widget ol{
    margin: 0;
    padding: 0;
    list-style: none;
}

.widget ul li{
    padding: 0.4375rem 0;
}

.widget ul li a:hover,
.widget ul li a:focus{
}

.widget ul ul,
.widget ol ol{
    padding-left: 1rem;
    margin-top: 0.4375rem;
}

.widget ul ul li:last-child{
    padding-bottom: 0;
}

.widget.widget_search .search-form{
    display: flex;
    align-items: center;
    gap: 1rem;
    justify-content: space-between;
}

.widget.widget_search .search-form label{
    width: 100%;
}

.widget.widget_search .search-form .search-submit{
    word-break: normal;
}

.widget.widget_tag_cloud .tagcloud a{
    font-size: 0.875rem !important;
    border: 1px solid var(--bs-gray-300);
    color: var(--bs-secondary);
    padding: 0.375rem 0.75rem;
    display: inline-block;
    margin: 0 0.3125rem 0.3125rem 0;
    border-radius: 4px;
}

.widget.widget_tag_cloud .tagcloud a:hover,
.widget.widget_tag_cloud .tagcloud a:focus{
    border-color: var(--bs-primary);
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

.widget.widget_calendar a{
    color: var(--bs-primary);
}

.widget.widget_calendar table th,
.widget.widget_calendar table td{
    text-align: center;
}

.widget.widget_rss .rss-date,
.widget.widget_rss cite,
.widget.widget_rss .rssSummary{
    font-size: 0.8125rem;
}

.widget.widget_rss .rss-date{
    color: #6c757d;
}

.editor-styles-wrapper .wc-block-components-review-list-item__item, 
.wc-block-components-review-list-item__item,
.wc-block-components-review-list-item__item p{
    margin: 0;
}

.footer:not(.has_section_bg_image) .widget.widget_calendar table,
.footer:not(.has_section_bg_image) .widget.widget_calendar table th,
.footer:not(.has_section_bg_image) .widget.widget_calendar table td{
    border-color: var(--bs-gray-600);
}

.footer:not(.has_section_bg_image) .widget.widget_calendar table th{
    background: none;
}

.footer:not(.has_section_bg_image) .widget.widget_tag_cloud .tagcloud a{
    border-color: var(--bs-gray-600);
    color: var(--bs-white);
}

.footer:not(.has_section_bg_image) .widget.widget_tag_cloud .tagcloud a:hover,
.footer:not(.has_section_bg_image) .widget.widget_tag_cloud .tagcloud a:focus{
    border-color: var(--bs-primary);
    color: var(--bs-white);
}

.footer:not(.has_section_bg_image) input:not([type="submit"],[type="reset"],[type="checkbox"],[type="radio"]),
.footer:not(.has_section_bg_image) select,
.footer:not(.has_section_bg_image) textarea{
    border-color: var(--bs-gray-800);
    background-color: var(--bs-gray-900);
    color: var(--bs-white);
}


/* End Widgets */

/* Post */

.main{
    padding: 2.8125rem 0;
}

.theme_post{
    margin-bottom: 3rem;
}

.theme_post:last-child{
    margin-bottom: 0;
}

.post_thumbnail{
    position: relative;
    margin-bottom: 1.125rem;
}

.entry-header{
    margin-bottom: 1rem;
}

.entry-title{
    margin-bottom: 1.125rem;
}

.entry-title a{
    text-decoration: none;
    color: var(--bs-secondary);
}

.entry-title a:hover,
.entry-title a:focus{
    color: var(--bs-primary);
}

.entry-meta{
    color: var(--bs-gray-600);
}

.entry-meta span{
    display: inline-block;
}

.entry-meta span + span{
    margin-left: 1rem;
}

.entry-meta a{
    text-decoration: none;
    color: var(--bs-secondary);
}

.entry-meta a:hover,
.entry-meta a:focus{
    color: var(--bs-primary);
}

.entry-meta time + time{
    margin-left: .5rem;
}

.entry-footer{
    color: var(--bs-gray-600);
}

.entry-footer span{
    display: inline-block;
}

.entry-footer span + span{
    margin-left: 1rem;
}

.entry-footer a{
    text-decoration: none;
    color: var(--bs-secondary);
}

.entry-footer a:hover,
.entry-footer a:focus{
    color: var(--bs-primary);
}

.author-block{
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 3rem 0;
}

.author_title{
    margin-bottom: .5rem;
}

.author-block img{
    border-radius: 100px;
    border: 1px solid var(--bs-gray-300);
}

.author-block a{
    text-decoration: none;
    color: var(--bs-secondary);
}

.author-block a:hover,
.author-block a:focus{
    color: var(--bs-primary);
}

.comment-form-rating {
    display: block;
    clear: both;
    margin-top: 0.625rem;
}

/* Comments */

.comments-area{
    border-radius: 4px;
}

.comments-title{
    margin-bottom: 1.75rem;
}

.comment-form {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 0 2.5rem;
}

.comments-area form p{
    vertical-align: middle;
}

.comment-form-comment,
.comment-form-url{
    flex-basis: 100%;
}

.comment-form-author,
.comment-form-email{
    flex: auto;
}

.comments-area form p label{
    margin-bottom: 0.625rem;
}

.comments-area form p label span,
.comments-area form p input + label{
    display: inline-block;
}

.comments-area form p [type="checkbox"]{
    vertical-align: sub;
    margin-right: 0.325rem;
}

.comment-list,
.comment-list .children {
    list-style: none;
    margin: 0;
    padding: 0;
}

.comment-body {
    margin-left: 4.0625rem;
}

.comment-author {
    position: relative;
    z-index: 2;
}

.comment-author a{
    text-decoration: none;
}

.comment-author.vcard a{
    color: #ffffff;
}

.comment-author .avatar {
    width: 3.125rem;
    height: 3.125rem;
    position: absolute;
    left: -4.5625rem;
    border: 2px solid;
    border-color: var(--bs-gray-300);
    border-radius: 50%;
    padding: 2px;
    background-color: var(--bs-white);
}

.comment-author .says {
    display: none;
}

.comment-meta {
    display: flex;
    align-items: center;
    margin-bottom: 1.5em;
    background-color: var(--bs-secondary);
    justify-content: space-between;
    padding: 0.375rem 0.75rem;
}

.comment-metadata a {
    color: var(--bs-white);
    text-decoration: none;
}

.comment-awaiting-moderation{
    color: var(--bs-white);
}

.comment-metadata a.comment-edit-link {
    margin-left: 1rem;
    background-color: var(--bs-primary);
    color: var(--bs-white);
    padding: 0.3125rem 0.625rem;
    border-radius: 1.5625rem;
    font-size: .725rem;
}

.comment-metadata a.comment-edit-link:hover{
    background-color: var(--bs-primary);
}

.comment-body {
    margin-bottom: 2.5rem;
    background-color: var(--bs-gray-100);
}

.comment .comment-respond{
    margin-left: 4.0625rem;
}

.comment-content{
    margin: 0 1.25rem;
}

.comment-content a{
    color: var(--bs-primary);
}

.comment-body .reply{
    display: flex;
    align-items: center;
    justify-content: end;
    margin: 0 1.25rem;
}

.comment-reply-link{
    text-decoration: none;
    margin-bottom: 1rem;
    background-color: var(--bs-primary);
    color: #ffffff;
    padding: 0.225rem 0.625rem;
    font-size: .825rem;
    border-radius: 4px;
}

.comment-reply-link:hover{
    background-color: var(--bs-secondary);
    color: var(--bs-white);
}

.comment-reply-link .icon {
    color: #222;
    left: -2rem;
    height: 1rem;
    position: absolute;
    top: 0;
    width: 1rem;
}

.children .comment-author .avatar {
    width: 1.875rem;
    height: 1.875rem;
    left: -3.3125rem;
}

.no-comments,
.comment-awaiting-moderation {
    font-style: italic;
}

.comments-pagination {
    margin: 2rem 0 3rem;
}

.comment-reply-title a{
    text-decoration: none;
}

.nav-links{
    margin-bottom: 1rem;
}

.nav-links .page-numbers{
    width: 35px;
    height: 35px;
    line-height: 35px;
    text-align: center;
    display: inline-block;
    background-color: var(--bs-secondary);
    color: var(--bs-white);
    text-decoration: none;
    border-radius: 100%;
    transition: all .3s ease-in-out;
    border: 0;
}

.nav-links .page-numbers:hover,
.nav-links .page-numbers:focus{
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

.woocommerce nav.woocommerce-pagination {
    text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
    display: inline-block;
    white-space: nowrap;
    padding: 0;
    clear: both;
    border: 0;
    border-right: 0;
    margin: 0 0 1rem;
}

.woocommerce nav.woocommerce-pagination ul li {
    border: 0;
    padding: 0;
    margin: 0;
    float: left;
    display: inline;
    overflow: hidden;
}

.woocommerce nav.woocommerce-pagination ul li + li{
    margin-left: 5px;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
    margin: 0;
    text-decoration: none;
    padding: 0;
    line-height:1;
    font-size: 1em;
    font-weight: 400;
    padding: .5rem;
    width: 2.1875rem;
    height: 2.1875rem;
    display: block;
    background-color: var(--bs-secondary);
    color: var(--bs-white);
    border-radius: 100%;
}

.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

/* End Post */

/* Footer */

.footer{
    background-color: var(--bs-secondary-dark);
    color: var(--bs-gray-500);
    position: relative;
    overflow: hidden;
}

.footer a{
    color: var(--bs-gray-500);
    text-decoration: none;
    transition: all .3s ease-in-out;
}

.footer a:hover,
.footer a:focus{
    color: var(--bs-primary);
}

.footer.has_section_bg_image,
.footer.has_section_bg_image a{
    color: var(--bs-white);
}

.footer.has_section_bg_image a:hover,
.footer.has_section_bg_image a:focus{
    color: var(--bs-primary);
}

.footer-middle{
    padding: 2.8125rem 0;
    position: relative;
}

.footer-middle .widget,
.footer-middle .widget .widget-title{
    margin-bottom: 1.5rem;
}

.footer:not(.has_section_bg_image) .footer-bottom{
    background-color: var(--bs-secondary);
}

.footer-bottom{
    padding: 1.5625rem 0;
    position: relative;
}

.copyright{
    margin-bottom: 0;
}

.footer-menus,
.footer-menus ul{
    margin: 0;
    padding: 0;
    list-style: none;
    display: inline-block;
}

.footer-menus li{
    display: inline-block;
    position: relative;
}

.footer-menus li a{
    padding: 0 0.75rem;
}

.footer-menus > li > a{
    padding: 0 0.75rem;
    color: var(--bs-gray-500);
}

.footer-menus > li:hover > a,
.footer-menus > li:focus > a{
    color: var(--bs-white);
}

.footer-menus ul{
    min-width: 200px;
    margin: 0;
    padding: 0;
    position: absolute;
    bottom: 100%;
    left: 0;
    z-index: 9999;
    background-color: var(--bs-white);
    transform-origin: bottom;
    animation-fill-mode: forwards;
    transform: scale(1, 0);
    transition: all 0.2s linear;
}

.footer-menus li:hover > ul,
.footer-menus li:focus-within > ul {
    transform-origin: bottom;
    animation-fill-mode: forwards;
    transform: scale(1, 1);
    transition: all 0.2s linear;
}

.footer-menus ul li{
    display: block;
}

.footer-menus ul li + li{
    border-top: 1px solid var(--bs-gray-200);
}

.footer-menus ul > li > a{
    color: var(--bs-secondary);
}

.footer-menus ul > li:hover > a,
.footer-menus ul > li:focus > a{
    color: var(--bs-primary);
}

.footer-menus ul ul{
    bottom: 0;
    left: 100%;
}

.footer-menus li.menu-item-has-children > a, 
.footer-menus li.page_item_has_children > a{
    padding-right: 1.875rem;
}

.footer-menus li.menu-item-has-children > a::after, 
.footer-menus li.page_item_has_children > a::after {
    content: "\f107";
    font-family: 'FontAwesome';
    margin-left: 0.625rem;
    margin-right: 0;
    position: absolute;
    right: 0.625rem;
    transform: translate(0%, -50%);
    -moz-transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    -o-transform: translate(0%, -50%);
    position: absolute;
    top: 50%;
}

.footer-menus ul li.menu-item-has-children > a::after,
.footer-menus ul li.page_item_has_children > a::after{
    transform: translate(0%, -50%) rotate(-90deg);
    -moz-transform: translate(0%, -50%) rotate(-90deg);
    -webkit-transform: translate(0%, -50%) rotate(-90deg);
    -ms-transform: translate(0%, -50%) rotate(-90deg);
    -o-transform: translate(0%, -50%) rotate(-90deg);
}

.back_to_top{
    display: block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background-color: var(--bs-primary);
    color: var(--bs-white);
    border-radius: 4px;
    transition: all .3s ease-in-out;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10;
}

.back_to_top:hover,
.back_to_top:focus{
    color: var(--bs-white);
}

/* End Footer */

/* Product */

.product_single{
    position: relative;
    border: 1px solid var(--bs-gray-300);
    border-radius: 4px;
    z-index: 0;
    margin-bottom: 1rem;
    overflow: hidden;
}

.product_thumbnail{
    position: relative;
    overflow: hidden;
}

.product_thumbnail img{
    margin-bottom: 0;
    transition: all 1.5s ease;
}

.product_single:hover .product_thumbnail img,
.product_single:focus-within .product_thumbnail img{
    transform: scale(1.1);
}

.product_thumbnail .product_single_effect_img{
    background: #333;
    background: rgba(0, 0, 0, .6);
    text-align: center;
    opacity: 0;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    left: 0;
    visibility: hidden;
    overflow: hidden;
    backface-visibility: hidden;
    background-size: contain !important;
    transition: all 1.5s ease-in;
    transform: translate(265px, 145px) rotate(45deg);
}

.product_single:hover .product_thumbnail .product_single_effect_img, 
.product_single:focus-within .product_thumbnail .product_single_effect_img {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition-delay: .2s;
    -moz-transition-delay: .2s;
    transition-delay: .2s;
    visibility: visible;
    opacity: 1;
    -webkit-transition-delay: .2s;
    -moz-transition-delay: .2s;
    transition-delay: .2s;
}

.product_thumbnail .yith-wcqv-button{
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    display: block;
    background-color: var(--bs-secondary);
    color: var(--bs-white);
    border-radius: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transition: all .3s ease-in-out;
    transform: translateX(-50%) translateY(-20%);
    opacity: 0;
    z-index: 10;
}

.product_thumbnail .yith-wcqv-button:hover,
.product_thumbnail .yith-wcqv-button:focus{
    background-color: var(--bs-primary);
}

.product_single:hover .product_thumbnail .yith-wcqv-button{
    opacity: 1;
    transform: translateX(-50%) translateY(-50%);
}

.product_single .sale_ribbon, 
.woocommerce span.onsale {
    font-size: 0.8125rem;
    font-weight: 600;
    text-align: center;
    padding: 0.325rem 0.75rem;
    display: block;
    border-radius: 4px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--bs-white);
    background: var(--bs-primary);
    box-shadow: 0 0 12px rgb(255 255 255 / 35%);
    position: absolute;
    top: 1rem;
    left: 1rem;
    z-index: 1;
    margin: 0;
}

.product_single .product_content_outer {
    position: relative;
}

.product_single .product_content{
    padding: 15px 12px 16px;
    text-align: center;
}

.product_single a,
.product_single a:hover,
.product_single a:focus{
    text-decoration: none;
}

.product_single h3.product_title{
    font-size: 1.125rem !important;
    font-weight: 600;
    padding: 0 !important;
    margin-bottom: .875rem !important;
}

.product_single h3.product_title a{
    color: var(--bs-secondary);
}

.product_single h3.product_title a:hover,
.product_single h3.product_title a:focus{
    color: var(--bs-primary);
}

.product_single .product_price{
    font-weight: 500;
    column-gap: 0.375rem;
    color: var(--bs-primary);
}

.product_single .product_actions{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    gap: 1px;
    transition: all .3s ease-in-out;
    border-top: 1px solid var(--bs-gray-300);
}

.product_single .product_actions .yith-wcqv-button,
.product_single .product_actions .add_to_wishlist span,
.product_single .product_actions .add_to_cart_button.added{
    display: none !important;
}

.product_single .product_actions .yith-wcwl-add-to-wishlist{
    margin: 0;
}

.product_single .product_actions .add_to_wishlist,
.product_single .product_actions .add_to_cart_button,
.product_single .product_actions .product_type_grouped,
.product_single .product_actions .product_type_external,
.product_single .product_actions .added_to_cart,
.product_single .product_actions .compare,
.product_single .product_actions .wp-element-button{
    display: block;
    padding: 1rem;
    line-height: 1;
    background-color: var(--bs-white);
    color: var(--bs-secondary);
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0;
    text-align: center;
    border: 1px solid transparent;
    transition: all .3s ease-in-out;
}

.product_single .product_actions .add_to_wishlist,
.product_single .product_actions:has(.add_to_wishlist):has(.compare) .compare{
    flex-basis: 50px;
}

.product_single .product_actions .add_to_cart_button,
.product_single .product_actions .product_type_grouped,
.product_single .product_actions .product_type_external,
.product_single .product_actions .added_to_cart,
.product_single .product_actions .wp-element-button{
    flex-basis: 100%;
}

.product_single .product_actions:has(.compare) .add_to_cart_button,
.product_single .product_actions:has(.compare) .product_type_grouped,
.product_single .product_actions:has(.compare) .product_type_external,
.product_single .product_actions:has(.compare) .added_to_cart,
.product_single .product_actions:has(.compare) .wp-element-button{
    flex-basis: calc(100% - 50px);
}

.product_single .product_actions:has(.add_to_wishlist):has(.compare) .add_to_cart_button,
.product_single .product_actions:has(.add_to_wishlist):has(.compare) .product_type_grouped,
.product_single .product_actions:has(.add_to_wishlist):has(.compare) .product_type_external,
.product_single .product_actions:has(.add_to_wishlist):has(.compare) .added_to_cart,
.product_single .product_actions:has(.add_to_wishlist):has(.compare) .wp-element-button{
    flex-basis: calc(100% - 100px);
}

.product_single .product_actions .add_to_wishlist:hover,
.product_single .product_actions .add_to_wishlist:focus,
.product_single .product_actions .compare:hover,
.product_single .product_actions .compare:focus{
    background-color: var(--bs-white);
    color: var(--bs-primary);
}

.product_single .product_actions .add_to_cart_button:hover,
.product_single .product_actions .add_to_cart_button:focus,
.product_single .product_actions .product_type_grouped:hover,
.product_single .product_actions .product_type_grouped:focus,
.product_single .product_actions .product_type_external:hover,
.product_single .product_actions .product_type_external:focus,
.product_single .product_actions .added_to_cart.wc-forward,
.product_single .product_actions .added_to_cart.wc-forward{
    background-color: var(--bs-secondary);
    border-color: var(--bs-secondary);
    color: var(--bs-white);
}

.product_single .product_actions .add_to_wishlist{
    border-right: 1px solid var(--bs-gray-300);
}

.product_single .yith-wcwl-wishlistexistsbrowse .feedback{

}

.product_single .yith-wcwl-wishlistexistsbrowse .feedback + [data-title]{
}

.product_single .product_actions .compare{
    border-left: 1px solid var(--bs-gray-300);
}

.product_single .product_actions .yith-wcwl-wishlistaddedbrowse{
    display: flex;
    align-items: center;
}

.product_single .product_actions .yith-wcwl-wishlistaddedbrowse .feedback{
    max-width: 25px;
    white-space: nowrap;
    overflow: hidden;
    display: inline-block;
    margin-left: 12px;
}

.product_single .product_actions .yith-wcwl-wishlistaddedbrowse .feedback i{
    color: red;
}

.woocommerce ul.products li.product .button {
    margin-top: 0;
}

/* End Product */

/* WP Block */

.wp-block-button a.wp-block-button__link{
    border-color: inherit;
}