/* Google Fonts: Montserrat (400, 500, 600, 700, 800) */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,500;1,600;1,700;1,800&display=swap');


/*	------------------------ General -------------------------- */

@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1170px;
    }

    .container-fluid {
        max-width: calc(100% - 120px);
    }
}



@media(min-width: 992px){
    .container-fluid{
        max-width: calc(100% - 60px);
    }
}

@media (min-width: 1600px) {
    .container-fluid {
        max-width: calc(100% - 360px);
    }
}

:root {

    /* ── Brand Colours ── */
    --color-primary: #7AC142;
    --color-secondary: #3D6922;
    --color-accent: #DD1489;
    --color-accent-bg: #F2E9EC;

    /* Green Scale (50 -> 950) */
    --green-50: #F3FAEB;
    --green-100: #E3F3D4;
    --green-200: #C9E5AD;
    --green-300: #A7D97D;
    --green-400: #7AC142;
    --green-500: #68AC36;
    --green-600: #4F8927;
    --green-700: #3E8922;
    --green-800: #345420;
    --green-900: #2E481F;
    --green-950: #15270C;

    /* Pink Scale (50 -> 950) */
    --pink-50: #FEF1FA;
    --pink-100: #FEE5F7;
    --pink-200: #FFCBF0;
    --pink-300: #FFA1E1;
    --pink-400: #FF87C8;
    --pink-500: #FA3AB3;
    --pink-600: #DD1489;
    --pink-700: #CC0A75;
    --pink-800: #A80C60;
    --pink-900: #8C0F52;
    --pink-950: #86013E;

    /* Neutral */
    --text: #000000;
    --muted: #666666;
    --border: #E6E6E6;
    --bg: #FFFFFF;
    --bg-light: #F7F7F7;

    /* Radius / Shadow */
    --radius-sm: 8px;
    --radius-md: 10px;
    --shadow-sm: 0 6px 18px rgba(0, 0, 0, 0.08);

    /* Headlines */
    --fs-h1: clamp(28px, 4vw, 45px);
    /* 45px - Banner Title, Number Counter */
    --fs-h2: clamp(22px, 2.4vw, 35px);
    /* 35px - Section Title */
    --fs-h3: clamp(18px, 2.1vw, 30px);
    /* 30px - Contact Us "Connect With Us" */
    --fs-t28: clamp(17px, 2.0vw, 28px);

    /* Titles */
    --fs-t20: clamp(16px, 1.8vw, 20px);
    /* 20px - Homepage "What Makes Us Different" */
    --fs-f18: clamp(15px, 1.6vw, 18px);
    /* 18px - Footer "Follow Us" */
    --fs-t16: clamp(14px, 1.5vw, 16px);
    /* 16px - Points / Product Category */
    --fs-t14: clamp(12px, 1.3vw, 14px);
    /* 14px - Testimonial Name / Footer Title */

    /* Body Text */
    --fs-p16: clamp(14px, 1.5vw, 16px);
    /* 16px - Button text */
    --fs-p14: clamp(12px, 1.3vw, 14px);
    /* 14px - Paragraph / Date */
    --fs-t12: clamp(10px, 1vw, 12px);
    /* 12px - Description */

    /* Line-height */
    --lh-normal: 1.5;
    --lh-title: 1.2;

    /* Button */
    --btn-h: 44px;
    --btn-px: 24px;
    --btn-radius: 8px;
    --btn-border: 1px;
}


body {
    font-family: 'Montserrat', sans-serif;
    color: var(--text);
    background: var(--bg);
    line-height: var(--lh-normal);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: var(--fs-p14);
}

/* ============================================
   Typography Classes (Design System)
   ============================================ */

/* H1 Headline - 45px Bold (Banner Title, Number Counter) */
.h1,
h1 {
    font-size: var(--fs-h1);
    font-weight: 700;
    line-height: var(--lh-title);
}

/* H2 Headline - 35px ExtraBold (Section Title) */
.h2,
h2 {
    font-size: var(--fs-h2);
    font-weight: 800;
    line-height: var(--lh-title);
}

/* H3 / Text - 30px Bold (Contact Us "Connect With Us") */
.h3,
h3 {
    font-size: var(--fs-h3);
    line-height: var(--lh-title);
    font-weight: 700;
}

/* Title-20 - 20px Bold (Homepage & About Us - What Makes Us Different) */
.title-20 {
    font-size: var(--fs-t20);
    line-height: var(--lh-title);
    font-weight: 700;
}

/* Title-16 - 16px ExtraBold (Points) */
.title,
.title-16 {
    font-size: var(--fs-t16);
    line-height: var(--lh-title);
    font-weight: 800;
    /* ExtraBold */
}

/* Title-16 Bold variant (Product Category) */
.title-16-bold {
    font-size: var(--fs-t16);
    line-height: var(--lh-title);
    font-weight: 700;
    /* Bold */
}

/* Paragraph - 14px Regular (Content) */
.p,
p {
    font-size: var(--fs-p14);
    font-weight: 400;
    /* Regular */
}

/* Title-14 SemiBold (Testimonial Name) */
.title-14 {
    font-size: var(--fs-t14);
    line-height: var(--lh-title);
    font-weight: 600;
    /* SemiBold */
}

/* Footer "Follow Us" - 18px Bold */
.footer-follow-title {
    font-size: var(--fs-f18);
    line-height: var(--lh-title);
    font-weight: 700;
    margin-right: 60px;
    margin-bottom: 0;
    /* Bold */
}

/* Footer Title - 14px Bold */
.footer-title {
    font-size: var(--fs-t14);
    line-height: var(--lh-title);
    font-weight: 700;
    /* Bold */
}

/* Date - 14px SemiBold (Pink color for dates) */
.date {
    font-size: var(--fs-p14);
    font-weight: 600;
    /* SemiBold */
    color: var(--color-accent);
}

/* Description - 12px Regular */
.description {
    font-size: var(--fs-t12);
    font-weight: 400;
    /* Regular */
}

.muted {
    color: var(--muted);
}

.tag {
    font-weight: 400;
    font-size: 14px;
    color: #000;
}

.light-text {
    font-weight: 300;
    font-size: 12px;
    color: #000;
}

.cta-text {
    font-weight: 600;
    font-size: 14px;
    color: #fff;
}

section {
    padding-top: 60px;
    padding-bottom: 60px;
}

@media (max-width: 575.9px) {
    section {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}


h2:has(+ p) {
    margin-bottom: 12px;
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    cursor: default;
}

.datepicker.datepicker-dropdown.dropdown-menu {
    z-index: 9999 !important;
}


/* ============================================
   Button Styles (SCCL Design System)
   ============================================ */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: var(--btn-h);
    padding: 0 var(--btn-px);
    border-radius: var(--btn-radius);
    font-family: 'Montserrat', sans-serif;
    font-size: var(--fs-p16);
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    border: var(--btn-border) solid transparent;
    transition: all 160ms ease;
    user-select: none;
}

.btn:active {
    transform: translateY(1px);
}

/* Primary Button - Green filled with white text */
.btn-primary {
    background: var(--color-primary);
    color: #ffffff;
    border-color: var(--color-primary);
}

/* Primary Hover: Dark green background */
.btn-primary:hover {
    background: #ffffff;
    border-color: #ffffff;
    color: var(--color-primary);
    border-color: var(--color-primary)
}

/* Primary Clicked/Active: Dark green */
.btn-primary:active,
.btn-primary.active,
.btn-primary:focus,
.btn-primary.focus {
    background: var(--color-primary) !important;
    color: #ffffff !important;
    border-color: var(--color-primary) !important;
}

/* Primary Outlined variant - Green border, green text, white bg */
.btn-primary-outlined {
    background: transparent;
    color: #fff;
    border: 1px solid #fff;
}

.btn-primary-outlined:hover {
    background: var(--color-primary);
    color: #ffffff;
}

/* Secondary Button - "Read More >" link style with green text */
.btn-secondary {
    background: transparent;
    color: var(--color-primary);
    border: none;
    padding: 0;
    height: auto;
    font-weight: 600;
    gap: 4px;
}

/* Secondary Hover: darker green */
.btn-secondary:hover {
    color: var(--color-secondary);
    background: transparent;
}

/* Secondary Active */
.btn-secondary:active,
.btn-secondary.active {
    color: var(--color-secondary);
    background: transparent;
}

/* Tertiary Button - Outline style (for F7F7F7 box contexts) */
.btn-tertiary {
    background: transparent;
    color: var(--color-primary);
    padding: 0;
    height: auto;
    border: 0;
    border-radius: 0;
    text-decoration: none;
    font-weight: 600;
    gap: 4px;
}

.btn-tertiary:hover {
    color: var(--color-secondary);
}

/* Disabled State */
.btn[disabled],
.btn.is-disabled {
    opacity: 0.55;
    pointer-events: none;
}


/* 

.button{
	background-color: #734F0D;
	color: white;
	border-radius: 100px;
	font-size: 13px;
	font-weight: 500;
	text-shadow: none;
	padding: 0 25px;
	letter-spacing: 0;
	text-transform: uppercase;
	line-height: 1;
	height: 36px;
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
.button:hover{background-color: #CC9739;}
.button2{
	background-color: #5B5B5B;
	color: white;
}
.button2:hover{
	background-color: #CC9739;
}
.button3{
	background-color: #CC9739;
	color: #fff;
	border-radius: 100px;
	border: none;
	font-size: 16px;
	text-shadow: none;
	padding: 0 35px;
	letter-spacing: 0;
	text-transform: none;
	display: inline-block;
	height: 50px;
	line-height: 50px;
}
.button3:hover{
	background-color: #734F0D;
}
.button4{
	background-color: #fff;
	color: #000;
	border-radius: 100px;
	border: none;
	font-size: 16px;
	text-shadow: none;
	padding: 0 35px;
	letter-spacing: 0;
	text-transform: none;
	display: inline-block;
	height: 50px;
	line-height: 50px;
}
.button4:hover{
	background-color: #734F0D;
}
.button-outlined{
	background-color: transparent;
	color: #000;
	border-radius: 100px;
	border: 1px solid #CC9739;
	font-size: 16px;
	text-shadow: none;
	padding: 20px 35px;
	letter-spacing: 0;
	text-transform: none;
	display: inline-block;
	height: auto;
	line-height: 1.3;
	text-decoration: none;
}
.button-outlined:hover{
	background-color: #CC9739;
	color: #fff;
}

.button3 + .button-outlined{
	padding-top: 0;
	padding-bottom: 0;
	height: 50px;
	line-height: 50px;
} */

.link {
    color: #CC9739;
    border-bottom: 1px solid #CC9739;
}

.linkarrow {
    color: #CC9739;
    border-bottom: none;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}

.linkarrow:after {
    content: '\203A';
    position: relative;
    display: inline-block;
    font-size: 18px;
    line-height: normal;
    margin-left: 5px;
    font-weight: 100;
}

.link.textWhite {
    color: #fff;
    border-bottom: 1px solid #fff;
}

.bg-grey {
    background-color: #f2f2f2;
}

.loadingDiv {
    display: none;
}

#noticeDivSubscription {
    max-width: 420px;
    margin-right: 0;
    margin-left: auto;
    padding: 0.5rem 1rem;
    margin-top: 10px;
}

#noticeDiv,
#noticeDiv2,
#noticeDivApplication {
    display: none;
    margin-right: 0;
    margin-left: auto;
    padding: 0.5rem 1rem;
    margin-top: 10px;
}

.text-right {
    text-align: right;
}

.style-msg {
    margin: 10px auto;
    padding: 5px;
}

.font-weight-800 {
    font-weight: 800;
}

.font-weight-700 {
    font-weight: 700;
}

.font-weight-600 {
    font-weight: 600;
}

.font-weight-500 {
    font-weight: 500;
}

.mt-35 {
    margin-top: 35px;
}

.mr-20 {
    margin-right: 20px;
}

.mb-0 {
    margin-bottom: 0;
}

.textWhite {
    color: white;
}

/* Pagination */
.own-pagination {
    margin-top: 60px;
    margin-inline: auto;
}

@media (max-width: 575.9px) {
    .own-pagination {
        margin-top: 30px;
    }
}

.own-pagination nav {
    display: flex;
    align-items: center;
    justify-content: center;
}

.own-pagination nav a,
.own-pagination nav strong {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 35px;
    padding: 0 10px;
    text-decoration: none;
    color: #000;
    transition: all 0.3s ease;
}

.own-pagination nav strong {
    background: var(--color-primary);
    color: #fff;
    border-radius: 10px;
    font-weight: 700;
}

.own-pagination nav a:hover {
    color: var(--color-primary);
}

.own-pagination nav a i {
    color: #CECECE;
    transition: color 0.3s ease;
}

.own-pagination nav a:hover i {
    color: var(--color-primary);
}

.own-pagination .pagination {
    gap: 8px;
}

.own-pagination .page-link {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border: none;
    color: #555;
    font-weight: 500;
    font-size: 18px;
    background: transparent;
}

.own-pagination .page-item.active .page-link {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

.own-pagination .page-link:hover {
    background: #f0f0f0;
    color: #333;
}

.own-pagination .page-item.active .page-link:hover {
    background: var(--color-secondary);
    border-color: var(--color-secondary);
}

/*	------------------------ General END -------------------------- */

/*	------------------------ Header -------------------------- */

.top-message {
    background-color: var(--color-accent);
    color: #fff;
}

.top-message .flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.top-message .content p {
    color: #fff;
    padding-top: 15px;
    padding-bottom: 15px;
    margin-bottom: 0;
}

.top-message .content p a {
    color: #555;
    font-weight: 700;
}

.countdownbox {
    display: flex;
}

.countdownbox .box {
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
    margin: 0 5px;
}

.countdownbox .box:last-child {
    margin-right: 0;
}

.countdownbox .countdown {
    background-color: #ffffff;
    padding: 1px;
    border-radius: 5px;
    color: #242422;
    width: 45px;
    text-align: center;
}

.countdownbox .countdown+span {
    font-size: 12px;
    color: white;
    font-weight: 300;
    line-height: 1;
    margin-top: 3px;
}

#logo img {
    width: auto;
}

.header-outter-flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: space-between;
}

.header-inner-flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    /*width: calc(100% - 550px);*/
    /*width: calc(100% - 300px);*/
}

#primary-menu-container {}

#primary-menu-container .outter-flexbox {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}

#primary-menu>div>ul {
    justify-content: space-between;
    padding: 0;
}

#primary-menu>div>ul>li {}

.top-search-open .header-inner-flexbox {
    /*width: calc(100% - 475px);*/
    flex-wrap: nowrap;
    /* overflow: hidden; */
    /*   -webkit-transition: width .3s ease;*/
    /*-o-transition: width .3s ease;*/
    /*transition: width .3s ease;*/
}

#primary-menu>div>ul>li>a {
    color: #000;
    font-size: var(--fs-p14) !important;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif !important;
}
/* ================================================================
   Mega-menu — category list + image preview
   ================================================================ */
 
/* Override theme's default dropdown positioning for mega items */
#primary-menu > div > ul > li > ul.category-mega-menu {
    padding: 0 !important;
    min-width: 600px !important;
    width: 600px !important;
  overflow: hidden !important;
    border: none !important;
    border-radius: 0 0 8px 8px !important;
    background: #FFF;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 8px 16px 0 rgba(0, 0, 0, 0.08) !important;
    left: -35px;
}
 
/* Single list item that holds the two-column layout */
#primary-menu ul.category-mega-menu > li.mega-menu-inner {
    display: flex !important;
    padding: 0 !important;
    background: #fff !important;
    width: 100% !important;
}
 
/* ── LEFT column ── */
.mega-cat-list {
    width: 280px;
    flex-shrink: 0;
    /*padding: 7.5px 0;*/
    padding: 15px 0;
    border-right: 1px solid #F0F0F0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
 
.mega-cat-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    text-decoration: none;
    /* color: #333; */
    font-size: var(--fs-t16);
    font-weight: 500;
    border-radius: 0;
    transition: background .15s, color .15s;
    margin: 2px 10px;
    border-radius: 8px;
    gap: 12px;
}
 
.mega-cat-name { flex: 1; }
 
.mega-cat-arrow {
    opacity: 0;
    transition: opacity .15s, transform .15s;
    transform: translateX(-4px);
    color: #fff;
    flex-shrink: 0;
    background: #fff;
    width: 30px;
    height: 30px;
    display: flex !important;
    justify-content: center;
    border-radius: 50%;
    align-items: center;

}
 
/* Hover & active */
.mega-cat-item:hover,
.mega-cat-item.is-active {
    background: var(--color-primary) !important;
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}
 
.mega-cat-item:hover .mega-cat-arrow,
.mega-cat-item.is-active .mega-cat-arrow {
    opacity: 1;
    transform: translateX(0);

}
 
/* ── RIGHT column ── */
.mega-cat-preview {
    flex: 1;
    min-height: 250px;
    overflow: hidden;
    background: #F5F5F5;
    position: relative;
    padding: 15px;
}
 
.mega-preview-img {
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    top: 15px;
    left: 15px;
    object-fit: cover;
    object-position: center;
    display: block;
    opacity: 0;
    transition: opacity .25s ease;
    position: absolute;
    border-radius: 8px;
}
 
.mega-preview-img.is-loaded { opacity: 1; }
 
/* Placeholder when no image */
.mega-cat-preview:empty::after,
.mega-cat-preview .mega-preview-img[src=""]::after {
    content: '';
}

.header-outter-flexbox .topinfo {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
}

/* Sticky Header */
#header {
    position: sticky;
    top: 0;
    z-index: 999;
    background: #fff;
}

#header .header-info {
    height: 100%;
    width: 100%;
    justify-content: flex-end;
}

.header-outter-flexbox .top-contact {
    background-color: #F6F6F6;
}

#header .header-info .infobox.top-contact .flexbox {
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    padding: 20px;
    border-inline-end: 1px solid #CECECE;
}

#header .header-info .infobox.top-contact .flexbox svg {
    margin-right: 10px;
    width: 15px;
}

#header .header-info .infobox.top-contact .flexbox .text {
    line-height: normal;
}

#header .header-info .infobox.top-contact .flexbox .text span {
    display: block;
    color: black;
    letter-spacing: 1.3px;
    font-size: 13px
}

#header .header-info .infobox.top-contact .flexbox .text span.number,
#header .header-info .infobox.top-contact .flexbox .dropdown-label {
    font-weight: 500;
    letter-spacing: 0;
    font-size: 13px
}

#header .header-info .infobox.others>div:not(.top-cart-content) {
    height: 100%;
}

#header .header-info .infobox.others ul {
    height: 100%;
}


#primary-menu>div>ul>li:first-child>a {
    padding-left: 0;
}

#primary-menu>div>ul>li>a>img {
    height: 14px;
}

#primary-menu ul li a+ul.category-nav:before {
    content: '';
    position: absolute;
    top: -7px;
    left: 60px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid white;
    z-index: 1;
}

#primary-menu ul li span{
    display: block;
}

#primary-menu ul li span svg {
    height: 10px;
    width: auto;
}


#primary-menu ul li span svg path{
    stroke: #000;
}

#primary-menu ul ul.category-nav {
    /*display: flex;*/
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    width: max-content;
    max-width: 660px;
    top: 55px;
    z-index: 2;
    border-top: none;
    border-radius: 8px;
    padding: 25px 20px;
    filter: drop-shadow(2px 4px 6px rgba(0, 0, 0, 0.15));
}

#primary-menu ul ul.category-nav li {
    flex: 0 0 33.3333%;
}

#primary-menu ul ul.category-nav li a {
    padding: 15px 10px;
}

#primary-menu ul ul a{
    display: flex;
    justify-content: space-between;
    font-family: 'Montserrat', sans-serif !important;
    color: #000;
    /*padding: 7.5px 15px;*/
    padding: 15px;
    font-size: var(--fs-p16);
    margin: 0 15px 0 20px;
    font-weight: 400;   
}

.mobile-drawer .navigation>ul>li.current>a,
.mobile-drawer .navigation>ul>li>ul>li.current>a,
.mobile-drawer .navigation>ul>li>ul>li>ul>li.current>a,
.mobile-drawer .navigation>ul>li>a:hover {
    color: var(--color-primary);
}

.mobile-drawer .navigation>ul>li>a:hover,
.mobile-drawer .navigation>ul>li>ul>li>a:hover,
.mobile-drawer .navigation>ul>li>ul>li>ul>li>a:hover {
    color: #000;
}

.mobile-drawer .navigation>ul>li>a,
.mobile-drawer .navigation>ul>li>ul>li>a,
.mobile-drawer .navigation>ul>li>ul>li>ul>li>a {
    color: #000;
}

.mobile-drawer .navigation>ul>li>ul>li>a.category-name {
    padding-left: 15px;
}

.mobile-drawer .infobox.top-contact .flexbox .text span {
    letter-spacing: unset;
    font-size: unset;
}


/* ============================================
   Submenu Dropdown Styling (SCCL Pill Style)
   ============================================ */

#primary-menu>div>ul>li>ul,
.corporate-units-dropdown ul {
    display: none;
    position: absolute;
    top: 100%;
    /* left: 100%; */
    /* transform: translateX(-50%); */
    background-color: #fff;
    border: 0;
    padding: 0;
    min-width: 150px;
    width: auto;
    z-index: 200;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 8px 16px 0 rgba(0, 0, 0, 0.08);
}

/* Triangle pointer */
/* #primary-menu>div>ul>li>ul::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid var(--color-secondary);
} */

#primary-menu>div>ul>li:hover>ul {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

#primary-menu>div>ul>li>ul>li,
.corporate-units-dropdown ul li {
    float: none;
    margin: 0;
    border: none;
    background-color: #fff;
    ;
}

#primary-menu>div>ul>li>ul>li>a,
.corporate-units-dropdown ul li a {
    display: block;
    color: #000;
    font-weight: 400;
    font-size: var(--fs-p16);
    text-transform: none;
    letter-spacing: 0;
    white-space: nowrap;
    height: auto;
    background-color: #fff;
    border-radius: 8px;
    padding: 10px 30px;
    transition: background-color 0.2s ease;
}

#primary-menu>div>ul>li>ul>li>a:hover,
.corporate-units-dropdown ul li a:hover {
    background-color: var(--color-secondary);
    color: #fff;
}

#primary-menu>div>ul>li>ul>li.current>a,
.corporate-units-dropdown ul li.current a {
    background-color: var(--color-secondary);
    color: #fff;
}

/* Nested submenu (third level) */
#primary-menu>div>ul>li>ul>li>ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: var(--color-secondary);
    border-radius: 12px;
    padding: 8px 0;
    min-width: 180px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

#primary-menu>div>ul>li>ul>li:hover>ul {
    display: block;
}

#primary-menu>div>ul>li>ul>li>ul>li>a,
.corporate-units-dropdown ul li ul li a {
    padding: 10px 20px !important;
}

.searchbutton {
    border: none;
    /*border-radius: 0 8px 8px 0;*/
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    background-color: transparent;
    padding: 0;
}

.searchbutton span {
    color: white;
}

#header .header-info .infobox.others .searchbutton svg#search_icon {
    height: 13px;
    padding-left: 0;
    padding-right: 5px;
    width: auto;
    display: block;
}

.mobile-drawer .searchbutton svg#search_icon {
    height: 13px;
    padding-left: 0;
    padding-right: 5px;
    width: auto;
    display: block;
}

#top-cart {
    position: relative;
}

#header .header-info .infobox.others li#top-cart svg {
    padding-right: 15px;
}

#top-cart #cartQty {
    top: -5px;
}

/* --- Desktop: Search open state --- */

	 /* Global Search Overlay Styles */
		/* Fullscreen overlay */
		.global-search-overlay {
			position: fixed;
			inset: 0;
			background: #fff;
			z-index: 99999;
			display: none;
			overflow-y: auto;
		}

		.global-search-overlay.is-open {
			display: block;
		}

		/* Inner layout */
		.global-search-inner {
			padding-top: 80px;
			padding-bottom: 40px;
		}

		/* Top bar (X | input | Clear) */
		.global-search-top {
			display: flex;
			align-items: center;
			gap: 8px;
			margin-bottom: 20px;
		}

		.btn-search-close,
		.btn-search-clear {
			border: none;
			background: transparent;
			cursor: pointer;
			color: #000;
		}

		.btn-search-close {
			font-size: 24px;
			line-height: 1;
		}

		.global-search-input-wrap {
			flex: 1 1 auto;
		}

		.global-search-input {
			width: 100%;
			border: 1px solid #CECECE;
			border-radius: 8px;
		}

		/* Tabs row */
		.global-search-tabs {
			display: flex;
			gap: 8px;
			border-bottom: 1px solid #CECECE;
		}

		.global-search-tabs .search-tab {
			border: 0;
			background: transparent;
			padding: 8px 12px;
			cursor: pointer;
			color: #555;
			border-bottom: 2px solid transparent;
			border-radius: 0;
		}

		.global-search-tabs .search-tab .tab-count {
			margin-left: 4px;
		}

		.global-search-tabs .search-tab.active {
			color: var(--color-primary);
			border-bottom-color: var(--color-primary);
		}

		/* Sections */

		.search-section-header {
			display: flex;
			align-items: center;
			justify-content: space-between;
			margin-bottom: 10px;
		}

		.search-section-header h4 {
			margin: 0;
		}

		.search-see-all {
			color: var(--color-primary);
		}

		/* Card list */
		.search-section-body {
			display: flex;
			flex-direction: column;
		}

		/* Individual result card */
		.search-card {
			display: flex;
			align-items: center;
			justify-content: space-between;
			padding: 10px 0;
			border-radius: 12px;
			background: #fff;
			cursor: pointer;
			border-bottom: 1px solid #CECECE;
			border-bottom-left-radius: 0;
			border-bottom-right-radius: 0;
		}

		.search-card-main {
			flex: 1 1 auto;
		}

		.search-card-title:hover {
			color: var(--color-primary);
		}

		.search-card-meta {
			color: #555;
		}

		/* Placeholder image area */
		.search-card-thumb {
			width: 80px;
			height: 80px;
			border-radius: 16px;
			background: #f2f2f2;
			margin-left: 16px;
			flex-shrink: 0;
		}

		/* Tab visibility logic */
		.search-section.hidden {
			display: none;
		}

		/* When overlay open, prevent body scrolling */
		body.search-open {
			overflow: hidden;
		}

		/* Mobile search bar */
		#mobile-search-bar {
			background: #fff;
			padding: 10px 0;
			border-bottom: 1px solid #eee;
		}

		.mobile-search-inner {
			position: relative;
		}

		.mobile-search-input {
			padding-right: 40px;
		}

		.mobile-search-btn {
			position: absolute;
			right: 10px;
			top: 50%;
			transform: translateY(-50%);
			background: none;
			border: none;
			cursor: pointer;
		}

		.search-loading-indicator {
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 10px;
			padding: 20px;
			color: #555;
			font-size: 14px;
		}

		.search-loading-spinner {
			width: 24px;
			height: 24px;
			border: 3px solid #CECECE;
			border-top-color: var(--color-primary);
			border-radius: 50%;
			animation: searchSpinnerRotate 0.8s linear infinite;
		}

		@keyframes searchSpinnerRotate {
			from {
				transform: rotate(0deg);
			}

			to {
				transform: rotate(360deg);
			}
		}

         /* Global Search Overlay Styles End */


/* Smooth transitions for menu and search column */
#primary-menu>div>ul>li>a {
    transition: padding .3s ease;
}

.topinfo>.col-2 {
    transition: flex-basis .3s ease, max-width .3s ease;
}

#primary-menu.col-8 {
    transition: flex-basis .3s ease, max-width .3s ease;
}

/* Keep menu visible but compress link padding */
.top-search-open #primary-menu>div>ul>li>a {
    padding-left: 3px;
    padding-right: 3px;
}

/* Expand the search column */
.top-search-open .topinfo>.col-2 {
    flex-basis: 33.3333%;
    max-width: 33.3333%;
}

/* Compress menu column */
.top-search-open #primary-menu.col-8 {
    flex-basis: 50%;
    max-width: 50%;
}

/* Hide the Get A Quote button to make room */
.top-search-open .header-btn-contact {
    display: none !important;
}

.top-search-open .searchbutton {
    border-radius: 0 8px 8px 0;
}

/* Search icon: hide when open */
.top-search-open .searchbutton svg {
    display: none;
}

/* Close icon: show when open */
.searchbutton .search-close-icon {
    display: none;
}

.top-search-open .searchbutton .search-close-icon {
       display: block;
    font-size: 18px;
    font-weight: 700;
    color: #000;
    line-height: 1;
}

.top-search-open #top-search form {
    width: 100%;
    -webkit-transition: width .3s ease;
    -o-transition: width .3s ease;
    transition: width .3s ease;
    animation-delay: 2s;
}

.top-search-open #top-search form input {
    width: calc(100% - 30px);
    padding: 12px 16px;
    -webkit-transition: width .3s ease;
    -o-transition: width .3s ease;
    transition: width .3s ease;
    animation-delay: 2s;
}

/* .highlight-buttons ul {
    width: 300px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    margin: 0;
}

.highlight-buttons>ul li {
    width: calc(50% - 10px);
    text-align: center;
    position: relative;
}

.highlight-buttons>ul li>a {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    justify-content: flex-start;
}

.highlight-buttons>ul li>a:has(i) {
    padding-right: 20px;
}

.highlight-buttons ul li i {
    position: relative;
    font-size: 14px !important;
    top: 1px;
    width: 14px;
    text-align: center;
    margin-left: 5px;
    margin-right: 0;
    -webkit-transition: line-height .4s ease;
    -o-transition: line-height .4s ease;
    transition: line-height .4s ease;
}

.highlight-buttons ul {
    list-style: none;
    height: 50px;
}

.highlight-buttons ul ul {
    display: none;
    position: absolute;
    width: 220px;
    background-color: #FFF;
    box-shadow: 0px 13px 42px 11px rgba(0, 0, 0, 0.05);
    border: 1px solid #EEE;
    border-top: 2px solid #ac8c5e;
    height: auto;
    z-index: 199;
    top: auto;
    top: 48px;
    right: 0;
    margin: 0;
    padding: 0;
}

.highlight-buttons ul ul a {
    font-size: 14px;
    font-weight: 500;
    height: auto;
    color: #666;
    padding: 10px 15px;
    border: 0;
    letter-spacing: 0;
    -webkit-transition: all .2s ease-in-out;
    -o-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}

.highlight-buttons ul ul li:hover>a {
    color: #734F0D;
    padding-left: 18px;
} */

/*mega menu styling*/
#primary-menu-container .container-fluid {
    position: relative;
}

body.stretched #header.full-header #primary-menu ul li.mega-menu .mega-menu-content {
    width: 100% !important;
    margin: 0;
}

#primary-menu ul li .mega-menu-content {
    display: none;
    position: absolute;
    background-color: #FFF;
    border: none;
    height: auto;
    z-index: 199;
    top: 0px;
    margin: 0;
    left: 0;
    max-height: 550px;
    width: 765px;
    overflow: hidden;
    box-shadow: 0px 12px 30px 0px rgba(0, 0, 0, 0.30);
}

.mega-menu-content>.row {
    margin-left: 0;
    margin-right: 0;
}

.mega-menu-content>.row>.megamenu-listcol {
    background-color: #fff;
    padding: 30px 0 10px;
    /*width: 28%;*/
    overflow-y: auto;
}

.mega-menu-content>.row>.megamenu-contentcol {
    /*width: 72%;*/
    padding: 0;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader {
    position: relative;
    height: 100%;
    background-color: #F5F5F5;
    padding: 30px;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .imagecol {
    position: relative;
    overflow: hidden;
    border-radius: 16px;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .imagecol::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.61) 0%, rgba(0, 0, 0, 0.00) 100%);
    z-index: 1;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .hc {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    padding: 20px 0 20px 30px;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    height: 100%;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .hc>div {
    background-color: #e78238;
    border-radius: 10px;
    display: inline-block;
    color: white;
    font-size: 16px;
    padding: 5px 20px;
    margin-bottom: 20px;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .hc>h3 {
    margin-bottom: 20px;
    color: #FFF;
    font-family: Inter;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.mega-menu-content>.row>.megamenu-contentcol .contentheader .hc>p {
    color: black;
    font-size: 15px;
}

#primary-menu .mega-menu-content>.row>.megamenu-contentcol .contentheader .hc .button {
    padding: 15px 24px;
    color: white;
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    height: auto;
}

.mega-menu-content>.row>.megamenu-listcol .sticky {
    position: sticky;
    top: 0;
    left: 0;
}

#primary-menu ul li>.mega-menu-content .magemenu-category-title {
    color: rgba(0, 0, 0, 0.5);
    font-weight: 600;
    padding: 10px 30px;
    cursor: default;
    margin-bottom: 10px;
    font-size: 16px;
}

#primary-menu ul li>.mega-menu-content .magemenu-category-title+.row {
    margin: 0;
    padding-bottom: 30px;
}

#primary-menu ul li>.mega-menu-content .magemenu-category-title+.row>.col-md-6 {
    padding: 0;
}

#primary-menu ul li>.mega-menu-content .megamenu-listcol ul {
    top: 0;
    width: 100%;
    box-shadow: none;
    padding: 0 30px;
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 14px;
    overflow: hidden;
}

#primary-menu ul li>.mega-menu-content ul>li {
    border-radius: 0;
    max-width: 50%;
    flex: 0 0 48%;
}

#primary-menu ul li>.mega-menu-content ul>li>a {
    color: black;
    text-transform: none;
    display: flex;
    justify-content: space-between;
    padding: 0;
    font-size: 14px;
}

#primary-menu ul li>.mega-menu-content ul>li>a span {
    display: block;
    transition: all .2s ease-in-out;
}

#primary-menu ul li>.mega-menu-content ul>li>a span img {
    filter: none;
    max-height: 10px;
    width: 100%;
}

#primary-menu ul li .mega-menu-content ul>li.current>a,
#primary-menu ul li .mega-menu-content ul>li:hover>a {
    color: #B68009;
    background-color: transparent;
}

.mega-menu-content>.row>.megamenu-listcol::-webkit-scrollbar {
    width: 6px;
}

.mega-menu-content>.row>.megamenu-listcol::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.mega-menu-content>.row>.megamenu-listcol::-webkit-scrollbar-thumb {
    background: #B68009;
}

.mega-menu-content>.row>.megamenu-listcol::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.megamenu-copyright {
    border-top: 1px solid #CECECE;
    padding: 20px 30px;
}

.megamenu-copyright .socialmedia {
    margin: 0;
}

.megamenu-copyright .socialmedia .col {
    padding-right: 3px;
    padding-left: 3px;
    max-width: 30px;
}

#primary-menu .megamenu-copyright .socialmedia .col a:has(svg) {
    padding: 0;
}

.megamenu-copyright .socialmedia svg {
    fill: #D1D1D1;
    margin-bottom: 12px;
}

.megamenu-copyright .socialmedia+p {
    font-size: 10px;
    font-weight: 300;
    line-height: normal;
}

.specialtiesmegamenu .magemenu-category-title+.row ul {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.mega-menu-content>.row>.megamenu-listcol .row>.col-md-12 {
    padding: 0;
}

/*#primary-menu ul li.specialtiesmegamenu .mega-menu-content{display: block !important; opacity: 0; z-index: 0;}*/
#primary-menu .specialtiesmegamenu .magemenu-category-title+.row ul li {
    max-width: 25%;
    flex: 0 0 23.5%;
}

.contentstart {
    position: relative;
    z-index: 2;
}

.contentstart:has(.modal.show) {
    z-index: auto;
}

#primary-menu>div:has(ul) {
    position: relative;
    /* width: calc(100% + 100px); */
}

/* #primary-menu > div > ul{width: calc(100% - 100px);} */


/*	------------------------ Header END -------------------------- */

/*	------------------------ Footer -------------------------- */


.ctabox {
    position: relative;
    overflow: hidden;
    /* background image */
    background: url("../images/layout/bg-cta.webp") center bottom / cover no-repeat;
    min-height: unset;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    color: #fff;
    z-index: 0;
}



.ctabox .content {
    z-index: 2;
}

.ctabox .h2 {
    max-width: 1000px;
    justify-self: center;
}


#footer {
    color: #000;
    font-family: 'Montserrat', sans-serif;
    background-color: #F8F8F8;
}

#copyright {
    color: #555;
}

#footer h4 {
    color: #000;
    text-transform: uppercase;
}

#merchantimg img {
    max-height: 23px;
}

.address p {
    font-size: 16px;
    color: #000;
}

#footer .footer-widgets-wrap {
    padding: 40px 0;
}

#footer .footer-widgets-wrap>.row {
    justify-content: space-between;
}

/*#footer .socialmedia{margin-top: 18px;}*/
#footerSocialContacts .socialmedia {
    justify-content: flex-end;
}

#footerSocialContacts .socialmedia .col {
    padding-right: 3px;
    padding-left: 3px;
    max-width: 20%;
}

#footerSocialContacts .socialmedia .col:first-child {
    padding-left: calc(var(--bs-gutter-x) * .5);
}

#footerSocialContacts .socialmedia .col:last-child {
    padding-right: calc(var(--bs-gutter-x) * .5);
}

.socialmedia a {
    display: block;
}

.socialmedia a svg {
    width: 100%;
    max-width: 20px;
    height: auto;
    /*margin-right: 6px;*/
    /*margin-top: 6px;*/
    fill: #fff;
    -webkit-transition: fill .3s ease;
    -o-transition: fill .3s ease;
    transition: fill .3s ease;
    margin-bottom: 15px;
}

#footer .widget.contact svg {
    margin-right: 10px;
}

.contact-icons svg {
    margin-right: 10px;
    height: 35px;
    width: auto;
}

.socialmedia a:hover svg {
    fill: #CC9739;
    -webkit-transition: fill .3s ease;
    -o-transition: fill .3s ease;
    transition: fill .3s ease;
}

#footer .widget_links a {
    color: inherit;
    -webkit-transition: color .3s ease;
    -o-transition: color .3s ease;
    transition: color .3s ease;
}

#footer .widget_links a:hover {
    color: var(--color-primary);
    -webkit-transition: color .3s ease;
    -o-transition: color .3s ease;
    transition: color .3s ease;
}

.company-profile {
    display: flex;
    gap: 10px;
    flex-direction: column;
    margin-top: 20px;
}

#subscription {
    background-color: #f5f5f5;
    padding-top: 23px;
    padding-bottom: 23px;
}

#subscription .row {
    align-items: center;
}

#subscription h4,
#subscription form {
    margin-bottom: 0;
}

#subscription form {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-content: center;
    align-items: center;
}

#subscription form input {
    width: calc(100% - 95px);
    max-width: 325px;
    border-radius: 8px 0 0 8px;
    height: 55px;
    padding-left: 25px;
    border-right: none;
}

#subscription form button {
    height: 55px;
}

#footerSocialContacts {
    margin-top: 60px;
    margin-bottom: 15px;
}

#footerCompContacts .col {
    flex: 0 0 21%;
    max-width: 21%;
    min-width: 195px;
}

#footerCompContacts .col.email {
    flex: 0 0 26%;
    max-width: 26%;
}

#footerCompContacts .flexbox {
    justify-content: center;
    margin-bottom: 15px;
}

#footerCompContacts .flexbox svg {
    height: 23px;
    width: 23px;
    margin-right: 10px;
    object-fit: contain;
}

#footerCompContacts a .text {
    width: calc(100% - 33px);
}

#footerCompContacts a .text .number {
    color: #000;
}

#footerCompContacts a:hover .text .number {
    color: #CC9739;
}

#footerCart svg {
    fill: #ac8c5e;
    max-width: 29px;
}

#copyrights {
    border-top: 1px solid #CECECE;
    background-color: #F6F6F6;
    color: #555;
}

#copyrights .col-12 {
    padding: 20px 0;
}

#copyrights a:hover {
    color: var(--color-primary);
}

@media (max-width: 575.9px) {
    .company-profile {
        margin-top: 0;
    }
}

/*	------------------------ Footer END -------------------------- */


/*	------------------------ Home -------------------------- */
#slider{
aspect-ratio: 2600 / 1100;
}
    
#slider .swiper-pagination,
#sliderm .swiper-pagination{
    width: 100%;
    bottom: 50px !important;
    text-align: center;
}

#slider .swiper-pagination span,
#sliderm .swiper-pagination span{
    background-color: rgba(255, 255, 255, 0.5);
}

#slider .swiper-pagination span.swiper-pagination-bullet-active,
#sliderm .swiper-pagination span.swiper-pagination-bullet-active{
    background-color: rgba(255, 255, 255, 1);
}

#slider .swiper-slide-bg {
    background-color: rgba(0, 0, 0, 0);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
    opacity: 1;
    visibility: inherit;
}

/* Gradient overlay on all banner slides */
#slider .swiper-slide.dark::before,
#sliderm .swiper-slide.dark::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: 0.6;
    background: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0.00) 100%);
    z-index: 1;
    pointer-events: none;
}

/* Ensure caption sits above the overlay */
#slider .swiper-slide .container-fluid,
#sliderm .swiper-slide .container-fluid {
    position: relative;
    z-index: 2;
}

.swiper-slide-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
}

#slider a:has(> .slider-caption),
#sliderm a:has(> .slider-caption) {
    display: block;
    width: 100%;
    height: 100%;
}

#slider a .slider-caption,
#sliderm a .slider-caption,
.slider-caption-container {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
}

.slider-caption h2 {
    text-align: unset;
}

.slider-caption p {
    margin-bottom: 30px;
    max-width: unset;
    font-size: var(--fs-t16);
}

/* .slider-caption-container .btn{
    background-color: var(--color-tertiary);
    color: #fff;
    border: 0;
    text-shadow: none;
}

.slider-caption-container .btn:hover {
    background-color: #fff;
    color: var(--color-tertiary);
    text-shadow: none;
} */

#slider~#content,
#sliderm~#content {
    padding-top: 60px;
    padding-bottom: 60px;
    background-color: #f9f9f9;
}

#sliderm {
    aspect-ratio: 1550 / 600;
}

#sliderm .swiper-slide-bg {
    background-color: rgba(0, 0, 0, 0);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom;
    width: 100%;
    height: 100%;
    opacity: 1;
    visibility: inherit;
}

#sliderm .slider-caption {
    max-width: 100%;
    /*padding-top: 60px;*/
    position: relative;
    left: auto;
    top: auto;
}

#slider .swiper-navs {
    position: absolute;
    bottom: 30px;
    left: calc(50% + 56px + 12px);
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 10px;
}

.slider-brand-logo {
    position: absolute;
    top: 5%;
    right: 5%;
    z-index: 10;
    pointer-events: none;
}

.slider-brand-logo svg {
    max-width: 150px;
    width: 7vw;
    height: auto;
}

#slider .slider-arrow-left,
#slider .slider-arrow-right {
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    color: #000;
    font-weight: 400;

}

#slider .slider-arrow-left:hover,
#slider .slider-arrow-right:hover {
    background: var(--color-primary);
    color: #fff;
}

#slider .slider-arrow-left:hover svg path,
#slider .slider-arrow-right:hover svg path {
    stroke: #fff;
}

#slider .slider-arrow-left i,
#slider .slider-arrow-right i {
    font-size: 30px;
}

#slider .swiper-pagination,
#sliderm .swiper-pagination {
    width: 100%;
    bottom: 50px !important;
    text-align: center;
}

#sliderm .swiper-pagination span.swiper-pagination-bullet-active {
    background-color: var(--color-primary);
}

.owl-nav.disabled {
    display: none;
}
.owl-dots.disabled{
    display: none;
}

@media(max-width:575.9px) {
    .slider-brand-logo{
        top:3%;
        right: 2%;
    }
    
    .slider-brand-logo svg {
        width: 75px;
    }

    .owl-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 8px;
        margin-top: 20px;
    }
    
    .owl-dots.disabled{
        display: none;
    }

    .owl-dots .owl-dot,
    .blogs-hero-pagination .swiper-pagination-bullet {
        width: 10px;
        height: 10px;
        border-radius: 50%;
        background-color: #cecece;
        border: none;
        padding: 0;
        cursor: pointer;
        transition: all 0.3s ease;
    }

    .owl-dots .owl-dot:hover {
        background-color: var(--color-secondary);
    }

    .owl-dots .owl-dot.active {
        background-color: var(--color-primary);
    }
}

/* ============================================
   Homepage: Accent Colors
   ============================================ */
.text-accent {
    color: var(--color-accent);
}

.text-accent-italic {
    color: var(--color-accent);
    font-style: italic;
}

/* ============================================
   Homepage: Section 2 - Company Intro (Since 1998)
   ============================================ */
.company-intro {
    padding-top: 80px;
    padding-bottom: 60px;
}

.intro-year-block {
    display: flex;
    flex-direction: column;
}

.intro-since {
    font-size: var(--fs-t16);
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: uppercase;
    color: var(--text);
    margin-bottom: 0;
}

.intro-year {
    font-size: clamp(60px, 10vw, 130px);
    font-weight: 700;
    color: var(--text);
    line-height: 1;
}

.intro-heading {
    font-size: var(--fs-h2);
    font-weight: 800;
    line-height: var(--lh-title);
    margin-bottom: 16px;
}

.intro-text {
    color: var(--muted);
    text-align: justify;
}

@media (max-width: 767.98px) {
    .company-intro {
        padding-top: 30px;
        padding-bottom: 0;
    }
}


/* ============================================
   Homepage: Section 3 - What We Offer
   ============================================ */

.section-title {
    font-size: var(--fs-h2);
    font-weight: 800;
    margin-bottom: 10px;
}

.section-desc {
    color: var(--muted);
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
}

.offer-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 30px;
}

.offer-card {
    text-align: center;
}

.offer-card a {
    text-decoration: none;
    color: var(--text);
}

.offer-card-image {
    border-radius: 16px;
    overflow: hidden;
    aspect-ratio: 1 / 1;
    margin-bottom: 20px;
}

.offer-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.offer-card:hover .offer-card-image img {
    transform: scale(1.05);
}

.offer-card-title {
    margin: 0;
}

.offer-card-title {
    position: relative;
    display: inline-block;
    padding: 0 10px;
}

.offer-card-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    /* mirrors your underline-offset */
    left: 0;
    width: 0;
    height: 1px;
    /* mirrors your decoration-thickness */
    background-color: var(--color-primary);
    transition: width 0.4s ease;
}

.offer-card:hover .offer-card-title::after {
    width: 100%;
}

@media (max-width: 767.98px) {
    .offer-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
}

@media (max-width: 575.98px) {
    .offer-grid {
        grid-template-columns: 1fr 1fr;
    }
}


/* ============================================
   Homepage: Section 4 - Style & Performance
   ============================================ */
.style-performance {
    padding-bottom: 120px;
}

.sp-image-wrapper {
    position: relative;
    padding-left: 20px;
    padding-bottom: 20px;
}

.sp-image-frame {
    position: relative;
}

.sp-image-bg-block {
    position: absolute;
    bottom: -20px;
    left: -20px;
    width: 80%;
    height: 80%;
    border-radius: 16px 16px 16px 0;
    background: #656565;
    z-index: 0;
}

.sp-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
    position: relative;
    z-index: 1;
    aspect-ratio: 3 / 4;
}

.sp-content {
    padding-left: 20px;
}

.sp-title {
    font-size: var(--fs-h2);
    font-weight: 800;
    margin-bottom: 20px;
}

.sp-desc {
    margin-bottom: 50px;
}

.sp-features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px 40px;
}

.sp-feature-item {
    position: relative;
    padding-bottom: 15px;
}

.sp-feature-item:nth-child(-n+4)::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: #E4E4E4;
}

.sp-feature-icon {
    width: 45px;
    height: 45px;
    margin-bottom: 8px;
}

.sp-feature-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.sp-feature-title {
    font-size: var(--fs-t16);
    font-weight: 800;
    margin-bottom: 6px;
}

.sp-feature-desc {
    font-size: var(--fs-t14);
    margin-bottom: 0;
}

@media (max-width: 991.98px){
    .style-performance{
        padding-bottom: 60px;
    }
}

@media (max-width: 767.98px) {

    .sp-content {
        padding-left: 0;
    }
    
    .sp-desc{
        margin-bottom: 30px;
    }
    
    .sp-feature-item:nth-child(n+5):nth-child(-n+6){
        padding-bottom: 30px;
    }
}

@media (max-width: 575.98px) {
    .style-performance{
        padding-bottom: 60px;
    }
    
    .sp-features-grid {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .sp-feature-item{
        justify-content: center;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    
}


/* ============================================
   Homepage: Section 5 - What Makes Us Different
   ============================================ */
.what-makes-different {
    position: relative;
    background-image: url('../images/layout/what-makes-different-bg.webp');
    background-size: cover;
    background-position: bottom;
    background-attachment: fixed;
    color: #fff;
    min-height: 600px;
    display: flex;
    align-items: center;
}

.wmud-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    z-index: 0;
}

.what-makes-different .container-fluid {
    position: relative;
    z-index: 1;
}

.wmud-title {
    color: #fff;
    font-weight: 800;
    margin-bottom: 20px;
}

.wmud-desc {
    color:  #fff;
    max-width: 1000px;
    margin-inline: auto;
    margin-bottom: 80px;
}



.wmud-points {
    display: flex;
    justify-content: space-between;
    /* gap: 40px; */
    flex-wrap: wrap;
    text-align: center;
}

.wmud-point {
    text-align: center;
    max-width: 200px;
}

.wmud-point-icon {
    width: 38px;
    height: 38px;
    margin: 0 auto 15px;
}

.wmud-point-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.wmud-point-title {
    font-size: var(--fs-t20);
    font-weight: 700;
    color: #fff;
}

@media (max-width: 767.98px) {
    .what-makes-different {
        background-attachment: scroll;
    }

    .wmud-points {
        justify-content: center;
    }

    .wmud-desc{
        margin-bottom: 30px;
    }

    .what-makes-different {
        position: relative;
        background-image: url('../images/layout/what-makes-different-bg-mb.webp');
        background-size: cover;
        background-position: bottom;
        background-attachment: scroll;
        display: flex;
        align-items: center;
        padding: 60px 0;
    }
}

@media (max-width: 575.98px) {
    .wmud-points {
        flex-wrap: wrap;
        justify-content: space-around;
    }

    .wmud-point-icon{
        width: 30px;
        height: 30px;
    }

    .wmud-point-title{
        font-size: 14px;
    }
}


/* ============================================
   Homepage: Section 6 - Testimonials
   ============================================ */
.pl-testimonials {
    overflow: hidden;
    padding: 120px 0;
}

.pl-testimonial-carousel .oc-item {
    /* padding: 10px 0; */
    opacity: 0.5;
    transform: scale(0.95);
    transition: all 0.5s ease;
}

.pl-testimonial-carousel .owl-item.active.center .oc-item {
    opacity: 1;
    transform: scale(1);
}

.pl-testimonials .owl-carousel .owl-stage-outer {
    overflow: visible;
}

.pl-testimonial-card {
    background: #fff;
    border-radius: 15px;
    padding: 30px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 8px 16px 0 rgba(0, 0, 0, 0.08);
    position: relative;
    overflow: hidden;
    min-height: 250px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.pl-tcard-accent-bar {
    height: 10px;
    background: var(--color-accent);
    margin: 0 -30px -30px;
    border-radius: 0 0 15px 15px;
    margin-top: 20px;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.1s ease, opacity 0.3s ease;
}

.pl-testimonial-carousel .owl-item.active.center .oc-item .pl-tcard-accent-bar {
    max-height: 10px;
    opacity: 1;
}

.pl-tcard-quote {
    position: absolute;
    top: 16px;
    right: 16px;
}

.pl-tcard-content {
    display: flex;
    align-items: start;
    gap: 30px;
}

.pl-tcard-desc {
    display: flex;
    flex-direction: column;
    text-align: start;
    gap: 10px
}

.pl-tcard-avatar-wrapper {
    width: 60px;
    height: 60px;
    min-width: 60px;
    border-radius: 50%;
    overflow: hidden;
    padding: 10px;
    background-color: #F3F3F3;
    flex-shrink: 0;
}

.pl-tcard-google {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.pl-tcard-stars {
    display: flex;
    gap: 2px;
}

.pl-tcard-name {
    font-weight: 700;
    margin-bottom: 0;
}

.pl-tcard-text {
    font-size: var(--fs-p14);
    flex: 1;
    margin-bottom: 0;
}


.pl-testimonial-carousel .owl-dots {
    text-align: center;
    margin-top: 50px;
    gap: 8px;
      display: flex;
        justify-content: center;
        align-items: center;
}

.pl-testimonial-carousel .owl-dots .owl-dot {
     width: 10px;
    height: 10px;
    border: 0;
     padding: 0;
    background: #CECECE;
    border-radius: 50%;
    transition: all 0.3s ease;
}

.pl-testimonial-carousel .owl-dots .owl-dot.active {
    background: #000;
}

@media(max-width: 575.98px){
    .pl-testimonials{
        padding: 60px 0;
    }
    .pl-tcard-content{
        gap: 15px;
    }
    
    .pl-testimonial-carousel .oc-item{
        transform: none;
    }
    
    .pl-tcard-accent-bar {
        transition: opacity 0.3s ease;
      }
}


/* ============================================
   Homepage: Section 7 - CTA Elevate
   ============================================ */
.cta-elevate {
    position: relative;
    background-image: url('../images/layout/cta-elevate-bg.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
}

.cta-elevate-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
    z-index: 0;
}

.cta-elevate .container-fluid {
    position: relative;
    z-index: 1;
}

.cta-elevate-content {
    max-width: 600px;
    margin: 0 auto;
}

.cta-elevate-title {
    color: #fff;
    font-weight: 700;
    margin-bottom: 30px;
}

@media (max-width: 575.98px) {
    .cta-elevate {
        padding: 60px 0;
    }

    .pl-testimonial-carousel .owl-dots{
        margin-top: 30px;
    }
}


.cta-what-makes-different{
    background: #F5F5F5;
    color: #000;
    /*min-height: 470px;*/
    display: flex; 
    align-items: center;
    padding: 120px 0 110px;
        
}

.cta-what-makes-different .wmud-title,
.cta-what-makes-different  .wmud-desc{
    color: #000;
}

.cta-what-makes-different .wmud-title{
    font-weight: 800;
}

.cta-what-makes-different  .wmud-desc{
    margin-bottom: 50px;
}

.cta-what-makes-different .wmud-point-icon img{
        filter: brightness(0) saturate(100%) invert(33%) sepia(28%) saturate(910%) hue-rotate(52deg) brightness(92%) contrast(90%);
}


.cta-what-makes-different .wmud-point-title{
    font-weight: 400;
    color: #000;
    font-size: var(--fs-t14);
    margin-bottom: 0;
}

.cta-what-makes-different .wmud-points{
    gap: unset;
    margin-bottom: 0;
}

.cta-what-makes-different .wmud-points > .col {
position: relative;
}

.cta-what-makes-different .wmud-points > .col::after {
    content: "";
    position: absolute;
    top: 15px;
    right: 0;
    width: 1px;
    height: calc(100% - 30px);
    background: #E4E4E4;
}

.cta-what-makes-different .wmud-points > .col:last-child::after {
    display: none;
}

.cta-what-makes-different .wmud-point{
    max-width: unset;
    padding: 10px 45px ;
    
}

.cta-what-makes-different .wmud-point:last-child{
    border: 0;
}

@media (max-width: 991px) {
    .cta-what-makes-different .wmud-point{
        padding: 15px 20px;
    }

    .cta-what-makes-different .wmud-points > .col:nth-child(3)::after {
        display: none;
    }
}

@media (max-width: 768px){
    .cta-what-makes-different{
        padding: 60px 0;
    }
}

@media (max-width: 575px) {
    .cta-what-makes-different .wmud-desc{
        margin-bottom: 20px;    
    }
    
    .cta-what-makes-different .wmud-points > .col::after{
        display: none;
        
    }
     .cta-what-makes-different .wmud-point{
        padding: 15px 10px;
    }
}


/*	------------------------ Home END -------------------------- */


/*	------------------------ About Us -------------------------- */


/* Breadcrumb */
#bread_contact_banner {
    background-color: #F3F3F3;
    padding: 15px 0;
    top: auto;
    text-align: center;
    position: relative;
    border: none;
}

.topcrumb {
    padding: 0;
}

.topcrumb ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.topcrumb ul li {
    display: inline-block;
    color: #555;
    font-size: var(--fs-t12);
}

/* .topcrumb ul li a {
    color: #555;
} */

#banner.aboutuspage {
    position: relative;
    z-index: 1;
}

@media(min-width: 768px) {
    #banner.aboutuspage {
        aspect-ratio: 1440 / 615;
        background-size: cover;
        background-position: top right;
        background-image: url('../images/layout/aboutus-banner.webp');
    }
}

/* Hero Banner */
.aboutus-hero {
    position: relative;
    background-image: url('../images/layout/about-us-banner.webp');
    background-size: cover;
    background-position: center;
    min-height: 600px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.aboutus-hero .container-fluid {
    position: relative;
    z-index: 1;
}

.aboutus-hero-content {
    margin: 0 auto;
}

.aboutus-hero-since {
    display: block;
    color: #fff;
    font-size: var(--fs-t20);
    letter-spacing: 4px;
    margin-bottom: 10px;
    font-weight: 700;
}

.aboutus-hero-title {
    color: #fff;
    font-weight: 800;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .aboutus-hero {
        min-height: 300px;
    }
}

@media (max-width: 575.98px){
    .aboutus-hero-title{
        font-size: 24px;
    }
}

/* Stats Bar */
.aboutus-stats {
    background: #F6F6F6;
    border-top: 1px solid #eee;
    border-bottom: 1px solid #eee;
}

.aboutus-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    text-align: center;
}

.aboutus-stat-number,
.aboutus-stat-plus {
    font-size: var(--fs-h1);
    font-weight: 800;
    color: #000;
    margin-bottom: 5px;
}

.aboutus-stat-plus {
    color: var(--color-accent);
}

.aboutus-stat-label {
    font-size: 14px;
    color: #555;
    margin-bottom: 0;
    font-weight: 500;
}

@media (max-width: 767.98px) {
    .aboutus-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .aboutus-stat-number {
        font-size: 36px;
    }
}


/* Company Info */
.aboutus-company {
    background: #fff;
}

.aboutus-company-title {
    font-weight: 800;
    margin-bottom: 20px;
}

.aboutus-company-text p {
    color: #000;
    margin-bottom: 30px;
}

.aboutus-company-image {
    height: 100%;
    border-radius: 0;
    overflow: hidden;
}

.aboutus-company-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}


/* Mission / Vision / Values */
.aboutus-mvv-item {
    margin-top: 30px;
}

.aboutus-mvv-icon {
    margin-bottom: 10px;
}

.aboutus-mvv-icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

.aboutus-mvv-title {
    font-weight: 800;
    font-size: 16px;
    margin-bottom: 10px;
}

.aboutus-mvv-list {
    padding-left: 20px;
    margin-bottom: 0;
    color: #000;
}

.aboutus-mvv-list li {
    margin-bottom: 5px;
}

.aboutus-mvv-list li:last-child {
    margin-bottom: 0;
}

@media (max-width: 575.98px){
    .aboutus-company-image{
        max-height: 350px;
    }
}






/*	------------------------ About Us END -------------------------- */


/*  ------------------------ Product Detail -------------------------- */

.sidebar{
    position: sticky;
    top: calc(75px + 30px);
}

/* ── Panel wrapper ─────────────────────────────────────────────── */
.categories-panel {
    border-radius: 8px;
    /* padding-block: 15px; */
    margin-bottom: var(--space);
    background-color: #F5F5F5;
}

.categories-panel:has(.fabric-special-panel){
    background: transparent;
}



.categories-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 8px;
}

.categories-panel-header img {
    width: 18px;
    height: auto;
}

/* ── Root list ─────────────────────────────────────────────────── */
.cat-root-list {
    list-style: none;
    margin: 0;
    padding: 0;
    color: #000;
}

.cat-root {
    background: #F5F5F5;
    margin-inline: 30px;
    margin-bottom: 20px;
}

.cat-root.fabric-root{
    margin-inline: 0;
    background: transparent;
}

.cat-root:first-child {
    margin-top: 20px;
}

.cat-root:last-child {
    border-bottom: none;
    margin-bottom: 20px;
}

.categories-panel .cat-root.is-active,
.categories-panel .cat-root:has(.is-active){
    background: #FFF;
    border-radius: 8px;
    padding: 15px;
    margin-inline: 15px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
}

/*.cat-root.is-active > .cat-root-row,*/
/*.cat-root:has(.is-active) > .cat-root-row*/
.categories-panel .cat-root.is-open.is-active,
.categories-panel .cat-root.is-open:has(.is-active) {
    background: #FFF;
    border-radius: 8px;
    padding: 15px;
    margin-inline: 15px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
}

.cat-root> .cat-root-row.fabric-root-row,
.cat-root > .cat-root-row.fabric-root-row {
    background: var(--color-secondary);
    margin-inline: 0;
    border-radius: 8px;
    padding: 15px 30px;
    /* margin-inline: -15px; */
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
}


.cat-root-row.fabric-root-row .cat-root-link{
    color: #fff;

}


.cat-root.is-open > .cat-root-row:has(+ .cat-sub-list) {
    margin-bottom: 20px;
}

.cat-root-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    transition: margin-bottom 0.35s ease;
}



.cat-root-row:not(:has(+ .cat-sub-list)) {
    padding-right: 20px;
}

.cat-root-link {
    font-size: var(--fs-t16);
    font-weight: 500;
    color: #000;
    text-decoration: none;
    transition: color .15s, font-weight .1s;
}

.cat-root.is-open>.cat-root-row .cat-root-link,
.cat-root:has(.is-active) > .cat-root-row .cat-root-link {
    font-size: var(--fs-t16);
    font-weight: 700;
    color: #000;
}

.cat-root.is-open>.cat-root-row .cat-root-link.fabric-root-link,
.cat-root:has(.is-active) > .cat-root-row .cat-root-link.fabric-root-link{
    color: #fff;
}



.cat-root.is-active>.cat-root-row .cat-root-link {
    font-size: var(--fs-t16);
    font-weight: 700;
    color: #000;
}

.cat-root.is-active>.cat-root-row .cat-root-link.fabric-root-link{
    color: #fff;
}

.fabric-root .cat-sub-list{
    padding-inline: 30px;
}

.cat-root-link:hover {
    font-size: var(--fs-t16);
    font-weight: 600;
    color: var(--color-primary);
    text-decoration: none;
}

.cat-sub-list {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-4px);
    transition:
        max-height 410ms ease,
        opacity 350ms ease,
        transform 350ms ease;
}

.cat-sub-list.is-open {
    max-height: 800px;
    opacity: 1;
    transform: translateY(0);
}

/* ── Sub item row ── grey background ── */
.cat-sub-item {
    /* background: #F5F5F5; */
    margin-bottom: 20px;
}

.cat-sub-item:last-child {
    margin-bottom: 0;
}

/*.cat-sub-list:has(.cat-sub-list.is-open) {*/
/*    margin-bottom: 20px;*/
/*}*/

.cat-sub-item.is-open > .cat-sub-row {
    margin-bottom: 20px;
}

.cat-sub-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 16px;
}

/* indent levels */
.cat-sub-list>.cat-sub-item>.cat-sub-row {
    padding: 0 0 0 15px;
}

.cat-sub-list>.cat-sub-item>.cat-sub-row:last-child {
    margin-bottom: 0;
}

.cat-sub-list .cat-sub-list>.cat-sub-item>.cat-sub-row {
    padding-left: 30px;
    padding-right: 0;
}

.cat-sub-list .cat-sub-list .cat-sub-list>.cat-sub-item>.cat-sub-row {
    padding-left: 45px;
    padding-right: 0;
}

.cat-sub-list .cat-sub-list .cat-sub-list .cat-sub-list>.cat-sub-item>.cat-sub-row {
    padding-left: 60px;
    padding-right: 0;
}


/* ── Sub link: default ── */
.cat-sub-link {
    font-size: var(--fs-t16);
    font-weight: 500;
    color: #000;
    text-decoration: none;
    transition: color .15s, font-weight .1s;
}

/* Sub open (its own sub showing) → 600 + green */
.cat-sub-item.is-open>.cat-sub-row>.cat-sub-link,
.cat-sub-item.is-open>.cat-sub-row .cat-sub-link {
    font-size: var(--fs-t16);
    font-weight: 600;
    color: var(--color-primary);
}

/* Sub active (current page) */
.cat-sub-item.is-active>.cat-sub-row>.cat-sub-link,
.cat-sub-item.is-active>.cat-sub-link {
    font-size: var(--fs-t16);
    font-weight: 600;
    color: var(--color-primary);
}

/* Sub link hover */
.cat-sub-link:hover {
    font-size: var(--fs-t16);
    font-weight: 600;
    color: var(--color-primary);
    text-decoration: none;
}

/* Base reset for all */
.cat-toggle-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    flex-shrink: 0;
    padding: 0;
    background: transparent;
    border: none;
    transition: background .15s, color .15s, border-color .15s;
}

.cat-toggle-btn i {
    font-size: 12px;
}

/* Root toggle — circle with black border */
.cat-root-row .cat-toggle-btn {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid #000;
    color: #000;
    background: transparent;
    
}

.cat-root-row .cat-toggle-btn.fabric-toggle-btn{
    border: 2px solid #fff;
    color: #fff;
}

/* Root open → filled green circle */
.cat-root.is-open>.cat-root-row .cat-toggle-btn {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

/* Root toggle hover */
.cat-root-row .cat-toggle-btn:hover {
    background: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

/* Sub toggle — plain icon, no circle, no border */
.cat-sub-row .cat-toggle-btn {
    width: auto;
    height: auto;
    border: none;
    border-radius: 0;
    background: transparent;
    color: #333;
    padding: 2px 4px;
}

.cat-sub-row .cat-toggle-btn i {
    font-size: 13px;
}

/* Sub open → green icon */
.cat-sub-item.is-open>.cat-sub-row .cat-toggle-btn {
    color: var(--color-primary);
}

/* Sub toggle hover */
.cat-sub-row .cat-toggle-btn:hover {
    color: var(--color-primary);
    background: transparent;
    border: none;
}

/* ── Scroll ─────────────────────────────────────────────────────── */
.cat-bg {
    overflow-y: auto;
}

@media(min-width: 768px){
    .sidebar-sticky-wrap {
        position: sticky;
    	top: var(--sidebar-top, 100px);
    	max-height: calc(100vh - var(--sidebar-top, 100px));
    	overflow-y: auto;
    	overflow-x: hidden;
    	/* thin custom scrollbar */
    	scrollbar-width: thin;
    	scrollbar-color: #ccc transparent;
    }
	.sidebar-sticky-wrap::-webkit-scrollbar { width: 4px; }
	.sidebar-sticky-wrap::-webkit-scrollbar-track { background: transparent; }
	.sidebar-sticky-wrap::-webkit-scrollbar-thumb {
		background-color: #ccc;
		border-radius: 2px;
	}
}

/* ── Responsive ─────────────────────────────────────────────────── */
@media (max-width: 991.98px) {
    .cat-root{
        margin-inline: 15px;
    }

    .sidebar-widgets-wrap {
        margin: 0;
    }
}

@media (max-width: 1366px) {
    .cat-toggle-btn i {
        font-size: 12px;
    }
}

@media(max-width: 768px){
/* =========================
   MOBILE CATEGORY DROPDOWN
========================= */
.category-filter-dropdown {
	position: relative;
}

.category-dropdown-toggle {
	display: flex;
        align-items: center;
        border-radius: 8px;
        font-weight: 500;
        background: #CECECE;
        width: 250px;
        color: #000
}
.category-dropdown-toggle:hover,
.category-dropdown-toggle:focus,
.category-dropdown-toggle:active{
    background-color: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

.category-dropdown-menu {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 2;
	display: none;
    background: #fff;
    border: 1px solid #CECECE;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    border-radius: 8px;
    max-height: none;
    overflow: hidden;
}

.category-dropdown-menu.is-open {
	display: block;
}

.category-dropdown-menu-list {
	padding: 0;
        border-radius: 8px;

}

.mobile-cat-current-root-title {
	        padding: 15px 20px;
        font-weight: 800;
        /* letter-spacing: 0.04em; */
        text-transform: uppercase;
        color: #fff;
        border-bottom: 1px solid #CECECE;
        background: var(--color-secondary)
}

.mobile-cat-filter-list-wrap{
    padding: 0 10px 10px 10px;
    border-radius: 8px;
    
}
.mobile-cat-filter-list{
 max-height: 320px;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}
.mobile-cat-filter-list,
.mobile-cat-submenu {
	list-style: none;
	margin: 0;
	padding: 0;
}


.mobile-cat-item {
	border-bottom: 1px solid #CECECE;
}

.mobile-cat-submenu.is-open .mobile-cat-item{
	border-bottom: 1px solid transparent;
}

.mobile-cat-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.mobile-cat-link {
	display: block;
	flex: 1 1 auto;
	padding: 15px;
	color: #000;
}

.mobile-cat-link:hover,
.mobile-cat-link:focus {
	color: var(--color-primary);
	text-decoration: none;
}

.mobile-cat-toggle {
	flex: 0 0 auto;
	border: 0;
	background: transparent;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: #000;
	transition: color 0.25s ease, transform 0.25s ease;
}

.mobile-cat-toggle:hover {
	color: #000;
}

.mobile-cat-item.is-active > .mobile-cat-row > .mobile-cat-link {
	font-weight: 700;
	color: #000;
}

.mobile-cat-item.is-first-level > .mobile-cat-row > .mobile-cat-link {
	font-weight: 600;
}

.mobile-cat-submenu {
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition: max-height 0.35s ease, opacity 0.25s ease, visibility 0.25s ease;
	background: #fff;
}

.mobile-cat-submenu.is-open {
	max-height: 1200px;
	opacity: 1;
	visibility: visible;
}

.mobile-cat-submenu .mobile-cat-link {
	padding: 10px 20px;
}

.mobile-cat-submenu .mobile-cat-submenu .mobile-cat-link {
	padding-left: 40px;
}

.mobile-cat-submenu .mobile-cat-submenu .mobile-cat-submenu .mobile-cat-link {
	padding-left: 52px;
}

.mobile-cat-item.is-open > .mobile-cat-row .mobile-cat-toggle {
	color: #000;
}
}

.product-detail-section{
    overflow: visible !important;
}

.pdv-editor h3,
.pdv-editor h4 {
    font-weight: 700;
    /*color: #1a1a1a;*/
    /*margin: 20px 0 10px;*/
}

.pdv-editor h3{
    font-size: var(--fs-t20);
}

.pdv-editor h4{
    font-size: var(--fs-f18);
}

.pdv-editor p {
    /* margin-bottom: 30px; */
}

.pdv-editor p:last-child{
    margin-bottom: 0;
}
.pdv-editor table {
    width: 100% !important;
    /* min-width: 600px; */
    border-collapse: collapse;
    margin: 0;
    font-size: var(--fs-t16);
    text-align: center;
}

.pdv-table-responsive {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    margin: 0 0 20px;
}

.pdv-table-responsive table {
    margin: 0;
}

.pdv-editor table th,
.pdv-editor table td {
    border: 1px solid #CECECE;
    padding: 10px 14px;
    white-space: nowrap;
}

.pdv-editor table th {
    background: #F7F7F7;
    font-weight: 800;
    text-align: center;
}

.pdv-editor a:hover {
    color: var(--color-primary);
}

.pdv-editor svg,
.pdv-editor td svg {
    height: 80px;
    width: auto;
}


.pdv-editor-bottom{
    margin-top: 30px;
}

.pdv-editor-bottom .col-12 img{
    max-height: 300px;
    width: 100%;
    margin-bottom: 20px;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    object-fit: cover;
    object-postion: center;
}

.pdv-editor-bottom .row:last-row .col-12 img{
    max-height: 300px;
    width: 100%;
    margin-bottom: 20px;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    object-fit: cover;
    object-postion: center;
}

.side-bar-col{
    position: relative;    
    z-index: 10;
}

.pdv-enquire{
    margin-top: 30px;
}

.pdv-owl-wrap .owl-carousel{
    position: relative;
    z-index: 2;
}

/* owl wrap */
/* .pdv-owl-wrap { flex: 1; min-width: 0; position: relative; } */
.pdv-owl-wrap .owl-carousel .item img {
    width: 100%;
    height: 550px;
    object-fit: cover;
    display: block;
    border-radius: 16px;
}

.pdv-owl-wrap .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .15);
    color: #000;
    font-size: 14px;
    transition: background .15s;
    margin: 0;
    border: 0;
}

.pdv-owl-wrap .owl-nav .owl-prev:hover,
.pdv-owl-wrap .owl-nav .owl-next:hover {
    background: var(--color-primary);
    color: #fff;
}

.pdv-owl-wrap .owl-nav .owl-prev:hover svg path,
.pdv-owl-wrap .owl-nav .owl-next:hover svg path {
    stroke: #fff;
}


.pdv-owl-wrap .owl-nav .owl-prev {
    left: 10px;
}

.pdv-owl-wrap .owl-nav .owl-next {
    right: 10px;
}

/* pdf panel */
.pdv-pdf-panel {
    border-radius: 16px;
background: #F7F7F7;
padding: 60px 30px;
height: calc(100% - 51px);
}

.pdv-pdf-panel h4 {
    font-size: var(--fs-p16);
    font-weight: 800;
    margin-bottom: 10px;
}

.pdv-pdf-list {
    list-style: none;
    padding: 0;
    margin: 0;
    counter-reset: pdvpdf;
}

.pdv-pdf-list li {
    counter-increment: pdvpdf;
    display: flex;
    align-items: flex-start;
    margin-bottom: 5px;
}

.pdv-pdf-list li::before {
    content: counter(pdvpdf) ".";
    color: #000;
    flex-shrink: 0;
    margin-right: 5px;
}

.pdv-pdf-list a {
    color: #000;
    text-decoration: none;
    word-break: break-word;
}

.pdv-pdf-list a:hover {
    color: var(--color-primary);
    text-decoration: underline;
}

.pdv-pdf-list li:hover::before {
    color: var(--color-primary);
}

.pdv-media-box {
    margin-top: 30px;
}

.pdv-bottom-gallery {
  margin-top: 30px;
}

.pdv-gallery-item {
    display: block;
    overflow: hidden;
    background: #f7f7f7;
    aspect-ratio: 1 / 1;
    border-radius: 16px;
}

.pdv-gallery-item img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
}



/* enquire */

/* ── Responsive ──────────────────────────────────────────────────── */
@media (max-width: 991.98px) {
    .pdv-layout {
        flex-direction: column;
    }

    .pdv-sidebar {
        width: 100%;
        position: static;
        margin-bottom: 24px;
    }

    .pdv-content {
        padding-left: 0;
    }

    .pdv-owl-wrap .owl-carousel .item img {
        height: 500px;
        object-fit: cover;
    }
}
@media (max-width: 767.98px) {
     .pdv-media-box {
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {

    .pdv-owl-wrap .owl-carousel .item img {
        height: 450px;
    }

    /* .pdv-table-responsive {
        margin-bottom: 16px;
    } */

    .pdv-editor table th,
    .pdv-editor table td {
        white-space: nowrap;
    }
}

.pdv-gallery-owl .owl-dots {
    text-align: center;
    margin-top: 30px;
}

.pdv-gallery-owl .owl-dots .owl-dot {
    background: transparent;
    border: none;
    padding: 0;
}

.pdv-gallery-owl .owl-dots .owl-dot span {
    width: 10px;
    height: 10px;
    background: #CECECE;
    border-radius: 50%;
    display: inline-block;
    margin: 0 4px;
    transition: all 0.3s ease;
}

.pdv-gallery-owl .owl-dots .owl-dot.active span {
    background: #000;
    width: 10px;
    height: 10px;
}


/* --------------------------- Product Detail End -------------------------- */


/*	------------------------ Gallery Page -------------------------- */


.pg-title,
.pg-side-title {
    font-weight: 800;
    margin-bottom: 10px;
}

.pg-desc,
.pg-content-intro p {
    max-width: 1200px;
    margin: 0 auto;
    margin-bottom: 30px;
}

.pg-recent-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 15px;
}

.pg-recent-card,
.pg-grid-item {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 12px;
}

.pg-recent-card {
    aspect-ratio: 0.82;
}

.pg-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 280px;
    grid-auto-flow: dense;
    gap: 16px;
}

.pg-grid-item {
    display: block;
    position: relative;
    border-radius: 12px;
    overflow: hidden;
}

.pg-recent-card img,
.pg-grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}

/* 12-item repeating packed grid */
.pg-grid-item:nth-child(12n + 1) { grid-column: span 1; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 2) { grid-column: span 2; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 3) { grid-column: span 2; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 4) { grid-column: span 1; grid-row: span 2; }
.pg-grid-item:nth-child(12n + 5) { grid-column: span 1; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 6) { grid-column: span 1; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 7) { grid-column: span 2; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 8) { grid-column: span 1; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 9) { grid-column: span 1; grid-row: span 2; }
.pg-grid-item:nth-child(12n + 10) { grid-column: span 2; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 11) { grid-column: span 1; grid-row: span 1; }
.pg-grid-item:nth-child(12n + 12) { grid-column: span 1; grid-row: span 1; }

.pg-recent-card:hover img,
.pg-grid-item:hover img {
    transform: scale(1.05);
}

.pg-recent-card span {
    position: absolute;
    left: 20px;
    bottom: 20px;
    color: #fff;
    font-size: var(--fs-p16);
    font-weight: 700;
}



.pg-filter-box {
   border-radius: 8px;
   background: #F5F5F5;
   padding: 15px 0;
   position: sticky;
   top: calc(75px + 30px);
   z-index: 10; /* Keeps it above moving elements if any */
}

.pg-filter-box a {
    display: block;
    margin: 30px;
    color: #000;
    font-size: var(--fs-p16);
    transition: all 0.1s ease;
}

.pg-filter-box a:hover {
    color: var(--color-primary);
    font-weight: 600;
}

.pg-filter-box a.active {
    color: #000;
    background: #fff;
    margin-inline: 15px;
    padding: 15px;
    font-weight: 700;
    border-radius: 8px;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
}

.pg-filter-box a.active:first-child,
.pg-filter-box a:first-child {
    margin-top: 15px;
}

.pg-filter-box a.active:last-child,
.pg-filter-box a:last-child {
    margin-bottom: 15px;
}

.pg-ajax-loader {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 24px 0 8px;
    color: #666;
    font-size: 14px;
    font-weight: 600;
  }

  .pg-ajax-loader.is-visible {
    display: flex;
  }

  .pg-ajax-loader__icon {
    width: 22px;
    height: 22px;
    border: 2px solid rgba(0, 0, 0, 0.14);
    border-top-color: var(--color-primary);
    border-radius: 50%;
    animation: pgAjaxSpin .7s linear infinite;
  }

  @keyframes pgAjaxSpin {
    from {
      transform: rotate(0deg);
    }

    to {
      transform: rotate(360deg);
    }
  }

@media (max-width: 991.98px) {
    .pg-recent-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pg-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 150px;
    }
    
    .pg-grid-item:nth-child(n) {
        grid-column: span 1;
        grid-row: span 1;
    }
}

@media (max-width: 575.98px) {

    .pg-recent-row {
        grid-template-columns: 1fr;
    }
    
    .pg-grid-item:nth-child(n) {
        grid-column: span 1;
        grid-row: span 1;
    }
}


/*	------------------------ Gallery Page END -------------------------- */


/*  ------------------------ Promotion Page --------------------------*/
/* ---------------------------------------------------------
   PROMOTIONS PAGE
--------------------------------------------------------- */
.pm-page {
    position: relative;
}

.pm-banner {
    position: relative;
    width: 100%;
    border-radius: 16px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-color: #000;
    text-align: center;
    min-height: 450px;
    align-items: center;
    display: flex;
    justify-content: center;
}

.pm-banner-title {
    position: relative;
    z-index: 2;
    color: #fff;
    font-weight: 600;
    margin: 0;
    max-width: 500px;
}

.pm-banner-title-heavy{
    font-weight: 800;
}

.pm-desc p { margin: 0; } 

.pm-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px;
}

.pm-card {
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    border-radius: 16px;
    background: #FFF;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
    cursor: pointer;
    height: 100%;
}


.pm-card-img {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: #fff;
}

.pm-img-placeholder {
    width: 100%;
    height: 100%;
}

.pm-img-placeholder img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}


.pm-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 65px;
    height: 65px;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pm-badge svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    filter: drop-shadow(0 2px 5px rgba(230, 0, 0, 0.3));
}

.pm-badge-text {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #fff;
    line-height: 1;
    font-size: var(--fs-p16);
    font-weight: 900;

}

.pm-card-body {
    padding: 20px 25px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.pm-card-text-row {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 30px;
}

.pm-card-desc {
    font-size: var(--fs-p14);
    color: #000;
    margin-bottom: 30px;
}

.pm-card-action {
    margin-top: auto;
}

.pm-card-title {
    font-size: var(--fs-p16);
    color: #000;
    font-weight: 600;
    margin: 0;
    /* Max 2 lines */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pm-card:hover .pm-card-title {
    -webkit-line-clamp: unset;
    line-clamp: unset;
}

.pm-card-icon {
    font-size: 20px;
    color: #888;
    margin-top: 3px;
}

.pm-card-btn {
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 20px;
    border-radius: 8px;
    border: 1px solid var(--color-primary);
    color: var(--color-primary);
    font-weight: 700;
    font-size: var(--fs-p16);
    transition: all 0.3s ease;
    text-decoration: none;
}

.pm-card-btn:hover,
.pm-card:hover .pm-card-btn {
    background: var(--color-primary);
    color: #fff;
}

@media (max-width: 1199.98px) {
    .pm-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .pm-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    .pm-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pm-banner {
        padding: 60px 30px;
    }
}

@media (max-width: 575.98px) {
    .pm-grid {
        grid-template-columns: 1fr;
    }
    .pm-card-img {
        aspect-ratio: 1 / 1;
    }
    .pm-banner {
        min-height: 200px;
        padding: 40px 20px;
        border-radius: 12px;
    }
    .pm-badge{
        width: 45px;
        height: 45px;
    }

    .pm-badge-text{
        font-size: 12px;
    }

    .pm-card-body{
        padding: 20px 15px;
    }
    .pm-card-btn{
        padding: 10px;
    }
}
/*  ------------------------ Promotion Page END ----------------------*/

/*	------------------------ Blog Page -------------------------- */

.blogs-hero-section .section-title{
    margin-bottom: 60px;
}
/* Blog Hero Slider */
.blog-hero-slide {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.blogs-hero-slider-wrapper{
    position: relative;
}
.blog-hero-image {
    width: 100%;
    height: 500px;
}

.blog-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

/* Left-to-right dark gradient overlay to ensure text contrast */
.blog-hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0) 100%);
    pointer-events: none;
}

.blog-hero-info {
    position: absolute;
    top: 50%;
    left: 10%;
    transform: translateY(-50%);
    max-width: 600px;
    z-index: 2;
}

.blog-hero-info .blog-date {
    color: #fff;
    margin-bottom: 10px;
}

.blog-hero-info .blog-title {
    color: #fff;
    font-weight: 700;
     margin-bottom: 10px;
     display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: 2;
}

.blog-hero-info .desc {
    color: #fff;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: 2;
    margin-bottom: 30px;
}

.blog-hero-info .btn {
    padding: 24px 40px;
}

#blogs-hero .swiper-pagination {
    width: 100%;
    text-align: center;
    position: relative;
    inset: 0;
    margin-top: 30px;
}

#blogs-hero .swiper-pagination span {
    background-color: rgba(0, 0, 0, 0.2);
    margin: 0 4px;
}

#blogs-hero .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #000;
}

.blogs-sort{
    align-items: center;
    gap: 10px;
}

.blogs-sort label{
    margin-bottom: 0;
    font-size: var(--fs-p16);
}

.blogs-sort .form-select,
.blogs-tabs-mobile .form-select{
        width: auto;
    min-width: 150px;
    border-color: #CECECE;
    background-color: #FAFAFA;
    font-size: var(--fs-t16);
    border-radius: 10px;
}

.sort-icon-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background-color: transparent;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    color: #000;
}

.blogs-sort-mobile .dropdown-item{
    padding: 10px 15px;
    font-size: var(--fs-p14);
    color: #000;
}

.form-select{
    cursor: pointer;
}

.form-select:focus{
    border-color: #CECECE;
    box-shadow: none;
}

/* Blog Grid Cards */
.blog-card {
    border-radius: 12px;
    border: none;
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.04), 0 4px 8px 0 rgba(0, 0, 0, 0.06);
    background: #fff;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blog-card .blog-card-image {
    width: 100%;
    aspect-ratio: 4/3;
    overflow: hidden;
}

.blog-card .blog-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}


.blog-card .blog-card-content {
    padding: 30px 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.blog-card .blog-date {
    color: var(--color-accent);
    font-size: var(--fs-p14);
    font-weight: 500;
    margin-bottom: 10px;
}

.blog-card .blog-name {
    font-size: var(--fs-p16);
    font-weight: 600;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: 2;
}

.blog-card .desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-clamp: 2;
    margin-bottom: 30px;
}

.blog-card .blog-link {
    color: var(--color-primary);
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    transition: color 0.3s ease;
}

.blog-card:hover {
    background-color:#F7F7F7;
}


@media (max-width: 767.98px) {
    .blog-hero-info {
        bottom: 30px;
        right: 30px;
        max-width: none;
        top: unset;
        transform: translateY(0);
        max-width: none;
    }
    .blog-hero-image {
        height: 400px;
    }
}

@media (max-width: 575.98px){
    .blog-hero-info {
        bottom: 15px;
        right: 15px;
    }

    .blog-hero-info .desc{
        margin-bottom: 20px;
    }

    .blog-hero-info .btn {
        padding: 10px 20px;
    }

    .blog-card .blog-link{
        position: relative;
    }
    
    .blog-card .blog-link i{
        position: absolute;
        left: 70px;
    }
    
    .blogs-hero-section .section-title{
        margin-bottom: 30px;
    }
}

#st-1 .st-btn {
    border-radius: 50% !important;
    background-color: #ECECEC !important;
    display: inline-flex !important;
}
#st-1 .st-btn > img {
    display: inline-block;
    height: 20px;
    width: 20px;
    position: relative;
    top: 10px;
    vertical-align: top;
}
#st-1 .st-btn img {
    filter: brightness(0);
}

.blogdetailview{
    padding-bottom: 90px;
}

.blogdetailview .flexbox .titlesec .date {
    font-style: normal;
    line-height: normal;
    margin-bottom: 10px;
}

.blogdetailview .flexbox .titlesec {
    width: calc(100% - 200px);
}

.blogdetailview .flexbox .titlesec .h2{
    font-weight: 600;
    font-size: var(--fs-t28);
}

.blogdetailview .back-button{
    color: var(--color-primary);
    border-bottom: 1px solid #CECECE;
}

.blogdetailview .flexbox .sharesec p {
    color: #000;
    font-style: normal;
    line-height: normal;
    margin-bottom: 10px;
    font-size: var(--fs-p16);
}

.blogdetailview .coverimage {
    width: 100%;
    border-radius: 16px;
}

.blogdetailview .flexbox {
    margin-bottom: 50px;
}

.blogdetailview .flexbox .sharesec {
   display: flex;
   align-items: center;
   gap: 20px;

}

.blogdetailview .gallery img {
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    padding-bottom: calc(var(--bs-gutter-x) * .5);
    padding-top: calc(var(--bs-gutter-x) * .5);
}

.blogdetailview .flexbox .sharesec #st-1 {
    text-align: left;
}

.blogdetailview .blogcontent .btgrid .row {
    align-items: center;
}


.blogdetailview .coverimage{
    max-height: 500px;
    object-position: center;
    object-fit: cover;
}
#relatedblogs{
    overflow: hidden;
}

#oc-relatedBlogSlides .owl-stage-outer{
    overflow: visible;
}

#oc-relatedBlogSlides.owl-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

#oc-relatedBlogSlides.owl-carousel .owl-item {
    display: flex;
    height: auto;
}

#oc-relatedBlogSlides .oc-item {
    display: flex;
    width: 100%;
    height: 100%;
}

#oc-relatedBlogSlides .oc-item > a {
    display: flex;
    width: 100%;
    height: 100%;
}

#relatedblogs .titlerow {
    margin-bottom: 30px;
}

#relatedblogs .navigation-arrows {
    display: flex;
    flex-direction: row;
    align-content: center;
    justify-content: flex-end;
    align-items: center;
    height: 100%;
}

#relatedblogs .navigation-arrows .swiper-button-next,
#relatedblogs .navigation-arrows .swiper-button-prev {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    color: white;
    width: 42px;
    height: 42px;
    color: #131927;
    background-color: transparent;
    border-radius: 50%;
    border: 2px solid rgba(19, 25, 39, 0.2);
    margin: 0 2.5px;
    transition: all 200ms linear;
}

#relatedblogs .navigation-arrows .swiper-button-prev:after,
#relatedblogs .navigation-arrows .swiper-button-next:after {
    font-size: 14px;
    font-weight: 700;
}

#relatedblogs .navigation-arrows .swiper-button-next:hover,
#relatedblogs .navigation-arrows .swiper-button-prev:hover {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
}

#relatedblogs .navigation-arrows .swiper-button-next:hover:after,
#relatedblogs .navigation-arrows .swiper-button-prev:hover:after {
    color: white;
}

#relatedblogs.previousblogs h3 {
    margin-bottom: 0;
} 

@media (max-width: 575px) {
    .back-button{
        padding-top:30px;
    }
}

/* Fix left border clipping on mobile carousel */
@media (max-width: 767px) {
    #relatedblogs #oc-milestoneSlides.owl-carousel .owl-stage-outer {
        overflow: visible;
    }
    
    #relatedblogs #oc-milestoneSlides .oc-item {
        margin-left: 1px;
    }
    
    #relatedblogs.previousblogs {
        overflow: hidden;
    }
    
    .blogdetailview{
        padding-bottom: 30px;
    }
}

@media(max-width: 575.98px){
    #st-1 .st-btn {
        padding: 0 7.5px;
        height: 35px;
        line-height: 35px;
    }
    #st-1 .st-btn > img {
        display: inline-block;
        height: 20px;
        width: 20px;
        position: relative;
        top: 7.5px;
        vertical-align: top;
    }
}

/*	------------------------ Blog Page END -------------------------- */


/*	------------------------ Contact US -------------------------- */
/* Contact Banner */
#contact-banner {
    width: 100%;
    height: auto;
    background-image: url('../images/layout/banner-contact-us.webp');
    background-size: cover;
    background-position: center 70%;
    min-height: 400px;
}

/* Contact Info Bar */
#contact-info-bar {
    background-color: #F1F6FF;
}

#contact-info-bar .row {
    --bs-gutter-x: 75px;
}

#contact-info-bar .title-col {
    background-color: transparent;
    display: flex;
    align-items: center;
    margin-bottom: 45px;
}

#contact-info-bar .title-box {
    color: #000;
}

#contact-info-bar .title-box h2 {
    color: #000;
    margin-bottom: 15px;
}

#contact-info-bar .title-box p {
    margin-bottom: 0;
}

#contact-info-bar .info-card-wrapper {
    position: relative;
    height: 100%;

}

#contact-info-bar .info-card-wrapper::before {
    content: "";
    position: absolute;
    top: -15px;
    left: -15px;
    width: 50%;
    height: 95%;
    z-index: 0;
    border-radius: 0 40px;
    background: #08A3D3;
}

#contact-info-bar .info-card {
    position: relative;
    padding: 60px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-radius: 0 32px 0 0;
    z-index: 2;
    background: #FFF;
    box-shadow: 0 8px 16px 0 rgba(0, 0, 0, 0.08), 0 0 4px 0 rgba(0, 0, 0, 0.04);
}

#contact-info-bar .info-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

#contact-info-bar .info-header .icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
    flex-shrink: 0;
}

#contact-info-bar .info-header .icon svg {
    width: 22px;
    height: 22px;
}

#contact-info-bar .info-header h4 {
    margin-bottom: 0;
}

#contact-info-bar .info-content {
    padding-left: 34px;
    color: #555;
}

#contact-info-bar .info-content p {
    margin-bottom: 0;
}

#contact-info-bar .info-content p.note {
    margin-top: 10px;
}

#contact-info-bar .info-content a {
    text-decoration: none;
}

#contact-info-bar .info-content a:hover {
    color: var(--color-primary);
}

#contact-info-bar .contact-group {
    display: block;
}

 
/* ── LEFT: Form side ─────────────────────────────────────────────── */
 
.contact-form-side .contact-title {
    font-weight: 800;
    margin-bottom: 20px;
}
 
 
.contact-form-side .contact-desc {
    font-size: var(--fs-t16);
    color: #000;
    margin-bottom:30px;
}
 
/* Form fields */
.contact-form-side .form-group {
    margin-bottom: 15px;
}

 
.contact-form-side .form-control {
    border: 1px solid #CECECE;
    border-radius: 8px;
    padding: 15px;
    font-size: var(--fs-p14);
    background: #fff;
    width: 100%;
    transition: border-color .2s;
    -webkit-appearance: none;
}
 
.contact-form-side .form-control.enquiry-select{
    background: #F7F7F7;
        appearance: none;
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 15px center;
    padding-right: 40px;
    font-size: var(--fs-p14);
    color: #555;
    background-size: 16px 12px;
    font-weight: 400;
}

.contact-form-side .form-control:focus {
    border-color: var(--color-primary);
    outline: none;
    box-shadow: none;
}
 
.contact-form-side .form-control::placeholder { color: #555;opacity 50% }
 
/* Select arrow */
.contact-select-wrap {
    position: relative;
}
.contact-select-wrap select {
    cursor: pointer;
    padding-right: 40px;
}

/* Two-col row */
.contact-row-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
 
.contact-form-side textarea.form-control {
    resize: none;
    /*height: 120px;*/
}
 
 
/* ── RIGHT: Info side ────────────────────────────────────────────── */
.contact-info-side {
    background: #F2E9EC;
    border-radius: 0 0 0 8px;
    display: flex;
    flex-direction: column;
    height: 100%;
}
 
.contact-info-side .info-title {
    font-weight: 800;
    margin-bottom: 30px;
}
 
.info-item {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    margin-bottom: 30px;
}
.info-item:last-child { margin-bottom: 0; }
 
.info-item .info-icon {
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px;
}
 
.info-item .info-icon svg,
.info-item .info-icon img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}
 
 
.info-item .info-label {
    font-size: var(--fs-t16);
    margin-bottom: 10px;
    font-weight: 600;
}
 
.info-item .info-text {
    font-size: var(--fs-t14);
    margin-bottom: 0;
}
.info-item .info-text a {
    color: #000;
    text-decoration: none;
}
.info-item .info-text a:hover { color: var(--color-primary); }
 


/* Notice / loading */
#noticeDiv { margin: 0 0 12px; }
.loadingDiv { display: none; padding: 8px 0; color: #888; font-size: 14px; }
 
/* ── Responsive ──────────────────────────────────────────────────── */
 
@media (max-width: 767.98px) {
    .contact-row-2 {
        grid-template-columns: 1fr;
        gap: 0;
    }
}

@media(max-width: 575.98px) {
    .contact-form-side .form-control {
        padding: 15px;
    }
    
    #submitBtn{
        display: flex;
        justify-content: center;
    }
}



/* Map Section */
#contact-map-section .social-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

#contact-map-section .social-row h3 {
    margin-right: 20px;
}


.social-row .social-icon {
    height: 50px;
    position: relative;
    margin: 0;
    border: none;
    cursor: pointer;
    /* padding: 5px; */
    display: inline-flex;
    align-items: center;
    justify-content: center;
}


.social-row .social-icon svg {
    transition: transform .25s ease;

}

.social-row .social-icon:hover {
    transform: scale(1.1);
}

.mapiframediv iframe {
    width: 100%;
    height: 100%;
}

.mapiframediv {
    display: block;
    width: 100%;
    height: 450px;
    position: relative;
}

/* Contact Page Responsive */
@media (max-width: 991.9px) {
    #contact-info-bar .info-card {
        padding: 20px;
    }


    #contact-form-section .form-image {
        min-height: 300px;
    }
}

@media (max-width: 767.9px) {
    #contact-banner .banner-image {
        max-height: 300px;
    }

    #contact-info-bar .info-header {
        margin-bottom: 5px;
    }

    #contact-info-bar .col-md-4 {
        margin-bottom: 15px;
    }

    #contact-info-bar .col-md-4:last-child {
        margin-bottom: 0;
    }

    #contact-info-bar .info-card {
        min-height: 200px;
    }
}

@media (max-width: 575.9px) {
    #contact-banner {
        background-position: 40% center;
        min-height: 300px;
    }

    #contact-map-section .social-row{
        gap: 8px;    
    }
    
    .social-row .social-icon{
        width:unset;
        height: unset;
    }
    .social-row .social-icon svg {
        width: 30px;
        height: 30px;
    }
    
    #contact-map-section .social-row h3{
        margin-right: 5px;
    }

}

/*	------------------------ Contact Page END -------------------------- */


/*	------------------------ Cart -------------------------- */

#content.cart_view,
#content.billing_view {
    padding-top: 30px;
    padding-bottom: 30px;
}

.process-steps {
    padding: 0;
}

ul.process-steps.process-3 {
    max-width: 780px;
    margin: 0 auto 40px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
}

.process-steps.process-3 li {
    float: none;
    width: 100%;
    flex: 0 0 33.3333%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: flex-start;
}

.process-steps.process-3 li:first-child {
    justify-content: flex-start;
}

.process-steps.process-3 li:last-child {
    justify-content: flex-end;
}

.process-steps li h6 {
    margin: 15px 0 0 0;
    padding: 0 10px;
}

.process-steps li .innerbox {
    z-index: 2;
    position: relative;
}

#content.cart_view .process-steps li:after,
#content.cart_view .process-steps li:before,
#content.billing_view .process-steps li:after,
#content.billing_view .process-steps li:before {
    width: calc(100% - 53px);
}


#content.cart_view .cart .quantity .plus,
#content.cart_view .cart .quantity .minus {
    border: none;
    display: block;
    cursor: pointer;
    background-color: transparent;
    color: #999999;
    font-weight: 100;
    line-height: 1;
    text-align: center;
    padding: 0;
    height: 100%;
    width: calc((100% - 35px) / 2);
}

#content.cart_view .cart .quantity .minus {
    font-size: 14px;
}

#content.cart_view .cart .quantity .plus {
    font-size: 22px;
}

#content.cart_view .cart .quantity .plus:hover,
#content.cart_view .cart .quantity .minus:hover {
    background-color: rgba(0, 0, 0, 0.05);
}

#content.cart_view .cart .quantity .qty {
    border: 1px solid #cecece;
    background-color: transparent;
    height: 100%;
    width: 35px;
    font-size: 14px;
    text-align: center;
    line-height: 1;
    margin-bottom: 0;
    font-weight: 600;
    color: #242422;
}

#content.cart_view .cart .quantity {
    margin: 0;
    height: 35px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    overflow: hidden;
}

#content.cart_view .subDisc del {
    font-size: 13px;
}

#content.cart_view .subDisc strong {
    font-weight: 700;
}

#addVouc .button3 {
    display: flex;
    text-align: center;
    height: 100%;
    width: 100%;
    font-weight: 700;
    flex-direction: row;
    align-content: center;
    justify-content: center;
    align-items: center;
}

.cart_totals td {
    padding: 20px 0;
    color: #242422;
}

.cart_totals .cart tr:first-child td {
    border-top: 1px solid #d6d6d6;
}

.cart_totals .cart tr:last-child td {
    border-bottom: none;
}

.cart_totals .cart td strong {
    font-weight: 600;
}

.cart_totals .cart tr td:last-child {
    text-align: right;
}

.cart_totals .cart tr:last-child td:last-child .amount.color.lead {
    font-size: 16px;
    color: #242422;
}

#mycarttotal {
    font-size: 20px;
    font-weight: 600;
}

#sttotal2 {
    color: #fff;
    line-height: 25px;
    display: inline-block;
    padding-right: 10px;
}

.cartDiv .attrDesc {
    font-size: 14px;
}

.cartTerms {
    font-size: 12px;
    color: #555555;
}

.cartTerms .pTitle {
    color: #555555;
    font-weight: bold;
}

#voucher.form-control {
    height: 45px;
    border-radius: 8px;
}

#voucher+.button {
    text-transform: uppercase;
    font-weight: 700;
    width: 100%;
    height: 100%;
}

/*	------------------------ Cart END -------------------------- */


/*	------------------------ Billing END -------------------------- */

.buyforrow+hr {
    border-top: 1px solid #d6d6d6;
    margin-top: 25px;
    margin-bottom: 35px;
    opacity: 1;
}

.billing_view label {
    color: #233745;
    font-weight: 600;
}

.billing_view form#ePayment {
    max-width: 900px;
    margin: 15px auto 0;
}

.billing_view form#ePayment>.row,
.billing_view form#ePayment>.buyfordiv {
    max-width: 740px;
    margin: 0 auto;
}

#someoneelse {
    max-width: 740px;
    margin: 0 auto;
}

label .error {
    color: red;
}

.billing_view form#ePayment h4 {
    margin-bottom: 5px;
}

.billing_view form#ePayment h4+.row label {
    margin-top: 20px;
    margin-bottom: 8px;
}

.billing_view .style-msg {
    margin: 0 auto 35px;
    max-width: 780px;
}

/*	------------------------ Billing END -------------------------- */


/*	------------------------ Confirm -------------------------- */

.custinfo {
    color: #242422;
}

.custinfo strong {
    font-weight: 600;
}

.whitespace {
    white-space: nowrap;
}

.confirm_view table {
    width: 100%;
    position: relative;
    margin-bottom: 10px;
}

.confirm_view table th {
    background-color: #ad8e61;
    color: #fff;
    padding: 10px;
    font-weight: 600;
}

.confirm_view table td {
    padding: 15px;
    border-bottom: 1px solid #d6d6d6;
    background-color: #ffffff;
    color: #242422;
}

.confirm_view img.displayImg {
    height: 75px;
    width: 75px;
    object-fit: cover;
}

.confirm_view td:has(img)+td a {
    font-weight: 600;
    color: #242422;
}

.confirm_view .td-qty .qty {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    border: 1px solid #cecece;
    background-color: transparent;
    height: 100%;
    width: 35px;
    height: 35px;
    font-size: 14px;
    text-align: center;
    line-height: 1;
    font-weight: 600;
    color: #242422;
}

.confirm_view td.td-qty+td,
.confirm_view td.td-qty+td+td {
    font-weight: 600;
    color: #242422;
}

.confirm_view table td .subDisc {
    font-size: 14px;
}

.confirm_view .subDisc del {
    color: #242422;
}

.confirm_view table td .subDisc span {
    color: #ec2227;
}

.confirm_view .subDisc strong {
    font-weight: 700;
    color: #242422;
}

.confirm_view #sttotal {
    font-size: 15px;
    color: #242422;
    line-height: 25px;
}

.confirm_view .subtotal {
    color: #242422;
    padding: 5px 20px;
    float: right;
    margin-top: 0;
    font-size: 16px;
    font-weight: 600;
}

.confirm_view .discount {
    color: #242422;
    /*background-color:#ebebeb;*/
    float: right;
    margin-top: 0;
    width: 100%;
    text-align: right;
    font-size: 16px;
    font-weight: 600;
}

.confirm_view .discountcon {
    padding: 5px 20px;
}

.confirm_view .tax {
    color: #242422;
    padding: 5px 20px;
    float: right;
    width: 100%;
    text-align: right;
    font-size: 16px;
    font-weight: 600;
}

.confirm_view #sttotal2 {
    color: #242422;
    font-size: 14px;
}

.confirm_view .subtotal #sttotal,
.confirm_view .discount #sttotal,
.confirm_view .tax #sttotal {
    font-size: 14px;
    color: #242422;
    line-height: 25px;
    font-weight: normal;
}

.confirm_view #mycarttotal {
    font-size: 16px;
}

.confirm_view .ttotal {
    color: #242422;
    background-color: #f5f5f5;
    float: right;
    margin-top: 5px;
    margin-bottom: 30px;
    line-height: 25px;
    width: 100%;
    text-align: right;
}

.confirm_view .ttotalcon {
    padding: 5px 20px;
    font-size: 18px;
    font-weight: 600;
}

.confirm_view .ttotalcon #mycarttotal {
    font-size: 18px;
}


/*	------------------------ Confirm END -------------------------- */


/*	------------------------ Responsive -------------------------- */

@media(min-width: 1600px) {
    #content.bloglistview .featured3blogs {
        justify-content: flex-start;
    }

    #content.bloglistview a:has(.smallcontent) {
        margin-bottom: 15px;
    }

    #content.bloglistview a:has(.smallcontent):last-child {
        margin-bottom: 0;
    }
}

@media(max-width: 1399.9px) {

    /* h1,
    .h1 {
        font-size: 35px;
    }

    h2,
    .h2 {
        font-size: 24px;
    }

    h3,
    .h3 {
        font-size: 20px;
    } */


    .bannerstyle {
        padding-right: 15px;
        padding-left: 15px;
    }

    .facilitiespage.bannerstyle {
        padding: 0;
    }

    .container-fluid {
        max-width: calc(100% - 30px);
    }
}

@media(min-width: 1200px) and (max-width: 1399.9px) {
    #content.homepage .col-xl-3 {
        width: 30%;
    }

    #content.aboutuspage .container-fluid {
        max-width: calc(100% - 60px);
    }
}

@media(min-width: 768px) and (max-width: 1199.9px) {
    #content.homepage .col-xl-3 {
        width: 40%;
    }

    #content.homepage {
        background-size: 60% auto !important;
    }
}

@media(max-width: 1199.9px) {

    /*.top-search-open .header-inner-flexbox{width: calc(100% - 450px);}*/
    /*.header-inner-flexbox{width: calc(100% - 200px);}*/
    #primary-menu>div>ul>li>a {
        padding: 20px 5px;
    }

    .top-search-open #top-search form {
        width: 100%;
    }

    #header .header-info .infobox.others svg {
        padding: 0 10px;
    }

    #primary-menu ul li a+ul.category-nav:before {
        left: 50px;
    }


    #slider~#content,
    #sliderm~#content {}

    /*padding-top: 40px; padding-bottom: 40px;*/

    .product-desc .product-title {
        font-size: 22px;
    }

    #settingstandard {
        aspect-ratio: auto;
        position: relative;
        padding-top: 60px;
        padding-bottom: 60px;
    }

    #settingstandard:after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        display: block;
        width: 100%;
        height: 100%;
        background-image: url('../images/layout/settingstandard.webp?v1');
        background-position: right top;
        background-repeat: no-repeat;
        background-size: cover;
    }

    #banner.aboutuspage {
        background-position: center top;
    }

    #banner.aboutuspage .container-fluid {
        height: auto;
    }

    #content.aboutuspage .container-fluid {
        max-width: calc(100% - 30px);
        margin-top: -40px;
        padding-top: 40px;
    }

    #content.doctordetailpage .box .scheduletable {
        padding: 20px;
    }

    #content.bloglistview .featured3blogs {
        flex-direction: row;
        flex-wrap: wrap;
    }

    #content.bloglistview a:has(.smallcontent) {
        max-width: 33.3333%;
    }

    #banner.contactuspage .container-fluid .row>.col-12 {
        max-width: 50%;
    }

    #banner.contactuspage {
        aspect-ratio: auto;
        background-position: center top;
    }

    .contact_grid {
        padding: 25px 10px;
        align-content: center;
    }

    .contactinfo-section .contact_grid .iconbox {
        width: 40px;
        height: 40px;
    }

    .contactinfo-section .contact_grid .textbox {
        padding-left: 10px;
        width: calc(100% - 40px);
    }

    .contactinfo-section .contact_grid .textbox a {
        font-size: 20px;
    }

    .addtocart_button .button {
        padding: 15px 35px;
        width: auto;
    }
}

@media(max-width: 991.9px) {
    #primary-menu-container {
        display: none;
    }

    #header {
        position: sticky;
        top: 0;
        z-index: 999;
        background-color: #FFF;
        border-bottom: 1px solid #CECECE;
    }

    .top-message .flexbox {
        justify-content: center;
        padding-bottom: 8px;
    }

    .top-message .content p {
        padding-top: 8px;
        padding-bottom: 5px;
        text-align: center;
    }

    .top-message .content p a {
        white-space: nowrap;
    }


    .slider-caption h2 {
        font-size: 24px;
        margin-bottom: 15px;
    }

    .slider-caption .button3,
    .button,
    .button2,
    .button3,
    .button-outlined,
    .button3+.button-outlined {
        height: 40px;
        line-height: 40px;
        font-size: 14px;
        padding: 0 20px;
    }

    .docSearchForm input {
        padding: 0 15px;
        width: 30%;
        font-size: 14px;
    }

    .docSearchForm select {
        padding: 0 15px;
        width: 32%;
        font-size: 14px;
    }

    .docSearchForm a#docSubmit {
        font-size: 16px;
        font-weight: 600;
        margin-left: 0;
        padding-left: 15px;
    }

    .docSearchForm a#docSubmit span {
        margin-top: 0;
        margin-left: 5px;
    }

    .docSearchForm a#docSubmit svg {
        width: 20px;
    }

    #searchdoctorform+section,
    #searchdoctorform+div {
        margin-top: 0;
        padding-top: 40px;
    }

    #content.homepage {
        aspect-ratio: auto;
        position: relative;
    }

    #content.homepage:after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        display: block;
        width: 60%;
        height: 100%;
        background-image: url(../images/layout/WELLNESS_LOUNGE.webp?v1);
        background-position: right top;
        background-repeat: no-repeat;
        background-size: cover;
    }

    #content.homepage .content {
        padding-top: 0;
        padding-bottom: 0;
    }

    #settingstandard:after {
        background-position: center top;
    }

    #whyus .pointsrow .content {
        padding: 40px 20px;
    }


    .facilities_slider {
        margin-top: 30px;
    }

    .facilities_slider .oc-item .facilitycontent {
        width: calc(100% - 50px);
    }

    #content.doctordetailpage .box .schedulebutton {
        height: auto;
    }

    #content.doctordetailpage .box .bookappointment {
        height: auto;
    }

    #content.bloglistview .smallcontent {
        flex-direction: column;
        max-height: max-content;
    }

    #content.bloglistview .smallcontent .imagecol {
        width: 100%;
    }

    #content.bloglistview .smallcontent .textcol {
        width: 100%;
    }

    .contact_grid {
        padding: 25px 5px;
    }

    .contactinfo-section .contact_grid .textbox a {
        font-size: 16px;
    }

    .product_detail_view .blog_side_cat {
        margin-top: 30px;
    }
}

@media(max-width: 916.9px) {}

@media(max-width: 864.9px) {
    /* #header .header-info .infobox {
        padding: 0 10px;
    }

    #header .header-info .infobox.top-contact .flexbox .text {
        padding-right: 7px;
    }

    #header .header-info .infobox.top-contact .flexbox .text span {
        font-size: 11px;
    }

    #header .header-info .infobox.others svg {
        padding: 0 10px;
        height: 20px;
    } */
}

@media(max-width: 767.9px) {

    /* h2,
    .h2 {
        font-size: 24px;
    }

    h3,
    .h3,
    .homeproduct .product-desc .product-title,
    .homeproduct .product-desc .product-price ins {
        font-size: 18px;
    }

    h4,
    .h4 {
        font-size: 16px;
    }

    h5,
    .h5,
    .homeproduct .product-desc .product-price del {
        font-size: 14px;
    }

    h6,
    .h6 {
        font-size: 14px;
    } */

    small,
    .sm-text {
        font-size: 10px;
    }

    #sliderm {
        aspect-ratio: 1350 / 600;
    }

    #sliderm .swiper-pagination {
        bottom: 20px !important;
    }

    .tag,
    .homeproduct .discount-tag .percentage,
    .product_detail_view .product-desc1 .prodCat {
        font-size: 10px;
    }

    .light-text {
        font-size: 10px;
    }

    .cta-text,
    .button {
        font-size: 14px;
    }

    #footerSocialContacts .socialmedia {
        justify-content: flex-start;
        margin-top: 15px;
    }

    #footerSocialContacts .socialmedia .col {
        max-width: max-content;
    }

    #footerSocialContacts .socialmedia a {
        margin-right: 10px;
    }

    #footerSocialContacts .socialmedia a svg {
        width: 20px;
    }

    .docSearchForm {
        padding: 0;
        border-radius: 15px;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .docSearchForm input {
        width: 100%;
        padding-top: 12px;
        padding-bottom: 12px;
        border-bottom: 1px solid #dddddd;
    }

    .docSearchForm select {
        width: 50%;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .docSearchForm select:first-of-type {
        border-left: none;
    }

    .docSearchForm a#docSubmit {
        width: 100%;
    }

    #content.homepage {
        padding-bottom: 0 !important;
    }

    #content.homepage:after {
        position: relative;
        width: 100%;
        bottom: 0;
        aspect-ratio: 957 / 708;
    }

    #content.homepage .content p:has(.button3) {
        margin-top: 20px;
        margin-bottom: 40px !important;
    }


    #settingstandard .container-fluid>.row {
        align-items: flex-start;
    }

    #settingstandard .flexbox {
        flex-direction: row;
        flex-wrap: wrap;
    }

    #settingstandard .flexbox .box {
        margin-bottom: 15px;
    }

    #settingstandard .flexbox .box:last-child {
        margin-bottom: 0;
    }

    #settingstandard .flexbox span.number {
        font-size: 40px;
    }

    #settingstandard {
        aspect-ratio: 9 / 10;
        position: relative;
        padding-top: 60px;
        padding-bottom: 60px;
    }

    #settingstandard:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 100%;
        background-image: url('../images/layout/RB-Home-Btm.webp?v1');
        background-position: center bottom;
        background-repeat: no-repeat;
        background-size: cover;
    }

    #whyus .pointsrow.row>.col-12:nth-child(1),
    #whyus .pointsrow.row>.col-12:nth-child(2) {
        margin-bottom: 24px;
    }
    
   

    .ctabox {
        background-position-x: 20%;

    }
    
    .ctabox .ctabox-title{
        font-size: 24px;    
    }   
    
    .ctabox .content .h1,
    .ctabox .content .h3,
    .ctabox .content p {
        justify-content: center;
    }

    #banner.aboutuspage {
        aspect-ratio: 900 / 1200;
        background-size: cover;
        background-position: bottom center;
        background-image: url(../images/layout/RB-About-top.webp);
    }

    #banner.aboutuspage h3+svg {
        position: absolute;
        bottom: 80px;
    }

    #visionmission .imagecol {
        margin-bottom: 30px;
    }

    #obesity_treatment_survivor {
        background-color: #8a8f88;
        background-image: url(../images/layout/RB-About-Btm-Obesity-mobile3.webp);
        background-size: cover;
        background-position: center bottom;
        aspect-ratio: 900 / 1000;
    }

    .bannerstyle .container-fluid {
        aspect-ratio: 900 / 1000;
        background-size: cover;
        background-position: center 90% !important;
        overflow: hidden;
        position: relative;
    }

    .bannerstyle .container-fluid:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 50%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.61) 0%, rgba(0, 0, 0, 0.00) 100%);
        z-index: 1;
    }

    .bannerstyle .container-fluid>* {
        z-index: 2;
        position: relative;
    }

    .pointsrow .content {
        padding: 35px 20px;
    }

    .specialtypointsrow .content {
        padding: 20px;
    }

    .verticaltabs .nav-underline .nav-link {
        font-size: 14px;
        padding: 10px 15px;
    }

    .verticaltabs .nav-underline .nav-link:after {
        font-size: 20px;
    }

    .specialtytablerow .col-12 .content {
        margin-bottom: 15px;
    }

    .specialtytablerow .col-12:last-child .content {
        margin-bottom: 0;
    }

    .specialtytablerow .col-12 .content p:last-child {
        border-bottom: 1px solid #cecece;
    }

    .facilitiespage.bannerstyle .container-fluid {
        aspect-ratio: 900 / 1000 !important;
        background-size: cover;
        background-position: center 90% !important;
        overflow: hidden;
        position: relative;
        align-content: flex-start !important;
    }

    .facilitiespage.bannerstyle .container-fluid:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 50%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.61) 0%, rgba(0, 0, 0, 0.00) 100%);
        z-index: 1;
    }

    .facilitiespage.bannerstyle .container-fluid>* {
        z-index: 2;
        position: relative;
    }

    .facilitiespage.bannerstyle .container-fluid svg {
        position: absolute;
        bottom: 60px;
    }

    #facilities .content .content {
        height: auto;
        margin-bottom: 15px;
    }

    #facilities .content .col-12:last-child .content {
        margin-bottom: 0;
    }

    #content.bloglistview .smallcontent .textcol {
        padding: 15px;
    }

    #banner.contactuspage {
        position: relative;
        aspect-ratio: 9 / 12;
        background-position: center 70%;
        background-size: cover;
        background-image: url('../images/layout/contact-banner-m.webp');
    }

    #banner.contactuspage:after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 80%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0.61) 0%, rgba(0, 0, 0, 0.00) 100%);
        z-index: 1;
    }

    #banner.contactuspage .container-fluid {
        position: relative;
        z-index: 2;
    }

    #banner.contactuspage .container-fluid .row {
        align-items: flex-start;
    }

    #banner.contactuspage .container-fluid .row>.col-12 {
        max-width: 100%;
    }

    .contactinfo-section:nth-child(2) {
        border: none;
        border-top: 1px solid #CECECE;
        border-bottom: 1px solid #CECECE;
    }

    #careerbanner .flexbox {
        flex-direction: row;
        flex-wrap: wrap;
    }

    #careerbanner {
        aspect-ratio: 9 / 10;
        background-size: cover;
        background-position: center bottom;
        background-image: url('../images/layout/RB-Contact-Career-Btm.webp');
    }

    #content.product_detail_view .content:has(> .titlesec) {
        padding-left: 0;
        padding-right: 0;
    }

    #content.product_detail_view .titlesec {
        margin-top: 30px;
    }

    #reports .middlecol {
        padding-top: 30px;
    }

    .widget>h4 {
        margin-top: 20px;
    }
    
    .footer-follow-title{
        margin-bottom: 10px;
    }

}

@media(max-width: 604.9px) {

       #sliderm {
        aspect-ratio: 1350 / 600;
    }

    #sliderm .swiper-pagination {
        bottom: 10px !important;
    }
}

@media(max-width: 575.9px) {



    .ctabox {
        padding: 60px 0;
        min-height: 250px;
    }

    .container {
        max-width: calc(100% - 30px);
    }

    #sliderm .slider-caption {
        /*padding-top: 40px;*/
    }


    #footer .footer-widgets-wrap>.row>.col {
        width: 100%;
    }

    #footer .footer-widgets-wrap {
        padding: 30px 0;
    }

    .widget_links li {
        padding-top: 5px;
    }

    .docSearchForm input {
        padding-top: 15px;
        padding-bottom: 15px;
    }

    #featured-package .product-price del {
        font-size: 12px;
    }

    #sliderm,
    #banner.aboutuspage {
        aspect-ratio: 800 / 900;;
    }

    #settingstandard {
        aspect-ratio: 9 / 16;
    }

    #obesity_treatment_survivor {
        aspect-ratio: 900 / 1100;
    }

    .bannerstyle .container-fluid {
        aspect-ratio: 900 / 1100;
        padding: 60px 40px !important;
    }


    .pointsrow .col:last-child .content,
    .pointsrow .col-12:last-child .content {
        margin-bottom: 0;
    }

    .specialtypointsrow .content {
        height: auto;
        margin-bottom: 15px;
    }

    .specialtypointsrow .col:last-child .content,
    .specialtypointsrow .col-12:last-child .content {
        margin-bottom: 0;
    }

    .verticaltabs .tab-content {
        margin-top: 30px;
    }

    .facilitiespage.bannerstyle .container-fluid {
        aspect-ratio: 900 / 1100 !important;
    }

    .blog_side_cat {
        margin-bottom: 30px;
    }

    #content.bloglistview .bigcontent .imagecol,
    #content.bloglistview a:has(.smallcontent) {
        margin-bottom: 15px;
    }

    #content.bloglistview .bigcontent .imagecol img,
    #content.bloglistview .smallcontent .imagecol {
        aspect-ratio: 6 / 4;
    }

    #content.bloglistview a:has(.smallcontent) {
        max-width: 100%;
        width: 100%;
    }

    .blogdetailview .flexbox:has(.titlesec) {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .blogdetailview .flexbox .titlesec,
    .blogdetailview .flexbox .sharesec {
        width: 100%;
    }

    .blogdetailview .flexbox .sharesec {
        justify-content: center;
    }
    
    .blogdetailview .flexbox{
        margin-bottom: 30px;
    }

    .blog_side_cat h4 {
        margin-bottom: 20px;
    }

    .blogdetailview .blog_side_cat {
        margin-top: 30px;
    }

    #banner.contactuspage {
        aspect-ratio: 9 / 15;
    }
}

@media(max-width: 514.9px) {
    .ctabox .content {
        width: 100%;
    }
}

@media(max-width: 476.9px) {
    #header .header-info .infobox.others svg {
        padding: 0 8px;
    }

    #header .header-info .infobox.others li#top-cart svg {
        padding-right: 0;
    }

    /* #sliderm,
    #banner.aboutuspage {
        aspect-ratio: 900 / 1400;
    } */

    #settingstandard {
        aspect-ratio: 9 / 20;
    }

    #obesity_treatment_survivor {
        aspect-ratio: 900 / 1200;
    }

    .bannerstyle .container-fluid {
        aspect-ratio: 900 / 1300;
        padding: 60px 30px !important;
    }

    .bannerstyle .container-fluid .content {
        padding: 0 20px !important;
    }

    .facilitiespage.bannerstyle .container-fluid {
        aspect-ratio: 900 / 1300 !important;
    }

    #updates .newsrow h4 {
        height: auto;
    }

    section {
        overflow: hidden;
    }

    #banner.contactuspage {
        aspect-ratio: 9 / 19;
    }

    #logo img {
        height: 45px;
    }
}

@media(max-width: 359.9px) {}

@media(max-width: 333.9px) {
    .header-inner-flexbox {
        /*width: calc(100% - 85px);*/
    }
}

@media(max-width: 279.9px) {

    #primary-menu-trigger,
    #page-submenu-trigger {
        width: 35px;
    }
}

/* ----------------------- Mobile Header Layout (< 992px) ----------------------- */
@media (max-width: 991.98px) {
    #header {
        border-bottom: 0;
    }

    .global-search-inner {
        padding-top: 60px 0;
    }

    #header .header-outter-flexbox {
        display: block;
        height: auto;
        padding: 10px 0;
    }

    #header .header-inner-flexbox {
        width: 100%;
    }

    #header .mobile-header-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    /* Hamburger menu - Left */
    #header #primary-menu-trigger {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        cursor: pointer;
        order: 1;
        width: 40px;
        height: 40px;
    }

    /* Logo - Center */
    #header #logo {
        flex: 1;
        display: flex;
        justify-content: center;
        align-items: center;
        order: 2;
        margin: 0;
    }

    #header #logo img {
        max-width: 200px;
    }

    /* Mobile Search Trigger - Right */
    #mobile-search-trigger,
    #top-search-trigger-m {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        width: 40px;
        height: 40px;
        cursor: pointer;
        order: 3;
    }

    #top-search-trigger-m:hover i,
    #mobile-search-trigger:hover i {
        color: var(--color-primary);
    }

    /* Mobile Search Form - hidden by default */
    #mobile-search-form {
        display: none !important;
    }

    /* When search is open on mobile */
    .top-search-open #primary-menu-trigger,
    .top-search-open #logo,
    .top-search-open #top-search-trigger-m,
    .top-search-open #mobile-search-trigger {
        display: none !important;
    }

    .top-search-open #mobile-search-form {
        display: flex !important;
        align-items: center;
        width: 100%;
        gap: 10px;
    }

    #mobile-search-form form {
        flex: 1;
        display: flex;
        align-items: center;
        background-color: #f5f5f5;
        border-radius: 8px;
        overflow: hidden;
        margin-bottom: 0;
    }

    #mobile-search-form form input {
        flex: 1;
        border: none;
        outline: none;
        background: transparent;
        padding: 10px 14px;
        font-size: 14px;
        color: #333;
        font-family: 'Inter', sans-serif;
    }

    #mobile-search-form form input::placeholder {
        color: #999;
    }

    #mobile-search-form .mobile-search-submit {
        border: none;
        background: transparent;
        padding: 10px 14px;
        cursor: pointer;
        display: flex;
        align-items: center;
    }

    #mobile-search-form .mobile-search-submit svg {
        width: 16px;
        height: 16px;
    }

    #mobile-search-close {
        border: none;
        background: transparent;
        padding: 8px;
        cursor: pointer;
        font-size: 18px;
        color: #333;
        display: flex;
        align-items: center;
    }
}

/* Desktop: Hide mobile search trigger */
@media (min-width: 992px) {

    #top-search-trigger-m,
    #mobile-search-trigger {
        display: none !important;
    }
}

/*	------------------------ Responsive END -------------------------- */

.floating-action-buttons {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: center;
}

.whatsapp-button {
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 0.3s ease;
    cursor: pointer;
}

.whatsapp-button:hover {
    transform: scale(1.1);
}

.whatsapp-button svg {
    width: 50px;
    height: 50px;
}

#gotoTop {
    position: static;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #595959;
    border-radius: 50%;
    color: #595959;
    font-size: 30px;
    font-weight: 400;
    cursor: pointer;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
    line-height: unset;
}

#gotoTop.show {
    opacity: 1;
    visibility: visible;
}

#gotoTop:hover {
    background: var(--color-primary);
    color: #fff;
    border-color: var(--color-primary);
}

/* Mobile responsive */
@media (max-width: 767.98px) {
    .floating-action-buttons {
        bottom: 20px;
        right: 20px;
        gap: 12px;
    }

    .whatsapp-button {
        width: 50px;
        height: 50px;
    }

    .whatsapp-button svg {
        width: 50px;
        height: 50px;
    }

    #gotoTop {
        width: 35px;
        height: 35px;
        font-size: 18px;
    }
}
/* Continuous linear scroll for gallery carousel */
.recent-gallery-carousel .owl-stage { transition-timing-function: linear !important; }


