/*
Theme Name: Medical Health
Theme URI: https://wpfrank.com/wordpress-themes/businessexpo-premium/
Template: businessexpo
Author: WP Frank
Author URI: https://wpfrank.com/
Description: Medical Health WordPress Theme Is Very Easy To Customize And It Has A Lot Of Features And A Very Strong Admin Panel For Any Client To Make A Good Website. Medical Health Also Included A Lot Of Features For Making A Good Professional Look Website With Attractive Design Present Every Aspect Of Your Medical Clinic Or Create Detailed Doctors Timetable With Medical Health Great Functionalities. Share The Details About Your Laboratory, Hospital Or Clinic.
Tags: one-column,two-columns,four-columns,right-sidebar,flexible-header,custom-background,custom-header,custom-menu,editor-style,featured-images,footer-widgets,post-formats,theme-options,threaded-comments,rtl-language-support,translation-ready,full-width-template,custom-logo,blog,e-commerce,portfolio
Version: 0.1.2
Tested up to: 6.8
Requires PHP: 5.4
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl.html
Text Domain: medical-health

*/

.main-slider .item::before {
    background-color: rgba(0, 0, 0, 0.2);
}

.page-title-module {
    background-position: bottom !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

.service .post .inner-header .inner-title {
    font-size: 1.25rem;
    padding-top: 20px;
}

.testimonial-wraper:before,
.callout-wraper:before {
	background-color: rgba(0, 9, 15, 0.2);
}

.testimonial-wraper {
	background-position: center bottom;
}

/* WooCommerce Products Grid - 4 Columns */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 30px 0 !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after {
    display: none !important; /* Clear floats that break CSS Grid */
}

.woocommerce ul.products li.product {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    background: #ffffff !important;
    border: 1px solid #eef2f5 !important;
    border-radius: 8px !important;
    padding: 15px !important;
    box-shadow: 0 4px 6px rgba(0,0,0,0.03) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    text-align: center !important;
    position: relative !important;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.08) !important;
}

/* Image alignment */
.woocommerce ul.products li.product a img {
    width: 100% !important;
    height: 180px !important;
    object-fit: cover !important;
    border-radius: 6px !important;
    margin-bottom: 12px !important;
}

/* Title Styling */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: #17212c !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 10px 0 !important;
    height: 44px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
}

/* Price Styling */
.woocommerce ul.products li.product .price {
    color: #0d6efd !important; /* Theme blue instead of cyan/pink */
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    margin-bottom: 15px !important;
    display: block !important;
}

/* Add to Cart Button Styling - Replaces Hot Pink with Theme Colors */
.woocommerce ul.products li.product .button.add_to_cart_button {
    background-color: #0d6efd !important; /* Theme Blue */
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 10px 15px !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    border: none !important;
    display: block !important;
    width: 100% !important;
    transition: background-color 0.2s ease !important;
    box-shadow: none !important;
    margin-top: auto !important;
}

.woocommerce ul.products li.product .button.add_to_cart_button:hover {
    background-color: #0b5ed7 !important; /* Darker Theme Blue */
    color: #ffffff !important;
}

/* Responsive Grid adjustment */
@media (max-width: 991px) {
    .woocommerce ul.products {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}
@media (max-width: 575px) {
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
    }
}

/* Homepage Hero Slider Full Width */
.homepage-hero-slider-breakout {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-bottom: 40px !important;
}


body {
    overflow-x: hidden !important;
}

/* Adjust slider height and backgrounds for full width */
#heroCarousel .carousel-item {
    height: 550px !important; /* Strict 550px height */
    background-color: #080f1a !important; /* Dark solid background color for images */
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}


/* Make captions larger and premium */
#heroCarousel .carousel-caption {
    bottom: 12% !important; /* Positions text towards the bottom of the slider */
    text-shadow: 0 2px 4px rgba(0,0,0,0.6) !important;
}


#heroCarousel .carousel-caption h1 {
    font-size: 3.5rem !important;
    font-weight: 700 !important;
    margin-bottom: 15px !important;
    letter-spacing: 1px !important;
    font-family: 'Montserrat', sans-serif !important;
}

#heroCarousel .carousel-caption p {
    font-size: 1.4rem !important;
    margin-bottom: 25px !important;
}

/* Hide page title banner (microscope banner) globally */
.page-title-module {
    display: none !important;
}


/* Adjust homepage content spacing since title area is hidden */
.home #site-content {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

.home .homepage-hero-slider-breakout {
    margin-top: 0 !important; /* Sit directly below navbar */
}

/* Hide Preloader Wrapper */
#loader-wrapper {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* Header & Menu Styling Overrides - Consistent Deep Navy Header Across Whole Website */
body header#masthead,
body header.site-header,
body .site-header,
body .site-menu-content,
body .navigation-wrap,
body .navigation-wrap.start-header,
body .navigation-wrap.start-style,
body .start-header,
body .start-style,
header#masthead.site-header {
    background: #0b1322 !important;
    background-color: #0b1322 !important;
    position: relative !important;
    z-index: 99999 !important;
    width: 100% !important;
    border-bottom: 1px solid #1a273a !important;
}

body header.header-top,
body .header-top {
    background: #080f1a !important;
    background-color: #080f1a !important;
}

body .site-header .site-menu-content {
    background-color: #0b1322 !important;
    width: 100% !important;
    max-width: 100% !important;
}

body .site-header .site-menu-content .navigation-wrap {
    width: 100% !important;
    max-width: 100% !important;
    background-color: transparent !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    width: 100% !important;
    max-width: 1200px !important; /* Cap container width at 1200px to center it on wide screens */
    margin: 0 auto !important; /* Center on screen */
    padding: 12px 20px !important;
    text-align: left !important; /* Force left align */
    box-sizing: border-box !important;
    background-color: transparent !important;
}


/* Force Logo Left */
body .site-header .site-menu-content .navigation-wrap.start-header .logo_class {
    width: auto !important; /* Force auto width to override logo.css 100% width rule */
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    flex: 0 0 auto !important;
    display: block !important;
}

/* Completely Hide Text Site Title / Name below or beside Image Logo */
body .site-header .logo_class .site-branding-text,
body .site-header .logo_class .site-title,
body .site-header .logo_class .site-description,
body .site-header .site-title,
body .site-header .site-branding-text,
body .header-left-logo .site-title,
body .header-left-logo .site-branding-text {
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Menu Items Container Alignment */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation {
    flex: 1 1 auto !important;
    display: flex !important;
    justify-content: center !important; /* Center the menu in the remaining header space */
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    margin-left: 20px !important; /* Gap after logo */
    width: auto !important;
    max-width: 100% !important;
    background: transparent !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation .primary-menu-container {
    display: flex !important;
    justify-content: center !important; /* Center container */
    width: 100% !important;
    position: static !important;
    background: transparent !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #slide-nav {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important; /* Center content */
    width: 100% !important;
    background: transparent !important;
}

/* Spread menu items starting from middle to right */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important; /* Force single line */
    align-items: center !important;
    justify-content: center !important; /* Keep items close together in the center */
    width: auto !important;
    margin: 0 auto !important; /* Centered in remaining space */
    list-style: none !important;
    padding: 0 !important;
    background: transparent !important;
}

/* Menu list item styling */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 10px !important; /* Balanced spacing */
    width: auto !important;
    white-space: nowrap !important;
    background: transparent !important;
}

/* Link styling inside items */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item a {
    color: #ffffff !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: 11px !important; /* Small font size for 11 items */
    letter-spacing: 0.2px !important;
    padding: 10px 2px !important;
    white-space: nowrap !important;
    display: block !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}


/* Hover/Active states */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item a:hover,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item.current-menu-item a,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item.active a,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item.current-menu-item a span,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.nav-item a:hover span {
    color: #0d6efd !important; /* Theme Blue */
    text-decoration: none !important;
}

/* Dropdown & Sub-Menu Styling for POLICIES Navigation Item */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-item-has-children,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.dropdown {
    position: relative !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-item-has-children:hover > ul.sub-menu,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.dropdown:hover > ul.dropdown-menu,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-item-has-children:hover > ul.dropdown-menu,
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.dropdown:hover > ul.sub-menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

body .site-header nav.main-navigation ul.sub-menu,
body .site-header nav.main-navigation ul.dropdown-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 220px !important;
    background-color: #0b1322 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 8px !important;
    padding: 8px 0 !important;
    margin-top: 5px !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5) !important;
    list-style: none !important;
    display: none !important;
    z-index: 999999 !important;
}

body .site-header nav.main-navigation ul.sub-menu li,
body .site-header nav.main-navigation ul.dropdown-menu li {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body .site-header nav.main-navigation ul.sub-menu li a,
body .site-header nav.main-navigation ul.dropdown-menu li a {
    color: #e2e8f0 !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    padding: 9px 18px !important;
    display: block !important;
    text-transform: none !important;
    letter-spacing: 0.3px !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    text-align: left !important;
}

body .site-header nav.main-navigation ul.sub-menu li a:hover,
body .site-header nav.main-navigation ul.dropdown-menu li a:hover {
    background-color: #0d6efd !important;
    color: #ffffff !important;
    padding-left: 23px !important;
}

/* Cart Icon Badge */
body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-cart-item {
    position: relative !important;
    padding-left: 8px !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-cart-item .menu-cart-link {
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-cart-item .menu-cart-link i {
    font-size: 15px !important;
    color: #ffffff !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-cart-item .menu-cart-link:hover i {
    color: #0d6efd !important;
}

body .site-header .site-menu-content .navigation-wrap.start-header nav.main-navigation #primary-menu li.menu-cart-item .menu-cart-count {
    position: absolute !important;
    top: -5px !important;
    right: -10px !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-size: 8px !important;
    font-weight: 700 !important;
    border-radius: 50% !important;
    width: 13px !important;
    height: 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2) !important;
    line-height: 1 !important;
}

/* Hide mobile toggle elements on desktop */
@media (min-width: 992px) {
    body .site-header #hamburger-menu,
    body .site-header .open-nav-btn,
    body .site-header .close-btn {
        display: none !important;
    }
}

/* Custom 4-Column Footer Bar Styling */
.custom-site-footer {
    background-color: #080f1a !important; /* Dark navy matching header/theme */
    color: #94a3b8 !important;
    padding: 50px 0 35px 0 !important;
    border-top: 3px solid #0d6efd !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
}

.custom-site-footer .footer-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
}

.custom-site-footer .footer-4col-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    gap: 30px !important;
}

.custom-site-footer .footer-col-40 {
    flex: 0 0 40% !important;
    max-width: 40% !important;
    width: 40% !important;
}

.custom-site-footer .footer-col-20 {
    flex: 0 0 20% !important;
    max-width: 20% !important;
    width: 20% !important;
}

.custom-site-footer .footer-col-title {
    color: #ffffff !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    position: relative !important;
    padding-bottom: 8px !important;
}

.custom-site-footer .footer-col-title::after {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 35px !important;
    height: 2px !important;
    background-color: #0d6efd !important;
}

.custom-site-footer .footer-about-text {
    color: #cbd5e1 !important;
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

.custom-site-footer .footer-links-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.custom-site-footer .footer-links-list li {
    margin-bottom: 10px !important;
}

.custom-site-footer .footer-links-list li a {
    color: #cbd5e1 !important;
    text-decoration: none !important;
    font-size: 0.92rem !important;
    transition: all 0.2s ease !important;
    display: inline-block !important;
}

.custom-site-footer .footer-links-list li a:hover {
    color: #0d6efd !important;
    transform: translateX(4px) !important;
}

.custom-site-footer .footer-contact-info p {
    color: #cbd5e1 !important;
    font-size: 0.92rem !important;
    margin-bottom: 12px !important;
    line-height: 1.5 !important;
}

.custom-site-footer .footer-contact-info strong {
    color: #ffffff !important;
    display: block !important;
    font-size: 0.85rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 2px !important;
}

.custom-site-footer .footer-contact-info a {
    color: #cbd5e1 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.custom-site-footer .footer-contact-info a:hover {
    color: #0d6efd !important;
}

.custom-site-footer .footer-address {
    margin-top: 15px !important;
    font-style: normal !important;
}

/* Footer Copyright Bar */
.footer-copyrights {
    background-color: #050a12 !important;
    color: #64748b !important;
    padding: 18px 0 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    font-size: 0.88rem !important;
}

.footer-copyrights .site-info {
    color: #64748b !important;
}

/* Responsive Footer for Mobile & Tablet */
@media (max-width: 991px) {
    .custom-site-footer .footer-4col-row {
        flex-wrap: wrap !important;
        gap: 30px 20px !important;
    }

    .custom-site-footer .footer-col-40 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    .custom-site-footer .footer-col-20 {
        flex: 0 0 48% !important;
        max-width: 48% !important;
        width: 48% !important;
    }
}

@media (max-width: 575px) {
    .custom-site-footer .footer-col-20 {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* Fix Carousel Controls Hover Red Background */
body #heroCarousel .carousel-control-prev,
body #heroCarousel .carousel-control-next {
    background: transparent !important;
    background-color: transparent !important;
}

body #heroCarousel .carousel-control-prev:hover,
body #heroCarousel .carousel-control-prev:focus,
body #heroCarousel .carousel-control-next:hover,
body #heroCarousel .carousel-control-next:focus {
    background: transparent !important;
    background-color: transparent !important;
    opacity: 0.85 !important;
}

/* Styling Carousel Indicators (Pill Dots with Spacing & Theme Colors) */
#heroCarousel .carousel-indicators {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    bottom: 18px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    z-index: 10 !important;
}

#heroCarousel .carousel-indicators button,
#heroCarousel .carousel-indicators li {
    width: 28px !important;
    height: 8px !important;
    border-radius: 4px !important;
    background-color: rgba(255, 255, 255, 0.5) !important;
    border: none !important;
    margin: 0 6px !important;
    padding: 0 !important;
    transition: all 0.3s ease !important;
    opacity: 0.7 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4) !important;
    cursor: pointer !important;
}

#heroCarousel .carousel-indicators button.active,
#heroCarousel .carousel-indicators li.active {
    width: 42px !important;
    background-color: #0d6efd !important; /* Theme Primary Blue */
    opacity: 1 !important;
    box-shadow: 0 2px 10px rgba(13, 110, 253, 0.6) !important;
}

/* Slider Overlay - Lightened to illuminate background images */
#heroCarousel .slider-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.22) !important; /* Lighter overlay for bright background */
    z-index: 1 !important;
}

/* Mobile Hero Slider & CTA Button Responsiveness */
@media (max-width: 768px) {
    #heroCarousel .carousel-item {
        height: 380px !important;
    }

    #heroCarousel .carousel-caption {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        bottom: 8% !important;
        left: 5% !important;
        right: 5% !important;
        padding: 0 !important;
        z-index: 2 !important;
    }

    #heroCarousel .carousel-caption h1 {
        font-size: 1.45rem !important;
        font-weight: 700 !important;
        margin-bottom: 6px !important;
        line-height: 1.25 !important;
        text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8) !important;
    }

    #heroCarousel .carousel-caption p {
        font-size: 0.88rem !important;
        margin-bottom: 12px !important;
        line-height: 1.35 !important;
        text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8) !important;
    }

    #heroCarousel .carousel-caption a.btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 0.8rem !important;
        padding: 8px 22px !important;
        margin-top: 4px !important;
        border-radius: 30px !important;
        background-color: #0d6efd !important;
        border-color: #0d6efd !important;
        color: #ffffff !important;
        font-weight: 600 !important;
        box-shadow: 0 4px 12px rgba(13, 110, 253, 0.45) !important;
    }
}

/* Faster slide transition speed (0.25 seconds instead of 0.6 seconds) */
body #heroCarousel .carousel-item {
    transition: transform 0.25s ease-in-out !important;
    -webkit-transition: -webkit-transform 0.25s ease-in-out !important;
    -moz-transition: transform 0.25s ease-in-out !important;
    -o-transition: transform 0.25s ease-in-out !important;
}

/* Force dark background on carousel wrapper to prevent white gap during sliding transitions */
body #heroCarousel,
body #heroCarousel .carousel-inner {
    background-color: #080f1a !important;
}

/* Pull products grid closer to the "Some of our Golf Carts" section title */
.home .elementor-element-7883658 {
    margin-top: -45px !important; /* Pull products container up */
}

.home .elementor-element-6ff29bd h4 {
    margin-bottom: 5px !important;
    padding-bottom: 0 !important;
}

/* Homepage Content Width Alignment (Cap at 1200px centered) */
.home .elementor-570 {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
}

/* "Welcome to Hasevi Enterprise" Section 50/50 Two-Column Row Layout */
.home .elementor-element-1c0e5bd > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 40px !important;
    width: 100% !important;
}

.home .elementor-element-edaf13a,
.home .elementor-element-c69ba15 {
    width: 50% !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    box-sizing: border-box !important;
}

.home .elementor-element-edaf13a .elementor-widget-image img {
    width: 100% !important;
    height: auto !important;
    border-radius: 12px !important;
    object-fit: cover !important;
}

@media (max-width: 768px) {
    .home .elementor-element-1c0e5bd > .e-con-inner {
        flex-direction: column !important;
    }
    .home .elementor-element-edaf13a,
    .home .elementor-element-c69ba15 {
        width: 100% !important;
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}

/* Keep Full-Width Hero Slider spanning 100% of viewport width */
.home #heroCarousel,
.home #heroCarousel .carousel-inner,
.home #heroCarousel .carousel-item {
    width: 100vw !important;
    max-width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    right: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
}

/* Hide empty elements/paragraphs generated by wpautop on home */
.home .elementor-570 p:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 0 !important;
}

/* Custom Logo Image Styles */
body .site-header .site-menu-content .navigation-wrap.start-header .logo_class .custom-logo-link img.custom-logo {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 55px !important;
    padding-top: 0 !important;
    display: block !important;
}

/* WooCommerce Single Product Page Styling */
.single-product div.product {
    margin-top: 30px !important;
    margin-bottom: 50px !important;
}

.single-product div.product .summary {
    padding-left: 20px !important;
}

.single-product div.product .product_title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important; /* Deep corporate navy */
    margin-bottom: 15px !important;
    line-height: 1.2 !important;
}

.single-product div.product p.price,
.single-product div.product span.price {
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    color: #0d6efd !important; /* Theme Blue */
    margin-bottom: 20px !important;
}

.single-product div.product .woocommerce-product-details__short-description {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    color: #4a5568 !important;
    margin-bottom: 25px !important;
}

.single-product div.product form.cart {
    margin-bottom: 30px !important;
    display: flex !important;
    align-items: center !important;
}

.single-product div.product form.cart .quantity {
    margin-right: 15px !important;
}

.single-product div.product form.cart .quantity input {
    height: 45px !important;
    width: 60px !important;
    border: 1px solid #cbd5e0 !important;
    border-radius: 4px !important;
    text-align: center !important;
}

.single-product div.product form.cart .single_add_to_cart_button {
    height: 45px !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    padding: 0 30px !important;
    border: none !important;
    border-radius: 4px !important;
    transition: background-color 0.2s ease !important;
    text-transform: uppercase !important;
}

.single-product div.product form.cart .single_add_to_cart_button:hover {
    background-color: #0b5ed7 !important;
}

.single-product div.product .product_meta {
    border-top: 1px solid #e2e8f0 !important;
    padding-top: 15px !important;
    font-size: 0.9rem !important;
    color: #718096 !important;
}

.single-product div.product .product_meta a {
    color: #0d6efd !important;
    text-decoration: none !important;
}

.single-product div.product .woocommerce-tabs {
    margin-top: 50px !important;
    border-top: 1px solid #e2e8f0 !important;
    padding-top: 30px !important;
}

.single-product div.product .woocommerce-tabs ul.tabs {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin-bottom: 20px !important;
    display: flex !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li {
    background: #f7fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-bottom: none !important;
    border-radius: 4px 4px 0 0 !important;
    margin-right: 5px !important;
    padding: 10px 20px !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li.active {
    background: #ffffff !important;
    border-bottom: 1px solid #ffffff !important;
    font-weight: 600 !important;
}

.single-product div.product .woocommerce-tabs ul.tabs li a {
    color: #4a5568 !important;
    text-decoration: none !important;
    font-size: 0.95rem !important;
}

.single-product div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    padding: 20px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 0 4px 4px 4px !important;
    background-color: #ffffff !important;
    margin-top: -21px !important;
}

/* Premium WooCommerce Pagination Styles */
.woocommerce-pagination {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
    text-align: center !important;
}

.woocommerce-pagination ul.page-numbers {
    display: inline-flex !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 30px !important;
    padding: 5px 10px !important;
    background-color: #ffffff !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05) !important;
    list-style: none !important;
}

.woocommerce-pagination ul.page-numbers li {
    border: none !important;
    margin: 0 3px !important;
    padding: 0 !important;
}

.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span.current {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    color: #4a5568 !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce-pagination ul.page-numbers li a:hover {
    background-color: #f7fafc !important;
    color: #0d6efd !important; /* Theme Blue */
}

.woocommerce-pagination ul.page-numbers li span.current {
    background-color: #0d6efd !important; /* Theme Blue active background */
    color: #ffffff !important;
    box-shadow: 0 4px 10px rgba(13, 110, 253, 0.3) !important;
}

.woocommerce-pagination ul.page-numbers li a.next,
.woocommerce-pagination ul.page-numbers li a.prev {
    font-size: 1.1rem !important;
}

/* Top Spacing Below Header for All Non-Homepage Pages (Homepage Remains Flush) */
body:not(.home) #site-content,
body:not(.home) .site-content,
body:not(.home) main#main,
body:not(.home) .wc-page-container,
body:not(.home) .policy-container {
    padding-top: 15px !important;
    margin-top: 0 !important;
}

body:not(.home) .page-main-heading,
body:not(.home) .cart-page-main-title,
body:not(.home) .checkout-page-main-title,
body:not(.home) .woocommerce-products-header__title,
body:not(.home) h1.page-title,
body:not(.home) .woocommerce-products-header {
    margin-top: 15px !important;
    margin-bottom: 25px !important;
}

/* Hide text site title in header when custom logo is active */


.policy-card {
    background: #ffffff !important;
    padding: 50px 60px !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid #e2e8f0 !important;
}

.policy-title {
    font-size: 1.8rem !important;
    font-weight: 600 !important;
    color: #0d6efd !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding-bottom: 15px !important;
    margin-top: 0 !important;
    margin-bottom: 30px !important;
}

.policy-content h1,
.policy-content h2,
.policy-content h3 {
    color: #0b1322 !important;
    font-weight: 600 !important;
    font-size: 1.35rem !important;
    margin-top: 30px !important;
    margin-bottom: 15px !important;
}

.policy-content p {
    font-size: 1.05rem !important;
    line-height: 1.8 !important;
    color: #2d3748 !important;
    margin-bottom: 20px !important;
}

.policy-content ul,
.policy-content ol {
    margin-bottom: 25px !important;
    padding-left: 20px !important;
}

.policy-content li {
    font-size: 1.05rem !important;
    line-height: 1.8 !important;
    color: #2d3748 !important;
    margin-bottom: 10px !important;
}

/* Premium FAQ Page Styling */
.faq-category {
    margin-bottom: 35px !important;
}

.faq-cat-title {
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
    display: flex !important;
    align-items: center !important;
}

.faq-cat-title i {
    color: #0d6efd !important;
    margin-right: 10px !important;
}

.faq-item {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-left: 4px solid #0d6efd !important;
    border-radius: 8px !important;
    padding: 20px 24px !important;
    margin-bottom: 15px !important;
    transition: all 0.2s ease !important;
}

.faq-item:hover {
    box-shadow: 0 4px 15px rgba(13, 110, 253, 0.1) !important;
    transform: translateY(-2px) !important;
}

.faq-question {
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

.faq-answer p {
    font-size: 0.98rem !important;
    line-height: 1.65 !important;
    color: #475569 !important;
    margin: 0 !important;
}

/* Responsive Contact Us Google Map Styling */
.sms-contact-map {
    margin-top: 25px !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid #e2e8f0 !important;
}

.sms-contact-map iframe {
    width: 100% !important;
    height: 350px !important;
    border: 0 !important;
    display: block !important;
}

@media (max-width: 768px) {
    .policy-card {
        padding: 30px 20px !important;
    }
    .policy-container {
        margin-top: 20px !important;
        margin-bottom: 30px !important;
    }
    .policy-title {
        font-size: 1.45rem !important;
    }
    .policy-content h1,
    .policy-content h2,
    .policy-content h3 {
        font-size: 1.15rem !important;
    }
}

/* Mobile Header Cart Icon & Hamburger Button Custom Styles */
/* Mobile Header & Responsive Navigation Overrides */

.mobile-header-cart {
    display: none !important;
}

@media (min-width: 992px) {
    .open-nav-btn,
    #hamburger-menu,
    .close-btn,
    #slide-nav #close {
        display: none !important;
    }
    
    #slide-nav {
        display: flex !important;
        position: static !important;
        width: auto !important;
        height: auto !important;
        background-color: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Desktop Hover Dropdown Menu Comprehensive Solid Dark Fix */
    header#masthead .main-navigation ul#primary-menu li.menu-item-has-children,
    header#masthead .main-navigation ul#primary-menu li.dropdown,
    header#masthead ul#primary-menu li.menu-item-has-children,
    header#masthead ul#primary-menu li.dropdown {
        position: relative !important;
    }

    header#masthead .main-navigation ul#primary-menu li.menu-item-has-children > ul,
    header#masthead .main-navigation ul#primary-menu li.dropdown > ul,
    header#masthead .navigation-wrap ul#primary-menu ul.sub-menu,
    header#masthead .navigation-wrap ul#primary-menu ul.dropdown-menu,
    header#masthead ul#primary-menu ul.sub-menu,
    header#masthead ul#primary-menu ul.dropdown-menu,
    header#masthead ul.sub-menu,
    header#masthead ul.dropdown-menu,
    body .dropdown-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        min-width: 250px !important;
        width: 250px !important;
        max-width: 280px !important;
        height: auto !important;
        background: #0b1322 !important;
        background-color: #0b1322 !important;
        border: 1px solid #1e293b !important;
        border-radius: 8px !important;
        padding: 8px 0 !important;
        margin: 4px 0 0 0 !important;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.9) !important;
        display: flex !important;
        flex-direction: column !important;
        list-style: none !important;
        z-index: 999999 !important;
        visibility: hidden !important;
        opacity: 0 !important;
        transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s !important;
        transform: translateY(8px) !important;
    }

    header#masthead .main-navigation ul#primary-menu li.menu-item-has-children:hover > ul,
    header#masthead .main-navigation ul#primary-menu li.dropdown:hover > ul,
    header#masthead ul#primary-menu li.menu-item-has-children:hover > ul.sub-menu,
    header#masthead ul#primary-menu li.dropdown:hover > ul.dropdown-menu {
        visibility: visible !important;
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    header#masthead ul#primary-menu ul.sub-menu li,
    header#masthead ul#primary-menu ul.dropdown-menu li,
    header#masthead ul.sub-menu li,
    header#masthead ul.dropdown-menu li,
    body .dropdown-menu li {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
        background: #0b1322 !important;
        background-color: #0b1322 !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    }

    header#masthead ul#primary-menu ul.sub-menu li:last-child,
    header#masthead ul#primary-menu ul.dropdown-menu li:last-child {
        border-bottom: none !important;
    }

    header#masthead ul#primary-menu ul.sub-menu li a,
    header#masthead ul#primary-menu ul.dropdown-menu li a,
    header#masthead ul.sub-menu li a,
    header#masthead ul.dropdown-menu li a,
    header#masthead .dropdown-item,
    body .dropdown-menu a {
        display: block !important;
        width: 100% !important;
        padding: 10px 18px !important;
        color: #ffffff !important;
        background: #0b1322 !important;
        background-color: #0b1322 !important;
        font-size: 0.88rem !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        line-height: 1.4 !important;
        border: none !important;
        transition: all 0.15s ease !important;
    }

    header#masthead ul#primary-menu ul.sub-menu li a:hover,
    header#masthead ul#primary-menu ul.dropdown-menu li a:hover,
    header#masthead ul.sub-menu li a:hover,
    header#masthead ul.dropdown-menu li a:hover,
    header#masthead .dropdown-item:hover,
    header#masthead .dropdown-item:focus,
    header#masthead .dropdown-item:active,
    body .dropdown-menu a:hover,
    body .dropdown-menu a:focus {
        background: #0d6efd !important;
        background-color: #0d6efd !important;
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        opacity: 1 !important;
        padding-left: 22px !important;
    }
}

@media (max-width: 991px) {
    .navigation-wrap.start-header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 10px 15px !important;
        flex-wrap: nowrap !important;
    }
    
    .logo_class {
        margin: 0 auto 0 0 !important;
        flex-shrink: 0 !important;
    }
    
    .mobile-header-cart {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: relative !important;
        color: #ffffff !important;
        font-size: 1.3rem !important;
        text-decoration: none !important;
        padding: 5px 10px !important;
        margin: 0 15px 0 auto !important; /* Moves cart icon away from logo and pairs with hamburger button */
        flex-shrink: 0 !important;
    }
    
    .mobile-header-cart i {
        color: #0d6efd !important; /* Theme Primary Blue */
        font-size: 1.4rem !important;
    }
    
    .mobile-header-cart .mobile-cart-count {
        background-color: #0d6efd !important;
        color: #ffffff !important;
        font-size: 0.75rem !important;
        font-weight: 700 !important;
        border-radius: 50% !important;
        width: 20px !important;
        height: 20px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        position: absolute !important;
        top: -4px !important;
        right: -6px !important;
        box-shadow: 0 2px 5px rgba(0,0,0,0.3) !important;
    }
    
    .main-navigation {
        margin: 0 !important;
        flex-shrink: 0 !important;
        display: block !important;
    }

    #hamburger-menu.open-nav-btn,
    .open-nav-btn {
        display: inline-block !important;
        border: 2px solid #0d6efd !important;
        background-color: transparent !important;
        border-radius: 8px !important;
        padding: 8px 12px !important;
        color: #ffffff !important;
        box-shadow: 0 2px 8px rgba(13, 110, 253, 0.2) !important;
        transition: all 0.2s ease-in-out !important;
    }
    
    #hamburger-menu.open-nav-btn i,
    .open-nav-btn i {
        color: #0d6efd !important;
        font-size: 1.4rem !important;
    }

    #hamburger-menu.open-nav-btn:hover,
    .open-nav-btn:hover {
        background-color: #0d6efd !important;
        border-color: #0d6efd !important;
    }

    #hamburger-menu.open-nav-btn:hover i,
    .open-nav-btn:hover i {
        color: #ffffff !important;
    }

    /* Slide Navigation Drawer (Hidden by default until .active / .visible) */
    #slide-nav {
        position: fixed !important;
        top: 0 !important;
        right: -320px !important;
        width: 280px !important;
        height: 100vh !important;
        background-color: #0b1322 !important;
        z-index: 999999 !important;
        transition: right 0.3s ease-in-out !important;
        padding: 70px 25px 25px 25px !important;
        display: none !important; /* Hide completely when closed */
        box-shadow: -5px 0 25px rgba(0, 0, 0, 0.4) !important;
        margin: 0 !important;
        overflow-y: auto !important;
    }
    
    #slide-nav.active,
    #slide-nav.visible {
        display: block !important;
        right: 0 !important;
    }
    
    #slide-nav #close {
        position: absolute !important;
        top: 15px !important;
        right: 15px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-color: #0d6efd !important;
        border: none !important;
        color: #ffffff !important;
        border-radius: 50% !important;
        width: 38px !important;
        height: 38px !important;
        box-shadow: 0 4px 10px rgba(13, 110, 253, 0.3) !important;
        cursor: pointer !important;
    }

    #slide-nav #close:hover {
        transform: scale(1.08) !important;
        background-color: #0b5ed7 !important;
    }
    
    #slide-nav #close i {
        color: #ffffff !important;
        font-size: 1.15rem !important;
    }

    #slide-nav ul.primary-menu-container,
    #slide-nav ul#primary-menu,
    header#masthead .navigation-wrap ul#primary-menu,
    #slide-nav ul#primary-menu {
        display: block !important;
        float: none !important;
        clear: both !important;
        list-style: none !important;
        padding: 0 !important;
        margin: 15px 0 0 0 !important;
        width: 100% !important;
        height: auto !important;
    }
    
    #slide-nav ul#primary-menu li,
    #slide-nav ul#primary-menu li.menu-item-has-children,
    #slide-nav ul#primary-menu li.dropdown,
    header#masthead ul#primary-menu li {
        position: relative !important;
        display: block !important;
        float: none !important;
        clear: both !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 0 5px 0 !important;
        padding: 0 !important;
        border: none !important;
        text-align: right !important;
    }
    
    #slide-nav ul#primary-menu li a {
        color: #e2e8f0 !important;
        font-size: 0.85rem !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        transition: color 0.15s ease-in-out !important;
        background: rgba(255, 255, 255, 0.03) !important;
        padding: 7px 14px !important;
        border-radius: 6px !important;
    }
    
    #slide-nav ul#primary-menu li a:hover,
    #slide-nav ul#primary-menu li.current-menu-item > a {
        color: #ffffff !important;
        background: #0d6efd !important;
    }
    
    #slide-nav ul#primary-menu li.menu-cart-item {
        display: none !important;
    }

    /* Mobile Drawer Sub-Menu Dropdown Styling - Collapsible Accordion Flow */
    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul,
    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.sub-menu,
    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.dropdown-menu,
    body header#masthead .navigation-wrap ul#primary-menu ul.sub-menu,
    body header#masthead .navigation-wrap ul#primary-menu ul.dropdown-menu,
    body header#masthead ul#primary-menu ul.sub-menu,
    body header#masthead ul#primary-menu ul.dropdown-menu,
    body header#masthead ul.sub-menu,
    body header#masthead ul.dropdown-menu,
    body #slide-nav ul.sub-menu,
    body #slide-nav ul.dropdown-menu,
    body #slide-nav .dropdown-menu,
    body #slide-nav .sub-menu,
    #slide-nav ul#primary-menu li ul.sub-menu,
    #slide-nav ul#primary-menu li ul.dropdown-menu,
    #slide-nav ul.sub-menu,
    #slide-nav ul.dropdown-menu {
        position: static !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        -webkit-transform: none !important;
        will-change: auto !important;
        float: none !important;
        clear: both !important;
        display: none; /* Hidden by default */
        visibility: visible !important;
        opacity: 1 !important;
        background: rgba(255, 255, 255, 0.06) !important;
        background-color: rgba(255, 255, 255, 0.06) !important;
        border: 1px solid rgba(255, 255, 255, 0.12) !important;
        border-radius: 6px !important;
        margin: 6px 0 6px 0 !important;
        padding: 4px 0 !important;
        box-shadow: none !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
    }

    /* Show Sub-Menu ONLY when toggled open */
    html body #slide-nav ul#primary-menu li.menu-item-has-children.mobile-open > ul.sub-menu,
    html body #slide-nav ul#primary-menu li.dropdown.mobile-open > ul.dropdown-menu,
    html body #slide-nav ul.sub-menu.mobile-open,
    html body #slide-nav ul.dropdown-menu.mobile-open,
    html body #slide-nav ul.sub-menu.show,
    html body #slide-nav ul.dropdown-menu.show,
    #slide-nav ul#primary-menu li.menu-item-has-children.mobile-open > ul.sub-menu,
    #slide-nav ul#primary-menu li.dropdown.mobile-open > ul.dropdown-menu,
    #slide-nav ul.sub-menu.mobile-open,
    #slide-nav ul.dropdown-menu.mobile-open,
    #slide-nav ul.sub-menu.show,
    #slide-nav ul.dropdown-menu.show {
        display: block !important;
        position: static !important;
        clear: both !important;
        float: none !important;
        width: 100% !important;
        height: auto !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.sub-menu li,
    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.dropdown-menu li,
    body #slide-nav ul.sub-menu li,
    body #slide-nav ul.dropdown-menu li,
    #slide-nav ul.sub-menu li,
    #slide-nav ul.dropdown-menu li {
        position: relative !important;
        display: block !important;
        float: none !important;
        clear: both !important;
        width: 100% !important;
        height: auto !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
        margin: 0 !important;
        padding: 0 !important;
        background: transparent !important;
        background-color: transparent !important;
    }

    body #slide-nav ul.sub-menu li:last-child,
    body #slide-nav ul.dropdown-menu li:last-child {
        border-bottom: none !important;
    }

    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.sub-menu li a,
    body header#masthead nav#site-navigation #slide-nav ul#primary-menu li ul.dropdown-menu li a,
    body #slide-nav ul.sub-menu li a,
    body #slide-nav ul.dropdown-menu li a,
    #slide-nav ul.sub-menu li a,
    #slide-nav ul.dropdown-menu li a {
        color: #cbd5e1 !important;
        font-size: 0.78rem !important;
        font-weight: 600 !important;
        padding: 7px 12px !important;
        display: block !important;
        text-transform: uppercase !important;
        text-decoration: none !important;
        background: transparent !important;
        background-color: transparent !important;
        text-align: right !important;
    }

    body #slide-nav ul.sub-menu li a:hover,
    body #slide-nav ul.dropdown-menu li a:hover,
    #slide-nav ul.sub-menu li a:hover,
    #slide-nav ul#primary-menu li a:hover {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
        background-color: #0d6efd !important;
        background: #0d6efd !important;
        opacity: 1 !important;
    }
}

/* Custom WooCommerce Cart Page Styling */
.page-main-heading,
.cart-page-main-title,
.checkout-page-main-title {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important;
    margin-bottom: 25px !important;
    margin-top: 15px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border-bottom: 3px solid #0d6efd !important;
    display: inline-block !important;
    padding-bottom: 8px !important;
}

.wc-page-container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.woocommerce-cart .woocommerce {
    max-width: 1200px !important;
    margin: 20px auto 50px auto !important;
    padding: 0 15px !important;
    width: 100% !important;
}

.woocommerce-cart .woocommerce table.shop_table {
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: #ffffff !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-cart .woocommerce table.shop_table th {
    background-color: #f8fafc !important;
    color: #1e293b !important;
    font-weight: 700 !important;
    font-size: 0.85rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 16px 20px !important;
    border-bottom: 2px solid #e2e8f0 !important;
}

.woocommerce-cart .woocommerce table.shop_table td {
    padding: 16px 20px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    vertical-align: middle !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-remove a.remove {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    color: #ef4444 !important;
    background: rgba(239, 68, 68, 0.1) !important;
    font-size: 1.1rem !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-remove a.remove:hover {
    background: #ef4444 !important;
    color: #ffffff !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-thumbnail img {
    width: 70px !important;
    height: auto !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-name a {
    color: #0b1322 !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    text-decoration: none !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-name a:hover {
    color: #0d6efd !important;
}

.woocommerce-cart .woocommerce table.shop_table td.product-price,
.woocommerce-cart .woocommerce table.shop_table td.product-subtotal {
    font-weight: 700 !important;
    color: #0d6efd !important;
    font-size: 1.05rem !important;
}

.woocommerce-cart .woocommerce table.shop_table td.actions {
    padding: 20px !important;
    background: #f8fafc !important;
}

.woocommerce-cart .woocommerce table.shop_table td.actions .coupon {
    display: inline-flex !important;
    align-items: center !important;
}

.woocommerce-cart .woocommerce table.shop_table td.actions .coupon input#coupon_code {
    height: 42px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px 0 0 8px !important;
    padding: 0 14px !important;
    font-size: 0.95rem !important;
    min-width: 180px !important;
}

.woocommerce-cart .woocommerce table.shop_table td.actions .coupon button[name="apply_coupon"] {
    height: 42px !important;
    background-color: #0b1322 !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    border-radius: 0 8px 8px 0 !important;
    border: none !important;
    padding: 0 20px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
}

.woocommerce-cart .woocommerce table.shop_table td.actions button[name="update_cart"] {
    height: 42px !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    border-radius: 8px !important;
    border: none !important;
    padding: 0 24px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce-cart .woocommerce .cart-collaterals {
    margin-top: 30px !important;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
    width: 100% !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 25px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals h2 {
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important;
    margin-bottom: 20px !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding-bottom: 10px !important;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table {
    box-shadow: none !important;
    border: none !important;
    margin-bottom: 25px !important;
}

.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table.shop_table tr.order-total td span.amount {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #0d6efd !important;
}

.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 1.05rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 14px 24px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 15px rgba(13, 110, 253, 0.35) !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
}

.woocommerce-cart .woocommerce .wc-proceed-to-checkout a.checkout-button:hover {
    background-color: #0b5ed7 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(13, 110, 253, 0.45) !important;
}

/* Custom WooCommerce Checkout Page Styling */
.woocommerce-checkout .woocommerce {
    max-width: 1200px !important;
    margin: 20px auto 50px auto !important;
    padding: 0 15px !important;
    width: 100% !important;
}

.woocommerce-checkout form.checkout {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
}

.woocommerce-checkout #customer_details {
    flex: 1 1 58% !important;
    max-width: 100% !important;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
    flex: 1 1 38% !important;
    max-width: 100% !important;
}

.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2 {
    width: 100% !important;
    float: none !important;
    margin-bottom: 25px !important;
}

.woocommerce-checkout h3 {
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: #0b1322 !important;
    margin-bottom: 20px !important;
    border-bottom: 2px solid #e2e8f0 !important;
    padding-bottom: 10px !important;
}

.woocommerce-checkout .form-row label {
    font-weight: 600 !important;
    color: #1e293b !important;
    font-size: 0.9rem !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    font-size: 0.95rem !important;
    color: #0f172a !important;
    background-color: #ffffff !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
    border-color: #0d6efd !important;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15) !important;
    outline: none !important;
}

.woocommerce-checkout #order_review {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 25px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-checkout #order_review table.shop_table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-bottom: 25px !important;
}

.woocommerce-checkout #order_review table.shop_table th,
.woocommerce-checkout #order_review table.shop_table td {
    padding: 12px 0 !important;
    border-bottom: 1px solid #f1f5f9 !important;
}

.woocommerce-checkout #order_review table.shop_table tr.order-total td span.amount {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #0d6efd !important;
}

.woocommerce-checkout #payment {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 20px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
    list-style: none !important;
    padding: 0 !important;
    margin-bottom: 20px !important;
}

.woocommerce-checkout #payment ul.payment_methods li {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    margin-bottom: 10px !important;
}

.woocommerce-checkout #payment #place_order {
    display: block !important;
    width: 100% !important;
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 1.1rem !important;
    text-transform: uppercase !important;
    padding: 14px 24px !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 4px 15px rgba(13, 110, 253, 0.35) !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

.woocommerce-checkout #payment #place_order:hover {
    background-color: #0b5ed7 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(13, 110, 253, 0.45) !important;
}

/* Custom Senior Mobility Service Checkout Card Design */
.custom-sms-checkout .sms-checkout-layout {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.custom-sms-checkout .sms-checkout-left {
    flex: 1 1 58% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 25px !important;
}

.custom-sms-checkout .sms-checkout-right {
    flex: 1 1 38% !important;
    max-width: 100% !important;
}

/* Card Container */
.custom-sms-checkout .sms-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 14px !important;
    padding: 28px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

/* Card Header with Icon Circle */
.custom-sms-checkout .sms-card-header {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 24px !important;
}

.custom-sms-checkout .sms-card-icon {
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.15rem !important;
    flex-shrink: 0 !important;
}

.custom-sms-checkout .sms-card-icon.icon-blue {
    background-color: #e0f2fe !important;
    color: #0284c7 !important;
}

.custom-sms-checkout .sms-card-icon.icon-yellow {
    background-color: #fef3c7 !important;
    color: #d97706 !important;
}

.custom-sms-checkout .sms-card-header-text {
    display: flex !important;
    flex-direction: column !important;
}

.custom-sms-checkout .sms-card-title {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}

.custom-sms-checkout .sms-card-subtitle {
    font-size: 0.9rem !important;
    color: #64748b !important;
    margin: 4px 0 0 0 !important;
}

/* Form Fields Layout */
.custom-sms-checkout .sms-card-body {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

.custom-sms-checkout .sms-form-grid-2 {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 16px !important;
}

@media (max-width: 768px) {
    .custom-sms-checkout .sms-form-grid-2 {
        grid-template-columns: 1fr !important;
    }
}

.custom-sms-checkout .sms-form-row {
    display: flex !important;
    flex-direction: column !important;
}

.custom-sms-checkout .sms-form-row label {
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    color: #64748b !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 6px !important;
}

.custom-sms-checkout .sms-form-row label span.required {
    color: #ef4444 !important;
}

.custom-sms-checkout .sms-form-row input.input-text,
.custom-sms-checkout .sms-form-row select {
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    padding: 12px 14px !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
}

.custom-sms-checkout .sms-form-row input.input-text::placeholder {
    color: #94a3b8 !important;
}

.custom-sms-checkout .sms-form-row input.input-text:focus,
.custom-sms-checkout .sms-form-row select:focus {
    border-color: #0d6efd !important;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15) !important;
    outline: none !important;
}

/* Order Summary Right Card */
.custom-sms-checkout .sms-summary-header {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding-bottom: 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 20px !important;
}

.custom-sms-checkout .sms-summary-header i {
    font-size: 1.2rem !important;
    color: #101f36 !important;
}

.custom-sms-checkout .sms-summary-header h3 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
    margin: 0 !important;
}

.custom-sms-checkout .sms-summary-header h3 span.item-count {
    color: #64748b !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
}

.custom-sms-checkout .sms-summary-items {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 20px !important;
}

.custom-sms-checkout .sms-summary-item {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
}

.custom-sms-checkout .sms-summary-thumb img {
    width: 60px !important;
    height: 60px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
}

.custom-sms-checkout .sms-summary-details {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

.custom-sms-checkout .sms-summary-details .product-title {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #101f36 !important;
    margin: 0 0 4px 0 !important;
}

.custom-sms-checkout .sms-summary-details .product-qty {
    font-size: 0.85rem !important;
    color: #64748b !important;
}

.custom-sms-checkout .sms-summary-price {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
}

/* Summary Totals Rows */
.custom-sms-checkout .sms-summary-totals {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding-bottom: 20px !important;
    border-bottom: 1px solid #e2e8f0 !important;
    margin-bottom: 24px !important;
}

.custom-sms-checkout .sms-total-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 0.95rem !important;
    color: #64748b !important;
}

.custom-sms-checkout .sms-total-row span.calc-note {
    font-style: italic !important;
    color: #94a3b8 !important;
}

.custom-sms-checkout .sms-total-row.sms-grand-total {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
    padding-top: 10px !important;
}

.custom-sms-checkout .sms-total-row.sms-grand-total span.total-amount {
    font-size: 1.4rem !important;
    color: #101f36 !important;
}

/* Trust Badges List */
.custom-sms-checkout .sms-trust-badges {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    margin-top: 25px !important;
    padding-top: 20px !important;
    border-top: 1px solid #f1f5f9 !important;
}

.custom-sms-checkout .sms-badge-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
}

.custom-sms-checkout .sms-badge-item .badge-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background-color: #f0f9ff !important;
    color: #0284c7 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1rem !important;
    flex-shrink: 0 !important;
}

.custom-sms-checkout .sms-badge-item .badge-text strong {
    display: block !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
    line-height: 1.3 !important;
}

.custom-sms-checkout .sms-badge-item .badge-text p {
    font-size: 0.82rem !important;
    color: #64748b !important;
    margin: 2px 0 0 0 !important;
}

/* Custom Contact Page Section Styling */
.sms-contact-section {
    background-color: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 16px !important;
    padding: 45px 40px !important;
    max-width: 1200px !important;
    width: 100% !important;
    margin: 20px auto 60px auto !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06) !important;
    box-sizing: border-box !important;
}

/* Contact Page 50/50 Grid inside Slate Card */
.sms-contact-grid {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 40px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sms-contact-grid .sms-contact-left,
.sms-contact-grid .sms-contact-right {
    flex: 0 0 calc(50% - 20px) !important;
    width: calc(50% - 20px) !important;
    max-width: calc(50% - 20px) !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
}

@media (max-width: 768px) {
    .sms-contact-section {
        padding: 25px 20px !important;
        margin: 15px auto 40px auto !important;
    }
    .sms-contact-grid {
        flex-direction: column !important;
        gap: 30px !important;
    }
    .sms-contact-grid .sms-contact-left,
    .sms-contact-grid .sms-contact-right {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}

.sms-store-title {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin-bottom: 25px !important;
    line-height: 1.2 !important;
}

.sms-contact-details {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 30px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
}

.sms-contact-details li {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    color: #334155 !important;
}

.sms-contact-details li .sms-detail-icon {
    font-size: 1.4rem !important;
    color: #0d6efd !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    background-color: #eff6ff !important;
    border-radius: 50% !important;
    flex-shrink: 0 !important;
}

.sms-contact-details li .sms-detail-text {
    line-height: 1.4 !important;
}

.sms-contact-map {
    width: 100% !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    border: 2px solid rgba(255, 255, 255, 0.4) !important;
}

.sms-contact-map iframe {
    display: block !important;
    width: 100% !important;
    height: 280px !important;
    border: none !important;
}

/* Contact Form Styling */
.sms-contact-section .wpforms-container,
.sms-contact-left .wpforms-container {
    margin: 0 !important;
}

.sms-contact-section .wpforms-field-container,
.sms-contact-left .wpforms-field-container {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

.sms-contact-section .wpforms-field,
.sms-contact-left .wpforms-field {
    padding: 0 !important;
    margin: 0 !important;
    clear: both !important;
}

.sms-contact-section .wpforms-field-label,
.sms-contact-left .wpforms-field-label {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.sms-contact-section .wpforms-field-label .wpforms-required-label,
.sms-contact-left .wpforms-field-label .wpforms-required-label {
    color: #ef4444 !important;
}

.sms-contact-section .wpforms-field input[type="text"],
.sms-contact-section .wpforms-field input[type="email"],
.sms-contact-section .wpforms-field input[type="tel"],
.sms-contact-section .wpforms-field textarea,
.sms-contact-left .wpforms-field input[type="text"],
.sms-contact-left .wpforms-field input[type="email"],
.sms-contact-left .wpforms-field input[type="tel"],
.sms-contact-left .wpforms-field textarea {
    background-color: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-size: 1rem !important;
    color: #1e293b !important;
    width: 100% !important;
    max-width: 100% !important;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.2s ease !important;
}

.sms-contact-section .wpforms-field textarea,
.sms-contact-left .wpforms-field textarea {
    height: 120px !important;
    resize: vertical !important;
}

.sms-contact-section .wpforms-field input::placeholder,
.sms-contact-section .wpforms-field textarea::placeholder,
.sms-contact-left .wpforms-field input::placeholder,
.sms-contact-left .wpforms-field textarea::placeholder {
    color: #94a3b8 !important;
}

.sms-contact-section .wpforms-field input:focus,
.sms-contact-section .wpforms-field textarea:focus,
.sms-contact-left .wpforms-field input:focus,
.sms-contact-left .wpforms-field textarea:focus {
    border-color: #0d6efd !important;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.2) !important;
    outline: none !important;
}

.sms-contact-section .wpforms-submit-container,
.sms-contact-left .wpforms-submit-container {
    padding: 0 !important;
    margin-top: 20px !important;
    text-align: right !important;
}

.sms-contact-section .wpforms-submit-container button[type="submit"],
.sms-contact-section button.sms-submit-btn,
.sms-contact-left .wpforms-submit-container button[type="submit"],
.sms-contact-left button.sms-submit-btn {
    background-color: #0d6efd !important;
    color: #ffffff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 12px 36px !important;
    border-radius: 8px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 14px rgba(13, 110, 253, 0.35) !important;
    transition: all 0.2s ease !important;
}

.sms-contact-section .wpforms-submit-container button[type="submit"]:hover,
.sms-contact-section button.sms-submit-btn:hover,
.sms-contact-left .wpforms-submit-container button[type="submit"]:hover,
.sms-contact-left button.sms-submit-btn:hover {
    background-color: #0b5ed7 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(13, 110, 253, 0.45) !important;
}

/* WPForms Success Confirmation Box Theme Colors */
.wpforms-confirmation-container-full,
.wpforms-confirmation-container,
div[id^="wpforms-confirmation-"] {
    background-color: #eff6ff !important;
    border: 1px solid #bfdbfe !important;
    border-left: 5px solid #0d6efd !important;
    border-radius: 12px !important;
    padding: 28px 32px !important;
    margin: 20px 0 !important;
    box-shadow: 0 4px 20px rgba(13, 110, 253, 0.08) !important;
}

.wpforms-confirmation-container-full p,
.wpforms-confirmation-container p,
div[id^="wpforms-confirmation-"] p {
    color: #334155 !important;
    font-size: 1rem !important;
    line-height: 1.6 !important;
    margin-bottom: 12px !important;
}

.wpforms-confirmation-container-full p:last-child,
.wpforms-confirmation-container p:last-child,
div[id^="wpforms-confirmation-"] p:last-child {
    margin-bottom: 0 !important;
}

.wpforms-confirmation-container-full strong,
.wpforms-confirmation-container strong,
.wpforms-confirmation-container-full h2,
.wpforms-confirmation-container-full h3,
div[id^="wpforms-confirmation-"] strong,
div[id^="wpforms-confirmation-"] h2 {
    color: #0b1322 !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    display: block !important;
    margin-bottom: 12px !important;
    line-height: 1.3 !important;
}

/* Green Icon Circle for Payment Preference */
.custom-sms-checkout .sms-card-icon.icon-green {
    background-color: #dcfce7 !important;
    color: #16a34a !important;
}

/* Form Controls & Select Dropdowns Refinements */
.custom-sms-checkout select,
.custom-sms-checkout select#billing_state,
.custom-sms-checkout select#billing_country,
.custom-sms-checkout select#preferred_bank,
.custom-sms-checkout select.country_to_state,
.custom-sms-checkout select.country_select,
.custom-sms-checkout select.state_select,
.custom-sms-checkout select.bank_select,
.custom-sms-checkout .select2-container--default .select2-selection--single {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 16px 16px !important;
    padding: 12px 40px 12px 14px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    line-height: 1.4 !important;
    vertical-align: middle !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: all 0.2s ease !important;
}

.custom-sms-checkout select option {
    color: #1e293b !important;
    background-color: #ffffff !important;
    padding: 8px !important;
}

.custom-sms-checkout select option[value=""] {
    color: #64748b !important;
}

.custom-sms-checkout .select2-container {
    width: 100% !important;
    height: 48px !important;
}

.custom-sms-checkout .select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 24px !important;
    padding: 11px 0 !important;
    color: #1e293b !important;
}

.custom-sms-checkout .select2-container .select2-selection--single .select2-selection__arrow {
    display: none !important;
}

.custom-sms-checkout input.input-text {
    height: 48px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 0 14px !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    width: 100% !important;
    transition: all 0.2s ease !important;
}

.custom-sms-checkout textarea.sms-textarea-address,
.custom-sms-checkout textarea.sms-textarea-notes {
    border: 1px solid #cbd5e1 !important;
    border-radius: 10px !important;
    padding: 14px 16px !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    background-color: #ffffff !important;
    width: 100% !important;
    min-height: 100px !important;
    resize: vertical !important;
    transition: all 0.2s ease !important;
}

.custom-sms-checkout select:focus,
.custom-sms-checkout input.input-text:focus,
.custom-sms-checkout textarea:focus {
    border-color: #0d6efd !important;
    box-shadow: 0 0 0 4px rgba(13, 110, 253, 0.12) !important;
    outline: none !important;
}

/* Delivery Fee Alert Box Refinement */
.custom-sms-checkout .sms-delivery-fee-box {
    background-color: #fffbeb !important;
    border: 1px solid #fef3c7 !important;
    border-left: 4px solid #f59e0b !important;
    border-radius: 10px !important;
    padding: 16px 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-top: 10px !important;
}

.custom-sms-checkout .sms-delivery-fee-box .fee-icon {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background-color: #fef3c7 !important;
    color: #d97706 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 1.1rem !important;
    flex-shrink: 0 !important;
}

.custom-sms-checkout .sms-delivery-fee-box .fee-text strong {
    display: block !important;
    font-size: 0.98rem !important;
    font-weight: 700 !important;
    color: #92400e !important;
    margin-bottom: 2px !important;
}

.custom-sms-checkout .sms-delivery-fee-box .fee-text p {
    font-size: 0.88rem !important;
    color: #78350f !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

/* How It Works Card */
.custom-sms-checkout .sms-card-howitworks {
    background-color: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 20px 24px !important;
}

.custom-sms-checkout .sms-how-header {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    color: #101f36 !important;
    margin-bottom: 8px !important;
}

.custom-sms-checkout .sms-how-header i {
    font-size: 1.1rem !important;
    color: #64748b !important;
}

.custom-sms-checkout .sms-how-text {
    font-size: 0.92rem !important;
    color: #475569 !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.custom-sms-checkout .sms-how-text strong {
    color: #0f172a !important;
}

/* Submit Secure Order Button Container */
.custom-sms-checkout .sms-submit-container {
    margin-top: 10px !important;
}

.custom-sms-checkout button.sms-btn-submit-order,
.custom-sms-checkout button#place_order {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    background-color: #0b1a30 !important;
    color: #ffffff !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    padding: 16px 24px !important;
    border-radius: 8px !important;
    border: none !important;
    cursor: pointer !important;
    box-shadow: 0 4px 15px rgba(11, 26, 48, 0.35) !important;
    transition: all 0.2s ease !important;
}

.custom-sms-checkout button.sms-btn-submit-order:hover,
.custom-sms-checkout button#place_order:hover {
    background-color: #0d6efd !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(13, 110, 253, 0.45) !important;
}

/* Reduced Height Copyright Bar */
footer.footer-copyrights,
.footer-copyrights {
    padding: 10px 0 !important;
    min-height: auto !important;
    background-color: #050a12 !important;
}

footer.footer-copyrights .site-info,
.footer-copyrights .site-info {
    padding: 0 !important;
    margin: 0 !important;
    font-size: 0.88rem !important;
    line-height: 1.3 !important;
    color: #94a3b8 !important;
}

footer.footer-copyrights .container,
footer.footer-copyrights .row,
footer.footer-copyrights .col-md-12 {
    margin: 0 auto !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}




/* Reduce Copyright Bar Height */
.site-info, .copyright-bar, .copyright, footer .site-info, .footer-copyright, #colophon .site-info, .bottom-footer, .footer-bottom, .copy-right { padding-top: 10px !important; padding-bottom: 10px !important; min-height: auto !important; margin: 0 !important; }
.site-info p, .footer-copyright p, .copy-right p { margin: 0 !important; padding: 0 !important; line-height: 1.4 !important; }

/* Back to Top Button - Position Close to Right Edge */
a.page-scroll-up,
.page-scroll-up {
    position: fixed !important;
    right: 15px !important;
    bottom: 20px !important;
    z-index: 99999 !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    a.page-scroll-up,
    .page-scroll-up {
        right: 12px !important;
        bottom: 15px !important;
        width: 38px !important;
        height: 38px !important;
        line-height: 38px !important;
    }
}
