/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.18.2
*/

/*************** ADD CUSTOM CSS HERE. ***************/
@font-face {
    font-family: 'Inter';
    src: url(./assets/fonts/inter/inter-light.woff2) format('woff2');
    font-weight: 300;
}
@font-face {
    font-family: 'Inter';
    src: url(./assets/fonts/inter/inter-semi.woff2) format('woff2');
    font-weight: 500;
}

@font-face {
    font-family: 'Inter';
    src: url(./assets/fonts/inter/inter-semibold.woff2) format('woff2');
    font-weight: 600;
}
@font-face {
    font-family: 'Inter';
    src: url(./assets/fonts/inter/inter-extrabold.woff2) format('woff2');
    font-weight: 600;
}

@font-face {
    font-family: 'Philosopher';
    src: url(./assets/fonts/philosopher/Philosopher-Bold.ttf) format('truetype');
    font-weight: 700;
}

:root {
    --color-black: #353030;
    --color-white: #ffffff;
    --color-grey: #cccccc;
    --FontAwesome: 'Font Awesome 5 Free';
    --font-html-size: 62.5%;
}

html {
    font-size: var(--font-html-size);
}

body {
    font-size: 1.6rem !important;
}

h1,
.h1 {
    font-size: 2em;
}

h2,
.h2 {
    font-size: 2.625em;
}

.bigger h2 {
    font-size: 2.6875em;
    font-weight: 500 !important;
}

h3,
.h3 {
    font-size: 1.75em;
}

h4,
.h4 {
    font-size: 1.5em;
}

h5,
.h5 {
    font-size: 1.25em;
}

h6,
.h6 {
    font-size: 1.25em;
}

.section-title-container :is(h1, h2, h3, h4, h5, h6) {
    margin-bottom: 0;
}

.section-title-normal {
    border-bottom: 0;
}

.section-title-normal span {
    border-bottom: 0;
    margin-bottom: 0;
    margin-right: 0;
    padding-bottom: 0;
}

.section-title-container h1 {
    font-size: 3.2rem;
}

p {
    margin-bottom: 1.5rem;
}

.dark,
.dark p,
.dark td {
    color: var(--color-white);
}

.dark .widget a:not(:hover),
.dark a:not(:hover) {
    color: #e9e6d7;
}

.col-child-left > .col-inner {
    margin-right: auto !important;
    margin-left: 0 !important;
}
.col-child-center > .col-inner {
    margin-right: auto !important;
    margin-left: auto !important;
}

.col-child-right > .col-inner {
    margin-right: 0 !important;
    margin-left: auto !important ;
}

.off-canvas-left .mfp-content,
.off-canvas-right .mfp-content {
    background-color: hsla(0, 0%, 100%, 1);
}

.off-canvas:not(.off-canvas-center) .nav-vertical li > a {
    font-size: 1em;
    text-transform: capitalize;
    font-weight: 500;
    color: var(--color-black);
}

.fw-300,
.fw-300 > * {
    font-family: 'Inter', sans-serif;
    font-weight: 300 !important;
}

.fw-500,
.fw-500 > * {
    font-family: 'Inter', sans-serif;
    font-weight: 500 !important;
}

.fw-600,
.fw-600 > * {
    font-family: 'Inter', sans-serif;
    font-weight: 600 !important;
}

.fw-800,
.fw-800 > * {
    font-family: 'Inter', sans-serif;
    font-weight: 800 !important;
}

.last-reset > p:has(+ style) {
    margin-bottom: 0;
}

.rank-math-breadcrumb {
    color: #454545;
}

.dark .rank-math-breadcrumb {
    color: var(--color-white);
}

.rank-math-breadcrumb .separator {
    margin: 0 0.5rem;
}

.rank-math-breadcrumb p {
    margin-bottom: 0;
}

.rank-math-breadcrumb a {
    color: currentColor;
}

.rank-math-breadcrumb .last {
    font-weight:500;
    color: #5f4727;
}

.dark .rank-math-breadcrumb .last {
    color: currentColor;
}

.box .box-text {
    font-size: 1em;
    padding-bottom: 1rem;
    padding-top: 1rem;
}

.box .box-text .post-title {
    font-weight: 500;
    margin-bottom:0.8rem;
}

.box .box-text .post-title.is-larger {
    font-size: 1.375em;
    margin-bottom: 1rem;
}

.box .box-text .post-title.is-xxlarge {
    font-size: 1.75em;
}

.box .box-text .post-title svg {
    width: 16px;
    height: 16px;
    margin-left: 1.5rem;
}

.box .box-text .post-title svg path {
    fill: currentColor;
}

.dark .box .box-text .post-title a {
    color: #fff;
}

 .from_the_blog_excerpt {
    font-size:1.4rem;
}

.box .box-text .button.is-link {
    text-transform: initial;
    font-size: 1em;
    margin-top: 0rem;
}

.box .box-text .button.is-link:after {
    content: '→';
}

.box .box-text .button.is-outline {
    color: #fff;
    padding: 0.6rem;
}

.button.is-outline,
input[type='button'].is-outline,
input[type='reset'].is-outline,
input[type='submit'].is-outline {
    border: 1px solid;
}

.button.is-outline {
    line-height: 2.4em;
}

.button,
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
    font-size: 1em;
    font-weight: 400;
    letter-spacing: 0;
}


.back-to-top.button {
        border-radius: 0 !important;
    border: none;
    background-color: var(--fs-color-secondary);
    color: var(--color-white);
    right: 5px;
    top: calc(25% + 140px);
    bottom: auto;
    width: 4rem;
    height: 4rem;
    margin: 0;
    line-height: 4rem !important;
    min-height: 4rem;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.25);
}

#button-contact-vr {
    position: fixed;
    bottom: auto;
    z-index: 99999;
    left: auto !important;
    top: 25%;
    right: 5px !important;
}

#button-contact-vr .button-contact {
    position: relative;
    margin-top: 5px;
        background-color: var(--fs-color-secondary);
        box-shadow: 0 0 5px 0 rgba(0,0,0,0.25);
}

#button-contact-vr .button-contact .phone-vr {
    width: 40px;
    height: 40px;
}
#button-contact-vr  .phone-vr-circle-fill {
    width: 40px;
    height: 40px;
    top: 0;
    left: 0;
    -webkit-animation: unset;
    animation: unset;
        box-shadow: unset;
    background-color: unset !important;
}

#button-contact-vr  .phone-vr-img-circle {
    width: 40px;
    height: 40px;
    line-height: 40px;
    top: 0;
    left: 0;
        background-color: unset !important;
    -webkit-animation: unset;
    animation: unset
}

#button-contact-vr img {
        max-height: 27px;
}


#button-contact-vr  #fanpage-vr img {
    max-width: 24px;
    max-height: 24px;
}

/*************** HEADER  ***************/
#header #masthead .header-nav {
     padding-top: 0.8rem;
}

/*#header #logo img {*/
/*    max-height: 56px;*/
/*}*/

#header .header-block {
    width: auto;
}

#header .header-search {
    padding: 1.5rem;
    margin-left: 3rem;
}

#header .header-search .button.icon {
    background-color: #e9e6d7;
    min-height: 2rem;
    line-height: 2rem;
    border: none;
    min-width: 2rem;
}

#header .header-search .button.icon .icon-search {
    font-size: 1rem !important;
    color: var(--fs-color-primary);
}

#header #masthead .header-nav > li > a {
    font-size: 1.3rem;
    padding: 1rem 1.5rem;
}

#header #masthead .header-nav > li.active > a {
    background-color: var(--fs-color-secondary);
    font-size: 1.5rem;
   border-radius: 4px;
}

#header #masthead .header-nav > li + li > a:before {
    content: '';
    left: 0;
    top: 50%;
    width: 2px;
    background-color: #f5e6bd;
    height: 16px;
    position: absolute;
    transform: translateY(-50%);
    opacity: 1;
}

#header #masthead .header-nav > li.active > a:before,
#header #masthead .header-nav > li.active + li > a:before {
    content: unset;
}

#header .tabbed-content .nav > li > a {
    color: #49282e;
    font-size: 1.7rem;
    position: relative;
    display: inline-block;
    width: auto;
    flex: 0 0 auto;
}

#header .tabbed-content .nav > li > a:after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    background-color: currentColor;
    left: 0;
    bottom: 0;
    transition: all 0.3s ease-in-out;
}

#header .tabbed-content .nav > li:hover > a,
#header .tabbed-content .nav > li.active > a {
    color: #93735b;
}

#header .tabbed-content .nav > li.active > a {
    font-weight: 500;
}

#header .tabbed-content .nav > li.active > a:after {
    width: 100%;
}
#header .tabbed-content .nav-vertical + .tab-panels {
    border-left: none;
    padding: 0 1.5rem;
}

#header .tabbed-content .nav-vertical > li + li {
    border-top: none;
}

#header .menu-item-has-block .nav-dropdown {
    padding: 3rem;
}

/*************** END HEADER ***************/

/*************** FOOTER ***************/
.social-icons .button.icon:not(:hover) {
    background-color: var(--fs-color-secondary) !important;
    border-color: var(--fs-color-secondary) !important;
}

.dark .social-icons .button.icon:not(:hover) {
    background-color: #e9e6d7 !important;
    border-color: #e9e6d7 !important;
}

.dark .social-icons .button.icon:not(:hover) i {
    color: var(--fs-color-secondary) !important;
}

.social-icons .button.icon {
    margin-bottom: 6px;
    margin-left: 3px;
    margin-right: 3px;
}

.share-icons-title {
    font-weight: 500;
    padding-right: 10px;
    font-size: 1.5rem;
    color: var(--fs-color-secondary);
}

.social-icons .button.icon i {
    top: -0.5px;
}


#footer .wpcf7-form {
    border-bottom: 1px solid #b5b5b5;
}
#footer .wpcf7-form button,
#footer .wpcf7-form input {
    box-shadow: none !important;
    background-color: transparent !important;
    border: none !important;
    margin: 0;
    padding: 0;
    outline: none;
        border-radius: 0;
}


#footer input:-webkit-autofill,
#footer input:-webkit-autofill:hover,
#footer input:-webkit-autofill:focus,
#footer input:-webkit-autofill:active {
    -webkit-background-clip: text;
    -webkit-text-fill-color: #ccc !important; 
    caret-color:#fff
}
#footer .wpcf7-form input::placeholder {
    color: #ccc;
    font-size: 1.8rem;
    font-weight: 500;
}

#footer .footer-section {
    padding-left: 2rem;
    padding-right: 2rem;
}

#footer .absolute-footer {
    color: #2d2926;
    font-size: 1em;
    padding: 1rem 3rem 5rem;
    display: none;
}

#footer .absolute-footer > .container {
    max-width: 100%;
    padding: 0 6rem;
    border-bottom: 1px solid #d9d9d9;
}

#footer .logo {
    max-width: 32rem;
    margin-left: -15px;
}

#footer .ux-menu a {
    font-weight: 500;
    padding: 0.2rem 0;
    min-height: unset;
    font-size: 1.8rem;
}

#footer h4 {
    font-size: 2rem;
    color: #f5e6bd;
    font-weight: 500;
}

#footer .footer-logo {
    max-width:15rem;
}

/*************** END FOOTER ***************/

/*************** PRODUCT ARCHIVE ***************/
.product-banner {
    background-color: transparent;
}

.product-banner h2 {
    font-size: 2.25em;
    line-height: 1.5;
    text-shadow: 4px 5px 5px rgba(0, 0, 0, 25%);
    letter-spacing: 2px;
}

.product-archive {
    background-color: var(--color-white);
}

.rank-math-breadcrumbs-container.highlight {
    background-color: #e9e6d7;
}

.product-archive .rank-math-breadcrumbs-container {
    background-color: #ecebe6;
    padding: 1rem 0;
}

.product-cat-list-section {
    background-color: #e9e6d7;
}

.archive-product-cat-title {
    background: linear-gradient(to right, #723b06 0%, #8f7f4f 100%);
    padding: 0.6rem 0;
    margin-bottom: 1.5rem;

}

.archive-product-cat-title  h2 {
    font-size:2.4rem;
    font-weight: 500;
    letter-spacing: 1.5px;
}

.product-archive .product-cat-list {
    list-style: none;
    margin-bottom: 0;
}

.product-archive .product-cat-list li {
    display: inline-block;
    margin: 0;
    padding: 0.4rem 4rem;
    text-align:center;
    border-right: 1px solid #ABABAB;
}

.product-archive .product-cat-list li:first-child {
    text-align:left;
}
.product-archive .product-cat-list li:last-child  {
    padding-right: 0;
    border-right: 0;
}


.product-archive .product-cat-list li a {
    display: inline-block;
    color: #462c00;
        padding: 0.5rem 0;
}

.product-archive .product-cat-list li.active a {
    color: var(--fs-color-secondary);
     border-bottom: 1px solid #B3864B;
}



.product-archive .product-cat-list li:first-child a {
    padding-left: 0;
}


.product-archive .product-cat-list li .icon {
    position: relative;
    top: 2px;
    fill: currentColor;
    margin-right: 12px;
}

.product-archive .product-cat-list li svg {
    height: auto;
    width: 24px;
}

.product-archive .product-cat-list li svg path {
    fill: currentColor;
}

label,
legend {
    display: block;
    font-size: 1em;
    font-weight: 400;
    margin-bottom: 0;
    color: currentColor;
}

.search-form-section {
    background-color: #e9e6d7;
    padding: 1.5rem 0;
}

.orderby-group {
    flex: 1;
}

.orderby-group .orders-group-title {
    font-size: 1.4rem;
    font-weight: 300;
    margin-right: 3rem;
}

.custom-checkbox {
    position: relative;
    display: inline-block;
}

.custom-checkbox + .custom-checkbox {
    margin-left: 3rem;
}

.custom-checkbox input {
    opacity: 0;
    width: 0;
    height: 0;
    display: none;
}

.custom-checkbox .checkbox {
    position: absolute;
    cursor: pointer;
    top: 4px;
    left: 0;
    bottom: 0;
    width: 16px;
    height: 16px;
    background-color: transparent;
    transition: 0.3s;
    border-radius: 50%;
    border: 1px solid #967c68;
}

.custom-checkbox .checkbox:before {
    position: absolute;
    content: '';
    height: 8px;
    width: 8px;
    left: 3px;
    bottom: 3px;
    background-color: transparent;
    transition: 0.3s;
    border-radius: 50%;
}

.custom-checkbox input:checked + .checkbox {
    background-color: var(--fs-color-secondary);
}

.custom-checkbox input:checked + .checkbox:before {
    background-color: var(--color-white);
}
.custom-checkbox .label-text {
    font-size: 1.4rem;
    font-weight: 300;
    padding-left: 2.2rem;
}

.search-form-section > .container {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.search-form-section .searchform-wrapper {
    max-width: 30rem;
    margin-left: 3rem;
}

.search-form-section .searchform-wrapper.form-flat input[type='search'] {
    border-color: #ddd;
    background-color: var(--color-white);
    border-radius: 4px;
}

.search-form-section .searchform .button.icon i {
    font-size: 0.875em;
}

.term-description-section {
    padding: 5rem 0;
    margin-top: 3rem;
    background-color: #f8f8f8;
}

.term-description-section .tax-logo {
    max-width: 12rem;
    margin-bottom: 4rem;
}

.product-archive #post-list {
    padding: 5rem 0;
    overflow: hidden;
    position: relative;
}


.search-results .blog-archive,
.search-results #post-list {
    padding-bottom:0 ;
}



.product-item .box .box-text .button {
    width: 100%;
}

.product-archive #post-list .post-list-bg {
    position: absolute;
    inset: 0;
}

.product-archive #post-list .post-list-bg img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.contact-section .form-sub-title p {
    margin-bottom: 0.5rem;   
}

.contact-section .wpcf7-form input[type='text'],
.contact-section .wpcf7-form input[type='tel'],
.contact-section .wpcf7-form input[type='email'],
.contact-section .wpcf7-form input[type='checkbox'],
.contact-section .wpcf7-form input[type='file'],
.contact-section .wpcf7-form select {
    border-radius: 2px;
    box-shadow: none;
    margin-bottom: 2.4rem;
}

.contact-section .wpcf7-form input[type='checkbox'] {
    margin-right: 5px;
}

.contact-section .wpcf7 span.wpcf7-list-item {
    margin-right: 3rem;
}

.contact-section .wpcf7-form button {
    min-width: 10rem;
    border-radius: 2px;
    text-transform: initial;
    margin-bottom: 0;
}

ul.links {
    font-size: 1em;
    margin: 4px 0;
    position: relative;
    z-index: 10;
}

ul.links li {
    margin: 0;
}

.nav-pagination > li > .page-number.current,
.nav-pagination > li > .page-number:hover {
    background-color: transparent;
    border-color: transparent;
    color: #454545;
}

.dark.nav-pagination > li > .page-number.current,
.dark.nav-pagination > li > .page-number:hover {
    color: #e9e6d7;
}

.nav-pagination > li > a,
.nav-pagination > li > span {
    border: none;
    border-radius: 0;
    font-size: 1.25em;
    font-weight: 500;
    height: 2.5em;
    line-height: 2.5em;
    min-width: 2.5em;
    padding: 0 4px;
    position: relative;
}

.dark.nav-pagination > li > a,
.dark.nav-pagination > li > span {
    color: #f5e6bd !important;
}

.nav-pagination > li + li + li > .page-number:not(.prev, .next)::before {
    border-left: 1px solid #cccccc;
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 22px;
}

.nav-pagination > li > .page-number:not(.prev, .next):after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    width: 12px;
    height: 2px;
    background-color: transparent;
}

.nav-pagination > li > .page-number.current:after,
.nav-pagination > li > .page-number:hover:after {
    background-color: currentColor;
}

.nav-pagination > li > .prev,
.nav-pagination > li > .next {
    border-radius: 50%;
    border: 1px solid !important;
}

.dark.nav-pagination > li > .prev,
.dark.nav-pagination > li > .next {
    color: #f5e6bd;
}

.nav-pagination > li > .prev:hover,
.nav-pagination > li > .next:hover {
    color: #454545 !important;
}

.dark.nav-pagination > li > .prev:hover,
.dark.nav-pagination > li > .next:hover {
    background-color: #f5e6bd;
}

.nav-pagination > li > .prev.disabled,
.nav-pagination > li > .next.disabled {
    cursor: not-allowed;
}

/*************** END PRODUCT ARCHIVE  ***************/

/*************** PRODUCT SINGLE ***************/
.product-info-wrapper {
    background-color: #e9e6d7;
}
.product-info-container .product-info-inner {
    padding: 3rem 3rem 0 !important;
    background-color: var(--color-white);
    margin-bottom: 5rem;
}

.product-gallery {
    display: flex;
    flex-wrap: wrap;
}

.product-gallery-left {
    max-width: 80px;
    margin-right: 2rem;
    flex: 1 1 100%;
    overflow: hidden;
}

.product-gallery-right {
    flex: 1 1 0;
    border: 1px solid #dadada;
    padding: 3rem;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.carousel.carousel-main {
    display: flex;
}

.carousel-nav {
    width: 370px;
    height: 80px;
    transform: rotate(90deg) translate(50px, -100%);
    transform-origin: left top;
}

.carousel-cell {
    transform: rotate(-90deg);
    width: 80px;
    height: 80px;
    cursor: pointer;
    font-size: 1.4rem;
}

.carousel-nav .flickity-slider > div:not(.col).carousel-cell {
    width: 80px !important;
    margin-right: 1rem;
    border: 1px solid #ccc;
    padding: 2px;
}

.carousel-nav .flickity-slider > div:not(.col).carousel-cell.is-selected {
    background-color: #eaa539;
}

.carousel-main .carousel-cell {
    width: 100%;
    font-size: 5rem;
    padding-bottom: 56.25%;
    height: auto;
    transform: none;
}

.carousel-nav .carousel-cell img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.carousel-main .carousel-cell video,
.carousel-main .carousel-cell img {
    width: 100%;
    aspect-ratio: 1/1;
    object-fit: cover;
}

.carousel-cell.video-cell {
    position: relative;
}

.carousel-cell.video-cell i.icon-play {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
}

.product-gallery .flickity-button.previous {
    top: 0;
    left: -40px;
    right: auto;
    bottom: 0;
    margin: auto;
    transform: unset !important;
    opacity: 0.4 !important;
    visibility: visible;
}

.product-gallery .flickity-button.next {
    top: 0;
    left: auto;
    right: -40px;
    bottom: 0;
    margin: auto;
    transform: unset !important;
    opacity: 0.4 !important;
    visibility: visible;
}

.product-info,
.product-tabs,
.product-footer .detail-table{
    font-weight:500;   
}

.product-info h1 {
    font-size: 30px;
    margin-bottom: 0;
    font-weight: 500;
    color: #b8934c;
}

.product-info .product-sku {
    font-size: 2.4rem;
    font-weight: 500;
}

.product-info .short-desccription {
    margin: 1.5rem 0 3rem;
    padding: 0;
}

.product-info .button-group .button {
    display: inline-block;
    height: 42px;
    text-align: center;
    min-width: 18rem;
    line-height: 42px;
    font-size: 16px;
    border-radius: 6px;
    font-weight: 500;
    text-transform: initial;
}

.product-share {
    margin-top: 3rem;
}

.product-share .share-icons-title {
    color: #1f429b;
    font-size: 1.8rem;
    font-weight: 500;
    margin-right: 3rem;
}

.is-outline {
    color: #fff;
}

.product-footer {
    position: relative;
    padding: 0.5rem 0 5rem;
    overflow: hidden;
}

.product-footer-bg {
    position: absolute;
    z-index: 0;
    inset: 0;
}

.product-footer-bg img {
    width: 100%;
}

.product-footer > .container {
    background-color: #fff;
    padding: 30px;
    z-index: 10;
    position: relative;
}

.product-tabs .gallery {
    margin-left: -5px;
    margin-right: -5px;
    width: auto;
}

.product-tabs .gallery .gallery-item {
    padding: 0 5px 10px;
}

.product-tabs .gallery img {
    width: 100%;
}

.product-tabs td,
.product-tabs th {
    padding: 10px;
}

.product-tabs tr:nth-child(even) {
    background-color: #423737;
}

.product-tabs .nav {
    margin-bottom: 1.5rem;
}

.product-tabs .nav > li > a {
    font-family: 'Inter', sans-serif;
    font-size: 2.4rem;
    font-weight: 600;
    color: #dadada;
    text-underline-offset: 8px;
    padding: 1rem 2rem;
}

.product-tabs .nav > li > a:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: currentColor;
    left: 0;
    bottom: 0;
}

.product-tabs .nav > li.active > a {
    color: #b3864b;
}

.product-footer .detail-table {
    border: 1px solid #ccc;
    border-bottom: 0;
    margin-top: 2rem;
}

.product-footer .detail-table > .col > .col-inner {
    padding: 1.5rem;
    border-bottom: 1px solid #ccc;
}

.product-footer .detail-table > .col:nth-child(odd) {
    background-color: #f8f8f8;
    flex-basis: 20%;
    max-width: 20%;
}

.product-footer .detail-table > .col:nth-child(even) {
    flex-basis: 30%;
    max-width: 30%;
}

.accordion .accordion-item {
    background: #efefef;
    margin-bottom: 10px;
}

.accordion .accordion-title {
    padding: 16px 50px;
    background: transparent;
    border-top: 0;
    font-size: 2rem;
}

.accordion .accordion-title.active {
    background-color: transparent;
    color: currentColor;
    font-weight: 400;
}

.accordion .accordion-inner {
    padding: 16px 50px;
    position: relative;
    background-color: var(--color-white);
    
}

.accordion .accordion-title::after {
    content: '';
    background: #a1b52f;
    color: #fff;
    display: block;
    position: absolute;
    left: 24px;
    height: 24px;
    width: 24px;
    font-size: 16px;
    text-align: center;
    line-height: 24px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 100%;
    clip-path: polygon(85% 95%, 0 0%, 0 70%);
}

.accordion .accordion-title::before {
    content: 'Q';
    background: #a1b52f;
    color: #fff;
    display: block;
    position: absolute;
    left: 16px;
    height: 24px;
    width: 24px;
    font-size: 16px;
    text-align: center;
    line-height: 24px;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 100%;
    z-index:1;
}

.accordion .accordion-inner::before {
    content: 'A';
    background:#015b6d;
    color: #fff;
    display: block;
    position: absolute;
    left: 16px;
    height: 24px;
    width: 24px;
    font-size: 16px;
    text-align: center;
    line-height: 24px;
    top: 15px;
    border-radius: 100%;
        z-index:1;
}

.accordion .accordion-inner::after {
    content: '';
    background: #015b6d;
    color: #fff;
    display: block;
    position: absolute;
    left: 24px;
    height: 24px;
    width: 24px;
    font-size: 16px;
    text-align: center;
    line-height: 24px;
    top: 15px;
    border-radius: 100%;
    clip-path: polygon(85% 95%, 0 0%, 0 70%);
}

.accordion .accordion-title .toggle {
    position: absolute;
    right: 10px;
    left: auto;
    top: 50%;
    transform: translateY(-50%);
    color: var(--primary-color);
    opacity: 1;
    font-size: 14px;
}

/*************** END PRODUCT SINGLE ***************/

/*************** ARCHIVE PROJECT ***************/

.projects-banner.banner h2 {
    font-size: 4.6rem;
    font-weight: 500;
    line-height: 1.4;
    color: #f5e6bd;
}

.projects-banner.banner h2 em {
    font-weight: 500;
    text-shadow: 2px 2px 5px rgb(245 230 189 / 80%);
}
.project-archive .rank-math-breadcrumbs-container {
    background-color: #e9e6d7;
    padding: 1rem 0;
}

.project-cat-list-section + #post-list {
    padding: 5rem;
}

.project-cat-list-section {
    background-color: #e9e6d7;
    padding: 0 0 3rem;
}

.project-cat-list-section .section-content {
    padding: 3rem 0 0;
    background-color: var(--color-white);
}

.project-cat-list-section .project-cat-list img {
    aspect-ratio: 16/9;
    object-fit: cover;
    width: 100%;
}

.project-cat-list-section .project-cat-list .cat-label {
    font-size: 2rem;
    text-align: center;
    width: 100%;
    display: block;
    color: var(--color-black);
    padding: 0.5rem;
}

.project-cat-list-section .project-cat-list .cat-item:hover .label span {
    text-decoration: underline;
    text-underline-offset: 8px;
}

.box-label {
    overflow: visible;
}

.box.box-label .box-text {
    background-color: transparent;
    bottom: 2rem;
    box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.1);
    margin: 0;
    opacity: 1;
    padding: 1rem 2rem;
    position: absolute;
    width: auto;
    left: 4rem;
    z-index: 20;
}

.box .is-divider {
    display: none;
}

.col.product-item,
.col.project-item {
    transition: transform 0.5s;
}

.box.box-label .box-text {
    color: #fff;
}

.box.box-label .box-text .post-title {
    color: currentColor;
    font-weight: 500;
}

.dark .box.box-label .box-text .post-title {
    text-shadow: 2px 2px 2px rgba(255, 255, 255, 0.5);
}

.box.box-label .box-text .box-text-inner {
    position: relative;
    z-index: 10;
}

.dark .box.box-label .box-text .post-title a {
    color: #49282e;
}

.box.box-label .box-text:after {
    content: '';
    position: absolute;
    inset: 0;
    background: url(./assets/images/box-label-bg.png) no-repeat;
    background-size: cover;
    background-position: center;
    opacity: 0.7;
}

.dark .box.box-label .box-image {
    background: linear-gradient(to right, #7e4914, #e0cb98);
    padding: 0.5rem;
}

.slider.focus .flickity-slider > .col {
    position: relative;
    padding-bottom: 10% !important;
    opacity: 1;
}

.slider.focus .flickity-slider > .col:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    background: url(./assets/images/slider-shadow.png) no-repeat;
    background-size: cover;
    background-position: center;
    aspect-ratio: 10 / 2.5;
    opacity: 0.5;
}

.block-projects .slider.focus .flickity-slider > .col {
    opacity: 1;
}

.block-projects h2 {
    font-size: 6rem;
    text-transform: uppercase;
    font-weight: 500;
}

.block-projects h2 strong {
    font-weight: 500;
    text-transform: uppercase;
    background: radial-gradient(circle at 50% 10%, #faf6d8, #a57817);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
    padding: 1rem 0;
}

.button.is-larger {
    font-size: 1.375em;
}

.block-projects .button.secondary {
    font-weight: 400;
    color: #835e4d;
    background-color: #e9e6d7 !important;
    margin-bottom: 0;
}

.project-item .project-meta {
    font-weight: 500;
}

.project-item .post-title.is-xxlarge + .project-meta {
    font-size: 2rem;
}

.project-item .project-meta span + span {
    margin-left: 8px;
}

.slider-style-focus .flickity-slider > :not(.is-selected) {
    transform: scale(0.9);
}

/*************** END ARCHIVE PROJECT ***************/

/*************** SINGLE PROJECT ***************/
.single-project-banner img {
    aspect-ratio: 1 / 0.25;
    object-fit: cover;
    width: 100%;
}
.rank-math-breadcrumbs-container {
    padding: 1.5rem 0;
}

.project-single .rank-math-breadcrumbs-container {
    background-color: #f8f8f8;
}

.project-single .project-details-wrapper {
    padding: 5rem 0 2.5rem;
}

.project-single .project-details-wrapper .project-title-container {
    margin-bottom: 3rem;
}

.project-single .project-details-wrapper h1 {
    text-transform: uppercase;
}

.project-single .project-details-wrapper time {
    text-transform: uppercase;
}

.project-single .project-info-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    list-style: none;
    font-size: 1.8rem;
    margin-bottom: 0;
    max-width: 60rem;
}

.project-single .project-info-list li {
    margin-bottom: 0;
}

.project-single .project-info-list .project-info-label {
    font-weight: 500;
    display: block;
    width: 100%;
}

.project-single .project-info-list .project-info-value {
    display: block;
    width: 100%;
}

.project-single .project-gallery-wrapper {
    padding: 2.5rem 0 3rem;
}

.project-single .project-content-wrapper {
    padding: 2rem 0 3rem;
}

/*************** END SINGLE PROJECT ***************/

/*************** BLOG ARCHIVE***************/
.blog-archive {
    padding-top: 0;
     padding-bottom: 0;
}
.blog-archive .archive-page-header {
    display: none;
}


.blog-archive .rank-math-breadcrumbs-container {
    background-color: #f0eee4;
}

.news-banner h2  {
    color: #f5e6bd;
    font-size: 6.2rem;
}


.blog-cat  {
        margin: 40px 0;
}

.blog-cat ul {
    list-style: none;
    margin:0;
}

.blog-cat ul li {
    display: inline-block;
    margin: 0;
    padding: 0.4rem 4rem;
    text-align: center;
    border-right: 1px solid #ABABAB;
}

.blog-cat ul li:first-child  {
    padding-left:0;
}


.blog-cat ul li a {
    display: inline-block;
    color: #462c00;
    padding: 0.5rem 0;
}

.blog-cat ul li.active a {
    color: var(--fs-color-secondary);
    border-bottom: 1px solid #B3864B;
}

.meta-box {
    display: none;
}

.blog-main-top {
    margin-top: 40px; 
}

#post-list .meta-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #ababab;
}

#post-list .meta-box span:first-child::before {
    content: url(./assets/icons/date.svg);
}

#post-list .meta-box span:last-child::before {
    content: url(./assets/icons/note.svg);
}

#post-list .meta-box span {
    display: flex;
    align-items: center;
    gap: 9px;
}

.blog-main-top .box {
    padding: 50px;
    background-color: #f0eee4;
}

.blog-main-top .box .box-text {
    padding: 0;
    padding-left: 30px;
    vertical-align: unset;
    width: 40%;
}

.blog-main-top .box .blog-post-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.blog-main-top .box .blog-post-inner .post-title {
    margin-bottom: 30px;
    color: var(--fs-color-secondary);
}

.blog-main-top .box .blog-post-inner p.from_the_blog_excerpt {
    font-size: 18px;
    margin-bottom: 50px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 6;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.blog-main-top .box .blog-post-inner a.button:after {
    content: unset;
}

.blog-main-top .box .blog-post-inner a.button {
    width: max-content;
    margin: 0;
    font-size: 16px;
    font-weight: 500;
    color: #000;
    display: flex;
    align-items: center;
    gap: 20px;
}

.blog-main-top .box .blog-post-inner a.button::before {
    content: '';
    width: 66px;
    height: 1px;
    background: #000;
    display: inline-block;
}

.blog-archive .blog-main-bottom {
    background: url(./assets/images/News-background.jpg) no-repeat center / cover;
    padding-top: 6rem;
    margin-top: 3rem;
}

.blog-archive #post-list .post-item > .col-inner {
    padding: 20px;
    background-color: #fff;
}

.blog-archive #post-list .post-item:nth-child(even) > .col-inner {
    background-color: #e9e6d7;
}
.blog-archive #post-list .box-vertical .box-text {
    padding: 0 0 0 20px;
}

.box .cat-label {
    font-size: 14px;
    color: var(--fs-color-primary);
    margin-bottom: 0;
    opacity: 1;
}

.blog-archive #post-list .box .blog-post-inner .post-title {
    font-size: 25px;
    margin: 12px 0 8px;
    color: var(--fs-color-secondary);
    font-weight: 500;
}

.blog-archive #post-list .box .blog-post-inner p.from_the_blog_excerpt {
    font-size: 18px;
    margin-bottom: 30px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

span.widget-title {
    background: #000;
    font-size: 20px;
    display: block;
    text-align: center;
    color: #fff;
    padding: 20px 0;
    font-weight: normal;
}

.widget .is-divider {
    display: none;
}

.widget.flatsome_recent_posts {
    background: #efefef;
}

.widget.flatsome_recent_posts ul {
    padding: 20px;
}

.recent-blog-posts {
    flex-direction: row-reverse;
    gap: 15px;
    padding: 0;
}

.recent-blog-posts .mr-half {
    margin: 0;
}

.recent-blog-posts .flex-col.mr-half .badge {
    width: 100px;
    height: 100px;
    object-fit: cover;
}

.recent-blog-posts a {
    font-size: 16px;
    line-height: normal;
    font-weight: 500;
    line-height: 1.5;
    color: #454545;
}

.recent-blog-posts a:hover {
    color: var(--fs-experimental-link-color);
}

aside#flatsome_recent_posts-2 ul li + li {
    border-top: 1px solid #ccc;
    padding-top: 20px;
    margin-top: 20px;
}

.blog-single .blog-main {
    padding: 40px 0;
}

.blog-single > .row > .col.large-9 {
    flex-basis: 70%;
    max-width: 70%;
}

.blog-single > .row > .col.large-3 {
    flex-basis: 30%;
    max-width: 30%;
}

.box .box-text .box-text-inner:has(.post-meta) {
    padding-bottom: 3rem;
    position: relative;
}

.box .box-text .box-text-inner .post-meta {
    background: url(./assets/images/calendar.png) no-repeat left center / 2rem 2rem;
    height: 2rem;
    padding-left: 2.8rem;
    color: #ccc;
    font-size: 1.4rem;
    opacity: 1;
    position: absolute;
    bottom: 0;
    left: 0;
}

/*************** END BLOG ARCHIVE ***************/

/*************** BLOG SINGLE ***************/
.blog-single.page-wrapper {
    padding-top: 0;
}
.blog-single .rank-math-breadcrumbs-container {
    background-color: #e9e6d7;
}
/*************** END BLOG SINGLE ***************/

/*************** CATALOGUE ***************/
.page-header-wrapper h1.entry-title {
    font-size: 6.2rem;
    color: #f5e6bd;
    text-transform: uppercase;
}

.catalogue-box .box-image {
    background: #e5e4e0;
    padding: 24px;
}

.catalogue-box .box-image img {
    object-fit: contain;
    width: auto;
    display: block;
    margin: 0 auto;
}

.catalogue-box .box-text h3 {
    font-size: 2.8rem;
}

.catalogue-box .box-text .button {
    margin-top: 1rem;
}

/*************** END CATALOGUE ***************/

/*************** ABOUT PAGE  ***************/
.about-page-header h1.entry-title {
    padding: 2rem 8rem 1rem;
    position: relative;
    background: radial-gradient(circle at 50% 50%, #ffe8d4, #ff8606);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    color: transparent;
}

.about-page-header h1.entry-title:after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to right,
        transparent 0%,
        rgb(255 221 147 / 30%) 20%,
        rgb(255 221 147 / 30%) 80%,
        transparent 100%
    );
}

.sub-title {
    color: #606060;
    font-size: 2rem;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.about-section .about-row .text-box-highlight {
    background: linear-gradient(45deg, #d3b46b 0%, #faf5bd 60%, #d3b46b 100%);
    aspect-ratio: 10 / 7;
    padding: 2rem;
    font-size: 150%;
    text-align: center;
    margin-bottom: 1em;
    place-content: center;
}

.about-section .about-row .text-box-highlight h3 {
    margin-bottom: 0;
}

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

.achievements-section .number-text {
    font-size: 6.2rem;
    line-height: 1.25;
}

.achievements-section .achievements-row > .col > .col-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 30rem;
}

.achievements-section .achievements-row > .col > .col-inner:after {
    content: '';
    display: block;
    width: 5px;
    height: auto;
    border-radius: 4px 4px 0 0;
    flex: 1;
    background-color: var(--color-white);
    box-shadow: 0 0 4px 0 rgba(255, 255, 255, 0.5);
    margin-top:1rem;
}

.tech-section .section-bg.fill {
    left: 50%;
}

.tech-section .align-middle > .col {
    display: flex;
}

.tech-section .image-col .img,
.tech-section .image-col .img .img-inner,
.tech-section .image-col .img img {
    height: 100%;
}

.tech-section .image-col .img img {
    object-fit: cover;
}

.progress-section .row.align-equal {
    height: 100%;
}

.progress-section .row.align-equal .img,
.progress-section .row.align-equal .img .img-inner,
.progress-section .row.align-equal .img img {
    height: 100%;
}

.progress-section .progress-text-col {
    background-color: #f9f4bb;
    background: url(./assets/images/highlight-background.jpg) no-repeat center / cover;
}

.services-section .services-row .icon-box .icon-box-img {
    width: 12rem !important;
    height: 12rem;
    background: #fff;
    border-radius: 12px;
    border: 4px solid #b3864b;
    padding: 12%;
}

.services-section .services-row .icon-box .icon-box-text {
    height: 5.2rem;
}

.services-section .services-row {
    position: relative;
}

.services-section .services-row > .col {
    padding-bottom: 6rem;
}

.services-section .services-row > .col:before {
    content: '';
    height: 2px;
    left: 0;
    right: 0;
    top: 6rem;
    background-color: #b8934c;
    display: block;
    position: absolute;
    z-index: -1;
}

.services-section .services-row > .col:nth-child(1):before {
    left: 50%;
}
.services-section .services-row > .col:nth-child(7):before {
    left: 50%;
}

.services-section .services-row > .col:nth-child(6):before,
.services-section .services-row > .col:last-child:before {
    width: calc(100% + 5.8rem);
}

.services-section .services-row .arrow-dot {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: -3rem;
    top: 4.5rem;
    width: 3rem;
    height: 3rem;
    background-color: #b8934c;
    border-radius: 50%;
    color: #fff;
    font-size:2.4rem;
}

.services-section .services-row > .col:nth-child(n + 7) .arrow-dot {
    transform: rotate(180deg);
}

.services-section .services-row:after {
    content: '';
    height: 50%;
    right: -58px;
    width: 2px;
    top: 6rem;
    background-color: #b8934c;
    display: block;
    position: absolute;
    z-index: -1;
}

.services-section .services-row:before {
    content: '❯';
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: -72px;
    top: 15.5rem;
    width: 3rem;
    height: 3rem;
    background-color: #b8934c;
    border-radius: 50%;
    color: #fff;
    transform: rotate(90deg);
    font-size:2.4rem;
}

.row.certificate-slider {
    display: flex;
    align-items: center;
    overflow-x: clip;
    /* Ä‘á»ƒ scrollLeft hoáº¡t Ä‘á»™ng */
    scroll-behavior: smooth;
    position: relative;
    scrollbar-width: none;
    flex-wrap: nowrap;
    justify-content: flex-start;
    transition: transform 0.5s ease;
    /* áº©n thanh cuá»™n Firefox */
}

.slider-wrapper-main {
    transition: transform 0.5s ease;
    display: flex;
}

.row.certificate-slider .gallery-col.col {
    flex: 0 0 calc(100% / 5);
    max-width: calc(100% / 5);
    box-sizing: border-box;
    min-width: 0;
    padding: 0;
}

.row.certificate-slider .gallery-box img,
.row.certificate-slider .col img {
    width: 100% !important;
    height: auto !important;
    max-width: 100%;
    display: block;
}

/* chuyá»ƒn Ä‘á»™ng/hiá»‡u á»©ng */
.row.certificate-slider .col {
    transition: transform 0.28s ease, z-index 0.28s ease;
}

/* trÃ¡i */
.row.certificate-slider .col.prev-3 .gallery-box {
    transform: perspective(600px) rotateY(20deg) scale(1);
}

.row.certificate-slider .col.prev-2 .gallery-box {
    transform: perspective(600px) rotateY(18deg) scale(1);
}

.row.certificate-slider .col.prev-1 .gallery-box {
    transform: perspective(587px) rotateY(15deg) scale(1);
}

/* giá»¯a (active) */
.row.certificate-slider .col.active .gallery-box {
    transform: scale(1);
    z-index: 3;
}

/* pháº£i */
.row.certificate-slider .col.next-1 .gallery-box {
    transform: perspective(600px) rotateY(-18deg) scale(1);
    z-index: 2;
}

.row.certificate-slider .col.next-2 .gallery-box {
    transform: perspective(600px) rotateY(-15deg) scale(1);
    z-index: 1;
}

.row.certificate-slider .col.next-3 .gallery-box {
    transform: perspective(600px) rotateY(-20deg) scale(1);
}

.row.certificate-slider button.slider-nav {
    position: absolute;
}

.certifications-slider .flickity-slider {
    padding: 3rem 0;
}

.certifications-slider .flickity-slider > .img {
    opacity: 1 !important;
    padding: 1rem 0;
    margin: 0 0 4rem;
}

.certifications-slider .flickity-slider > .img.is-selected {
    transform: scale(1.05);
}

.certifications-slider .flickity-slider > .img.prev {
    transform: perspective(587px) rotateY(20deg) scale(1) translateX(-5px);
}

.certifications-slider .flickity-slider > .img.prev-2 {
    transform: perspective(600px) rotateY(20deg) scale(0.95);
}
.certifications-slider .flickity-slider > .img.next {
    transform: perspective(600px) rotateY(-20deg) scale(1) translateX(5px);
}
.certifications-slider .flickity-slider > .img.next-2 {
    transform: perspective(600px) rotateY(-20deg) scale(0.95);
}

@media (max-width: 549px) {
    .row.certificate-slider .gallery-col.col {
        flex: 0 0 calc(100% / 3);
        max-width: calc(100% / 3);
        padding: 0;
    }
}

/*************** END ABOUT PAGE  ***************/

/*************** HOME PAGE  ***************/

.hero-banner .video-button-wrapper {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
}
.video-button-wrapper .open-video {
    background-color: rgb(132 131 134 / 64%);
    border: none;
    margin: 0;
}

.video-button-wrapper .open-video i {
    opacity: 0.7;
    top: 3px;
}

.hero-banner h2 {
    font-size: 3.5rem;
    line-height: 1.25;
}


.floating-row {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 10%;
    z-index: 10;
    height: auto;
    margin: 0 !important;
         width: 10% !important;

}

.floating-row  .passion-logo {
    margin-bottom:1rem !important;
   
}

.floating-row  .passion-text {
    background-color: rgba(0, 0, 0, 0.25);
    color: #fff;
    padding: 0.5rem;
    text-align: center;
    font-size: 1vw;
    min-width: fit-content;
    margin-bottom:1rem;
}



.images-comparison {
    position: relative;
    width: 100%;
}

.images-comparison-inner {
    display: flex;
    position: absolute;
    inset: 0;
}

.images-comparison .img {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.images-comparison .img:nth-child(2) {
    clip-path: inset(0px 0px 0px 50%);
}

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

.images-comparison #line {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 0.2rem;
    height: 100%;
    background-color: #fafafa;
}

.images-comparison input {
    /* reset */
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    /* custom */
    position: absolute;
    width: calc(100% + 2.25rem);
    height: 100%;
    left: -1.125rem;
}

.images-comparison input::-webkit-slider-thumb {
    /* reset */
    -webkit-appearance: none;
    appearance: none;
    /* custom */
    height: 2.25rem;
    width: 2.25rem;
    border: 0.25rem solid #fff;
    border-radius: 50%;
    box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    background-image: url('data:image/svg+xml;utf8,%3Csvg xmlns%3D%22http%3A//www.w3.org/2000/svg%22 height%3D%2224px%22 viewBox%3D%220 -960 960 960%22 width%3D%2224px%22 fill%3D%22%23000%22%3E%3Cpath d%3D%22M286.15-293.85 100-479.62l185.77-185.76 42.15 41.76-113 113.62h530.16l-113-113.62 42.15-41.76L860-479.62 674.23-293.85l-42.54-41.77 113.39-114H214.54l113.38 114-41.77 41.77Z%22/%3E%3C/svg%3E');
    background-size: cover;
    cursor: grab;
}

.images-comparison input::-moz-range-thumb {
    height: 2.25rem;
    width: 2.25rem;
    border: 0.25rem solid #fff;
    border-radius: 50%;
    box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    background-image: url('data:image/svg+xml;utf8,%3Csvg xmlns%3D%22http%3A//www.w3.org/2000/svg%22 height%3D%2224px%22 viewBox%3D%220 -960 960 960%22 width%3D%2224px%22 fill%3D%22%23000%22%3E%3Cpath d%3D%22M286.15-293.85 100-479.62l185.77-185.76 42.15 41.76-113 113.62h530.16l-113-113.62 42.15-41.76L860-479.62 674.23-293.85l-42.54-41.77 113.39-114H214.54l113.38 114-41.77 41.77Z%22/%3E%3C/svg%3E');
    background-size: cover;
    cursor: grab;
}

.images-comparison input:active::-webkit-slider-thumb {
    cursor: grabbing;
}

.images-comparison input:active::-moz-slider-thumb {
    cursor: grabbing;
}

.testimonials-section .slider .flickity-slider > .row,
.testimonials-section .slider .flickity-slider > .row > .col {
    min-height: 100%;
}

.testimonials-section .slider .flickity-slider > .row > .col > .col-inner {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-end;
}

.show-all-items .flickity-slider > .row:not(.is-selected) {
    opacity: 1;
}
.gap-3 .flickity-slider > .row {
    padding: 0 1.5rem;
}

.gap-6 .slider {
    margin-left: -3rem;
    margin-right: -3rem;
}

.gap-6 .flickity-slider > .row {
    padding: 0 3rem;
}

.gap-9 .slider {
    margin-left: -4.5rem;
    margin-right: -4.5rem;
}

.gap-9 .flickity-slider > .row {
    padding: 0 4.5rem;
}

.projects-section .button.secondary {
    font-weight: 400;
    color: #462C00;
    background-color: #e9e6d7 !important;
    margin-bottom: 0;
}

.catalogues-section .catalogues-text-col {
    background: url(/wp-content/uploads/2025/10/catalogue-bg-img-1.jpg) no-repeat center / cover;
}

.news-section .from_the_blog_excerpt {
    color: #f5e6bd;
}

.partners-section .box .box-image {
    background-color: #fff;
    text-align: center;
}

.partners-section .box img {
    height: 11rem;
    width: auto;
    object-fit: contain;
    padding: 1rem;
}

.searchform .flex-grow {
    align-items: flex-start;
    display: flex;
}

.searchform select {
    width: max-content;
    margin: 0 1rem 0 0 !important;
}

.searchform-wrapper select,
.searchform-wrapper input[type='search'] {
    font-size: 1.6rem;
    margin: 0;
}

#search-lightbox .searchform-wrapper.form-flat .flex-col:last-of-type {
    margin-left: -5rem;
}

.searchform .button.icon {
    margin: 0;
    border-radius: 4px;
}

#search-lightbox .searchform .button.icon {
    font-size: 1.4rem;
}
/*************** END HOME PAGE  ***************/

@media only screen and (min-width: 850px) {
    .project-single .project-gallery > .row > .col:nth-child(5) {
        flex-basis: 66.6666666666%;
        max-width: 66.6666666666%;
    }
    .row-5-cols > .col {
        flex-basis: 20%;
        max-width: 20%;
    }
    .partners-section .partners-gallery {
        margin-left: -3.5rem;
        margin-right: -3.5rem;
    }

    .partners-section .partners-gallery > .col {
        padding: 0 3.5rem 2rem;
    }
}

@media only screen and (max-width: 1599px) {
    .services-section .services-row {
        padding-right: 75px;
    }

    .services-section .services-row:after {
        right: 15px;
    }

    .services-section .services-row:before {
        right: 1px;
    }
}

@media only screen and (max-width: 1399px) {
    .achievements-section .number-text {
        font-size: 5rem;
    }
}

@media only screen and (max-width: 1199px) {
    .services-section .services-row {
        padding-right: 53px;
    }
    .services-section .services-row > .col:nth-child(6):before,
    .services-section .services-row > .col:last-child:before {
        width: calc(100% + 3.8rem);
    }
}


@media only screen and (max-width: 1199px) {
	 #header .flex-col.hide-for-medium {
        display:none!important
    }

     #header .flex-col.show-for-medium {
        display:block !important
    }
	
	#header .medium-logo-left .logo {
        margin-left: 0;
        margin-right: 15px;
        order: 1
    }

    #header .medium-logo-left .flex-left {
        flex: 1 1 0;
        order: 2
    }

    #header .medium-logo-left .flex-right {
        flex: 1 1 0;
        order: 3
    }

    #header .medium-logo-center .flex-left {
        flex: 1 1 0;
        order: 1
    }

    #header .medium-logo-center .logo {
        margin: 0 15px;
        order: 2;
        text-align: center
    }

    #header .medium-logo-center .logo img {
        margin: 0 auto
    }

    #header .medium-logo-center .flex-right {
        flex: 1 1 0;
        order: 3
    }
    
    #footer .footer-row > .col {
        flex-basis: 100%;
        max-width: 100%;
    }
}


@media only screen and (max-width: 849px) {
    /*************** ADD TABLET CSS HERE  ***************/
    .page-header-wrapper h1.entry-title,
    .news-banner h2{
        font-size: 4.8rem;
    }


    .product-archive .product-cat-list {
        white-space: nowrap;
        overflow: auto;
        scrollbar-width: none;
    }

    .searchform .flex-grow {
        align-items: flex-start;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .searchform .flex-row {
        align-items: flex-end;
    }

    .searchform-wrapper {
        font-size: 1.6rem;
    }
    #header .header-search {
        padding: 0;
    }

    .select-resize-ghost,
    .select2-container .select2-choice,
    .select2-container .select2-selection,
    input[type='date'],
    input[type='email'],
    input[type='number'],
    input[type='password'],
    input[type='search'],
    input[type='tel'],
    input[type='text'],
    input[type='url'],
    select,
    textarea {
        font-size: 1.6rem;
    }

    h2,
    .h2 {
        font-size: 2em;
    }

    h3,
    .h3 {
        font-size: 1.5em;
    }

    h4,
    .h4 {
        font-size: 1.25em;
    }

    h5,
    .h5 {
        font-size: 1.125em;
    }

    h6,
    .h6 {
        font-size: 1em;
    }

    .post-title.is-xlarge {
        font-size: 1.25em;
    }

    .product-footer .detail-table > .col:nth-child(odd) {
        flex-basis: 40%;
        max-width: 40%;
    }

    .product-footer .detail-table > .col:nth-child(even) {
        flex-basis: 60%;
        max-width: 60%;
    }

    .catalogue-box .box-text h3 {
        font-size: 2.4rem;
    }

    .hero-banner h2 {
        font-size: 3.2rem;
    }
    .sub-title {
        font-size: 1.6rem;
    }

    .partners-section .box img {
        height: 9rem;
    }

    #footer .footer-section {
        padding-left: 0rem;
        padding-right: 0rem;
    }

    .achievements-section .number-text {
        font-size: 3.2rem;
    }

    .tech-section .section-bg.fill {
        left: 0;
    }

    .services-section .services-row:before,
    .services-section .services-row:after {
        content: unset;
    }
    .services-section .services-row > .col {
        padding-bottom: 3rem;
    }

    .services-section .services-row > .col:before {
        content: unset;
    }

    .services-section .services-row {
        padding-right: 0;
    }

    .services-section .services-row .icon-box .icon-box-img {
        width: 10rem !important;
        height: 10rem;
    }
    .services-section .services-slider .flickity-slider > .row > .col:before {
        content: '';
        height: 2px;
        left: 0;
        right: 0;
        top: 5rem;
        background-color: #b8934c;
        display: block;
        position: absolute;
        z-index: -1;
    }

    .services-section .services-slider .flickity-slider > .row:first-child > .col:before {
        left: 50%;
    }
    .services-section .services-slider .flickity-slider > .row:last-child > .col:before {
        right: 50%;
    }
    .services-section .services-slider .flickity-slider > .row:last-child > .col .arrow-dot {
        display: none;
    }

    .services-section .services-row .arrow-dot {
        right: -1.5rem;
        top: 3.5rem;
    }

    .search-form-section{
       padding-top:3rem
    }

    .search-form-section .container {
        flex-direction: column;
        gap: 0;
    }

    .search-form-section .container .orderby-group {
        margin-left: 0;
        margin-right: auto;
    }

    .search-form-section .container .searchform-wrapper {
        margin-left: auto;
        margin-right: 0;
    }

    .product-item .box .box-text .button {
        font-size: 1.4rem;
    }

    .product-gallery {
            flex-direction: column-reverse;
    }

	.product-gallery-left {
		max-width: 100%;
		margin-right: 0;
		margin-top: 10px;
		flex: unset;
	}

	.product-gallery-right {
		flex: unset;
        overflow: visible;
            padding: 1.5rem;
	}

	.carousel-cell {
		transform: unset;
	}

	.carousel-nav {
		width: 100%;
		height: 80px;
		transform: unset;
	}

    .product-gallery .flickity-button {
        display: none;
    }
   .product-tabs .nav > li > a {
        font-size: 1.8rem;
        padding: 1rem;
    }
    .projects-banner.banner h2 {
        font-size: 3.6rem;
    }

    .project-cat-list-section .project-cat-list .cat-label {
        font-size: 1.6rem;
    }

    .block-projects h2 {
        font-size: 4.2rem;
    }

    .box .box-text .post-title.is-xxlarge {
        font-size: 1.5em;
    }
    .project-item .post-title.is-xxlarge + .project-meta {
        font-size: 1.6rem;
    }

    .bigger h2 {
        font-size:2em;
    }

    .blog-cat ul li + li::before {
        margin: 0px 12px;
        font-size: 18px;
    }

    .blog-cat ul li a {
        font-size: 1.8rem;
    }
    
    #button-contact-vr {
        bottom: 7.5rem ;        
        left: auto !important;
        top: auto;
    }
    
    .back-to-top.button {
        top: auto;
        bottom: 3rem;
    }

}

@media only screen and (max-width: 549px) {
    /*************** ADD MOBILE ONLY CSS HERE  ***************/
    h2,
    .h2 {
        font-size: 1.5em;
    }

    h3,
    .h3 {
        font-size: 1.25em;
    }

    h4,
    .h4 {
        font-size: 1.125em;
    }

    h5,
    .h5 {
        font-size: 1em;
    }

    h6,
    .h6 {
        font-size: 0.875em;
    }

    .page-header-wrapper h1.entry-title,
    .news-banner h2{
        font-size: 3.2rem;
    }

    .page-header-wrapper h1.entry-title{
        padding: 1rem 2rem 0rem;
    }

    .catalogue-box .box-text h3 {
        font-size: 2rem;
    }

    .gap-9 .slider {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
    }

    .gap-9 .flickity-slider > .row {
        padding: 0 1.5rem;
    }

    .hero-banner h2 {
        font-size: 2.4rem;
    }

    .res-text {
        font-size: 12px;
    }

    .banner .video-button-wrapper {
        font-size: 80% !important;
    }

    .sub-title {
        font-size: 1.4rem;
        letter-spacing: 1px;
    }
    .small-pb-0 {
        padding-bottom: 0 !important;
    }

    .button.is-larger {
        font-size: 1.125em;
    }
    .box .box-text .post-title.is-larger {
        font-size: 1.125em;
    }
    .from_the_blog_excerpt {
        font-size: 1.4rem;
    }
    .box .box-text .button.is-link {
        font-size: 1.4rem;
        margin-top: 1rem;
    }

    .partners-section .box img {
        height: 7rem;
    }



    .floating-row {
        width: 15% !important;
    }
    .floating-row .passion-logo {
        margin-bottom:0.5rem !important;
    }
    
    .floating-row .passion-text{
        margin-bottom:0.5rem !important;
    }


    .achievements-section .number-text {
        font-size: 2rem;
    }
    .achievements-section .achievements-row > .col > .col-inner {
        min-height: 22rem;
    }
    .achievements-section .achievements-row > .col > .col-inner:after {
        width: 2px;
        box-shadow: 0 0 2px 0 rgba(255, 255, 255, 0.5);
    }

    .product-share .share-icons {
        font-size: 85% !important;
    }

    .product-share .share-icons-title {
        font-size: 1.6rem;
        margin-right: 1rem;
    }

    .product-tabs .nav > li > a {
        font-size: 1.6rem;
    }
    .product-info-container .product-info-inner {
        padding: 3rem 2rem 0 !important;
        margin-bottom: 3rem;
    }
    .product-footer > .container {
        padding:3rem 1.5rem
    }

    .projects-banner.banner h2 {
        font-size: 2.8rem;
    }

    .project-cat-list-section .project-cat-list .cat-label {
        font-size: 1.4rem;
    }

    .block-projects h2 {
        font-size: 2.8rem;
    }

    .box .box-text .post-title.is-xxlarge {
        font-size: 1.25em;
    }

    .project-item .post-title.is-xxlarge + .project-meta {
        font-size: 1.4rem;
    }
    .project-item .project-meta {
          font-size: 1.2rem;
    }

    .box.box-label .box-text {
        bottom: 2rem;
        left: 2rem;
    }

    .bigger h2 {
        font-size: 1.75em;
    }

    .project-single .project-details-wrapper time {
        font-size: 1.4rem;
    }

    .project-single .project-info-list {
        gap: 1.5rem;
        font-size: 1.6rem;
    }

    .project-single .project-details-wrapper {
        padding: 3rem 0 2rem;
    }
    .catalogue-box .box-image {
        padding: 15px;
    }

    .blog-cat ul li + li::before {
        margin: 0px 8px;
        font-size: 14px;
    }

    .blog-cat ul li a {
        font-size: 1.4rem;
    }

    .blog-main-top .box {
        padding: 20px;
    }
    .blog-main-top .box .box-text {
        width: 100%;
        padding: 10px 0 0;
    }
    .blog-main-top .box .blog-post-inner .post-title {
        margin-bottom: 1rem;
    }

    .blog-main-top .box .blog-post-inner p.from_the_blog_excerpt,
    .blog-archive #post-list .box .blog-post-inner p.from_the_blog_excerpt  {
        font-size: 14px;
        margin-bottom: 15px;
        -webkit-line-clamp: 3;
    }

    .blog-main-top .box .blog-post-inner a.button {
        font-size: 14px;
        gap: 12px;
    }

    .blog-main-top .box .blog-post-inner a.button::before {
        width: 40px;
    }

    .blog-archive #post-list .box-vertical .box-text {
        padding: 1rem 0 0;
    }

    .box .cat-label {
        font-size: 12px;
    }

    .blog-archive #post-list .box .blog-post-inner .post-title {
        font-size: 1.8rem;
    }
    
    .box .box-text .box-text-inner:has(.post-meta) {
        padding-bottom: 2rem;
    }
    .box .box-text .box-text-inner .post-meta {
        background-size: 1.6rem 1.6rem;
        padding-left:2rem;
        font-size: 1.2rem;
    }

    .nav-pagination > li > a, .nav-pagination > li > span {
        font-size: 1em;
        height: 3.6rem;
        line-height: 3.6rem;
        min-width: 3.6rem;
    }
    .nav-pagination > li > .page-number:not(.prev, .next):after {
        bottom: 6px;
    }
    
    .archive-product-cat-title  h2 {
            font-size:2rem;
    }

}



@media (min-width: 850px) and (max-width: 1199px) { 
    .recent-blog-posts .flex-col.mr-half .badge {
        width: 50px;
        height: 50px;
    }
    
    .recent-blog-posts a {
        font-size:14px;
    }
}




.is-xxxlarge {
    font-size: 2.5em;
}

.is-xxlarge {
    font-size: 2em;
}

.is-xlarge {
    font-size: 1.5em;
}

.is-larger {
    font-size: 1.3em;
}

.is-large {
    font-size: 1.15em;
}

.is-small,
.is-small.button {
    font-size: 0.8em;
}

.is-smaller {
    font-size: 0.75em;
}

.is-xsmall {
    font-size: 0.7em;
}

.is-xxsmall {
    font-size: 0.6em;
}

@media (max-width: 549px) {
    .is-xxlarge {
        font-size: 2.5em;
    }

    .is-xlarge {
        font-size: 1.8em;
    }

    .is-larger {
        font-size: 1.2em;
    }

    .is-large {
        font-size: 1em;
    }
}
