﻿@import url("https://fonts.googleapis.com/css2?family=Lexend+Deca:wght@100..900&display=swap");
:root {
    --theme-color: #374868;
    --theme-color2: #FFD54F;
}
    body {
    font-family: "Lexend Deca", sans-serif;
    overflow-x: hidden !important;
    font-size: 0.9375rem;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: var(--bs-font-sans-serif);
    font-weight: 500;
}

::-moz-selection {
    background: rgba(239, 94, 43, 0.9);
    color: #ffffff;
}

::selection {
    background: rgba(239, 94, 43, 0.9);
    color: #ffffff;
}

a {
    text-decoration: none !important;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

p {
    line-height: 1.6;
}

.text-sm {
    font-size: 0.87890625rem;
}

.text-xs {
    font-size: 0.75rem;
}

.text-10px {
    font-size: 10px;
}

.text-8px {
    font-size: 8px;
}

.text-6px {
    font-size: 6px;
}

.color-orange
{
    color:#ef5e2b;
}

.bg-st
{
    background:#f2f3f3 !important;
}

.bg-soft-white {
    background: #e4e4e4 !important;
}

#topnav {
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    z-index: 999;
    background-color: transparent;
    border: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

    #topnav .logo {
        float: left;
        color: #3c4858 !important;
    }

        #topnav .logo .l-dark,
        #topnav .logo .logo-dark-mode {
            display: none;
        }

        #topnav .logo .l-light,
        #topnav .logo .logo-light-mode {
            display: inline-block;
        }

        #topnav .logo:focus {
            outline: none;
        }

    #topnav .has-submenu.active a {
        color: #ffffff;
    }

    #topnav .has-submenu.active .submenu li.active > a {
        color: #ef5e2b !important;
    }

    #topnav .has-submenu.active.active .menu-arrow {
        border-color: transparent #ef5e2b #ef5e2b transparent;
    }

    #topnav #navigation.toggle-menu {
        position: relative;
        display: block;
        top: 0;
        border: none;
    }

        #topnav #navigation.toggle-menu .toggle-menu-item {
            display: block;
        }

            #topnav #navigation.toggle-menu .toggle-menu-item > li {
                float: none;
                margin: 0 16px !important;
                text-align: center;
            }

                #topnav #navigation.toggle-menu .toggle-menu-item > li > a {
                    padding: 16px 0;
                    min-height: auto;
                    font-size: 18px;
                }

    #topnav .has-submenu {
        position: relative;
    }

        #topnav .has-submenu .submenu {
            position: relative;
        }

            #topnav .has-submenu .submenu .submenu-arrow {
                border-radius: 2px;
                -webkit-box-sizing: border-box;
                box-sizing: border-box;
                border: 3px solid #3c4858;
                border-color: transparent #3c4858 #3c4858 transparent;
                -webkit-transform-origin: 0 0;
                transform-origin: 0 0;
                display: inline-block;
                -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
                position: absolute;
                right: 20px;
                top: 18px;
            }

            #topnav .has-submenu .submenu .has-submenu .submenu .has-submenu:hover .submenu-arrow {
                border-color: transparent #ef5e2b #ef5e2b transparent;
            }

            #topnav .has-submenu .submenu .has-submenu:hover > .submenu-arrow {
                border-color: transparent #ef5e2b #ef5e2b transparent;
            }

    #topnav .navbar-toggle {
        border: 0;
        position: relative;
        padding: 0;
        margin: 0;
        cursor: pointer;
    }

        #topnav .navbar-toggle .lines {
            width: 25px;
            display: block;
            position: relative;
            margin: 30px 0 26px 10px;
            height: 18px;
        }

        #topnav .navbar-toggle span {
            height: 2px;
            width: 100%;
            background-color: #3c4858;
            display: block;
            margin-bottom: 5px;
            -webkit-transition: -webkit-transform 0.5s ease;
            transition: -webkit-transform 0.5s ease;
            transition: transform 0.5s ease;
            transition: transform 0.5s ease, -webkit-transform 0.5s ease;
        }

            #topnav .navbar-toggle span:last-child {
                margin-bottom: 0;
            }

    #topnav .buy-button {
        float: right;
        line-height: 74px;
    }

        #topnav .buy-button > li {
            line-height: initial;
        }

        #topnav .buy-button .login-btn-primary,
        #topnav .buy-button .btn-icon-dark {
            display: none;
        }

        #topnav .buy-button .login-btn-light,
        #topnav .buy-button .btn-icon-light {
            display: inline-block;
        }

        #topnav .buy-button .search-bar .menu-search form {
            position: relative;
        }

        #topnav .buy-button .search-bar .searchform input[type=text] {
            -webkit-box-shadow: none;
            box-shadow: none;
            padding: 10px 12px;
            height: 44px;
            font-size: 14px;
            display: block;
            outline: none !important;
            padding-right: 45px;
        }

        #topnav .buy-button .search-bar .searchform input[type=submit] {
            display: none;
        }

        #topnav .buy-button .search-bar .searchform:after {
            content: "\f0349";
            position: absolute;
            font-family: "Material Design Icons";
            right: 14px;
            top: 14px;
            font-size: 20px;
            line-height: 20px;
            pointer-events: none;
        }

        #topnav .buy-button .dropdown .dropdown-toggle:after,
        #topnav .buy-menu-btn .dropdown .dropdown-toggle:after {
            display: none;
        }

    #topnav .navbar-toggle.open span {
        position: absolute;
    }

        #topnav .navbar-toggle.open span:first-child {
            top: 6px;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
        }

        #topnav .navbar-toggle.open span:nth-child(2) {
            visibility: hidden;
        }

        #topnav .navbar-toggle.open span:last-child {
            width: 100%;
            top: 6px;
            -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
        }

        #topnav .navbar-toggle.open span:hover {
            background-color: #ef5e2b;
        }

    #topnav .navbar-toggle:hover, #topnav .navbar-toggle:focus,
    #topnav .navbar-toggle .navigation-menu > li > a:hover, #topnav .navbar-toggle:focus {
        background-color: transparent;
    }

    #topnav .navigation-menu {
        list-style: none;
        margin: 0;
        padding: 0;
    }

        #topnav .navigation-menu > li {
            float: left;
            display: block;
            position: relative;
            margin: 0 10px;
        }

            #topnav .navigation-menu > li:hover > a, #topnav .navigation-menu > li.active > a {
                color: #ef5e2b !important;
            }

            #topnav .navigation-menu > li > a {
                display: block;
                color: #3c4858;
                font-size: 12px;
                background-color: transparent !important;
                font-weight: 400;
                letter-spacing: 1px;
                line-height: 24px;
                text-transform: uppercase;
                font-family: var(--bs-font-sans-serif);
                padding-left: 12px;
                padding-right: 12px;
            }

                #topnav .navigation-menu > li > a:hover, #topnav .navigation-menu > li > a:active {
                    color: #ef5e2b;
                }

            #topnav .navigation-menu > li .submenu li a {
                font-weight: 400;
                font-size: 12px;
                letter-spacing: 0.04em;
                text-transform: uppercase;
                color: #3c4858 !important;
            }

            #topnav .navigation-menu > li .submenu.megamenu li .megamenu-head {
                padding: 10px 20px;
                white-space: nowrap;
                font-size: 12px;
                text-transform: uppercase;
                letter-spacing: 0.04em;
                font-weight: 500;
                color: #161c2d !important;
            }

        #topnav .navigation-menu .has-submenu .menu-arrow {
            border-radius: 2px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            border: 3px solid #3c4858;
            border-color: transparent #3c4858 #3c4858 transparent;
            -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
            display: inline-block;
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            position: absolute;
            -webkit-transition: all 0.5s;
            transition: all 0.5s;
            right: -2px;
            top: 30px;
        }

    #topnav .menu-extras {
        float: right;
    }

    #topnav.scroll {
        background-color: #ffffff;
        border: none;
        -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    }

        #topnav.scroll .navigation-menu > li > a {
            color: #3c4858;
        }

        #topnav.scroll .navigation-menu > li > .menu-arrow {
            border-color: transparent #3c4858 #3c4858 transparent;
        }

        #topnav.scroll .navigation-menu > li:hover > a, #topnav.scroll .navigation-menu > li.active > a {
            color: #ef5e2b;
        }

        #topnav.scroll .navigation-menu > li:hover > .menu-arrow, #topnav.scroll .navigation-menu > li.active > .menu-arrow {
            border-color: transparent #ef5e2b #ef5e2b transparent;
        }

    #topnav.defaultscroll.dark-menubar .logo {
        line-height: 70px;
    }

    #topnav.defaultscroll.scroll .logo {
        line-height: 62px;
    }

    #topnav.defaultscroll.scroll.dark-menubar .logo {
        line-height: 62px;
    }

    #topnav.nav-sticky {
        background: #fff;
        -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    }

        #topnav.nav-sticky .navigation-menu.nav-light > li > a {
            color: #3c4858;
        }

        #topnav.nav-sticky .navigation-menu.nav-light > li.active > a {
            color: #ef5e2b !important;
        }

        #topnav.nav-sticky .navigation-menu.nav-light > li:hover > .menu-arrow, #topnav.nav-sticky .navigation-menu.nav-light > li.active > .menu-arrow {
            border-color: transparent #ef5e2b #ef5e2b transparent !important;
        }

        #topnav.nav-sticky .navigation-menu.nav-light > li:hover > a, #topnav.nav-sticky .navigation-menu.nav-light > li.active > a {
            color: #ef5e2b !important;
        }

        #topnav.nav-sticky .navigation-menu.nav-light .has-submenu .menu-arrow {
            border-color: transparent #3c4858 #3c4858 transparent;
        }

        #topnav.nav-sticky.tagline-height {
            top: 0 !important;
        }

        #topnav.nav-sticky .buy-button .login-btn-primary,
        #topnav.nav-sticky .buy-button .btn-icon-dark {
            display: inline-block;
        }

        #topnav.nav-sticky .buy-button .login-btn-light,
        #topnav.nav-sticky .buy-button .btn-icon-light {
            display: none;
        }

        #topnav.nav-sticky .logo .l-dark {
            display: inline-block;
        }

        #topnav.nav-sticky .logo .l-light {
            display: none;
        }

.logo .logo-name {
    font-weight: 600;
    font-size: 24px;
    margin-right: 15px;
    padding: 0 0 6px;
    letter-spacing: 1px;
    line-height: 68px;
}

@media (min-width: 1025px) {
    #topnav .navigation-menu > li .submenu.megamenu {
        width: 1116px !important;
    }
}

@media screen and (max-width: 1024px) and (min-width: 992px) {
    #topnav .navigation-menu > li .submenu.megamenu {
        width: 936px !important;
    }
}

@media (min-width: 992px) {
    #topnav .navigation-menu {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

        #topnav .navigation-menu > li .submenu {
            position: absolute;
            top: 100%;
            left: 0;
            z-index: 1000;
            padding: 15px 0;
            list-style: none;
            min-width: 180px;
            visibility: hidden;
            opacity: 0;
            margin-top: 10px;
            -webkit-transition: all 0.2s ease;
            transition: all 0.2s ease;
            border-radius: 6px;
            background-color: #fff;
            -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
            box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        }

            #topnav .navigation-menu > li .submenu li {
                position: relative;
            }

                #topnav .navigation-menu > li .submenu li a {
                    display: block;
                    padding: 10px 20px;
                    clear: both;
                    white-space: nowrap;
                    -webkit-transition: all 0.3s;
                    transition: all 0.3s;
                }

                    #topnav .navigation-menu > li .submenu li a:hover {
                        color: #ef5e2b !important;
                    }

                #topnav .navigation-menu > li .submenu li ul {
                    list-style: none;
                    padding-left: 0;
                    margin: 0;
                }

            #topnav .navigation-menu > li .submenu.megamenu {
                white-space: nowrap;
                left: 50%;
                -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
                position: fixed;
                top: auto;
                display: -webkit-box;
                display: -ms-flexbox;
                display: flex;
            }

                #topnav .navigation-menu > li .submenu.megamenu > li {
                    overflow: hidden;
                    vertical-align: top;
                    width: 20%;
                }

                    #topnav .navigation-menu > li .submenu.megamenu > li .submenu {
                        left: 100%;
                        top: 0;
                        margin-left: 10px;
                        margin-top: -1px;
                    }

            #topnav .navigation-menu > li .submenu > li .submenu {
                left: 101%;
                top: 0;
                margin-left: 10px;
                margin-top: -1px;
            }

        #topnav .navigation-menu > li > a {
            padding-top: 25px;
            padding-bottom: 25px;
            min-height: 62px;
        }

        #topnav .navigation-menu > li:hover > .menu-arrow {
            border-color: transparent #ef5e2b #ef5e2b transparent;
        }

        #topnav .navigation-menu > li:hover > a, #topnav .navigation-menu > li.active > a {
            color: #ef5e2b !important;
        }

        #topnav .navigation-menu > li.last-elements .submenu {
            left: auto;
            right: 0;
        }

            #topnav .navigation-menu > li.last-elements .submenu:before {
                left: auto;
                right: 10px;
            }

            #topnav .navigation-menu > li.last-elements .submenu > li.has-submenu .submenu {
                left: auto;
                right: 100%;
                margin-left: 0;
                margin-right: 10px;
            }

        #topnav .navigation-menu.nav-light > li > a {
            color: rgba(255, 255, 255, 0.5);
        }

        #topnav .navigation-menu.nav-light > li.active > a {
            color: #ffffff !important;
        }

        #topnav .navigation-menu.nav-light > li:hover > .menu-arrow {
            border-color: transparent #ffffff #ffffff transparent !important;
        }

        #topnav .navigation-menu.nav-light > li:hover > a {
            color: #ffffff !important;
        }

        #topnav .navigation-menu.nav-light .has-submenu .menu-arrow {
            border-color: transparent rgba(255, 255, 255, 0.5) rgba(255, 255, 255, 0.5) transparent;
        }

        #topnav .navigation-menu.nav-light .has-submenu.active .menu-arrow {
            border-color: transparent #ffffff #ffffff transparent !important;
        }

        #topnav .navigation-menu.nav-right {
            -webkit-box-pack: end !important;
            -ms-flex-pack: end !important;
            justify-content: flex-end !important;
        }

            #topnav .navigation-menu.nav-right > li:last-child {
                margin-right: 0;
            }

            #topnav .navigation-menu.nav-right > li > a:last-child {
                padding-right: 0;
            }

        #topnav .navigation-menu.nav-left {
            -webkit-box-pack: start !important;
            -ms-flex-pack: start !important;
            justify-content: flex-start !important;
        }

            #topnav .navigation-menu.nav-left > li.last-elements .submenu {
                left: 0 !important;
                right: auto !important;
            }

                #topnav .navigation-menu.nav-left > li.last-elements .submenu:before {
                    left: 45px !important;
                    right: auto !important;
                }

    #topnav .buy-button {
        padding-left: 15px;
        margin-left: 15px;
    }

    #topnav .navbar-toggle {
        display: none;
    }

    #topnav #navigation {
        display: block !important;
    }

    #topnav.scroll {
        top: 0;
    }

        #topnav.scroll .navigation-menu > li > a {
            padding-top: 20px;
            padding-bottom: 20px;
        }

    #topnav.scroll-active .navigation-menu > li > a {
        padding-top: 25px;
        padding-bottom: 25px;
    }
}

@media (max-width: 991px) {
    #topnav {
        background-color: #fff;
        -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        min-height: 74px;
    }

        #topnav .logo .l-dark {
            display: inline-block !important;
        }

        #topnav .logo .l-light {
            display: none !important;
        }

        #topnav .container {
            width: auto;
        }

        #topnav #navigation {
            max-height: 400px;
        }

        #topnav .navigation-menu {
            float: none;
        }

            #topnav .navigation-menu > li {
                float: none;
            }

                #topnav .navigation-menu > li .submenu {
                    display: none;
                    list-style: none;
                    padding-left: 20px;
                    margin: 0;
                }

                    #topnav .navigation-menu > li .submenu li a {
                        display: block;
                        position: relative;
                        padding: 7px 15px;
                    }

                    #topnav .navigation-menu > li .submenu.megamenu li .megamenu-head {
                        padding: 7px 15px;
                    }

                    #topnav .navigation-menu > li .submenu.open {
                        display: block;
                    }

                    #topnav .navigation-menu > li .submenu .submenu {
                        display: none;
                        list-style: none;
                    }

                        #topnav .navigation-menu > li .submenu .submenu.open {
                            display: block;
                        }

                    #topnav .navigation-menu > li .submenu.megamenu > li > ul {
                        list-style: none;
                        padding-left: 0;
                    }

                        #topnav .navigation-menu > li .submenu.megamenu > li > ul > li > span {
                            display: block;
                            position: relative;
                            padding: 10px 15px;
                            text-transform: uppercase;
                            font-size: 12px;
                            letter-spacing: 2px;
                            color: #8492a6;
                        }

                #topnav .navigation-menu > li > a {
                    color: #3c4858;
                    padding: 10px 20px;
                }

                    #topnav .navigation-menu > li > a:after {
                        position: absolute;
                        right: 15px;
                    }

                    #topnav .navigation-menu > li > a:hover,
                    #topnav .navigation-menu > li .submenu li a:hover,
                    #topnav .navigation-menu > li.has-submenu.open > a {
                        color: #ef5e2b;
                    }

        #topnav .menu-extras .menu-item {
            border-color: #8492a6;
        }

        #topnav .navbar-header {
            float: left;
        }

        #topnav .buy-button .login-btn-primary,
        #topnav .buy-button .btn-icon-dark {
            display: inline-block !important;
        }

        #topnav .buy-button .login-btn-light,
        #topnav .buy-button .btn-icon-light {
            display: none;
        }

        #topnav .has-submenu .submenu .submenu-arrow {
            -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
            position: absolute;
            right: 20px;
            top: 12px;
        }

        #topnav .has-submenu.active a {
            color: #ef5e2b;
        }

    #navigation {
        position: absolute;
        top: 74px;
        left: 0;
        width: 100%;
        display: none;
        height: auto;
        padding-bottom: 0;
        overflow: auto;
        border-top: 1px solid rgb(240.86, 244.9, 248.94);
        border-bottom: 1px solid rgb(240.86, 244.9, 248.94);
        background-color: #fff;
        -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
        box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    }

        #navigation.open {
            display: block;
            overflow-y: auto;
        }
}

@media (max-width: 768px) {
    #topnav .navigation-menu .has-submenu .menu-arrow {
        right: 8px;
        top: 16px;
    }
}

@media (min-width: 768px) {
    #topnav .navigation-menu > li.has-submenu:hover > .submenu {
        visibility: visible;
        opacity: 1;
        margin-top: 0;
    }

        #topnav .navigation-menu > li.has-submenu:hover > .submenu > li.has-submenu:hover > .submenu {
            visibility: visible;
            opacity: 1;
            margin-left: 0;
            margin-right: 0;
        }

            #topnav .navigation-menu > li.has-submenu:hover > .submenu > li.has-submenu:hover > .submenu > li:hover > .submenu {
                visibility: visible;
                opacity: 1;
                margin-left: 0;
                margin-right: 0;
            }

    .navbar-toggle {
        display: block;
    }
}

@media (max-width: 425px) {
    #topnav .buy-menu-btn {
        display: block !important;
        margin: 0 10px;
        padding: 10px 20px;
    }

        #topnav .buy-menu-btn .dropdown .dropdown-menu.show {
            -webkit-transform: translate3d(0px, -54px, 0px) !important;
            transform: translate3d(0px, -54px, 0px) !important;
        }
}

.tagline {
    position: absolute;
    width: 100%;
    z-index: 99;
    font-size: 14px;
    padding: 13px 0;
}

@media screen and (max-width: 575px) {
    .tagline {
        display: none;
    }
}

@media screen and (max-width: 575px) {
    .tagline-height {
        top: 0px !important;
    }
}

@media (min-width: 576px) {
    .tagline-height {
        top: 47px !important;
    }
}

.sidebar-nav > .navbar-item {
    padding: 5px 0;
}

    .sidebar-nav > .navbar-item .navbar-link {
        color: #3c4858 !important;
        font-size: 15px;
        font-weight: 500;
    }

        .sidebar-nav > .navbar-item .navbar-link .navbar-icon {
            font-size: 18px;
            margin-right: 6px;
        }

    .sidebar-nav > .navbar-item:hover .navbar-link, .sidebar-nav > .navbar-item.active .navbar-link {
        color: #ef5e2b !important;
    }

#navmenu-nav li.active a {
    color: #ef5e2b !important;
}

#navmenu-nav li.account-menu.active .navbar-link, #navmenu-nav li.account-menu:hover .navbar-link {
    color: #ffffff !important;
    background-color: #ef5e2b !important;
}

.navbar-white-bg {
    background-color: #fff !important;
}

.footer {
    background: #000;
    position: relative;
    color: #adb5bd;
}

    .footer .footer-py-60 {
        padding: 60px 0;
    }

    .footer .footer-py-30 {
        padding: 30px 0;
    }

    .footer .logo-footer {
        font-size: 22px;
    }

        .footer .logo-footer:focus {
            outline: none;
        }

    .footer .footer-head {
        letter-spacing: 1px;
        font-weight: 500;
        color: #fff;
    }

    .footer .foot-subscribe .form-control {
        background-color: rgb(38.7462686567, 49.3134328358, 79.2537313433);
        border: 1px solid rgb(38.7462686567, 49.3134328358, 79.2537313433);
        color: #dee2e6 !important;
    }

        .footer .foot-subscribe .form-control:focus {
            -webkit-box-shadow: none;
            box-shadow: none;
        }

    .footer .foot-subscribe.foot-white .form-control {
        color: #adb5bd;
    }

    .footer .foot-subscribe input::-webkit-input-placeholder {
        color: #adb5bd;
    }

    .footer .foot-subscribe input::-moz-placeholder {
        color: #adb5bd;
    }

    .footer .foot-subscribe input:-ms-input-placeholder {
        color: #adb5bd;
    }

    .footer .foot-subscribe input::-ms-input-placeholder {
        color: #adb5bd;
    }

    .footer .foot-subscribe input::placeholder {
        color: #adb5bd;
    }

    .footer .text-foot {
        color: #adb5bd;
    }

    .footer .footer-list {
        margin-bottom: 0;
    }

        .footer .footer-list li {
            margin-bottom: 10px;
        }

            .footer .footer-list li a {
                -webkit-transition: all 0.5s ease;
                transition: all 0.5s ease;
            }

                .footer .footer-list li a:hover {
                    color: rgb(229.5135135135, 232, 234.4864864865);
                }

            .footer .footer-list li:last-child {
                margin-bottom: 0;
            }

    .footer .footer-border,
    .footer .footer-bar {
        border-top: 1px solid rgb(40.3265306122, 51.6683673469, 83.1734693878);
    }

    .footer .border {
        border-color: rgb(40.3265306122, 51.6683673469, 83.1734693878) !important;
    }

    .footer.footer-light {
        background: #f8fafc;
        color: #8492a6;
    }

        .footer.footer-light .footer-head {
            color: #3c4858;
        }

        .footer.footer-light .foot-subscribe .form-control {
            background-color: #f8fafc;
            border: 1px solid #e9ecef;
            color: #f8fafc;
        }

        .footer.footer-light .foot-subscribe.foot-white .form-control {
            color: #adb5bd;
        }

        .footer.footer-light .foot-subscribe input::-webkit-input-placeholder {
            color: #adb5bd;
        }

        .footer.footer-light .foot-subscribe input::-moz-placeholder {
            color: #adb5bd;
        }

        .footer.footer-light .foot-subscribe input:-ms-input-placeholder {
            color: #adb5bd;
        }

        .footer.footer-light .foot-subscribe input::-ms-input-placeholder {
            color: #adb5bd;
        }

        .footer.footer-light .foot-subscribe input::placeholder {
            color: #adb5bd;
        }

        .footer.footer-light .border {
            border-color: #e9ecef !important;
        }

        .footer.footer-light .text-foot {
            color: #8492a6;
        }

        .footer.footer-light .footer-list li a:hover {
            color: #495057;
        }

.avatar.avatar-coin, .avatar.avatar-sm-sm {
    height: 36px;
    width: 36px;
}

.avatar.avatar-ex-sm {
    max-height: 25px;
}

.avatar.avatar-ex-small {
    height: 36px;
    width: 36px;
}

.avatar.avatar-md-sm {
    height: 45px;
    width: 45px;
}

.avatar.avatar-small {
    height: 65px;
    width: 65px;
}

.avatar.avatar-md-md {
    height: 80px;
    width: 80px;
}

.avatar.avatar-medium {
    height: 110px;
    width: 110px;
}

.avatar.avatar-large {
    height: 140px;
    width: 140px;
}

.avatar.avatar-ex-large {
    height: 180px;
    width: 180px;
}

.avatar.avatar-extra {
    height: 200px;
    width: 200px;
}

.accordion .accordion-item {
    overflow: hidden;
    border: 0;
    -webkit-box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
    box-shadow: 0 0 3px rgba(60, 72, 88, 0.15);
}

    .accordion .accordion-item .accordion-body {
        font-size: 15px;
    }

    .accordion .accordion-item .accordion-button {
        font-weight: 500;
        text-align: left;
        -webkit-box-shadow: none;
        box-shadow: none;
        padding: 1rem 2.5rem 1rem 1.25rem;
    }

        .accordion .accordion-item .accordion-button:focus {
            -webkit-box-shadow: none;
            box-shadow: none;
        }

        .accordion .accordion-item .accordion-button:before {
            content: "\f0360";
            display: block;
            font-family: "Material Design Icons";
            font-size: 20px;
            color: #ef5e2b;
            position: absolute;
            right: 20px;
            top: 50%;
            -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
            -webkit-transition: all 0.5s ease;
            transition: all 0.5s ease;
        }

        .accordion .accordion-item .accordion-button.collapsed {
            background-color: #ffffff;
            color: #3c4858 !important;
            -webkit-transition: all 0.5s;
            transition: all 0.5s;
        }

            .accordion .accordion-item .accordion-button.collapsed:before {
                top: 15px;
                -webkit-transform: rotate(180deg);
                transform: rotate(180deg);
                color: #3c4858 !important;
            }

        .accordion .accordion-item .accordion-button:not(.collapsed) {
            color: #ef5e2b;
        }

        .accordion .accordion-item .accordion-button:after {
            display: none;
        }

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(45deg, #ffffff, #ffffff);
    z-index: 9999999;
}

    #preloader #status {
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

        #preloader #status .spinner {
            width: 40px;
            height: 40px;
            position: relative;
            margin: 100px auto;
        }

            #preloader #status .spinner .double-bounce1, #preloader #status .spinner .double-bounce2 {
                width: 100%;
                height: 100%;
                border-radius: 50%;
                background-color: #ef5e2b;
                opacity: 0.6;
                position: absolute;
                top: 0;
                left: 0;
                -webkit-animation: sk-bounce 2s infinite ease-in-out;
                animation: sk-bounce 2s infinite ease-in-out;
            }

            #preloader #status .spinner .double-bounce2 {
                -webkit-animation-delay: -1s;
                animation-delay: -1s;
            }

@-webkit-keyframes sk-bounce {
    0%, 100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes sk-bounce {
    0%, 100% {
        -webkit-transform: scale(0);
        transform: scale(0);
    }

    50% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

.form-label,
.form-check-label {
    font-weight: 700;
    font-size: 14px;
}

.form-control {
    border: 1px solid #e9ecef;
    font-size: 14px;
    line-height: 26px;
    border-radius: 6px;
    color: #3c4858 !important;
    text-align: left;
}

    .form-control:focus {
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    .form-control[readonly] {
        background-color: #ffffff;
    }

    .form-control:disabled {
        background-color: #dee2e6;
    }

    .form-control::-webkit-input-placeholder {
        color: #a0aab4;
    }

    .form-control::-moz-placeholder {
        color: #a0aab4;
    }

    .form-control:-ms-input-placeholder {
        color: #a0aab4;
    }

    .form-control::-ms-input-placeholder {
        color: #a0aab4;
    }

    .form-control::placeholder {
        color: #a0aab4;
    }

.form-check-input {
    border: 1px solid #e9ecef;
    background-color: var(--bs-body-bg);
}

    .form-check-input:focus {
        border-color: #ef5e2b;
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    .form-check-input.form-check-input:checked {
        background-color: #ef5e2b;
        border-color: #ef5e2b;
    }

.subcribe-form .btn {
    padding: 10px 20px;
}

.subcribe-form input {
    padding: 12px 20px;
    width: 100%;
    color: #3c4858 !important;
    border: none;
    outline: none !important;
    padding-right: 160px;
    padding-left: 30px;
    background-color: rgba(255, 255, 255, 0.8);
    height: 50px;
}

    .subcribe-form input::-webkit-input-placeholder {
        color: #a0aab4;
    }

    .subcribe-form input::-moz-placeholder {
        color: #a0aab4;
    }

    .subcribe-form input:-ms-input-placeholder {
        color: #a0aab4;
    }

    .subcribe-form input::-ms-input-placeholder {
        color: #a0aab4;
    }

    .subcribe-form input::placeholder {
        color: #a0aab4;
    }

    .subcribe-form input.form-control {
        padding: 10px 16px 10px 30px;
        height: 44px;
    }

.subcribe-form button {
    position: absolute;
    top: 3px;
    right: 3px;
    outline: none !important;
}

.subcribe-form form {
    position: relative;
    max-width: 600px;
    margin: 0px auto;
}

.subcribe-form .form-icon .icons {
    position: absolute;
    top: 9px;
    left: 20px;
}


.blog .title:hover,
.blog .author:hover {
    color: #ef5e2b !important;
}

.tagcloud a {
    background: #f8f9fa;
    font-size: 13px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

    .tagcloud a:hover {
        background: #ef5e2b;
        color: #ffffff !important;
    }

.search-bar .menu-search form {
    position: relative;
}

.search-bar .searchform input[type=text] {
    -webkit-box-shadow: none;
    box-shadow: none;
    padding: 10px 12px;
    height: 44px;
    font-size: 15px;
    display: block;
    outline: none !important;
    padding-right: 45px;
}

.search-bar .searchform input[type=submit] {
    display: none;
}

.search-bar .searchform .icons {
    position: absolute;
    right: 14px;
    top: 10px;
    height: 16px;
    width: 16px;
    pointer-events: none;
}

.msusibox-card {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

    .msusibox-card .msusibox-name:hover,
    .msusibox-card .dish-name:hover {
        color: #ef5e2b !important;
    }

    .msusibox-card:hover {
        -webkit-box-shadow: 0 5px 13px rgba(60, 72, 88, 0.2) !important;
        box-shadow: 0 5px 13px rgba(60, 72, 88, 0.2) !important;
    }

.food-categories .categoty-name:hover {
    color: #ef5e2b !important;
}

.error {
    margin: 8px 0px;
    display: none;
    color: #ef4444;
}

#ajaxsuccess {
    font-size: 16px;
    width: 100%;
    display: none;
    clear: both;
    margin: 8px 0px;
}

.error_message,
#success_page {
    padding: 10px;
    margin-bottom: 20px;
    text-align: center;
    border-radius: 5px;
}

.error_message {
    background-color: rgba(240, 115, 90, 0.1) !important;
    border: 2px solid rgba(240, 115, 90, 0.1) !important;
    color: #f0735a !important;
    font-size: 14px;
}

.contact-loader {
    display: none;
}

#success_page {
    background-color: rgba(83, 199, 151, 0.1) !important;
    border: 2px solid rgba(83, 199, 151, 0.1) !important;
    color: #53c797 !important;
}

    #success_page p {
        margin-bottom: 0 !important;
    }

.map {
    line-height: 0;
}

    .map.map-gray {
        -webkit-filter: grayscale(100%);
        filter: grayscale(100%);
    }

        .map.map-gray iframe {
            height: 100vh;
        }

    .map iframe {
        width: 100%;
        height: 500px;
    }

    .map.map-100vh iframe {
        height: 100vh;
    }

#countdown .count-down {
    display: inline-block;
    margin: 30px 10px 10px;
    color: #ffffff;
    text-align: center;
}

    #countdown .count-down .count-number {
        font-size: 48px;
        width: 120px;
        font-weight: 600;
    }

    #countdown .count-down .count-head {
        display: block;
        position: relative;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px);
        text-transform: uppercase;
        font-size: 12px;
        letter-spacing: 1px;
        font-weight: 600;
        margin-bottom: 0;
        margin-top: 12px;
    }

#maintenance {
    color: #ffffff;
    font-size: 48px;
    font-weight: 600;
    letter-spacing: 1px;
}

    #maintenance .indicator {
        font-size: 18px;
    }

.bg-cta {
    padding: 150px 0;
}

.play-btn {
    height: 78px;
    width: 78px;
    font-size: 30px;
    line-height: 76px;
    border-radius: 50%;
    display: inline-block;
    color: #ffffff;
}

.play-icon i {
    height: 75px;
    width: 75px;
    color: #ef5e2b;
    font-size: 25px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

    .play-icon i:hover {
        color: #ffffff !important;
        background-color: #ef5e2b;
    }

@media (max-width: 767px) {
    iframe {
        width: auto !important;
    }
}

.features .icon {
    height: 64px;
    width: 64px;
}

.bg-home {
    height: 100vh;
    background-size: cover !important;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    background-position: center center;
}

.bg-auth {
    height: 100vh;
    background-size: cover !important;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    background-position: center center;
}

@media (max-width: 767px) {
    .bg-auth {
        height: auto;
    }
}

.bg-half-260 {
    padding: 260px 0;
    background-size: cover !important;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    background-position: center center;
}

.bg-half-170 {
    padding: 50px 0;
    background-size: cover !important;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    background-position: center center;
}

.bg-half {
    padding: 200px 0 100px;
    background-size: cover !important;
    -ms-flex-item-align: center;
    align-self: center;
    position: relative;
    background-position: center center;
}

@media (max-width: 768px) {
    .bg-half {
        padding: 160px 0 60px;
    }
}

@media (max-width: 575.98px) {
    .bg-half-170 {
        padding: 60px 0;
    }
}

.swiper-slider-hero .swiper-slide .slide-inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.swiper-slider-hero .swiper-button-prev,
.swiper-slider-hero .swiper-button-next {
    background: transparent;
    width: 35px;
    height: 35px;
    line-height: 35px;
    margin-top: -30px;
}

    .swiper-slider-hero .swiper-button-prev:hover,
    .swiper-slider-hero .swiper-button-next:hover {
        background: #ef5e2b;
        border-color: #ef5e2b !important;
    }

.swiper-slider-hero .swiper-button-prev {
    left: 10px;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

.swiper-slider-hero .swiper-button-next {
    right: 10px;
    border: 1px solid rgba(255, 255, 255, 0.5);
}

    .swiper-slider-hero .swiper-button-next:after,
    .swiper-slider-hero .swiper-rtl .swiper-button-prev:after,
    .swiper-slider-hero .swiper-button-prev:after,
    .swiper-slider-hero .swiper-rtl .swiper-button-next:after {
        display: none;
    }

.swiper-slider-hero .swiper-pagination-bullet {
    color: #f8f9fa;
    background: transparent;
}

.swiper-slider-hero .swiper-pagination-bullet-active {
    color: #ffffff;
}

.swiper-slider-hero .swiper-container-horizontal > .swiper-pagination-bullets,
.swiper-slider-hero .swiper-pagination-custom,
.swiper-slider-hero .swiper-pagination-fraction {
    bottom: 45px;
}

    .swiper-slider-hero .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
        margin: 0 13px;
    }

@media (max-width: 767px) {
    .bg-home, .bg-half-170, .bg-half-260, .bg-marketing, .swiper-slider-hero .swiper-slide {
        padding: 30px 0;
        height: auto;
    }
}

.client-testi {
    cursor: e-resize;
}

    .client-testi .client-image {
        margin-right: 16px;
    }

    .client-testi .content:before {
        content: "";
        position: absolute;
        top: 30px;
        left: 0;
        margin-left: 13px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        border: 8px solid #3c4858;
        border-color: transparent #fff #fff transparent;
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        -webkit-box-shadow: 2px 2px 2px -1px rgba(60, 72, 88, 0.15);
        box-shadow: 2px 2px 2px -1px rgba(60, 72, 88, 0.15);
    }

.tns-nav {
    text-align: center;
    margin-top: 10px;
}

    .tns-nav button {
        border: 4px solid rgba(239, 94, 43, 0.5) !important;
        border-radius: 2px;
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
        border: none;
        margin: 0 3px;
        padding: 1px;
    }

        .tns-nav button.tns-nav-active {
            border-color: #ef5e2b !important;
        }

.tns-controls button[data-controls=prev],
.tns-controls button[data-controls=next] {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 16px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #ffffff;
    color: #3c4858;
    border: none;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    z-index: 1;
    -webkit-box-shadow: 0 10px 25px rgba(60, 72, 88, 0.15);
    box-shadow: 0 10px 25px rgba(60, 72, 88, 0.15);
}

    .tns-controls button[data-controls=prev]:hover,
    .tns-controls button[data-controls=next]:hover {
        background: #ef5e2b;
        color: #ffffff;
    }

.tns-controls button[data-controls=prev] {
    left: 0;
}

.tns-controls button[data-controls=next] {
    right: 0;
}

.tobii > button.tobii__close svg,
.tobii > button.tobii__prev svg,
.tobii > button.tobii__next svg {
    height: 36px !important;
    width: auto;
}

.tobii__counter {
    font-size: 16px;
}

.tobii-zoom {
    display: block !important;
}

.tobii-zoom__icon {
    display: none;
}

#grid {
    padding: 0 !important;
}

@media (max-width: 640px) {
    [data-type] iframe, [data-type] video {
        width: 500px;
        height: 300px;
    }
}

@media (max-width: 425px) {
    [data-type] iframe, [data-type] video {
        width: 360px;
        height: 260px;
    }
}

@media (max-width: 375px) {
    [data-type] iframe, [data-type] video {
        width: 100%;
        height: auto;
    }
}

.section {
    padding: 100px 0;
    position: relative;
}

@media (max-width: 768px) {
    .section {
        padding: 60px 0;
    }
}

.section-two {
    padding: 60px 0;
    position: relative;
}

.bg-overlay {
    background-color: rgba(15, 23, 42, 0.7);
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.bg-linear-gradient-3 {
    background: -webkit-gradient(linear, left top, right top, from(black), color-stop(25%, black), color-stop(50%, black), color-stop(75%, rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
    background: linear-gradient(to right, black 0%, black 25%, black 50%, rgba(0, 0, 0, 0.5) 75%, rgba(0, 0, 0, 0) 100%);
}

.title-heading {
    line-height: 26px;
}

    .title-heading .heading {
        letter-spacing: 1px;
    }

    .title-heading .para-desc {
        font-size: 17px;
    }

.section-title .title {
    letter-spacing: 0.5px;
}

.text-shadow-title {
    text-shadow: 2px 0 0 #ffffff, -2px 0 0 #ffffff, 0 4px 0 rgba(255, 255, 255, 0.4), 0 -2px 0 #ffffff, 1px 1px #ffffff, -1px -1px 0 #ffffff, 1px -1px 0 #ffffff, -1px 1px 0 #ffffff;
}

.para-desc {
    max-width: 600px;
}

.mt-100 {
    margin-top: 100px;
}

.position-middle-bottom {
    position: absolute;
    bottom: 15px;
    left: 12px;
    right: 12px;
    text-align: center;
}

.mover {
    -webkit-animation: mover 1s infinite alternate;
    animation: mover 1s infinite alternate;
}

@-webkit-keyframes mover {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(5px);
        transform: translateY(5px);
    }
}

@keyframes mover {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }

    100% {
        -webkit-transform: translateY(5px);
        transform: translateY(5px);
    }
}

.rounded {
    border-radius: 6px !important;
}

.rounded-top {
    border-top-left-radius: 6px !important;
    border-top-right-radius: 6px !important;
}

.rounded-left {
    border-top-left-radius: 6px !important;
    border-bottom-left-radius: 6px !important;
}

.rounded-bottom {
    border-bottom-left-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

.rounded-right {
    border-top-right-radius: 6px !important;
    border-bottom-right-radius: 6px !important;
}

.rounded-md {
    border-radius: 10px !important;
}

.rounded-lg {
    border-radius: 30px !important;
}

.border-primary {
    border-color: #ef5e2b !important;
}

.border-secondary {
    border-color: #6c757d !important;
}

.border-success {
    border-color: #10b981 !important;
}

.border-info {
    border-color: #17a2b8 !important;
}

.border-warning {
    border-color: #f59e0b !important;
}

.border-danger {
    border-color: #ef4444 !important;
}

.border-light {
    border-color: #f8fafc !important;
}

.border-dark {
    border-color: #3c4858 !important;
}

.border-muted {
    border-color: #8492a6 !important;
}

.border-white-50 {
    border-color: rgba(255, 255, 255, 0.2) !important;
}

.opacity-05 {
    opacity: 0.05;
}

.opacity-075 {
    opacity: 0.075;
}

.opacity-1 {
    opacity: 0.1;
}

.opacity-2 {
    opacity: 0.2;
}

.opacity-3 {
    opacity: 0.3;
}

.opacity-4 {
    opacity: 0.4;
}

.opacity-5 {
    opacity: 0.5;
}

.opacity-6 {
    opacity: 0.6;
}

.opacity-7 {
    opacity: 0.7;
}

.opacity-8 {
    opacity: 0.8;
}

.opacity-9 {
    opacity: 0.9;
}

.z-index-1 {
    z-index: 1;
}

.z-index-0 {
    z-index: 0;
}

.z-index-m-1 {
    z-index: -1;
}

.back-to-top {
    position: fixed;
    z-index: 99;
    bottom: 30px;
    right: 30px;
    display: none;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    height: 30px;
    width: 30px;
    line-height: 27px;
    border-radius: 6px;
    text-align: center;
    background: #ef5e2b;
    color: #fff !important;
}

    .back-to-top .icons {
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;
    }

.sticky-bar {
    position: sticky;
    top: 80px;
}

.text-color-white {
    color: #fff !important;
}

.d-flex .flex-1 {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.saluni-features .category-title {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: 20px;
    z-index: 1;
}

.saluni-list .saluni-image .overlay-work,
.saluni-list .saluni-image .saluni-icons {
    position: absolute;
    opacity: 0;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.saluni-list .saluni-image .overlay-work {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}

    .saluni-list .saluni-image .overlay-work .out-stock {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
    }

.saluni-list .saluni-image .saluni-icons {
    top: 15px;
    right: 15px;
    z-index: 2;
}

.saluni-list .saluni-image:hover .overlay-work,
.saluni-list .saluni-image:hover .saluni-icons {
    opacity: 1;
}

.saluni-list .content .product-name {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

    .saluni-list .content .product-name:hover {
        color: #ef5e2b !important;
    }

.saluni-list .label {
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 2;
}

.saluni-list .qty-btn {
    pointer-events: none;
    width: 65px;
    padding-left: 15px;
}

.mt-74 {
    margin-top: 74px;
}

.tag-suggestion-custom {
    background: rgba(30, 34, 44, 0.92);
    color: #fff;
    font-size: 1rem;
    font-weight: 500;
    border-radius: 50px;
    margin: 0.25rem;
    cursor: pointer;
    transition: background 0.2s, color 0.2s, border 0.2s, box-shadow 0.2s;
    letter-spacing: 0.01em;
    border-width: 1.5px;
    padding: 0.5rem 1rem !important;
    min-width: 50px;
    text-align: center;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

    .tag-suggestion-custom:hover {
        background: #fff;
        color: #222;
        border-color: #007bff;
        box-shadow: 0 4px 24px 0 rgba(0,123,255,0.15);
    }

    .tag-suggestion-custom i {
        vertical-align: middle;
        font-size: 1.5rem;
    }

/* Responsive styles for mobile devices */
@media (max-width: 576px) {
    .tag-suggestion-custom {
        font-size: 0.8rem;
        min-width: 50px;
        margin: 0.15rem;
    }

        .tag-suggestion-custom i {
            font-size: 1rem;
            margin-right: 0.5rem !important;
        }
}

.msusi-details-main,
.modern-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: stretch;
    background: #fff;
    border-radius: 1.5rem;
    box-shadow: 0 4px 24px rgba(44,62,80,0.10);
    padding: 2.5rem 2rem 2rem 2rem;
    margin-bottom: 2.5rem;
    transition: box-shadow 0.2s, transform 0.2s;
}

    .msusi-details-main:hover,
    .modern-card:hover {
        box-shadow: 0 8px 32px rgba(44,62,80,0.15);
        transform: translateY(-4px) scale(1.01);
    }

    .msusi-details-main .d-flex {
        gap: 2rem;
    }

.msusi-logo-box {
    background: #f8fafc;
    border-radius: 1rem;
    box-shadow: 0 2px 12px rgba(44,62,80,0.07);
    padding: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    max-width: 200px;
}

.msusi-logo-img {
    max-height: 350px;
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 2px 8px rgba(44,62,80,0.08);
    object-fit: contain;
    padding: 0.5rem;
}

.msusi-details-contact {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.contact-row {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    font-size: 1.08rem;
    color: #374868;
}

.contact-icon {
    color: #ef5e2b;
    font-size: 1.2rem;
    flex-shrink: 0;
}

.contact-link {
    color: #ef5e2b;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.18s;
}

    .contact-link:hover {
        color: #218c5b;
        text-decoration: underline;
    }

.btn-modern-cta {
    background: linear-gradient(90deg, #ef5e2b 0%, #1db86b 100%);
    color: #fff !important;
    font-weight: 600;
    font-size: 1.1rem;
    border-radius: 2rem;
    box-shadow: 0 2px 8px rgba(0,125,58,0.10);
    padding: 0.9rem 1.5rem;
    border: none;
    transition: background 0.2s, box-shadow 0.2s;
}

    .btn-modern-cta:hover, .btn-modern-cta:focus {
        background: linear-gradient(90deg, #1db86b 0%, #ef5e2b 100%);
        color: #fff !important;
        box-shadow: 0 4px 16px rgba(0,125,58,0.15);
    }

.msusi-details-title {
    font-size: 1.6rem;
    font-weight: 700;
    color: #ef5e2b;
    margin-bottom: 1.5rem;
    letter-spacing: 0.01em;
}

@media (max-width: 991.98px) {
    .msusi-details-main,
    .modern-card {
        padding: 1.2rem 0.7rem;
    }

    .msusi-logo-box {
        min-width: 120px;
        max-width: 150px;
        padding: 0.4rem;
    }

    /*.msusi-logo-img {
        max-width: 120px;
        max-height: 120px;
    }*/

    .msusi-details-main .d-flex {
        flex-direction: column !important;
        gap: 1.2rem;
    }
}

.msusi-details-thumbnails {
    display: flex;
    flex-wrap: wrap;
    gap: 1.2rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    padding: 0;
    list-style: none;
}

.msusi-details-thumb {
    width: 110px;
    height: 80px;
    object-fit: cover;
    border-radius: 0.5rem;
    box-shadow: 0 1px 6px rgba(30,70,40,0.08);
    border: 2px solid #e9f5ed;
    background: #fff;
    transition: transform 0.18s, box-shadow 0.18s, border-color 0.18s;
    cursor: pointer;
    display: block;
}

    .msusi-details-thumb:hover {
        transform: scale(1.06);
        box-shadow: 0 4px 16px rgba(30,70,40,0.13);
        border-color: #c9e3d5;
    }

@media (max-width: 575.98px) {
    .msusi-details-thumbnails {
        gap: 0.6rem;
    }

    .msusi-details-thumb {
        width: 80px;
        height: 60px;
    }
}


.msusi-header {
    color: #fff;
    display: flex;
    align-items: center;
    min-height: 320px;
    background: url('/Media/Images/wasusi4.jpg') center center/cover no-repeat;
    width: 100%;
    position: relative;
}

    .msusi-header::before {
        content: "";
        position: absolute;
        inset: 0;
        background: rgba(0, 0, 0, 0.4); 
        z-index: 1;
        pointer-events: none;
    }

    .msusi-header .container,
    .msusi-header h1,
    .msusi-header p.lead {
        position: relative;
        z-index: 2;
    }

    .msusi-header .container {
        text-align: center;
        padding-top: 3rem;
        padding-bottom: 3rem;
    }

    .msusi-header h1 {
        font-size: 2.5rem;
        font-weight: 700;
        text-shadow: 0 2px 8px rgba(0,0,0,0.4);
        margin-bottom: 1.2rem;
    }

    .msusi-header p.lead {
        font-size: 1.25rem;
        text-shadow: 0 1px 4px rgba(0,0,0,0.3);
        margin-bottom: 0;
    }

@media (max-width: 991.98px) {
    .msusi-header {
        min-height: 220px;
    }

        .msusi-header h1 {
            font-size: 2rem;
        }

        .msusi-header .container {
            padding-top: 2rem;
            padding-bottom: 2rem;
        }

        .msusi-header p.lead {
            font-size: 1.1rem;
        }
}

@media (max-width: 575.98px) {
    .msusi-header {
        min-height: 140px;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }

        .msusi-header h1 {
            font-size: 1.2rem;
            margin-bottom: 0.7rem;
        }

        .msusi-header .container {
            padding-top: 1rem;
            padding-bottom: 1rem;
        }

        .msusi-header p.lead {
            font-size: 0.98rem;
        }

    .msusi-side-col {
        padding: 0.5rem;
    }
}

/* ── Home page additions ─────────────────────────────────────────────── */

.mt-60 { margin-top: 60px; }

@media (max-width: 575.98px) {
    .mt-60  { margin-top: 30px; }
    .mt-100 { margin-top: 60px; }
}

/* section header badges */
.badge-bora {
    background: linear-gradient(135deg, #f59e0b 0%, #ef5e2b 100%);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 600;
}

.badge-new {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 600;
}

.badge-just-joined {
    background: rgba(255, 127, 0,0.8);
    backdrop-filter: blur(4px);
    color: #fff;
    font-size: 0.7rem;
    border: 1px solid rgba(255,255,255,0.3);
}

.badge-rating {
    background: rgba(0,0,0,0.55);
    backdrop-filter: blur(4px);
    color: #fff;
    font-size: 0.72rem;
}

/* category chips on home cards */
.cat-chip-warm {
    background: rgba(245,158,11,0.12);
    color: #b45309;
    border: 1px solid rgba(245,158,11,0.25);
    font-size: 0.7rem;
}

.cat-chip-cool {
    background: rgba(99,102,241,0.10);
    color: #4338ca;
    border: 1px solid rgba(99,102,241,0.22);
    font-size: 0.7rem;
}

/* card image overlay */
.card-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,.65) 0%, rgba(0,0,0,.15) 50%, transparent 100%);
    pointer-events: none;
}

.msusibox-name-overlay { text-shadow: 0 1px 4px rgba(0,0,0,.55); }

/* home-card image: uniform square height */
.home-card .msusibox-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

@media (max-width: 575.98px) {
    .home-card .msusibox-img {
        height: 170px;
    }
}

/* hair-style grid: hide items 7–10 on mobile, show on md+ */
.hair-style-desktop-only { display: none; }

@media (min-width: 768px) {
    .hair-style-desktop-only { display: block; }
}

/* ── Search panel ────────────────────────────────────────────────────── */
.search-panel-full {
    background: #eef4fb;
    border-top: 1px solid #dce8f5;
    border-bottom: 1px solid #dce8f5;
    padding: 1.25rem 0;
    width: 100%;
}

.search-group {
    display: flex;
    align-items: center;
    border: 1.5px solid #c8ddf2;
    border-radius: 3rem;
    background: #fff;
    overflow: hidden;
    width: 100%;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.search-group:focus-within {
    border-color: #ef5e2b;
    box-shadow: 0 0 0 3px rgba(239, 94, 43, 0.10);
}

.search-field {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 140px;
}

.search-field-grow {
    flex: 1 1 0;
    min-width: 180px;
}

.search-field-icon {
    position: absolute;
    left: 14px;
    color: #8492a6;
    font-size: 1rem;
    pointer-events: none;
    z-index: 2;
}

.search-field-input {
    width: 100%;
    height: 52px;
    border: none;
    outline: none;
    background: transparent;
    padding: 0 1rem 0 2.5rem;
    font-size: 0.9375rem;
    color: #3c4858;
    appearance: none;
    -webkit-appearance: none;
}

.search-field-input::placeholder { color: #8492a6; }
.search-field-input:focus        { box-shadow: none; }

.search-divider {
    width: 1px;
    height: 28px;
    background: #c8ddf2;
    flex-shrink: 0;
}

.search-submit-btn {
    flex-shrink: 0;
    height: 52px;
    padding: 0 1.6rem;
    border: none;
    border-radius: 0 3rem 3rem 0;
    background: #ef5e2b;
    color: #fff;
    font-size: 0.9375rem;
    font-weight: 500;
    white-space: nowrap;
    cursor: pointer;
    transition: background 0.2s;
}

.search-submit-btn:hover { background: #d44e1e; }

/* ── Category chips ──────────────────────────────────────────────────── */
.category-filter-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.category-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.3rem 0.9rem;
    border-radius: 2rem;
    border: 1.5px solid #c8ddf2;
    background: #fff;
    color: #3c4858;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    transition: border-color 0.15s, background 0.15s, color 0.15s;
}

.category-chip input[type="checkbox"] { display: none; }

.category-chip:hover         { border-color: #ef5e2b; color: #ef5e2b; }
.category-chip--active       { background: #ef5e2b; border-color: #ef5e2b; color: #fff; }
.category-chip--active:hover { background: #d44e1e; border-color: #d44e1e; color: #fff; }

.category-chip-clear {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.35rem 1rem;
    border-radius: 2rem;
    border: 1.5px solid #f5c6b0;
    background: #fff5f1;
    color: #ef5e2b;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.15s, border-color 0.15s, color 0.15s;
    margin-left: auto;
}

.category-chip-clear:hover { background: #ef5e2b; border-color: #ef5e2b; color: #fff; }

/* ── Results meta bar ────────────────────────────────────────────────── */
.results-meta-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.75rem 0 0.5rem;
    border-bottom: 1px solid #e9ecef;
    margin-bottom: 1.25rem;
}

.results-count { font-size: 0.9rem; }

/* ── Sort bar ────────────────────────────────────────────────────────── */
.sort-bar {
    display: flex;
    align-items: center;
}

.sort-form-group {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border: 1.5px solid #c8ddf2;
    background: #fff;
    padding: 0 0.75rem 0 0;
    height: 36px;
}

.sort-form-group:focus-within {
    border-color: #ef5e2b;
    box-shadow: 0 0 0 3px rgba(239, 94, 43, 0.10);
}

.sort-label {
    font-size: 0.875rem;
    color: #6c757d;
    white-space: nowrap;
    margin: 0;
    background: #f0f3f7;
    padding: 0 0.65rem 0 0.85rem;
    border-right: 1.5px solid #c8ddf2;
    margin-right: 0.5rem;
    align-self: stretch;
    display: inline-flex;
    align-items: center;
}

.sort-select {
    height: 100%;
    min-width: 180px;
    padding: 0 2rem 0 0.5rem;
    border: none;
    border-radius: 0;
    background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%238492a6' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") no-repeat right 0.1rem center;
    background-size: 1rem;
    color: #3c4858;
    font-size: 0.8125rem;
    font-weight: 500;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    outline: none;
}

.sort-select option {
    padding: 0.35rem 0.5rem;
    border-bottom: 1px solid #e9ecef;
}

@media (max-width: 575.98px) {
    .search-panel-full { padding: 1rem 0; }

    .search-group {
        flex-direction: column;
        border-radius: 1rem;
        align-items: stretch;
    }

    .search-field,
    .search-field-grow {
        min-width: 0;
        width: 100%;
    }

    .search-divider { width: 100%; height: 1px; }

    .search-submit-btn {
        border-radius: 0 0 1rem 1rem;
        width: 100%;
    }

    .category-chip-clear   { margin-left: 0; }
    .results-meta-bar      { flex-direction: column; align-items: flex-start; }
}

/* ── Hero heading responsive font sizes ──────────────────────────────── */
.fs-hero {
    font-size: 2.8rem;
}

@media (max-width: 991.98px) {
    .fs-hero {
        font-size: 2.2rem;
    }
}

@media (max-width: 767.98px) {
    .fs-hero {
        font-size: 1.8rem;
    }
}

@media (max-width: 575.98px) {
    .fs-hero {
        font-size: 1.4rem;
    }
}

/* ── Details page (Views/Wasusi/Details.cshtml) ──────────────────────── */

.details-hero-section {
    margin-top: 100px;
    background: linear-gradient(rgba(15,15,15,0.62), rgba(15,15,15,0.62)),
                url('/media/Images/header-bg-1.jpg') center/cover no-repeat;
    color: #fff;
    padding: 3.24rem 1rem 2.268rem 1rem;
    text-align: center;
    border-radius: 0 0 2rem 2rem;
}

.details-hero-section h1 {
    font-size: 1.555rem;
    text-shadow: 0 2px 8px rgba(0,0,0,0.55);
    letter-spacing: 0.01em;
}

.details-hero-section .lead {
    font-size: 0.713rem;
    text-shadow: 0 1px 4px rgba(0,0,0,0.45);
}

.details-hero-logo-wrap {
    display: inline-block;
    border-radius: 50%;
    padding: 4px;
    background: rgba(255,255,255,0.15);
    backdrop-filter: blur(4px);
    box-shadow: 0 4px 20px rgba(0,0,0,0.35);
    margin-bottom: 1.25rem;
}

.details-msusi-card {
    background: #fff;
    border-radius: 1.5rem;
    box-shadow: 0 2px 16px rgba(0,0,0,0.07);
    padding: 2rem;
    margin-bottom: 2rem;
}

.details-msusi-logo-img {
    width: 200px;
    height: 200px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #dee2e6;
    margin-bottom: 1rem;
}

.details-section-divider {
    border: none;
    border-top: 1.5px solid #e9ecef;
    margin: 1.75rem 0;
}

.details-section-heading {
    color: #49494d;
    font-weight: 600;
    font-size: 1.625rem;
}

.details-btn-booking {
    display: inline-flex;
    align-items: center;
    background: #ef5e2b;
    color: #fff !important;
    font-weight: 600;
    font-size: 1rem;
    border-radius: 2rem;
    padding: 0.65rem 1.75rem;
    border: none;
    text-decoration: none;
    transition: background 0.2s, box-shadow 0.2s;
}

.details-btn-booking:hover,
.details-btn-booking:focus {
    background: #d44e1e;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(239, 94, 43, 0.35);
}

.details-contact-list {
    list-style: none;
    padding: 0;
    margin: 0 0 1rem 0;
}

.details-contact-list li {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
    font-size: 1rem;
    color: #3c4858;
}

.details-contact-list i {
    color: #6c757d;
    margin-right: 0.75rem;
    font-size: 1.1rem;
    width: 1.2rem;
    text-align: center;
}

.details-social-networks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-bottom: 1.25rem;
}

.details-social-network-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.35rem 0.85rem;
    border-radius: 2rem;
    background: #eef4ff;
    border: 1px solid #c7dcfd;
    color: #3a5a9a;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: background 0.2s, box-shadow 0.2s, transform 0.15s;
}

.details-social-network-badge:hover {
    background: #daeaff;
    box-shadow: 0 2px 8px rgba(59,130,246,0.15);
    transform: translateY(-2px);
    color: #1e3a6e;
}

.details-social-network-badge i,
.details-social-network-badge svg {
    font-size: 1rem;
}

.details-gallery-bg {
    background: #f8f9fa;
    border-radius: 1rem;
    padding: 1.25rem;
    border: 1px solid #dee2e6;
}

.details-gallery-thumbnails {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.details-gallery-thumbnails a {
    display: block;
    width: 130px;
    height: 130px;
    border-radius: 0.65rem;
    overflow: hidden;
    box-shadow: 0 2px 6px rgba(0,0,0,0.10);
    transition: transform 0.2s, box-shadow 0.2s;
    border: 2px solid #fff;
}

.details-gallery-thumbnails a:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
}

.details-gallery-thumbnails img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.details-address-block {
    padding: 1rem 1.25rem;
    color: #414142;
}

.details-sidebar {
    position: sticky;
   /* top: 2rem;*/
}

@media (max-width: 991px) {
    .details-sidebar {
        position: static;
        margin-top: 2rem;
    }
}

@media (max-width: 767px) {
    .details-hero-section {
        margin-top: 70px;
        padding: 3rem 1rem 2.5rem 1rem;
        border-radius: 0 0 1.25rem 1.25rem;
    }

    .details-hero-section h1 {
        font-size: 1.35rem;
    }

    .details-hero-section .lead {
        font-size: 0.88rem;
    }

    .details-msusi-logo-img {
        width: 120px;
        height: 120px;
    }

    .details-msusi-card {
        padding: 1.25rem 1rem;
        border-radius: 1rem;
    }

    .details-section-heading {
        font-size: 1.125rem;
    }

    .details-contact-list li {
        font-size: 0.92rem;
    }

    .details-social-network-badge {
        font-size: 0.78rem;
        padding: 0.28rem 0.65rem;
    }

    .details-gallery-thumbnails a {
        width: 110px;
        height: 110px;
    }

    .details-btn-booking {
        font-size: 0.92rem;
        padding: 0.5rem 1.4rem;
    }

    .details-gallery-bg {
        padding: 0.85rem;
    }

    .details-address-block {
        padding: 0.75rem 0.85rem;
        font-size: 0.92rem;
    }
}

@media (max-width: 480px) {
    .details-hero-section {
        margin-top: 60px;
        padding: 2.5rem 0.75rem 2rem 0.75rem;
        border-radius: 0 0 1rem 1rem;
    }

    .details-hero-section h1 {
        font-size: 1.1rem;
    }

    .details-msusi-logo-img {
        width: 90px;
        height: 90px;
        border-width: 2px;
    }

    .details-msusi-card {
        padding: 1rem 0.75rem;
        border-radius: 0.75rem;
    }

    .details-section-heading {
        font-size: 1rem;
    }

    .details-social-networks {
        gap: 0.4rem;
    }

    .details-social-network-badge {
        font-size: 0.75rem;
        padding: 0.25rem 0.55rem;
        gap: 0.3rem;
    }

    .details-social-network-badge i,
    .details-social-network-badge svg {
        font-size: 0.85rem;
    }

    .details-gallery-thumbnails {
        gap: 0.5rem;
    }

    .details-gallery-thumbnails a {
        width: 90px;
        height: 90px;
        border-radius: 0.45rem;
    }

    .details-btn-booking {
        font-size: 0.88rem;
        padding: 0.45rem 1.1rem;
        letter-spacing: 0;
    }

    .details-section-divider {
        margin: 1.25rem 0;
    }
}

/* ── Details page colour enhancements ───────────────────── */

/* Breadcrumb bar — warm tint */
.details-breadcrumb-bar {
    background: linear-gradient(90deg, #fff5f1 0%, #f8fafc 100%);
    border-bottom: 1px solid #f5cfc3;
    padding: 0.6rem 0;
}

/* ── dv2 colour tokens ───────────────────────────────────── */
.bg-orange-soft  { background: rgba(239,94,43,0.10); }
.bg-purple-soft  { background: rgba(124,58,237,0.10); }
.bg-green-soft   { background: rgba(16,185,129,0.10); }
.bg-blue-soft    { background: rgba(59,130,246,0.10); }
.bg-teal-soft    { background: rgba(20,184,166,0.10); }

.text-orange { color: #ef5e2b !important; }
.text-purple { color: #7c3aed !important; }
.text-green  { color: #10b981 !important; }
.text-blue   { color: #3b82f6 !important; }
.text-teal   { color: #14b8a6 !important; }

/* ── generic card ───────────────────────────────────────── */
.dv2-card {
    background: #fff;
    border-radius: 1.25rem;
    box-shadow: 0 2px 18px rgba(0,0,0,0.06);
    padding: 1.75rem;
    transition: box-shadow 0.2s;
}

/* ── card header ────────────────────────────────────────── */
.dv2-card-header {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    padding-bottom: 0.9rem;
    border-bottom: 1.5px solid #f1f5f9;
}

.dv2-card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 0.65rem;
    flex-shrink: 0;
    font-size: 1.1rem;
}

.dv2-card-title {
    font-size: 1.05rem;
    font-weight: 600;
    color: #374868;
    margin: 0;
}

.dv2-photo-count {
    font-size: 0.8rem;
    color: #8492a6;
    font-weight: 500;
}

/* ── service chips ──────────────────────────────────────── */
.dv2-service-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.dv2-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.28rem 0.8rem;
    border-radius: 2rem;
    background: rgba(239,94,43,0.08);
    color: #c44113;
    font-size: 0.8rem;
    font-weight: 500;
    border: 1px solid rgba(239,94,43,0.18);
}

/* ── description ────────────────────────────────────────── */
.dv2-description {
    font-size: 0.9375rem;
    line-height: 1.75;
}

/* ── gallery grid ───────────────────────────────────────── */
.dv2-gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 0.65rem;
}

.dv2-gallery-item {
    position: relative;
    display: block;
    border-radius: 0.65rem;
    overflow: hidden;
    aspect-ratio: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s, box-shadow 0.2s;
}

.dv2-gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s;
}

.dv2-gallery-item:hover {
    transform: scale(1.03);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

.dv2-gallery-item:hover img {
    transform: scale(1.06);
}

.dv2-gallery-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.38);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    opacity: 0;
    transition: opacity 0.2s;
}

.dv2-gallery-item:hover .dv2-gallery-overlay {
    opacity: 1;
}

@media (max-width: 575.98px) {
    .dv2-gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(90px, 1fr));
        gap: 0.45rem;
    }
}

/* ── CTA banner ─────────────────────────────────────────── */
.dv2-cta-banner {
    background: linear-gradient(135deg, #ef5e2b 0%, #f59e0b 100%);
    border-radius: 1.25rem;
    padding: 1.5rem 1.75rem;
    color: #fff;
}

.dv2-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.dv2-cta-headline {
    font-size: 1.05rem;
    font-weight: 700;
    color: #fff;
}

.dv2-cta-sub {
    font-size: 0.875rem;
    color: rgba(255,255,255,0.85);
}

.dv2-cta-btn {
    display: inline-flex;
    align-items: center;
    background: #fff;
    color: #ef5e2b !important;
    font-weight: 600;
    font-size: 0.9rem;
    border-radius: 2rem;
    padding: 0.6rem 1.4rem;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.2s, box-shadow 0.2s;
    flex-shrink: 0;
}

.dv2-cta-btn:hover {
    background: #fff5f1;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* ── contact grid ───────────────────────────────────────── */
.dv2-contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
    margin-bottom: 0.5rem;
}

@media (max-width: 575.98px) {
    .dv2-contact-grid {
        grid-template-columns: 1fr;
    }
}

.dv2-address-block {
    background: linear-gradient(90deg, #fff5f1 0%, #f8fafc 100%);
    border-radius: 0.75rem;
    padding: 1rem 1.1rem;
    border-left: 3px solid #ef5e2b;
}

.dv2-address-label {
    font-size: 0.8rem;
    font-weight: 600;
    color: #8492a6;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
}

.dv2-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dv2-contact-item {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.45rem 0;
    font-size: 0.9rem;
    color: #3c4858;
}

.dv2-contact-item + .dv2-contact-item {
    border-top: 1px solid #f1f5f9;
}

.dv2-contact-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 0.5rem;
    flex-shrink: 0;
    font-size: 0.9rem;
}

/* ── social badges ──────────────────────────────────────── */
.dv2-social-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.dv2-social-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.3rem 0.8rem;
    border-radius: 2rem;
    background: #f1f5f9;
    color: #374868;
    font-size: 0.82rem;
    font-weight: 500;
    transition: background 0.15s, color 0.15s;
}

.dv2-social-badge:hover {
    background: #374868;
    color: #fff;
}

/* ── sidebar cards ──────────────────────────────────────── */
.dv2-sidebar-card {
    background: #fff;
    border-radius: 1.25rem;
    box-shadow: 0 2px 18px rgba(0,0,0,0.06);
    padding: 1.25rem 1.35rem;
}

.dv2-sidebar-card-header {
    display: flex;
    align-items: center;
    font-size: 0.95rem;
    font-weight: 600;
    color: #374868;
    border-bottom: 1.5px solid #f1f5f9;
}

.dv2-sidebar-card-header .text-orange { color: #ef5e2b !important; }
.dv2-sidebar-card-header .text-green  { color: #10b981 !important; }
.dv2-sidebar-card-header .text-blue   { color: #3b82f6 !important; }

/* ── advert card ────────────────────────────────────────── */
.dv2-advert-card {
    position: relative;
}

.dv2-advert-badge {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    background: #f59e0b;
    color: #fff;
    font-size: 0.68rem;
    font-weight: 700;
    padding: 0.15rem 0.5rem;
    border-radius: 1rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.dv2-advert-img {
    width: 100%;
    border-radius: 0.65rem;
    object-fit: cover;
    max-height: 160px;
}

.dv2-advert-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dv2-advert-list li {
    font-size: 0.875rem;
    color: #3c4858;
    padding: 0.2rem 0;
}

.dv2-advert-contact {
    font-size: 0.82rem;
    color: #6c757d;
}

.dv2-advert-contact-row {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
}

.booking-header {
    background: linear-gradient(135deg, #f5f7fa 0%, #e8eaf6 100%);
    border-radius: 1rem 1rem 0 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
    padding: 2.5rem 1rem 1.5rem 1rem;
    text-align: center;
    margin-bottom: -1.5rem;
}

.booking-card {
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);
    background: #fff;
}

.booking-avatar {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #e8eaf6;
    box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

.booking-label {
    font-weight: 600;
    color: #3f51b5;
}

.booking-contact-icon {
    color: #3f51b5;
    margin-right: 0.5rem;
}

.booking-btn-main {
    background: linear-gradient(90deg, #3f51b5 0%, #5c6bc0 100%);
    border: none;
    color: #fff;
    font-weight: 600;
    transition: background 0.2s;
}

    .booking-btn-main:hover {
        background: linear-gradient(90deg, #283593 0%, #5c6bc0 100%);
    }

.booking-btn-back {
    border: 1px solid #c5cae9;
    color: #3f51b5;
    font-weight: 500;
}

    .booking-btn-back:hover {
        background: #e8eaf6;
    }