/*
Template Name: Instay - Real Estate HTML Template
Author: Webartinfo
Version: 1.0
*/
/*
-- Body font all Pages
-- Basic Classes
-- Basic Custom Classes
-- Header
-- Video btn
-- Footer
-- Form Control
-- Btn
-- Form Checkbox
-- Property Slider
-- Index
-- Sign in/up Page
-- Search
-- Details Page
-- Book Page
-- Chrome, Safari, Edge, Opera
-- Firefox
*/
/* ---------------------------------------------------- Body font all Pages ---------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700;800;900&display=swap');
/* ---------------------------------------------------- Basic Classes ---------------------------------------------------- */
 body {
     font-family: 'Rubik', sans-serif;
     font-size: 14px;
}
 .container {
     max-width: 1290px;
}
 .ln-h25 {
     line-height: 25px;
}
 .ln-32 {
     line-height: 32px;
}
 .ln-35 {
     line-height: 35px;
}
 .ln-40 {
     line-height: 40px;
}
 .opacity-03 {
     opacity: 0.3;
}
 .ln-0 {
     line-height: 0;
}
 .w-85 {
     width: 85% !important;
}
 .w-40 {
     width: 40% !important;
}
 .w-29 {
     width: 29% !important;
}
 .w-54 {
     width: 54% !important;
}
 .w-44 {
     width: 44% !important;
}
 button:focus {
     outline: none;
}
 .dropdown-menu {
     padding: 8px;
     border-radius: 9px;
     border: none;
     box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important;
}
 .dropdown-item {
     border-radius: 7px;
     font-size: 14px;
     padding: 6px 12px;
}
 .dropdown-item.active, .dropdown-item:active {
     color: #ffffff;
     text-decoration: none;
     background-color: #dc3545;
}
 .rounded{
     border-radius: 9px !important;
}
 .rounded-3{
     border-radius: 9px !important;
}
 a {
     text-decoration: none;
}
 .fw-800 {
     font-weight: 800;
}
 .fw-bold {
     font-weight: 500!important;
}
 .fs-14 {
     font-size: 14px;
}
 .mt-n5 {
     margin-top: -100px;
}
 .rounded-9 {
     border-radius: 9px;
}
 .rounded-left4 {
     border-radius: 12px 0px 0px 12px;
}
 .rounded-topright4 {
     border-radius: 0px 12px 0px 0px;
}
 .rounded-bottomright4 {
     border-radius: 0px 0px 12px 0px;
}
 .bg-light {
     background-color: #f2f2f2 !important;
}
 .bg-low-opacity {
     background-color: rgba(377,377,377,0.7);
}
 .img-center {
     text-align: center;
}
 .pr-0 {
     padding-right: 5px;
}
 .pr-1 {
     padding-right: 15px;
}
 .pl-1 {
     padding-left: 15px;
}
 .float-r {
     float: right;
}
 .float-l {
     float: left;
}
 .flatpickr-prev-month, .flatpickr-next-month {
     height: 39px !important;
}
 .flatpickr-current-month {
     height: 39px !important;
     line-height: 27px !important;
}
 .flatpickr-month {
     height: 39px !important;
}
 .flatpickr-current-month span.cur-month {
     font-size: 16px !important;
     font-weight: 500 !important;
}
 .flatpickr-current-month input.cur-year {
     font-size: 16px !important;
}
 span.flatpickr-weekday {
     font-size: 12px !important;
     font-weight: 500 !important;
}
 .toggle.web-none button.btn {
     width: 39px;
     height: 39px;
     background: #dc3545 !important;
     color: #fff;
}
/* ---------------------------------------------------- Basic Custom Classes ---------------------------------------------------- */
 html ::-webkit-resizer {
     background-color: #ffffff;
}
 html ::-webkit-scrollbar {
     width: 5px;
     overflow: visible;
}
 html ::-webkit-scrollbar-button {
     display: none;
}
 html ::-webkit-scrollbar-corner {
     background-color: #ffffff;
}
 html ::-webkit-scrollbar-thumb {
     background-color: #dc3545;
     border-radius: none;
}
 html ::-webkit-scrollbar-track-piece {
     background-color: #ffffff;
}
 .shadow-hover {
     box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075)!important;
     transition: box-shadow 0.3s ease-in-out;
}
 .shadow-hover:hover {
     box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15)!important;
     background-color: #ffffff;
}
 .city-arrow {
     opacity: 0;
     transition: opacity 0.3s ease-in-out;
}
 .shadow-hover:hover .city-arrow {
     opacity: 1 !important;
}
 .trip-city {
     background: url("../img/trip-bg.jpg");
     background-size: contain;
}
 #video .modal-fullscreen .modal-body {
     overflow-y: visible;
}
 #video .btn-close {
     background-color: #ffffff;
     position: absolute;
     top: 15px;
     right: 15px;
     width: 25px;
     height: 25px;
     z-index: 9;
     color: #000;
}
/* ---------------------------------------------------- Header ---------------------------------------------------- */
 .osahan-nav .nav-link {
     padding: 26px 15px !important;
     color: #000 !important;
}
 .osahan-nav .nav-link.active {
     color: #dc3545 !important;
}
 .header-top-br {
     border-top: solid 5px #dc3545;
}
 .header-bg {
     background: url("../img/header-picture.png");
     background-size: cover;
}
 .header-body .title {
     font-size: 52px;
}
 .top-user-dropdown button.btn {
     height: 39px;
     padding: 0px;
     border: none;
     font-size: 14px;
}
 .top-user-dropdown button.btn img {
     height: 38px;
     margin: 0 8px 0 0;
}
 .top-user-dropdown .dropdown-menu {
     margin-top: 19px;
}
 .navbar-brand img {
     height: 40px;
}
 .dashboard-header .logo {
     height: 45px;
}
 .osahan-main-search .form-floating {
     width: 160px;
     border-radius: 8px !important;
     overflow: hidden;
     box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075)!important;
}
 .osahan-main-search {
     display: flex;
     gap: 6px;
}
 .osahan-main-search .btn {
     min-width: 58px;
     font-size: 33px;
     padding: 0px;
     height: 58px;
     box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075)!important;
}
/* ---------------------------------------------------- Video btn ---------------------------------------------------- */
 .btn-animation {
     height: 42px;
     width: 42px;
     background-color: #fff;
     ;
     color: #dc3545;
     font-size: 20px;
     display: -webkit-box;
     display: -ms-flexbox;
     display: flex;
     -webkit-box-align: center;
     -ms-flex-align: center;
     align-items: center;
     -webkit-box-pack: center;
     -ms-flex-pack: center;
     justify-content: center;
     z-index: 9;
     border-radius: 100%;
     animation: pulse2 1s infinite;
}
 .btn-animation i {
     color: #dc3545
}
 @keyframes pulse2 {
     0% {
         -webkit-box-shadow: 0 0 0 0 #dc354599;
         box-shadow: 0 0 0 0 #dc354599;
    }
     70% {
         -webkit-box-shadow: 0 0 0 15px rgba(255, 90, 60, 0);
         box-shadow: 0 0 0 15px rgba(255, 90, 60, 0);
    }
     100% {
         -webkit-box-shadow: 0 0 0 0 rgba(255, 90, 60, 0);
         box-shadow: 0 0 0 0 rgba(255, 90, 60, 0);
    }
}
/* Optional effect */
 @keyframes pulse1 {
     0% {
         -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.6);
         box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.6);
    }
     70% {
         -webkit-box-shadow: 0 0 0 15px rgba(255, 255, 255, 0);
         box-shadow: 0 0 0 15px rgba(255, 255, 255, 0);
    }
     100% {
         -webkit-box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
         box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}
/* ---------------------------------------------------- Footer ---------------------------------------------------- */
 .footer-img {
     height: 300px;
}
 footer ul li a:hover {
     color: #dc3545 !important;
}
 .footer-bottom a:hover {
     color: #dc3545 !important;
}
/* ---------------------------------------------------- Form Control ---------------------------------------------------- */
 .form-control:focus {
     background-color: #fff;
     border-color: none;
     outline: 0;
     box-shadow: none;
}
 .form-select:focus {
     border-color: #ced4da !important;
     outline: 0;
     box-shadow: none;
}
 .btn-check:focus+.btn, .btn:focus {
     outline: 0;
     box-shadow: none;
}
 .form-control:focus {
     border-color: #dee2e6;
}
/* ---------------------------------------------------- Btn ---------------------------------------------------- */
 .btn-user {
     padding: 5px 7px;
     border-radius: 7px;
}
 .btn-danger-100 {
     background-color: rgba(220, 53, 69, 0.1);
}
/* ---------------------------------------------------- Form Checkbox ---------------------------------------------------- */
 .form-check-input:checked {
     background-color: #dc3545;
     border-color: #dc3545;
}
 .form-check-input {
     background-color: #f8f9fa;
     border-color: #f8f9fa;
}
/* ---------------------------------------------------- Property Slider ---------------------------------------------------- */
 .slick-slide {
     margin-bottom: 5px;
}
 .slick-slide a {
     outline: none !important;
}
 .slick-prev {
     right: 40px;
     left: auto !important;
}
 .slick-next {
     right: 0px;
}
 .slick-next, .slick-prev {
     top: -17% !important;
}
 .slick-next, .slick-prev {
     background: #dc3545 !important;
     box-shadow: 0px 0px 3px #fff;
     border-radius: 9px;
     width: 26px;
     height: 26px;
     display: flex;
     align-items: center;
     justify-content: center;
     padding: 3px 0 0 0;
     border-radius: 50px;
}
 .slick-next:before, .slick-prev:before {
     font-size: 23px;
     color: #ffffff;
}
/* ---------------------------------------------------- Index ---------------------------------------------------- */
 .city-img {
     height: 70px;
}
/* ---------------------------------------------------- Sign in/up Page ---------------------------------------------------- */
 .sign-links a:hover {
     color: #dc3545 !important;
     border-color: #dc3545 !important;
}
 .signt-n5 {
     margin-top: -300px;
}
 .sign-image img {
     z-index: -9;
}
 .thanku-img {
     height: 110px;
}
 .vh-85 {
     height: 85vh!important;
}
 #panel {
     display: none;
}
 #thanku {
     display: none;
}
 #card {
     display: none;
}
 #card1 {
     display: none;
}
/* ---------------------------------------------------- Search ---------------------------------------------------- */
 .filters .sticky {
     position: sticky;
     top: 10px;
}
 .filter-box {
     padding: .7rem 1rem !important;
}
 .filters form .form-check {
     margin-bottom: .500rem;
}
 .filters form .form-check-input:checked+label {
     color: #000 !important;
     font-weight: 500 !important;
}
 .search-body.container {
     max-width: 1290px !important;
}
 .user-img {
     height: 44px;
}
 .map_sticky {
     top: 0;
     position: sticky;
     height: 100vh;
}
 .list-img {
     height: 130px;
}
 .dot-list {
     font-size: 5px;
}
 .filters {
     position: sticky;
     top: 0;
     z-index: 9;
}
 .badge_rating {
     font-size: 14px;
     top: 12px;
     left: 12px;
}
 .badge_price {
     font-size: 14px;
     top: 12px;
     right: 12px;
}
 .list_grid {
     padding: 0;
     width: 38px;
     height: 38px;
}
/* ---------------------------------------------------- Details Page ---------------------------------------------------- */
 .details .first-img {
     height: 397.78px;
     object-fit: cover;
}
 .details .right-imgs .rounded-topright4 {
     height: 199px;
     width: 100%;
     object-fit: cover;
}
 .details .right-imgs .col-md-6 img {
     height: 175px;
     object-fit: cover;
}
 .details .right-imgs .col-md-6 .more-photos {
     position: absolute;
     background: rgba(0, 0, 0, .6);
     display: flex;
     align-items: center;
     justify-content: center;
     border-radius: 0px 0px 12px 0px;
     right: 12px;
     left: 12px;
     top: 0;
     bottom: 0;
}
 .cat-item .mdi {
     width: 49px;
     height: 49px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 22px;
     border-radius: 10px;
     color: #dc3545;
}
 .reviews .col-md-3 a {
     padding: 13px 16px;
}
 .reviews .progress-bars .progress {
     width: 60px;
     height: 5px;
}
 .progress-success {
     background-color: #ddf7e6;
}
 .progress-warning {
     background-color: #f7f3dd;
}
 .progress-danger {
     background-color: #f7dddd;
}
 .form-date input {
     height: 24px;
}
 .quantity button {
     border: 2px solid #6c757d;
     width: 20px;
     line-height: 0;
     height: 20px;
     color: #000;
     font-weight: 500;
}
 .quantity input {
     height: 25px;
     width: 35px;
}
 .quantity button:focus {
     outline: none;
}
 .hosted-by img {
     height: 50px;
}
 .hosted-by .social-links a {
     width: 45px;
     height: 45px;
     display: flex;
     align-items: center;
     justify-content: center;
     border: 1px solid #e1e5e8!important;
}
 .hosted-by .social-links a:hover {
     border: 1px solid #8f9193!important;
}
 .addition-services .form-check input {
     width: 18px;
     height: 18px;
     margin-top: 2px;
     border-radius: 50px;
     display: flex;
     align-items: center;
     justify-content: center;
}
 .addition-services .form-check .form-check-input:checked[type=checkbox]::after {
     content: "";
     background-color: #fff;
     position: absolute;
     padding: 4px;
     border-radius: 50px;
}
 .addition-services .form-check .form-check-input:checked[type=checkbox] {
     background-image: none;
}
 .sticky-sidebar {
     position: sticky;
     top: 30px;
}
 .thank-msg {
     height: 220px;
}
 .btn-dashboard {
     padding: 15px 40px;
}
 #thanku {
     display: none;
}
/* ---------------------------------------------------- Book Page ---------------------------------------------------- */
 .guests {
     width: 100%
}
/* This is to remove the arrow of select element in IE */
 .guests select::-ms-expand {
     display: none;
}
 .guests select {
     -webkit-appearance: none;
     appearance: none;
}
 .booking-system .form-booking span.btn {
     padding: 10px 30px !important;
}
 @-moz-document url-prefix() {
     .guests {
         border: 1px solid #CCC;
         border-radius: 4px;
         box-sizing: border-box;
         position: relative;
         overflow: hidden;
    }
     .guests select {
         width: 110%;
         background-position: right 30px center !important;
         border: none !important;
    }
}
 @media (max-width: 768px) {
     .border-md-0 {
         border: none !important;
    }
     .m-none {
         display: none;
    }
     .osahan-main-search .form-floating {
         width: 49%;
    }
     .osahan-main-search {
         flex-wrap: wrap;
    }
     .osahan-main-search .btn {
         min-width: 100%;
    }
     button.navbar-toggler {
         padding: 5px 6px;
    }
     .osahan-nav {
         padding: 10px 0px !important;
    }
     .osahan-nav ul.navbar-nav {
         margin-right: 0px !important;
         margin-bottom: 0px !important;
    }
     .osahan-nav .nav-link {
         text-align: left;
         padding: 12px 0px !important;
         border-bottom: 1px solid #f2f2f2;
    }
     .osahan-nav .dropdown-menu {
         background: #f2f2f2;
         border-radius: 0px;
         margin-top: 0px;
    }
     .top-user-dropdown button.btn {
         width: 100%;
         text-align: left;
         padding: 12px 0px !important;
         height: auto;
    }
     span.notification.dropdown {
         display: none;
    }
     .profile-sidebar-osahan {
         position: unset !important;
         margin-bottom: 40px;
    }
}
/* ---------------------------------------------------- Chrome, Safari, Edge, Opera ---------------------------------------------------- */
 .quantity input::-webkit-outer-spin-button, .quantity input::-webkit-inner-spin-button {
     -webkit-appearance: none;
     margin: 0;
}
/* ---------------------------------------------------- Firefox ---------------------------------------------------- */
 .quantity input[type=number] {
     -moz-appearance: textfield;
}
