@charset "UTF-8";
/* reset */
/* main variables */
/* colors */

:root {
    --main-color-dark-gray: #191e3b;
    --main-color-blue-light: #0084f3;
    --main-color-blue-dark: #023b58;
    --star-color: #676a7d;
    --side-background-color: #eff2f0;
    --mid-background-color: #fff;
}

body {
    margin: 0;
    padding: 0;
    font-family: "Lato", sans-serif;
    background-color: #FFF;
    height: 100%;
    line-height: 1;
    position: relative;
    font-size: 14px !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }

body.no-scroll {overflow: hidden}
.no-click {color: gray !important; pointer-events: none; cursor: unset}
.is-visually-hidden {
    block-size: 1px;
    border: 0;
    clip: rect(0 0 0 0);
    inline-size: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
}

/*MAIN*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer,
header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
    display: block; }

blockquote, q {
    quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none; }

table {
    border-collapse: collapse;
    border-width: 0;
    padding: 0;
    margin: 0; }

html {
    height: 100%;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none; }

input,
textarea {
    color: #333;
    font-family: "Lato", sans-serif;
    outline: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    -webkit-appearance: none; }

input[type="button"],
input[type="submit"],
button {
    cursor: pointer; }

td {
    margin: 0;
    padding: 0; }

form {
    padding: 0;
    margin: 0; }

a {
    color: #114965;
    -webkit-transition: all 0.2s linear;
    -moz-transition: all 0.2s linear;
    -ms-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    transition: all 0.2s linear;
    text-decoration: none;
    outline: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

a,
span,
div,
button {
    outline: none !important; }

input[type=submit],
input[type=button],
button {
    -webkit-appearance: none;
    outline: none; }

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }

*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }

.clearfix:after,
.wrapper:after,
.row:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
/*! =========================================================
 * bootstrap-slider.js
 *
 * Maintainers:
 *		Kyle Kemp
 *			- Twitter: @seiyria
 *			- Github:  seiyria
 *		Rohit Kalkur
 *			- Twitter: @Rovolutionary
 *			- Github:  rovolution
 *
 * =========================================================
 *
 * bootstrap-slider is released under the MIT License
 * Copyright (c) 2017 Kyle Kemp, Rohit Kalkur, and contributors
 * 
 * Permission is hereby granted, free of charge, to any person
 * obtaining a copy of this software and associated documentation
 * files (the "Software"), to deal in the Software without
 * restriction, including without limitation the rights to use,
 * copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following
 * conditions:
 * 
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 * 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 * OTHER DEALINGS IN THE SOFTWARE.
 *
 * ========================================================= */
.slider {
    display: inline-block;
    vertical-align: middle;
    position: relative; }
.slider.slider-horizontal {
    width: 100%;
    height: 20px; }
.slider.slider-horizontal .slider-track {
    height: 5px;
    width: 100%;
    margin-top: 0;
    top: 50%;
    left: 0; }
.slider.slider-horizontal .slider-selection, .slider.slider-horizontal .slider-track-low, .slider.slider-horizontal .slider-track-high {
    height: 100%;
    top: 0;
    bottom: 0; }
.slider.slider-horizontal .slider-tick,
.slider.slider-horizontal .slider-handle {
    margin-left: -10px; }
.slider.slider-horizontal .slider-tick.triangle,
.slider.slider-horizontal .slider-handle.triangle {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    border-width: 0 10px 10px 10px;
    width: 0;
    height: 0;
    border-bottom-color: #0076da;
    margin-top: 0; }
.slider.slider-horizontal .slider-tick-container {
    white-space: nowrap;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; }
.slider.slider-horizontal .slider-tick-label-container {
    white-space: nowrap;
    margin-top: 20px; }
.slider.slider-horizontal .slider-tick-label-container .slider-tick-label {
    display: inline-block;
    padding-top: 24px;
    text-align: center; }
.slider.slider-horizontal.slider-rtl .slider-track {
    left: initial;
    right: 0; }
.slider.slider-horizontal.slider-rtl .slider-tick,
.slider.slider-horizontal.slider-rtl .slider-handle {
    margin-left: initial;
    margin-right: -10px; }
.slider.slider-horizontal.slider-rtl .slider-tick-container {
    left: initial;
    right: 0; }
.slider.slider-vertical {
    height: 210px;
    width: 20px; }
.slider.slider-vertical .slider-track {
    width: 10px;
    height: 100%;
    left: 25%;
    top: 0; }
.slider.slider-vertical .slider-selection {
    width: 100%;
    left: 0;
    top: 0;
    bottom: 0; }
.slider.slider-vertical .slider-track-low, .slider.slider-vertical .slider-track-high {
    width: 100%;
    left: 0;
    right: 0; }
.slider.slider-vertical .slider-tick,
.slider.slider-vertical .slider-handle {
    margin-top: -10px; }
.slider.slider-vertical .slider-tick.triangle,
.slider.slider-vertical .slider-handle.triangle {
    border-width: 10px 0 10px 10px;
    width: 1px;
    height: 1px;
    border-left-color: #0076da;
    margin-left: 0; }
.slider.slider-vertical .slider-tick-label-container {
    white-space: nowrap; }
.slider.slider-vertical .slider-tick-label-container .slider-tick-label {
    padding-left: 4px; }
.slider.slider-vertical.slider-rtl .slider-track {
    left: initial;
    right: 25%; }
.slider.slider-vertical.slider-rtl .slider-selection {
    left: initial;
    right: 0; }
.slider.slider-vertical.slider-rtl .slider-tick.triangle,
.slider.slider-vertical.slider-rtl .slider-handle.triangle {
    border-width: 10px 10px 10px 0; }
.slider.slider-vertical.slider-rtl .slider-tick-label-container .slider-tick-label {
    padding-left: initial;
    padding-right: 4px; }
.slider.slider-disabled .slider-handle {
    background-color: #cfcfcf;
    background-image: -moz-linear-gradient(top, #DFDFDF, #BEBEBE);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#DFDFDF), to(#BEBEBE));
    background-image: -webkit-linear-gradient(top, #DFDFDF, #BEBEBE);
    background-image: -o-linear-gradient(top, #DFDFDF, #BEBEBE);
    background-image: linear-gradient(to bottom, #DFDFDF, #BEBEBE);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#DFDFDF', endColorstr='#BEBEBE',GradientType=0); }
.slider.slider-disabled .slider-track {
    background-color: #e7e7e7;
    background-image: -moz-linear-gradient(top, #E5E5E5, #E9E9E9);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#E5E5E5), to(#E9E9E9));
    background-image: -webkit-linear-gradient(top, #E5E5E5, #E9E9E9);
    background-image: -o-linear-gradient(top, #E5E5E5, #E9E9E9);
    background-image: linear-gradient(to bottom, #E5E5E5, #E9E9E9);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#E5E5E5', endColorstr='#E9E9E9',GradientType=0);
    cursor: not-allowed; }
.slider input {
    display: none; }
.slider .tooltip-inner {
    white-space: nowrap;
    max-width: none; }
.slider .tooltip {
    pointer-events: none; }
.slider .tooltip.top {
    margin-top: -36px; }
.slider .tooltip-inner {
    white-space: nowrap;
    max-width: none; }
.slider .hide {
    display: none; }

.slider-track {
    background-color: #009df8;
    background-image: -moz-linear-gradient(top, #009df8, #009df8);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#009df8), to(#009df8));
    background-image: -webkit-linear-gradient(top, #009df8, #009df8);
    background-image: -o-linear-gradient(top, #009df8, #009df8);
    background-image: linear-gradient(to bottom, #009df8, #009df8);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#009df8', endColorstr='#009df8',GradientType=0);
    -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    position: absolute;
    cursor: pointer; }

.slider-selection {
    background-color: #009df8;
    background-image: -moz-linear-gradient(top, #009df8, #009df8);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#009df8), to(#009df8));
    background-image: -webkit-linear-gradient(top, #009df8, #009df8);
    background-image: -o-linear-gradient(top, #009df8, #009df8);
    background-image: linear-gradient(to bottom, #009df8, #009df8);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#009df8', endColorstr='#009df8',GradientType=0);
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    position: absolute; }

.slider-selection.tick-slider-selection {
    background-color: #76c1ff;
    background-image: -moz-linear-gradient(top, #83c6ff, #69bbff);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#83c6ff), to(#69bbff));
    background-image: -webkit-linear-gradient(top, #83c6ff, #69bbff);
    background-image: -o-linear-gradient(top, #83c6ff, #69bbff);
    background-image: linear-gradient(to bottom, #83c6ff, #69bbff);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#83c6ff', endColorstr='#69bbff',GradientType=0); }

.slider-track-low, .slider-track-high {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    position: absolute;
    background: transparent; }

.slider-handle {
    background-color: #007de7;
    background-image: -moz-linear-gradient(top, #0084f3, #0076da);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0084f3), to(#0076da));
    background-image: -webkit-linear-gradient(top, #0084f3, #0076da);
    background-image: -o-linear-gradient(top, #0084f3, #0076da);
    background-image: linear-gradient(to bottom, #0084f3, #0076da);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0084f3', endColorstr='#0076da',GradientType=0);
    -webkit-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.05);
    -moz-box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.05);
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.05);
    position: absolute;
    top: 0;
    width: 20px;
    height: 20px;
    background-color: #0084f3;
    border: 2px solid white; }
.slider-handle:hover {
    cursor: pointer; }
.slider-handle.round {
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px; }
.slider-handle.triangle {
    background: transparent none; }
.slider-handle.custom {
    background: transparent none; }
.slider-handle.custom::before {
    line-height: 20px;
    font-size: 20px;
    content: '\2605';
    color: #726204; }

.slider-tick {
    background-color: #009df8;
    background-image: -moz-linear-gradient(top, #009df8, #009df8);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#009df8), to(#009df8));
    background-image: -webkit-linear-gradient(top, #009df8, #009df8);
    background-image: -o-linear-gradient(top, #009df8, #009df8);
    background-image: linear-gradient(to bottom, #009df8, #009df8);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#009df8', endColorstr='#009df8',GradientType=0);
    -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    cursor: pointer;
    width: 20px;
    height: 20px;
    filter: none;
    opacity: 0.8;
    border: 0px solid transparent; }
.slider-tick.round {
    border-radius: 50%; }
.slider-tick.triangle {
    background: transparent none; }
.slider-tick.custom {
    background: transparent none; }
.slider-tick.custom::before {
    line-height: 20px;
    font-size: 20px;
    content: '\2605';
    color: #726204; }
.slider-tick.in-selection {
    background-color: #76c1ff;
    background-image: -moz-linear-gradient(top, #83c6ff, #69bbff);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#83c6ff), to(#69bbff));
    background-image: -webkit-linear-gradient(top, #83c6ff, #69bbff);
    background-image: -o-linear-gradient(top, #83c6ff, #69bbff);
    background-image: linear-gradient(to bottom, #83c6ff, #69bbff);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#83c6ff', endColorstr='#69bbff',GradientType=0);
    opacity: 1; }

.rating {
    float: left; }
.rating:not(:checked) > input {
    position: absolute;
    top: -9999px;
    clip: rect(0, 0, 0, 0);
    display: none; }

.rating:not(:checked) > label {
    float: right;
    width: 1em;
    padding: 0 .2em;
    overflow: hidden;
    white-space: nowrap;
    cursor: pointer;
    font-size: 200%;
    line-height: 1;
    color: rgba(255, 255, 255, 0.2); }

.rating:not(:checked) > label:before {
    content: "★"; }

.rating > input:checked ~ label {
    color: gold; }

.rating:not(:checked) > label:hover,
.rating:not(:checked) > label:hover ~ label {
    color: #e52; }

.rating > input:checked + label:hover,
.rating > input:checked + label:hover ~ label,
.rating > input:checked ~ label:hover,
.rating > input:checked ~ label:hover ~ label,
.rating > label:hover ~ input:checked ~ label {
    color: #ea0; }

.rating > label:active {
    position: relative;
    top: 2px;
    left: 2px; }

.hotel-rating {
    font-size: 22px; }
.hotel-rating .star {
    color: var(--star-color);
    font-size: 100%; }
.hotel-rating .star.unactive {
    color: #cfcfcf; }
.hotel-rating .star:before {
    content: "★"; }

/*
================================================================================
|                                     HEADER                                   |
================================================================================
*/
header {
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    min-width: 320px;
    text-align: left;
    order: 1;
    -webkit-order: 1; }

.with-waves .navbar { padding: 1rem 0; }
.with-waves .navbar ul.main-nav.navbar-nav li.active .nav-link, .with-waves .navbar ul.main-nav.navbar-nav li:hover .nav-link, .with-waves .navbar ul.main-nav.navbar-nav li.show-menu .nav-link {
    color: #fff;
    background-color: #86c9f3; }
.with-waves .navbar ul.main-nav.navbar-nav .nav-link {
    padding: 1rem 1.25rem;
    color: #fff; }

.logo { max-height: 100px; }

.double_menu {
    flex-direction: column;
    align-items: baseline; }

.mega-menu {
    display: none;
    margin: 0;
    z-index: 3002;
    min-width: 250px;
    min-height: 50px;
    background-color: white;
    border-radius: 8px;
    color: #212529;
}

.show-menu .mega-menu {
    display: block; }
.show-menu > .dropdown-toggle::after {
    border-top: 0;
    border-bottom: 0.3em solid; }

.mega-menu ul.menu {
    list-style: none; }
.mega-menu ul.menu li a {
    padding: 0.5rem;
    display: block;
    color: #212529;
}
.mega-menu ul.menu li a:hover {
    text-decoration: none;
    color: #e63023;
}
.mega-menu ul.menu li.title {
    display: block;
    font-weight: bold;
    padding: 1.5rem 0; }

li.active .nav-link {
    color: #e63023; }

.nav-link.active {
    color: #e63023; }

@media screen and (min-width: 1200px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0.75rem;
        padding-left: 0.75rem; } }
@media screen and (min-width: 992px) {
    .card-img-hotel.lazy-main-image {min-height: 385px;}

    .navbar-nav {
        position: relative; }

    .mega-menu {
        position: fixed;
        padding: 0.35rem;
    }
    .navbar-right .mega-menu {
        right: 0;
    }
    .mega-menu ul.menu {
        min-width: 120px; }
    .mega-menu ul.menu li a {
        display: block;
        text-decoration: none;
        padding: 0.7rem 0.35rem;
        color: #212529;
        font-size: 16px;
        border-radius: 8px;
    }
    .mega-menu ul.menu li a:hover {
        background-color: #f5f5f5;
        color: #212529;
    }
    .mega-menu ul.menu li.title {
        font-size: 1.25em;
        font-weight: bold;
        padding: 0.7rem 0.35rem;
    }
    .top-navbar .navbar-expand-lg {
        -ms-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -ms-flex-pack: start;
        justify-content: flex-end;
    }

    .item-0-0 {
        -ms-flex: 0 0 30%;
        flex: 0 0 30%;
        max-width: 30%; }
    .item-0 {
        -ms-flex: 0 0 20%;
        flex: 0 0 20%;
        max-width: 20%; }

    .item-1 {
        -ms-flex: 0 0 16%;
        flex: 0 0 16%;
        max-width: 16%; }

    .item-2 {
        -ms-flex: 0 0 6%;
        flex: 0 0 6%;
        max-width: 6%; }

    .item-3 {
        -ms-flex: 0 0 14%;
        flex: 0 0 14%;
        max-width: 14%; }

    .item-4 {
        -ms-flex: 0 0 13%;
        flex: 0 0 13%;
        max-width: 13%; }

    .item-kids {
        -ms-flex: 0 0 83%;
        flex: 0 0 83%;
        max-width: 83%; }

    .item-kids-inner {
        -ms-flex: 0 0 43%;
        flex: 0 0 43%;
        max-width: 43%; }

    .search-form .item-kids {
        margin-top: 0 !important;
    }

    /*making date range picker bigger*/
    .daterangepicker .calendar-table th,
    .daterangepicker .calendar-table td {
        font-size: 14px !important;
        padding: 15px !important;
    }

    .daterangepicker .drp-calendar {
        max-width: unset !important;
    }

    .daterangepicker.ltr .drp-calendar.left {
        margin-left: 20px !important;
    }

    .daterangepicker.ltr .drp-calendar.right {
        margin-right: 20px !important;
    }

    .daterangepicker.ltr .drp-calendar.left .calendar-table {
        margin-right: 10px !important;
    }
    .daterangepicker.ltr .drp-calendar.right .calendar-table {
        margin-left: 10px !important;
    }
    .daterangepicker .calendar-table .next span,
    .daterangepicker .calendar-table .prev span {padding: 7px !important;}
    .daterangepicker th.month {font-size: 17px !important;}
}
@media screen and (max-width: 991px) {
    .mega-menu {
        margin: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
    .show-menu .mega-menu {margin-bottom: 10px;}
    .mega-menu ul.menu {
        padding-left: 0.5rem; }
    .mega-menu ul.menu.show li.dropdown-toggle:after {
        border-top: 0;
        border-bottom: 0.3em solid; }
    .mega-menu ul.menu.show li a {
        display: block !important; }
    .mega-menu ul.menu li a {
        font-weight: 600;
        margin-left: 0.75rem; }
    .mega-menu ul.menu li a:hover {
        color: #e63023;
        text-decoration: none; }
    .mega-menu ul.menu li.title {
        display: block;
        font-size: 1em;
        font-weight: bold;
        padding: .75rem;
        cursor: pointer; }
    .mega-menu ul.menu li.title ~ li {
        padding-left: 0.5rem; }
    .mega-menu ul.menu li.title ~ li > a {
        display: none; } }
/*
================================================================================
|                                     FOOTER                                   |
================================================================================
*/
footer {
    background: #023b58;
    text-align: left;
    width: 100%;
    min-width: 320px;
    order: 3;
    -webkit-order: 3;
    padding: 2rem 0 1rem; }
footer .borders {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    border-bottom: 1px solid rgba(255, 255, 255, 0.5); }
footer .menu {
    margin: 0.5rem 0;
    list-style: none; }
footer .menu.horizontal-menu {
    display: flex;
    flex-wrap: wrap;
    padding: 0.5rem 0;
    align-items: center; }

footer .menu.social-icons {
    display: flex;
    flex-wrap: wrap;
    padding: 0.5rem 0;
    align-items: center;
    gap: 10px;
}

footer .menu.horizontal-menu.with-borders li {
    padding: 1rem 0; }
footer .menu.horizontal-menu.with-borders li:first-child a {
    padding-left: 0;
    border-left: none; }
footer .menu.horizontal-menu.with-borders li:last-child a {
    padding-right: 0; }
footer .menu.horizontal-menu.with-borders li a {
    padding: 0 1.5rem;
    text-align: center;
    border-left: 1px solid white; }
footer .menu li a {
    display: block;
    padding: 0.5rem 0;
    color: #fff;
    font-weight: 600; }
footer .menu li a.social-item {
    display: block;
    width: 50px;
    height: 50px;
}
footer .menu li.active a, footer .menu li:hover a {
    text-decoration: none;
    color: #cedc00; }

@media screen and (max-width: 991px) {
    footer .menu.horizontal-menu,
    footer .menu.social-icons {
        flex-direction: column; }
    footer .menu.horizontal-menu.with-borders li:first-child a {
        padding-left: 1.5rem;
        border-left: none; }
    footer .menu.horizontal-menu.with-borders li:last-child a {
        padding-right: 1.5rem; }
    footer .menu.horizontal-menu.with-borders li a {
        border: none; } }
.main-wrapper {
    padding: 0 0 0 0;
    min-width: 320px;
    width: 100%;
    position: relative;
    overflow: hidden;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start; }

.wrapper {
    min-width: 320px;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}

section:not(.search) .wrapper {background-color: var(--mid-background-color);}
section:not(.search, .hotel_description, .top-section) .wrapper {padding-bottom: 1rem;}

/* titles */
p {
    font-size: 1em;
    line-height: 1.25;
    /*color: var(--main-color-dark-gray);*/
}

h1, h2, h3 {line-height: 1.3;}

h1 {
    font-size: 35px;
    /*color: #023b58;*/
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    font-weight: 400; }

h2 {
    font-size: 30px;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    font-weight: 400; }

h3 {
    font-size: 25px;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    font-weight: 400; }

h4 {
    font-size: 1.1rem;
    line-height: 1;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    font-weight: 400;
}

h5 {
    font-size: 1rem;
    line-height: 1;
    color: #023b58;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    text-transform: uppercase;
    font-weight: 800; }

h6 {
    font-size: 0.9rem;
    line-height: 1;
    color: #023b58;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    text-transform: uppercase;
    font-weight: 800; }

/* text position */
.nowrap {
    white-space: nowrap; }

/* loader */
.loaded .main-wrapper {
    visibility: hidden;
}

.icon-load-old {
    z-index: 1000;
    width: 160px;
    height: auto;
    position: fixed;
    left:-webkit-calc(50% - 80px);
    left:-moz-calc(50% - 80px);
    left:calc(50% - 80px);
    top: 50%;
}

.loaded .icon-load,
.load-keeping-page-view .icon-load {
    display: block;
}

.icon-load {
    position: fixed;
    top: 50%;
    left:-webkit-calc(50% - 45px);
    left:-moz-calc(50% - 45px);
    left:calc(50% - 45px);
    z-index: 1000;
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #079cdf;
    border-bottom: 5px solid #079cdf;
    width: 90px;
    height: 90px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
    display: none;
}

.hotel-offers-loader-container {
    position: relative;
    display: none;
}

.hotel-offers-loader-text,
.hotel-offers-search-info-text {color: #5d5f5f;}
.hotel-offers-search-info-icon {color: #079cdf;}

.hotel-offers-loader {
    margin: 0 auto;
    z-index: 1000;
    border: 5px solid #f3f3f3;
    border-radius: 50%;
    border-top: 5px solid #079cdf;
    border-bottom: 5px solid #079cdf;
    width: 60px;
    height: 60px;
    -webkit-animation: spin 2s linear infinite;
    animation: spin 2s linear infinite;
}

@-webkit-keyframes spin {
    0% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); }
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.hotel-display-hide-more-offers {
    color: #ffffff !important;
}

/*
================================================================================
|                                     CONTENT                                 |
================================================================================
*/
.content {
    min-width: 320px;
    text-align: left;
    width: 100%;
    order: 2;
    -webkit-order: 2;
    flex-grow: 1;
    -webkit-flex-grow: 1;
    background-color: var(--side-background-color); }
	
	.titleh1 {
    font-size: 30px;
    line-height: 1.2;
    color: var(--main-color-dark-gray);
    font-family: "Lato Bold", sans-serif;
    padding: 15px 0 15px 0;
    font-weight: 800; }
	
	.hotelh2 {
    font-size: 1.1rem;
    line-height: 1;
    color: #023b58;
    font-family: "Lato", sans-serif;
    padding: 5px 0;
    font-weight: 700; }
    .hotel-info-left {line-height: 1.2}

section.search {
    padding: 0;
    box-shadow: inset 0 5px 5px -5px rgba(0, 0, 0, 0.5);
    background-size: cover; }
section.search.madeira {
    background-image: url("../img/bcg_layer_madeira.jpg"); }

.line-separator {
    border-top: 1px solid #b9b9b9;
    margin: -0.5rem 0.5rem 0.5rem 0;
}

.icon {
    display: inline-block;
    width: 20px;
    height: 20px; }
.icon.calendar {
    background-image: url("../img/icons/calendar.jpg");
    background-repeat: no-repeat;
    background-size: contain; }
.icon.login {
    background-image: url("../img/icons/login-icon.png");
    background-repeat: no-repeat;
    background-size: contain;
    float: left;
    position: relative;
    top: -3px;
    left: -3px; }

.full-height {
    height: 100%; }

.block {
    min-height: 27vw;
    height: 100%;
    max-width: 450px;
    margin: 0 0 1rem auto; }

.block .banner-title {
    font-family: regular;
    font-size: 9em;
    width: 100%;
    color: #fff;
    padding: 15px 0;}
.block .banner-title > div {
    line-height: .75; }

.block button.btn {
    margin-top: 0.5rem;
    font-weight: 800;
    padding: 0.5rem 1.5rem;
    font-size: 1.5em;
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.5); }

.vertical-aligned {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center; }

.btn.btn-custom {
    color: #fff;
    background-color: #cedc00;
    border-color: #cedc00; }
.btn.btn-custom:hover {
    background-color: #b6c300;
    border-color: #b6c300; }
.btn.btn-dark-green {
    color: #fff;
    background-color: #114965;
    border-color: #114965; }
.btn.btn-dark-green:hover {
    background-color: #0d394f;
    border-color: #0d394f; }
.btn.btn-search {
    color: #fff;
    background-color: #FB8916;
    border-color: #FB8916; }
.btn.btn-search:hover {
    background-color:#e67708;
    border-color: #e67708; }

.card {
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0; }
.card .card-img-overlay {
    padding: 1rem; }
.card .card-img-overlay-bottom {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
}
.card .card-img-overlay-bottom .image_block__head {
    margin-left: 0; }
.card .image_block__head {
    display: flex;
    position: relative;
    margin-left: -1rem; }
.card .image_block__head.white {
    background-color: white; }
.card .image_block__head > div {
    padding: 0.5rem 1rem 0.6rem;
    font-size: 1rem; }
.card .image_block__head > .location {
    background: #cedc00;
    font-weight: 600;
    flex-basis: 60%;
    display: flex;
    align-items: flex-end;
    font-size: 1.35em; }
.card .image_block__head > .price {
    background: white;
    font-weight: 400;
    flex-basis: 40%;
    font-size: 0.9rem;
    padding-left: 0; }
.card .image_block__head > .price .semibold {
    font-size: 1.45rem; }
.card .image_block__head > .price .bold {
    font-size: 1.6rem; }
.card .image_block__head.hotel_card_head {
    margin-top: -1rem;
}
.card .image_block__head.hotel_card_head .urgent {
    background: #ea6d6d;
    color: white;
    display: flex;
    padding: 0.25rem;
    max-width: 170px;
    align-items: center; }
.card .card-img-overlay-bottom .image_block__head.hotel_card_head .urgent {
    max-width: 100%;
    width: 100%;}
.card .image_block__head.hotel_card_head .urgent.green {
    background: #7d9a3f; }
.card .image_block__head.hotel_card_head .urgent.blue {
    background: #5787d3; }
.card .image_block__head.hotel_card_head .urgent.with_discount {
    max-width: inherit; }
.card .image_block__head.hotel_card_head .urgent.with_discount img {
    max-width: 25px; }
.card .image_block__head.hotel_card_head .urgent img {
    max-width: 40px; }
.card .image_block__head.hotel_card_head .urgent > span {
    font-weight: 800;
    padding: 0.25rem;
    font-size: 1.4em; }
.card .card-img-overlay-bottom .image_block__head.hotel_card_head .urgent > span {
    padding-left: 0.5rem;}
.card .image_block__head.hotel_card_head .hotel_card_head__tooltip {
    position: absolute;
    top: 15px;
    right: 15px;
    padding: 0.6rem 0.5rem;
    color: #1a4e68;
    max-width: 60%; }
.card .image_block__head.hotel_card_head .hotel_card_head__tooltip::after {
    content: '';
    position: absolute;
    right: -1.25em;
    top: calc(50% - 0.5em);
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    border-top: 0.5em solid transparent;
    border-right: 0.5em solid transparent;
    border-bottom: 0.5em solid transparent;
    border-left: 0.75em solid #cedc00; }
.card .card-text {
    color: white;
    font-weight: 800;
    font-size: 30px;
    line-height: 28px; }

.two_parts {
    display: flex;
    box-shadow: 0 1px 10px rgba(0, 0, 0, 0.5); }

.two_parts > div {   
	position: relative;
    padding: 0 1rem;
}
.two_parts > div.left_part {flex-basis: 40%;}
.two_parts > div.right_part {flex-basis: 60%;}
.two_parts .list-group-item {padding: 0.54rem 1.25rem}

.two_parts > div.left_part {
    padding: 0; }
.two_parts > div.left_part .image_block__head {
    display: inline-block; }
.two_parts > div.left_part .image_block__head > div {
    padding: 0.75rem;
    font-size: 1.5em; }
.two_parts > div.right_part .inner-content {
    font-size: 0.75em; }
.two_parts > div.right_part .inner-content .semibold {
    font-size: 1.2rem; }
.two_parts > div.right_part .inner-content .bold {
    font-size: 1.5rem; }
.two_parts > div.right_part a.more {
    color: #50cdfb;
    text-align: center;
    display: inherit;
    padding: 1rem 0; }
.two_parts > div.right_part a.more:before {
    content: '';
    display: block;
    text-align: center;
    margin-bottom: 1rem;
    height: 1rem; }
.two_parts > div.right_part a.more:hover {
    text-decoration: none;
    color: #47b3db; }

.green {
    background-color: #cedc00 !important; }

.grey {
    background: #e3e3e3; }

.white-color {
    color: white; }

.red-color {
    color: #e63023; }

.black-color {
    color: #000; }

.semibold {
    font-weight: 600;
    font-family: "Lato Bold", sans-serif;
}

.bold {
    font-weight: 700;
    font-family: "Lato Black", sans-serif;
}

.extra_bold {
    font-weight: 800; }

.letter-spacing-2 {
    letter-spacing: -2px; }

.search_box {
    background-color: rgba(2, 59, 88, 0.9);
    padding: 1.5em 2rem; }

.header_title {
    font-weight: 300;
    color: #fff;
    padding: 0 0 25px; }

form label {
    margin-bottom: 10px;
    display: block; }
form .btn.submit {
    color: #ffffff;
    width: 100%;
    font-weight: 600; }

.coupon {
    padding: 2em 1em;
    margin: 2em 0; }
.coupon h2 {
    font-size: 2.4em;
    padding: 5px 0; }
.coupon p {
    font-size: 1.75em;
    padding: 5px 0; }

.to-center {
    display: flex;
    flex-direction: column;
    justify-content: center; }

.hotel-menu li {
    display: inline-block; }
.hotel-menu li a {
    text-decoration: none;
    font-size: 2rem;
    padding: .25rem .5rem;
    display: block;
    text-align: center;
    color: #e3e3e3; }
.hotel-menu li a.hotel-mark {
    color: #0084f3; }
.hotel-menu li a.hotel-mark i {
    font-style: normal; }
.hotel-menu li a.hotel-loc:hover {
    color: #cedc00; }
.hotel-menu li a.hotel-likes:hover {
    color: #cedc00; }
.hotel-menu li a .desc {
    color: #000;
    margin-top: 0.2rem;
    display: block;
    text-align: center;
    font-size: 0.75rem; }

.hotel_description .hotel-name h3 {
    font-size: 1.5rem; }
.hotel_description .hotel-location {
    font-size: 1.1rem;
    color: var(--main-color-dark-gray);
}
.hotel_description .hotel-location span > span {
    font-size: 0.9rem;
}

.hotel-images-container {
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    grid-template-rows: repeat(2, minmax(0, 1fr));
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-column-gap: 3px;
    grid-row-gap: 3px;
}
.hotel-image-big-cont {
    grid-row-start: span 2;
    grid-column-start: span 2;
}
.hotel-image-small-cont {
    grid-row-start: span 1;
    grid-column-start: span 1;

}

.card-img-hotel,
.hotel-image-big-cont > .card,
.hotel-image-big-cont > .card > a {height: 100%;}

.card-img-hotel,
.hotel-gallery img {
    aspect-ratio: 16 / 8;
}

.hotel_description .hotel-gallery .gallery-item {
    display: block;
    flex-basis: 100%;
}
.hotel_description .hotel-gallery .gallery-item.more-items {
    position: relative; }
.hotel_description .hotel-gallery .gallery-item.more-items .info {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    left: 0.5rem;
    top: 0.64rem;
    width: calc(100% - 1rem);
    height: calc(100% - 1.28rem);
    background-color: rgba(0, 0, 0, 0.5);
    color: white; }

.hotel_description .property-highlights { background-color: #e4f4ff; }
.hotel_description .property-highlights .property-highlights-heading {
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
    font-family: 'Lato Bold', sans-serif;
    font-weight: 600;
    padding: 0;
}
.hotel_description .property-highlights > .row:not(:last-of-type)  { margin-bottom: 1rem; }
.hotel_description .property-highlights .info-icon {
    width: 35px;
    vertical-align: middle;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 24px;
    -ms-flex: 0 0 24px;
    flex: 0 0 35px;
    max-width: 35px;
}

.hotel_description .preview-map-container .leaflet-control.leaflet-control-zoom {display: none;}
.hotel_description .preview-map-container .leaflet-marker-pane .leaflet-interactive {cursor: default;}
.hotel_description .preview-map-container.mobile button {
    color: #1676e3;
    background-color: #fff;
    border-color: #1676e3;
    font-family: "Lato Bold", sans-serif;
}

#hotel-modal {z-index: 3002}
#hotel-modal .action-from-map {
    color: #fff;
    background-color: #1676e3;
    border-color: #1676e3;
    font-size: 1rem;
}
#hotel-modal .all-reviews-modal-body {
    overflow-y: scroll;
    height: calc(100vh - 10rem);
}
#hotel-modal .modal-header .reviews-total-rates > div:first-child {
    font-size: 1.3rem;
    font-family: "Lato Bold", sans-serif;
    margin-bottom: 0.3rem;
}

/*TODO::remove*/
.hotel-pills.nav-pills .nav-link {
    padding: 1rem 1.5rem;
    background-color: transparent;
    font-weight: 800;
    font-size: 1.75em;
    text-transform: uppercase;
    color: #b1b9c0; }
.hotel-pills.nav-pills .nav-link.active {
    color: #023b58; }
.hotel-pills.nav-pills .nav-link:hover {
    color: #023b58; }

.font-size-1rem {
    font-size: 1rem;}
.font-size-1-5rem {
    font-size: 1.5rem;}
.font-size-x3 {
    font-size: 3em !important; }
.font-size-x2 {
    font-size: 2em !important; }

.font-size-2 {
    font-size: 1.25em; }
.font-size-3 {
    font-size: 1.5em; }

.price {
    font-size: 2.5em;
    text-align: right; }
.price .prev_price {
    display: inline-block;
    font-size: 1.4rem;
    color: #e63023;
    text-decoration: line-through;
}

.price .previous-price {
    display: inline-block;
    font-size: 1.2rem;
}

.price .actual-price {
    display: inline-block;}

.previous-price {
    position: relative;}

.previous-price:before {
    position: absolute;
    content: "";
    left: 0;
    top: .5em;
    right: 0;
    background: linear-gradient(
            90deg
            ,rgba(239,0,0,.8) 50%,rgba(239,0,0,0));
    border-bottom-right-radius: 50%;
    border-bottom-left-radius: 2px;
    transform: rotate(
            -20deg
    );
    width: 110%;
    height: .15em;
}

.search_results .btn {
    color: #114965;
    width: 100%;
    margin: 1.5em 0; }

.result_item {
    background-color: white !important;
    margin: 1rem 0;
    padding: 0;
    box-shadow: 0 1px 5px -1px rgba(0, 0, 0, 0.5); }
.result_item h3 {
    padding-top: 1rem;
    padding-bottom: 0; }
.result_item h3 .hotel-name {
    font-style: italic;
    font-weight: normal;
    font-size: 1rem; }
.result_item table tr > td {
    border: none;
    padding: 0.5rem;
    padding-left: 0; }
.result_item table tr > td:first-child {
    color: #000;
    font-weight: bold;
    width: 100px; }
.result_item table tr > td:last-child {
    color: #114965; }

.hotels-list.results-list .result_item .hotel-info .additional_info {
    margin-left: -2.2rem;
    color: #4c4c4c;}
.hotels-list.results-list .result_item .hotel-info .additional_info .additional_info__footer {
    padding: 0 1rem 0.5rem 1rem;
    flex-basis: 15%;}
.hotels-list.results-list .result_item .hotel-info .additional_info .additional_info__head {
    flex-basis: 10%;}
.hotels-list.results-list .result_item .hotel-info .additional_info .additional_info__body {
    flex-basis: 75%;
    justify-content: space-between;}

.hotels-list .result_item .hotel-info .additional_info .additional_info__footer .show-offers {
    background-color: #114965;
    color: #ffffff;
    align-self: flex-end;
    font-weight: 600;
    display: block; }
.hotels-list .result_item .hotel-info .additional_info .additional_info__footer .show-offers-container {
    min-width: 38%; }
.hotels-list .result_item .hotel-info .additional_info .additional_info__footer .search-param-container {
    margin-right: 0.3rem;}
.hotel-info .card-img-overlay-bottom .image_block__head.hotel_card_head .urgent img {
    margin-left: 0.7rem; }
.hotels-list .result_item .hotel-info .additional_info .additional_info__footer .min-price-container {
    margin-right: 0.3rem;}

.result_item .additional_info {
    margin-right: -1rem;
    margin-left: -1rem;
    height: 100%;
    display: flex;
    flex-direction: column; }
.result_item .additional_info .additional_info__head {
    flex-basis: 35%;
    padding: 1rem; }
.result_item .additional_info .additional_info__body {
    flex-basis: 65%;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end; }
.result_item .additional_info .additional_info__footer {
    align-items: center;
    display: flex;
    width: 100%;
    justify-content: center; }
.result_item .additional_info .additional_info__footer a:hover {
    text-decoration: none; }
.result_item .additional_info .divider {
    width: 100%;
    margin: 0.5rem 0;
    border-top: 1px solid black; }
.result_item.blue .availability {
    color: #009cdf; }
.result_item.green .availability {
    color: #cedc00; }
.result_item.red .availability {
    color: #e63023;}
.reservation_item .availability.red {
    color: #e63023 !important;}
/*.results-list .offers.result_item .price-info .additional_info__footer {*/
/*    background-color: #cedc00;}*/
.result_item.blue .price-info .additional_info__footer,
.result_item.red .price-info .additional_info__footer > a {
    background-color: #7ad9ff; }
.result_item.green .price-info .additional_info__footer > a {
    background-color: #cedc00; }
.result_item .additional_info__footer .booking-offer {
    color: #ffffff;}

.offers.result_item {
    color: #4c4c4c;}
.offers.result_item .different-period {
    padding: 0.5rem 1rem;
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8;}
.offers.result_item .offer-info {
    padding: 0.5rem 1rem;
    color: #fff;
    background-color: #17a2b8;
    border-color: #17a2b8;}
.offers.result_item .offer-info span {line-height: 1.1;}

.results-list .offers.result_item .dates-info,
.results-list .offers.result_item .tourists-info {
    border-right: 1px solid #cccccc;}
.results-list .offers.result_item .price-info .additional_info__head {
    flex-basis: 35%;}
.results-list .offers.result_item .price-info .additional_info__body {
    flex-basis: 65%;
    justify-content: flex-end;}
.results-list .offers.result_item .dates-info .additional_info .additional_info__body,
.results-list .offers.result_item .tourists-info .additional_info .additional_info__body {
    justify-content: flex-start;
    flex-basis: 100%;}
.results-list .offers.result_item .tourists-info .main-meal {
    margin-left: 0.6rem;}

/*.result_item.red .additional_info {*/
/*    background-color: #d7f4ff;*/
/*}*/

.hotel-proposals {
    margin-top: 3.5em; }
.hotel-proposals .hotel-proposal_item {
    display: block;
    margin: 2em 0; }
.hotel-proposals .hotel-proposal_item:hover {
    text-decoration: none; }
.hotel-proposals .hotel-proposal_item .item-head .hotel-name h3 {
    line-height: 1.25;
    font-size: 1.3rem; }
.hotel-proposals .hotel-proposal_item .item-head .hotel-location {
    font-size: 0.8rem;
    padding-bottom: 1rem; }

.commentary {
    box-shadow: inset 0 11px 8px -10px #CCC,inset 0 -11px 8px -10px #CCC;
    background: #dcecf5;
    padding: 2.5em; }
.commentary label {
    margin-top: 0.5rem; }
.commentary .average_mark {
    text-align: center; }
.commentary .average_mark .mark_field {
    font-size: 5em;
    font-weight: bold;
    color: #0084f3; }
.commentary .average_mark .desc {
    margin: 1rem 0;
    font-size: 1.5em;
    color: #114965; }

.commentary_item {
    padding: 1rem 0.5rem 1.5rem;
    margin: 1.5rem 0;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.5); }
.commentary_item .poz, .commentary_item .neg {
    width: 20px;
    height: 20px;
    margin-top: 0.6rem; }
.commentary_item .author_name {
    margin-bottom: 10px;
    padding: 0;
    font-size: 2em; }
.commentary_item .date {
    font-size: 1.25em; }
.commentary_item .hotel-name {
    font-size: 1.25em;
    padding-right: 10%; }
.commentary_item .hotel-mark {
    font-weight: bold;
    color: #0084f3;
    font-size: 3.5em; }

.poz {
    position: relative; }
.poz:after {
    content: '+';
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid transparent;
    border-radius: 50%;
    background: #cedc00;
    position: absolute;
    right: 0;
    top: -2px;
    color: white;
    text-align: center;
    line-height: 0.9;
    font-weight: bold;
    font-size: 1.5em; }

.neg {
    position: relative; }
.neg:after {
    content: '-';
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid transparent;
    border-radius: 50%;
    background: #ea6d6d;
    position: absolute;
    right: 0;
    top: -2px;
    color: white;
    text-align: center;
    line-height: 0.7;
    font-weight: bold;
    font-size: 1.5em; }

.slider-item {
    display: flex;
    align-items: center; }
.slider-item > .slider-value {
    flex-basis: 55px;
    min-width: 55px;
    font-weight: bold;
    font-size: 1.5em;
    padding: 2px 1rem; }
.slider-item > .slider {
    flex-basis: 60%;
    padding: 5px 1rem; }
.slider-item > label {
    flex-basis: 40%;
    padding: 5px 1rem; }

.top_shadow { position: relative; }
.top_shadow:before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 2rem;
    display: block;
    background-repeat: no-repeat;
    top: 0;
    background-image: url("../img/shadow_top.png");
    background-position: top;
    background-size: 100%; }
.top_shadow .small_shadow:before {
    background-image: url("../img/shadow_top_small.png"); }

.bottom_shadow {
    padding-bottom: .6rem;
    position: relative; }
.bottom_shadow:before {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 2rem;
    display: block;
    background-repeat: no-repeat;
    bottom: 0;
    background-image: url(../img/shadow_top.png);
    background-position: bottom;
    background-size: 100%;}

.destination_place .destination_place__info_block .info_block__head {
    font-size: 1rem;
    line-height: 1rem;
    margin: 1.5rem 0; }
.destination_place .destination_place__info_block .info_block__head span.icon {
    display: inline-block;
    vertical-align: bottom;
    width: 1.25rem;
    height: 1.25rem;
    background-size: contain;
    background-repeat: no-repeat; }
.destination_place .destination_place__info_block .info_block__head span.icon.airplane {
    background-image: url("../img/icons/Vector-Smart-Object-Airplane.png"); }
.destination_place .destination_place__info_block .info_block__head span.icon.sunny {
    background-image: url("../img/icons/Vector-Smart-Object-sunny.png"); }

.filters {
    display: flex;
    justify-content: space-between;
    font-weight: 600;
    padding: 0.5rem 0; }
.filters .filter {
    padding: 0.25rem 0; }
.filters .filter .filter_name {
    display: inline-block;
    color: #000; }
.filters .filter .filter_value {
    display: inline-block; }
.filters .filter .filter_value a {
    color: #b1b9c0; }
.filters .filter .filter_value a.active, .filters .filter .filter_value a:hover {
    color: #009cdf;
    text-decoration: none; }

.place_information .info_block {
    margin: 1em 0; }
.place_information .nav-pills {
    display: flex;
    justify-content: space-between; }
.place_information .nav-pills .nav-item {
    flex-basis: 50%;
    text-align: center;
    background-color: #f5f8cc; }
.place_information .nav-pills .nav-item.active, .place_information .nav-pills .nav-item:hover {
    background-color: #cedc00; }
.place_information .nav-pills .nav-item .nav-link {
    color: #023b58;
    font-weight: 800;
    padding: 1.25rem;
    text-transform: uppercase;
    font-size: 1.25em;
    height: 100%; }
.place_information .nav-pills .nav-item .nav-link.active {
    background-color: #cedc00; }
.place_information .text_block {
    display: inline-block;
    font-size: 1rem;
    color: #fff;
    padding: 0 0.5rem 0 0.75rem; }
.place_information .text_block.dark-blue {
    background: #023b58; }
.place_information .fs-descrease {
    font-size: 0.85em; }

.color-blue {
    color: #009cdf; }

.hotels-list.results-list .result_item h2 {
    font-size: 21.25px;
    line-height: 1.1;
    padding: 5px 0;}

.hotels-list.results-list .result_item h4 {
    font-size: 1.2rem; }
.results-list .result_item .additional_info .additional_info__head {
    padding: 0 1rem; }
/*.hotels-list.results-list .result_item .additional_info .additional_info__body {*/
/*    flex-basis: 50%;*/
/*    justify-content: flex-start; }*/
.hotels-list.results-list .result_item .additional_info .additional_info__body p {
    font-size: 0.85em; }
.results-list .offers.result_item .additional_info .additional_info__footer,
.results-list .result_item .hotel-info .additional_info .additional_info__footer {
    align-items: flex-end;
    flex-direction: row;
    justify-content: space-between; }
.hotels-list.results-list .result_item .additional_info .additional_info__footer .apply {
    padding: 0.4rem 1rem 0.4rem 4rem; }
.hotels-list.results-list .result_item .additional_info .additional_info__footer .left_part {
    padding-left: 1rem;
    flex-basis: 50%; }
.hotels-list.results-list .result_item .additional_info .additional_info__footer .price {
    margin-bottom: 0.7rem; }
.hotels-list .result_item .additional_info .additional_info__head {
  flex-basis: 20%; }
.hotels-list .result_item .additional_info .mark_field {
  color: #009cdf;
  font-size: 2rem;
  font-weight: bold;}
.hotels-list .result_item .additional_info .additional_info__head .full-destination-name {
    color: #114965;}
.hotels-list .result_item .additional_info .desc {
    font-weight: 700;}
/**
.hotels-list .result_item .additional_info .additional_info__body {
  flex-basis: 55%;
  padding: 0 1rem; }
  .hotels-list .result_item .additional_info .additional_info__body p {
    font-size: 0.95em; }
.hotels-list .result_item .additional_info .additional_info__footer {
  flex-basis: 25%;
  padding: 0;
  width: inherit;
  flex-direction: column;
  justify-content: flex-end; }
  .hotels-list .result_item .additional_info .additional_info__footer .price {
    font-size: 1.3em;
    align-self: flex-end;
    margin-bottom: 0.5rem;
    margin-right: 1rem; }
    .hotels-list .result_item .additional_info .additional_info__footer .price .semibold {
      font-size: 1.3em; }
    .hotels-list .result_item .additional_info .additional_info__footer .price .bold {
      font-size: 1.6em; }
      */
.links a {
    line-height: 1.25em;
    color: #009cdf; }

.bg-grey {
    background-color: #f5f5f5; }

#search_filters {
    margin-top: 2em;
    font-size: 100%;
    color: #4c4c4c;
}
#search_filters .search_filter__item {
    padding-bottom: 0.5rem; }
#search_filters .search_filter__item .search_filter__item__head {
    position: relative;
    /*font-size: 1.1em;*/
    /*font-size: 100%;*/
    font-weight: 700;
    padding: 1rem 0.5rem;
    cursor: pointer;
    /*background-color: #b9b9b9;*/
    background-color: #f3f0ec;
    color: #4c4c4c;
}
#search_filters .search_filter__item .search_filter__item__head.collapsed:after {
    border-left: 2px solid #4c4c4c;
    border-bottom: 2px solid #4c4c4c;
    border-top: 2px solid transparent;
    border-right: 2px solid transparent;
    top: 0;
}
#search_filters .search_filter__item .search_filter__item__head:after {
    content: '';
    display: inline-block;
    position: relative;
    top: 0.35rem;
    float: right;
    width: 0.65em;
    height: 0.65em;
    transform: rotate(-45deg);
    box-sizing: border-box;
    margin-right: 0.5rem;
    border-left: 2px solid transparent;
    border-bottom: 2px solid transparent;
    border-top: 2px solid #4c4c4c;
    border-right: 2px solid #4c4c4c; }
#search_filters .search_filter__item .search_filter__item__body {
    /*font-size: 1.1em;*/
    height: auto !important;
    background-color: #f3f0ec;
    padding: 0 7px; }
#search_filters .search_filter__item .search_filter__item__body .hotel-rating {
    font-size: 1.5rem; }
#search_filters .search_filter__item .search_filter__item__body .custom-control-label {
    cursor: pointer; }
#search_filters .search_filter__item .search_filter__item__body .amount {
    /*font-size: 1.2rem;*/
    margin-left: 10px;
    position: relative;
    top: -0.185rem; }
#search_filters .search_filter__item .slider-item {
    margin: 0.5rem 0; }
#search_filters .search_filter__item .slider-item > .slider-value {
    color: #009cdf;
    padding: 0;
    margin-right: 0.5rem;
    font-size: 2.5rem; }
#search_filters .search_filter__item .slider-item > .slider {
    flex-basis: 100%; }
.open-filters-mobile {
    display: none;
    padding: 0.3rem 0;
    color: #114965;
    font-weight: 700; }
.filters-header-mobile,
.filters-results-mobile {
    display: none;}
.hotels-results-summary-info {
    padding: 0.3rem 0; }
.hotels-offers-summary {
    margin: 0.7rem 0 -0.3rem; }
.all-inclusive-tag-page-filters {
    padding: 0.3rem 0;
}
.all-inclusive-tag-page-filters > .static-text,
.all-inclusive-tag-page-filters > .filter-item-divider {
    font-weight: 700;
    color: #4c4c4c;}
.all-inclusive-tag-page-filters > .filter-item {
    cursor: pointer;
    color: #114965;
    font-weight: 600;
    text-decoration: none;
}

.all-inclusive-tag-page-filters > .filter-item:hover {
    text-decoration: underline;}

.all-inclusive-tag-page-filters > .filter-item > .uncheck-filter {
    color: #dd4b39;
}

#hotel-facility-filter .show-hide-more-filters {
    padding: 0.5rem 0;
    cursor: pointer;
    color: #176599;
    display: flex;
    justify-content: center;
}
#hotel-facility-filter .show-hide-more-filters.opened > i {
    transform: rotate(180deg);
    transition: 0.5s;
}

#hotel-facility-filter .show-hide-more-filters > i {
    transform: rotate(0deg);
    transition: 0.5s;
}

.pointer {
    cursor: pointer; }
.reservation {
    background-color: #fff;
}
.reservation .note {
    line-height: 1.3;
    font-size: 0.8rem;}

.reservation .item-label {
    font-size: 1rem;}
.reservation .sumar {
    background: #dcecf5;
    padding: 1.5rem;
    margin-top: 1.5rem; }
.reservation h3 {
    font-size: 1.7em;
    line-height: 1; }
.reservation .hotel-location {
    font-size: 1.25em; }
.reservation #accordion_adauga h3 {
    font-size: 1.2em; }
.reservation .reservation_item {
    margin: 0.5rem 0; }
.reservation .reservation_item h3 {
    padding: 0; }
.reservation .reservation_item .hotel-name {
    font-style: italic;
    margin-left: 1.5rem;
    font-size: 1rem; }
.reservation .reservation_item .availability {
    margin-left: 1.5rem;
    color: #009cdf;
    font-size: 1rem; }
.reservation .reservation_item .card-body {
    background-color: #f3f3f3; }
.reservation .reservation_static_info {
    color: #fff;
    background-color: #023b58;
    padding: 1rem 0;
    margin-bottom: 0.5rem;
}
.reservation .reservation_item_header {
    background-color: #f3f3f3;
    padding: 1rem 0;
}

.reservation .reservation_item_header_white {
    padding: 1rem 0 0.2rem 0;}

/*
================================================================================
|                                     BOOKING FORM SUMMARY INFO                |
================================================================================
*/

.reservation_item_header .back-to-offers {
    color: #023b58;
}

.reservation .offer-availability-green,
.result_item .offer-availability-green {
    color: green;}
.reservation .offer-availability-red,
.result_item .offer-availability-red {
    color: #e63023;}
.result_item .offer-availability-blue {
    color: #1a4e68;}

.reservation .reservation_summary_info .hotel_info {
    padding: 0.5rem 0;}

.reservation .reservation_summary_info .hotel_name {
    font-family: "Lato", sans-serif;
    font-size: 1.5rem;
    padding: 0.5rem 0;
}

.reservation .reservation_summary_info .hotel_location,
.reservation .reservation_summary_info .hotel_rating,
.reservation .reservation_summary_info .hotel_image {
    padding: 0.5rem 0;}
.reservation .reservation_summary_info .hotel_image > img {
    height: 150px;}

.reservation .reservation_summary_info .offer_info {
    padding: 1rem 0.5rem;
    border: 1px solid #e2f3fe;
}

.reservation .reservation_summary_info .offer_info .staying-period-info {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
}

.reservation .reservation_summary_info .offer_info .staying-period-info.package {
    flex-basis: 10%;}

.reservation .reservation_summary_info .offer_info .staying-period-info.individual {
    flex-basis: 20%;}

.reservation .reservation_summary_info .offer_info .outbound-flight-info,
.reservation .reservation_summary_info .offer_info .check-in-info {
    flex-basis: 45%;
    padding-left: 0.5rem;
}

.reservation .reservation_summary_info .offer_info .inbound-flight-info,
.reservation .reservation_summary_info .offer_info .check-out-info {
    flex-basis: 45%;
    padding-right: 0.5rem;
}

.reservation .reservation_summary_info .offer_info .display-flight-info {
    padding-left: 0.5rem;}

.reservation .reservation_summary_info .flight-info-container {
    padding: 1rem;
    background-color: #dcecf5;
}

.reservation .reservation_summary_info .offer_info .check-in-info,
.reservation .reservation_summary_info .offer_info .check-out-info {
    flex-basis: 40%;}

.reservation .reservation_summary_info .offer_info .staying-period-info .fas.fa-hotel {
    font-size: 2rem;}

.reservation .reservation_summary_info .offer_info .outbound-flight-departure,
.reservation .reservation_summary_info .offer_info .outbound-flight-arrival,
.reservation .reservation_summary_info .offer_info .inbound-flight-departure,
.reservation .reservation_summary_info .offer_info .inbound-flight-arrival {
    flex-basis: 25%;
}

.reservation .reservation_summary_info .offer_info .outbound-flight-arrival,
.reservation .reservation_summary_info .offer_info .inbound-flight-arrival {
    align-items: flex-end;
}

.reservation .reservation_summary_info .offer_info .check-out-info {
    flex-direction: column;
    align-items: flex-end;
}

.reservation .reservation_summary_info .offer_info .check-in-info {
    flex-direction: column;}

.reservation .reservation_summary_info .offer_info .flight-direction {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-basis: 50%;
}

.reservation .reservation_summary_info .offer_info .flight-direction-line {
    width: 35%;
    border: 1px solid #70cbf4;
}

/*
================================================================================
|                                     BOOKING FORM SERVICES INFO                |
================================================================================
*/
.reservation .reservation_services_info {
    padding: 1rem;
    margin-top: 0.5rem;
    background-color: #dcecf5;
    color: #023b58;
}

.reservation .reservation_services_info .advantages-section-header > i {
    margin-left: 0.1rem;}
.reservation .reservation_services_info .advantages-section-header > span {
    margin-left: 0.4rem;}

/*
================================================================================
|                                     BOOKING FORM PAYMENT INFO                |
================================================================================
*/
.reservation .reservation_payment_info {
    padding: 1rem;
    margin-top: 0.5rem;
    background-color: #dcecf5;
    color: #023b58;
}

.reservation .reservation_payment_info .price {
    font-size: 1rem;}
.reservation .reservation_payment_info .tax-info {
    opacity: .9;}
/*
================================================================================
|                                     BOOKING FORM TOURISTS INFO                |
================================================================================
*/
.reservation .reservation_tourist_info {
    background-color: #f3f3f3;}

.reservation .reservation_tourist_info .note-for-adding-info {
    margin-top: 5rem;}

.reservation .btn-outline-primary:not(:disabled):not(.disabled):active,
.reservation .btn-outline-primary:not(:disabled):not(.disabled).active,
.reservation .show > .btn-outline-primary.dropdown-toggle {
    background-color: #1a4e68;
    border-color: #1a4e68;
}

.reservation .btn-outline-primary {
    color: #1a4e68;
    border-color: #1a4e68;
}

.reservation .btn-outline-primary:hover {
    color: #ffffff;
    background-color: #1a4e68;
    border-color: #1a4e68;
}

.reservation .hotel-comment-opener {
    color: #023b58;}
.reservation .hotel-comment-opener span {
    font-size: 1rem;}

.reservation .hotel-comment-opener[aria-expanded="true"] {
    display: none;
}

.reservation .hotel-comment-container {
    height: auto !important;
    background-color: #f3f3f3;
}

.reservation .reservation_room_info[aria-expanded="true"] i.fa-chevron-down {
    transform: rotate(
            180deg
    );
    transition: 0.5s;
}

.reservation .reservation_room_info[aria-expanded="false"] i.fa-chevron-down {transition: 0.5s;}

/*.reservation .add-more-rooms[aria-expanded="false"] {*/
    /*display: block;*/
    /*transition: opacity 1s ease-out;*/
    /*opacity: 1;*/
/*}*/

/*.reservation .add-more-rooms {*/
/*    -moz-animation: hideAddingMoreRoomsBtn 0s ease-out 2s forwards;*/
/*    !* Firefox *!*/
/*    -webkit-animation: hideAddingMoreRoomsBtn 0s ease-out 2s forwards;*/
/*    !* Safari and Chrome *!*/
/*    -o-animation: hideAddingMoreRoomsBtn 0s ease-out 2s forwards;*/
/*    !* Opera *!*/
/*    animation: hideAddingMoreRoomsBtn 0s ease-out 2s forwards;*/
/*    -webkit-animation-fill-mode: forwards;*/
/*    animation-fill-mode: forwards;*/
/*}*/
/*@keyframes hideAddingMoreRoomsBtn {*/
/*    to {display: none;}*/
/*}*/
/*@-webkit-keyframes hideAddingMoreRoomsBtn {*/
/*    to {display: none;}*/
/*}*/

/*:not*/

/*
================================================================================
|                                     BOOKING FORM CLIENT INFO                |
================================================================================
*/
.reservation .reservation_client_info {
    background-color: #f3f3f3;}

/*Individual client*/
.reservation .reservation_client_info .phone-number-note {
    margin-top: 12.8rem;}
/*Organization client*/
.reservation .reservation_client_info .phone-number-note[data-client-type='1'] {
    margin-top: 47.3rem;}
.reservation .reservation_client_info .client-name-label,
.reservation .reservation_client_info .client-name-note {
    margin-top: 3.3rem;}

.reservation .payment-type-logo {
    height: 43px;
}

.bs-tooltip-top > .tooltip-inner,
.bs-tooltip-bottom > .tooltip-inner {
background-color: #012839;}

.bs-tooltip-auto[x-placement^=bottom] .arrow::before,
.bs-tooltip-bottom .arrow::before {
    border-bottom-color: #012839;}
.bs-tooltip-auto[x-placement^=top] .arrow::before,
.bs-tooltip-top .arrow::before {
    border-top-color: #012839;}

.reservation .payment-type {
    border-top: 1px #ccc solid;
    padding: 1rem 1rem 1rem 0;
}

.reservation .payment-type:last-child {
    border-bottom: 1px #ccc solid;
}

.reservation .payment-type .note{
    margin: 0.2rem;}

.reservation .link {
    padding: 0.5rem 0;
    display: block;
    font-style: italic;
    color: #009cdf; }
.reservation .link:hover {
    color: #e63023;
    text-decoration: none; }
.reservation .form-item {
    background-color: #dcecf5;
    color: #023b58;
    padding: 1rem;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
.reservation .form-item h4 {
    padding-bottom: 1rem; }
.reservation .form-item .form-row label {
    margin-top: 1rem; }
.reservation .form-item .btn {
    color: #023b58;
    min-width: 150px; }

.reservation .form-item .btn[type=submit] {
    color: #fff;}
.reservation .dropdown-toggler {
    position: relative; }
.reservation .dropdown-toggler:after {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    width: 0.75em;
    height: 0.75em;
    transform: rotate(-45deg);
    box-sizing: border-box;
    top: 30%;
    border-top: 2px solid transparent;
    border-right: 2px solid transparent;
    border-left: 2px solid #023b58;
    border-bottom: 2px solid #023b58; }
.reservation .dropdown-toggler.collapsed:after {
    top: 50%;
    border-left: 2px solid transparent;
    border-bottom: 2px solid transparent;
    border-top: 2px solid #023b58;
    border-right: 2px solid #023b58; }

.reservation-list-row a {
    width: 100%;
    display: block;
    text-decoration: none;
    padding: 0.75rem;
}

.ellipsis {
    text-overflow: ellipsis;
    /* Required for text-overflow to do anything */
    white-space: nowrap;
    overflow: hidden;
}

.collapse-toggler, .collapse-toggler-mobile { display: none; }
.suggested-offers-text { display: block }
.suggested-offers-text-mobile {display: none}

.hotel-reviews {display: block;}
.hotel-reviews-mobile {display: none;}

.hotel-reviews-content {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    height: 100%;
}

.hotel-reviews-content > div:nth-child(1) {
    display: flex;
    flex-direction: column;
}
.hotel-reviews-content > div > span:nth-child(1) { font-size: 22px; }
.hotel-reviews-content .badge {
    border-radius: 7px;
    background-color: rgba(2, 59, 88, 0.9);
    color: #ffffff;
}

.hotel-description-container p {
    white-space: pre-line;
    line-height: 20px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
    body {
        min-height: 100vh;
        width: 100%;
        display: flex;
        flex-direction: column; } }
@media screen and (max-width: 1200px) {
    .hotels-list.results-list .result_item .hotel-info .additional_info {
        margin-left: 0;}

    .hotels-list.results-list .result_item .hotel-info .additional_info .additional_info__head {
        padding-top: 0.5rem;}

    .reservation .reservation_summary_info .hotel_info {
        padding: 0.5rem 0 0.5rem 0.5rem;}

    .reservation .reservation_summary_info .hotel_image {
        padding-right: 0.5rem;
        padding-left: 0.5rem;}
    .reservation .reservation_summary_info .offer_info .staying-period-info.package {
        flex-basis: 100%;}

    .reservation .reservation_summary_info .offer_info .outbound-flight-info,
    .reservation .reservation_summary_info .offer_info .inbound-flight-info {
        padding: 0;
        flex-basis: 100%;}

    .reservation .reservation_summary_info .offer_info {
        padding: 1rem 3rem;}

    .reservation .reservation_summary_info .offer_info .display-flight-info {
        padding-left: 0;}

    .reservation .reservation_summary_info .offer_info .flight-direction-line {
        width: 65%;}
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .block .banner-title {
        font-size: 7em; }

    .hotel-pills.nav-pills .nav-link {
        padding: 1rem 0.5rem;
        font-size: 1.4em; }
    .result_item .price-info .additional_info__footer {
        padding: 0 1rem 1rem;}
    .reservation .reservation_summary_info .offer_info .flight-direction-line {
        width: 52%;}
    .logo { max-height: 75px; }
}

@media (min-width: 768px) {
    .modal-content {
        -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125);
        box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125);
    }
    .homepage-row .element-with-hotels .left_part .card {height: 100%;}
    .homepage-row .icon-content-wrapper .item.first-col {margin-bottom: 3rem;}

    .popular-facilities-container .popular-facilities,
    .facilities-container .facilities-sections {
        column-count: 3;
        -webkit-columns: 3;
        -moz-columns: 3;
        column-gap: 40px;
        -webkit-column-gap: 40px;
    }

    .popular-facilities-container .popular-facility-item,
    .facilities-container .facilities-section {
        page-break-inside: avoid;
        break-inside: avoid-column;
    }

    .reviews-container .reviews {padding-left: 0;}
    .reviews .review-item {padding: 0.3rem 0.5rem 0.5rem 0.5rem;}

    .blog-container .article {
        grid-template-columns: .75fr 1fr;
    }
}

@media screen and (max-width: 767px) {
    .bottom_shadow {padding-bottom: 0 !important;}

    #search_filters {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1002;
        width: 100%;
        height: 100%;
        overflow-y: scroll;
        margin-top: 0;
        padding: 0 0.5rem;
        background-color: #ffffff;
    }

    .filters-header-mobile {
        display: flex;
        justify-content: space-between !important;
        color: #114965;
        font-weight: 700;
        font-size: 1.1rem;
        padding: 1rem 0;
    }

    .filters-results-mobile {
        display: block;
        background-color: #114965;
        color: #fff;
        align-self: flex-end;
        font-weight: 600;
        position: fixed;
        bottom: 10%;
        width: 300px;
        z-index: 1003;
        left: 50%;
        margin-left: -150px;
    }

    .open-filters-mobile {
        display: block; }
    .hotels-offers-summary {flex-wrap: wrap;}
    .all-inclusive-tag-page-filters {flex-basis: 100%;}

    .reservation .reservation_summary_info .offer_info {
        padding: 1rem 0.5rem;}
    .reservation .reservation_summary_info .offer_info .flight-direction-line {
        width: 40%;}
    .reservation .reservation_client_info .client-name-label {
        margin: 0;}
    .reservation .reservation_summary_info .hotel_name {
        font-size: 1.1rem;}
    .breadcrumb .breadcrumb-item,
    .breadcrumb .dropdown-menu .breadcrumb-menu-item {
        font-size: 0.7em; }
    .input-group > .form-control {
        border-right-color: #ced4da; }
    .reservation .reservation_tourist_info .note-for-adding-info {
        margin-top: 0;
        margin-bottom: 1rem;
    }

    .filter-offers {
        position: fixed;
        z-index: 4;
        width: 80%;
        bottom: 4%;
        left: 10%;
        margin: 0; }

    .filter-offers .close-panel {
        display: none; }

    .filter-offers .collapse-toggler ~ .collapse-item {
        position: fixed;
        top: 0;
        left: 0; }

    .offers-container {padding-top: 0;}
    .suggested-offers-text-mobile {display: block}
    .suggested-offers-text { display: none }

    .swiper-button-prev, .swiper-button-next {
        top: 40%;
        width: calc(var(--swiper-navigation-size) / 44 * 27) !important;
        height: var(--swiper-navigation-size) !important;
        margin-top: calc(0 - (var(--swiper-navigation-size) / 2));
        color: var(--swiper-navigation-color, var(--swiper-theme-color));
        font-size: 2rem;
    }

    .block .banner-title {
        font-size: 5em; }

    .place_information .nav-pills .nav-item .nav-link {
        padding: 1rem 0;
        font-size: 0.8em; }

    .filter-offers .search_box {
        height: 100%;
        overflow-y: auto;
        background-color: #18496b; }
    .search_box {
        padding: 1em 1rem; }

    .two_parts {
        flex-wrap: wrap; }
    .two_parts > div {
        flex-basis: auto;
        width: 100%; }

    .two_parts > div.left_part {flex-basis: auto;}
    .two_parts > div.right_part {flex-basis: auto;}

    .nav.hotel-pills.nav-pills .nav-link {
        padding: 1rem 0.35rem;
        background-color: transparent;
        font-weight: 800;
        font-size: 1.1em; }

    .hotels-list.results-list .result_item h4 {
        font-size: 1rem; }

    .sort-1 {
        color: inherit;
        order: 1; }

    .sort-2 {
        color: inherit;
        order: 2; }

    .sort-3 {
        color: inherit;
        order: 3; }

    .sort-4 {
        color: inherit;
        order: 4; }
    .collapse-toggler-mobile {
        display: block;
        width: 100%;
        background-color: #114965;
        color: #fff;
        position: relative;
        border-radius: 0;
        padding-bottom: 0 }
    .collapse-toggler {
        display: block;
        width: 100%;
        background-color: #114965;
        color: #fff;
        position: relative; }
    .collapse-toggler:after {
        content: '';
        display: block;
        position: absolute;
        right: 10px;
        width: 0.75em;
        height: 0.75em;
        transform: rotate(-45deg);
        box-sizing: border-box;
        top: 30%;
        border-top: 2px solid transparent;
        border-right: 2px solid transparent;
        border-left: 2px solid white;
        border-bottom: 2px solid white; }
    .collapse-toggler.close-panel:after {
        top: 45%;
        border-left: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-top: 2px solid white;
        border-right: 2px solid white; }
    .filter-offers .collapse-toggler ~ .collapse-item {height: 95vh;}
    .collapse-toggler ~ .collapse-item {
        -webkit-transition: all 0.2s linear;
        -moz-transition: all 0.2s linear;
        -ms-transition: all 0.2s linear;
        -o-transition: all 0.2s linear;
        transition: all 0.2s linear; }
    .collapse-toggler ~ .collapse-item.closed {
        height: 0;
        overflow: hidden; }

    /* Managing cookies view for mobile */
    #gdpr-cookie-container {padding-bottom: 0 !important;}

    #gdpr-cookie-container .wrapper > div:first-child {
        flex-direction: column;
    }

    #gdpr-cookie-message {flex-basis: 100%;}
    .gdpr-cookie-action.desktop{display: none !important;}
    .gdpr-cookie-action.mobile {
        display: flex !important;
        flex-basis: 100% !important;
        margin-left: 0 !important;
        gap: 10px;
    }
    .gdpr-cookie-action.mobile button {
        padding: 12px;
    }
    /* End managing cookies view for mobile */

    .logo { max-height: 50px; }
    .homepage-row .element-with-hotels .left_part .card {height: 250px;}
    .homepage-row .icon-content-wrapper .item:not(:last-of-type) {margin-bottom: 1rem;}

    .hotel-reviews {display: none;}
    .hotel-reviews-mobile {display: block;}

    .homepage-row h1,
    .homepage-row h2 {padding-bottom: 15px !important;}

    .hotel-reviews-content > div > span:nth-child(1) {
        display: flex;
        gap: 5px;
        font-size: 15px;
    }
    .hotel-reviews-mobile .hotel-reviews-content { justify-content: flex-end; }

    .popular-facilities-container .popular-facilities {
        column-count: 2;
        -webkit-columns: 2;
        -moz-columns: 2;
    }

    .facilities-container .facilities-sections {
        column-count: 1;
        -webkit-columns: 1;
        -moz-columns: 1;
    }

    .facilities-container .facilities-sections .facilities-section-items {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .facilities-container .facilities-sections .facilities-section-item-name > span {line-height: 1.3;}
    .facilities-section-item-name > span {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: .2rem;
    }
    .facilities-section-item-name .facility-availability-label {margin-left: 0;}

    .similar-properties > div:not(:last-of-type) {margin-bottom: .5rem;}
    .reviews .review-item {padding: 0 0 0.5rem 0;}

    .blog-container .article {
        grid-template-columns: 1fr;
    }

    .booking-action-bar {
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: white;
        padding: 15px;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
        z-index: 1050;
        border-radius: 12px 12px 0 0;
    }

    .booking-action-bar .see-offers-container {
        display: none;
        justify-content: space-between;
        align-items: center;
    }
    .booking-action-bar.with-prices .pick-dates-container {display: none;}
    .booking-action-bar.with-prices .see-offers-container {display: flex;}

    .booking-action-bar .see-offers-container .info {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }
    .booking-action-bar .see-offers-container .info > span:first-child {
        font-size: 16px;
        font-family: 'Lato Bold', sans-serif;
    }
}
@media screen and (max-width: 480px) {
    body {
        font-size: 13px !important; }

    h2 {
        font-size: 1.9em; }

    .reservation .dropdown-toggler:after {
        top: 15%; }
    .request-available-section {
        min-height: 50vh; }

    .card .image_block__head > div:first-child {
        font-size: initial; }
    .card .image_block__head > div:last-child .semibold {
        font-size: 1.1rem; }
    .card .image_block__head > div:last-child .bold {
        font-size: 1.25rem; }

    .btn.btn-dark-green {
        font-size: 0.75rem; }

    .hotel-menu li a {
        font-size: 1.5rem; }
    .hotel-menu li a .desc {
        font-size: 0.6rem; }

    .card .image_block__head.hotel_card_head .hotel_card_head__tooltip {
        top: 100%;
        right: 0;
        font-size: 1em; }

    .reservation .sumar {
        padding: 0.5rem; }
    .reservation .reservation_item .card-header {
        padding: 0.5rem 0.75rem; }
    .reservation .reservation_item .card-body {
        padding: 0.75rem; }
    .reservation .reservation_item .hotel-name {
        margin-left: 1rem;
        font-size: 0.7rem; }
    .reservation .reservation_item h3 {
        font-size: 1.4em; }
    .reservation .reservation_item .availability {
        display: block;
        margin-left: 0.9rem;
        margin-top: 0.25rem;
        font-size: 0.75rem; }
    .reservation h3 {
        font-size: 1.3em;
        line-height: 1; }
    .reservation .hotel-location {
        font-size: 1.1em; }

    .hotel_description .hotel-name h3 {
        font-size: 1.35em;
        line-height: 1; }
    .hotel_description .hotel-location {
        font-size: 1.1em; }
    .titleh1 {font-size: 20px}

    .hotels-list.results-list .result_item .hotel-info .additional_info .additional_info__footer {
        flex-direction: column;
        align-items: flex-start;
        padding: 1rem 2rem 0 1rem;
    }

    .hotels-list .result_item .hotel-info .additional_info .additional_info__footer .search-param-container {
        width: 100%;
        margin-right: 0;
        text-align: right;
    }
    .hotels-list .result_item .hotel-info .additional_info .additional_info__footer .show-offers-container {
        width: 100%;
        text-align: center;
        margin-bottom: 1rem;
        margin-top: 1rem;
    }
    .hotels-list .result_item .hotel-info .additional_info .additional_info__footer .min-price-container {
        margin-right: 0;}

    .line-separator {
        margin-right: 1rem;
    }
}

/*bootstrap 4 col-sm ≥576px*/
@media screen and (max-width: 575px) {
    .results-list .offers.result_item .tourists-info {
        border-right: none;}
    .result_item .price-info .additional_info__footer {
        padding: 0 0.5rem 0.5rem;}
    .result_item .price-info .additional_info__body {
        padding: 1rem 0.5rem;}
    .results-list .result_item .price-info .additional_info .additional_info__head {
        padding: 0 0.5rem;}
    .result_item .tourists-info .additional_info__body,
    .result_item .dates-info .additional_info__body {
    padding: 0.5rem; }
    .result_item .dates-info .additional_info .display-flight-info,
    .result_item .tourists-info .additional_info .display-services-info {
        padding: 0.5rem;}
    .inbound-flight-info-container,
    .services-info-container .advantages-section-header {
        margin-top: 1rem;}
    .results-list .offers.result_item .different-period {
        text-align: center;}
    .reservation .reservation_summary_info .offer_info .flight-direction-line {
        width: 25%;}
    .buy-now-and-save-alert {
        text-align: center;
        left: 20px;
        top: 80% !important;
    }
    .buy-now-and-save-alert > p:nth-child(1) {
        margin-right: 5px;}
    .buy-now-and-save-alert > p:nth-child(2) {
        font-size: 1rem !important;}
    .buy-now-and-save-alert > p {
        display: inline;}
}

.inline-searchform {
    display: flex;
    justify-content: center; }
.inline-searchform > form {
    width: 100%; }
.inline-searchform .ui-spinner-input {
    margin-top: 0;
    padding: .2em 0 0 0.5em; }

.form-row > [class*="item-"] {
    padding-right: 5px;
    padding-left: 5px; }

.row > [class*="item-"] {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px; }

@media screen and (max-width: 991px) {
    .item-0-0, .item-0, .item-1, .item-2, .item-3, .item-4 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .item-kids {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .item-kids-inner {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .homepage-row .element-with-hotels .hotel-item > div:first-of-type {flex-basis: 65%;}
}

ul.main-nav.navbar-nav .nav-link {
    font-weight: 600;
    color: black; }

nav.navbar .navbar-nav li .nav-link:hover, nav.navbar .navbar-nav li .nav-link:focus {
    color: #e63023; }
nav.navbar .navbar-nav li.active .nav-link {
    color: #e63023; }

nav.navbar .navbar-site {
    color: #fff;
    font-size: 1.7rem;
    padding-bottom: .3125rem;
    padding-right: 15px;
    font-weight: 600;
    text-decoration: none;
}

nav.navbar .navbar-separator {
    width: 1px;
    height: 28px;
    background-color: white;
}
nav.navbar .navbar-icons {
    gap: 15px;
    align-items: center;
    color: #fff;
}

nav.navbar .navbar-icons a { color: #fff; }
nav.navbar .navbar-icons .navbar-icon {
    font-size: 1.25rem;
    padding: .5rem;
}

nav.navbar .navbar-icons .navbar-toggler {
    background: none;
    border: none;
}

.ui-spinner-input {
    min-width: 40px;
    height: auto;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0.5em; }

.hotel-pills .ui-spinner-input {
    margin-top: 0;
    padding: .2em 0 0 0.5em; }

a.ui-spinner-up, a.ui-spinner-down {
    background-repeat: no-repeat;
    background-size: 100%;
    width: 12px;
    right: 3px; }

a.ui-spinner-up {
    background-image: url(../img/icons/spinner_up.png);
    background-position-y: 80%; }

a.ui-spinner-down {
    background-image: url(../img/icons/spinner_down.png);
    background-position-y: 20%; }

.ui-widget.ui-widget-content.ui-spinner {
    width: 100%; }

/*input group*/
.input-group > .form-control {
    border-right-color: transparent;
    font-size: 1em; }

.input-group-append {
    border: transparent; }
.input-group-append .input-group-text {
    background-color: white;
    border-left-color: transparent; }
.input-group-append .input-group-text i {
    color: #009cdf; }

.right_part .list-group-item {
    padding-left: 0;
    font-size: 1.3em;
    display: flex;
    justify-content: space-between;
    align-items: baseline; }

/*Nav bar*/
.navbar {
    padding-left: 0;
    padding-right: 0; }
.navbar .navbar-toggler {
    background-color: #ffffff;
    border-color: rgba(0, 0, 0, 0.1);
}
.navbar .navbar-toggler.collapsed .navbar-toggler-icon {
    background-size: 100%;
    background-image: url("data:image/svg+xml;charset=utf8,<svg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'><path stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/></svg>"); }
.navbar .navbar-toggler .navbar-toggler-icon {
    background-size: 50%;
    background-image: url("../img/icons/close.svg"); }
.navbar .own-bookings > a {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #ffffff;
}

.navbar .own-bookings > a > i {
    font-size: 1.5rem;
    margin-bottom: 0.3rem;
}

ul {
    list-style: none; }

/*Rewrite styles for breadcrumb*/
.breadcrumb {
    background-color: transparent;
    margin: 1rem 0;
    padding: 0; }

.breadcrumb .breadcrumb-item,
.breadcrumb .dropdown-menu .breadcrumb-menu-item {
    font-family: "Lato Bold", sans-serif;
    font-weight: 600;
    font-size: 0.8rem; }
.breadcrumb .breadcrumb-item + .breadcrumb-item::before {
    content: ">"; }
.breadcrumb .breadcrumb-item a {
    font-weight: 700;
     color: var(--main-color-dark-gray); }
.breadcrumb .breadcrumb-item a:hover {
    color: #6c757d;
    text-decoration: none; }
.breadcrumb .dropdown-toggle::after { display: none; }
.breadcrumb .dropdown-menu { padding: .5rem; }
.breadcrumb .dropdown-menu .breadcrumb-menu-item:not(:last-of-type) { margin-bottom: .7rem;}

.custom-control-label {
    line-height: 1.5; }

select.none-arrows {
    background: #fff; }

select.empty {
    padding: 0;
    height: 1em;
    font-size: 1em;
    background: transparent;
    border: none;
    line-height: inherit;
    vertical-align: bottom;
    font-weight: 600;
    color: #b1b9c0; }
select.empty:hover {
    color: #009cdf; }

.custom-select {
    background: #fff url("data:image/svg+xml;charset=utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'><path fill='%23114965' d='M2 0L0 2h4zm0 5L0 3h4z'/></svg>") no-repeat right 0.25rem center;
    background-size: 13px 15px;
    font-size: 1em;
    line-height: 1;
    padding: 0.25rem 0.25rem 0.25rem 0.5rem; }

.custom-control-label::before {
    background: #fff;
    box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.125); }

.custom-control-label-stars::before {
    top: 0.8rem; }
.custom-control-label-stars::after {
    top: 0.8rem; }
.custom-checkbox .custom-control-input:checked ~ .custom-control-label-stars::after {
    top: 1.1rem !important; }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background: #fff;
    box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.125); }

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    width: 0.5rem;
    height: 0.5rem;
    top: 0.51rem;
    left: -1.17rem;
    background-image: none;
    background-color: #cedc00;
    border-radius: 2px;
    box-shadow: inset 1px 1px 1px rgba(0, 0, 0, 0.125); 
}


/*.icon-load-relative {*/
/*    background: url(../img/loader.gif) no-repeat left top;*/
/*    background-size: contain;*/
/*    z-index: 1000;*/
/*    width: 1px;*/
/*    height: 1px;*/
/*    transform: scale(150, 100);*/
/*    margin-top:50px;*/
/*    display:none;*/
/*}*/

.no-result {
    background-color:#dd4b39 !important;
    color:#fff;
}

/*

@media screen and (-webkit-min-device-pixel-ratio:0) {
  select,
  textarea,
  input {
    font-size: 16px;
  }
  select:focus,
  textarea:focus,
  input:focus {
    font-size: 16px;
    background: #eee;
  }
}*/

/*# sourceMappingURL=styles.css.map */

div.error-summary {
    background-color:#dd4b39 !important;
    color:#fff;
    padding:10px;
}

div.error-summary ul {
    margin-top: 10px;
    margin-bottom:10px;
    padding-left:15px;
}

div.error-summary ul li {
    margin-left:10px;
    list-style: disc;
}


.form_horizontal .select2-container .select2-selection--single {
    height: 31px !important;
}

.form_horizontal .select2-selection__arrow {
    height: 31px !important;
}

.form_horizontal .select2-selection__rendered {
    line-height: 31px !important;
}


.select2-container .select2-selection--single {
    height: 39px !important;
}
.select2-selection__arrow {
    height: 38px !important;
}

.select2-selection__rendered {
    line-height: 35px !important;
}

ul.pagination li.page-item span {
    position: relative;
    display: block;
    padding: 0.5rem 0.75rem;
    margin-left: -1px;
    line-height: 1.25;
    color: #007bff;
    background-color: #fff;
    border: 1px solid #dee2e6;
}

.spacing-no-wrap {
    white-space: nowrap;
}

div.show-more-rooms-div
{
    background-color: white !important;
    margin: 1rem 0;
    padding: 5px;
    text-align:center;
}

select.age {
    padding-right:14px;
}

div.has-error div.help-block {
    color: #dd4b39;
    padding: 5px;
}

div.error-summary ul li {
    padding-bottom:3px;
}


/* Cookie Dialog */
#gdpr-cookie-container {
    z-index: 1035;
    background-color: #3B3646;
    position: fixed;
    bottom: 0;
    padding-bottom: 25px;
}
#gdpr-cookie-container .wrapper > div:first-child ,
#gdpr-cookie-container {
    display: flex;
}

#gdpr-cookie-message {
    flex-basis: 75%;
}
.gdpr-cookie-action.desktop {display: flex;}
.gdpr-cookie-action.mobile {display: none;}
.gdpr-cookie-action {
    flex-basis: 20%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    margin-left: auto;
}
.gdpr-cookie-action button:disabled {
    opacity: 0.3;
}
#gdpr-cookie-message,
.gdpr-cookie-action {padding: 10px 0;}

#gdpr-cookie-message div:last-child {margin-top: 10px;}

#gdpr-cookie-message h4 {
    color: #EEEEEE;
    font-family: 'Quicksand', sans-serif;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 10px;
}
#gdpr-cookie-types h5 {
    color: #EEEEEE;
    font-family: 'Quicksand', sans-serif;
    font-size: 15px;
    font-weight: 500;
    margin-bottom: 0;
    text-transform: none;
}
#gdpr-cookie-message p, #gdpr-cookie-types ul {
    color: white;
    font-size: 15px;
    line-height: 1.5em;
}

#gdpr-cookie-types li {
    width: 49%;
    display: inline-block;
}
#gdpr-cookie-message a {
    color: #EEEEEE;
    text-decoration: none;
    font-size: 15px;
    padding-bottom: 2px;
    border-bottom: 1px dotted rgba(255,255,255,0.75);
    transition: all 0.3s ease-in;
}
#gdpr-cookie-message a:hover {
    color: white;
    border-bottom-color: #EEEEEE;
    transition: all 0.3s ease-in;
}
.gdpr-cookie-action button {
    border: none;
    background: #fff;
    color: #114965;
    font-family: 'Quicksand', sans-serif;
    font-size: 15px;
    padding: 7px;
    border-radius: 3px;
    cursor: pointer;
    transition: all 0.3s ease-in;
}

#gdpr-cookie-types input[type="checkbox"] {
    float: none;
    margin-top: 0;
    margin-right: 5px;
    -webkit-appearance: checkbox;
}

#gdpr-cookie-types {
    padding: 10px 0;
}

.fa-6 {
    font-size:14em;
}

i.hotel-stars {
    color: #FFBC0B;
}

/*
================================================================================
|                                     TABS                                 |
================================================================================
*/
.nav-tabs-custom > .nav-tabs {
    margin: 0;
    border-bottom-color: #f4f4f4;
    border-top-right-radius: 3px;
    border-top-left-radius: 3px;
}

.nav-tabs-custom > .tab-content {
    background: #fff;
    padding: 10px;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px;
}

.nav-tabs-custom > .nav-tabs > li:first-of-type {
    margin-left: 0;
}

.nav-tabs-custom > .nav-tabs > li {
    border-top: 3px solid transparent;
    margin-bottom: -2px;
    margin-right: 5px;
}

.nav-tabs-custom > .nav-tabs > li.active {
    border-top-color: #3c8dbc;
}

.nav-tabs-custom > .nav-tabs > li:first-of-type.active > a {
    border-left-color: transparent;
}

.nav-tabs-custom > .nav-tabs > li > a,
.nav-tabs-custom > .nav-tabs > li > a:hover {
    margin: 0;
}

/*
================================================================================
|                                     LIST GROUP                                 |
================================================================================
*/
.list-group-unbordered > .list-group-item {
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    padding-left: 0;
    padding-right: 0;
}

.list-group a {
    color: #3c8dbc;
}

.list-group a:hover,
.list-group a:active,
.list-group a:focus {
    outline: none;
    text-decoration: none;
    color: #72afd2;
}

/*
 * Component: modal
 * ----------------
 */
.modal {
    background: rgba(0, 0, 0, 0.3);
}
.modal-content {
    border-radius: 0;
    -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125);
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.125);
    border: 0;
}
.modal-header {
    border-bottom-color: #f4f4f4;
}
.modal-footer {
    border-top-color: #f4f4f4;
}
.modal-primary .modal-header,
.modal-primary .modal-footer {
    border-color: #307095;
}
.modal-warning .modal-header,
.modal-warning .modal-footer {
    border-color: #c87f0a;
}
.modal-info .modal-header,
.modal-info .modal-footer {
    border-color: #0097bc;
}
.modal-success .modal-header,
.modal-success .modal-footer {
    border-color: #00733e;
}
.modal-danger .modal-header,
.modal-danger .modal-footer {
    border-color: #c23321;
}

/*
 * Component: Progress Bar
 * -----------------------
 */
.progress,
.progress > .progress-bar {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.progress,
.progress > .progress-bar,
.progress .progress-bar,
.progress > .progress-bar .progress-bar {
    border-radius: 1px;
}
/* size variation */
.progress.sm,
.progress-sm {
    height: 10px;
}
.progress.sm,
.progress-sm,
.progress.sm .progress-bar,
.progress-sm .progress-bar {
    border-radius: 1px;
}
.progress.xs,
.progress-xs {
    height: 7px;
}
.progress.xs,
.progress-xs,
.progress.xs .progress-bar,
.progress-xs .progress-bar {
    border-radius: 1px;
}
.progress.xxs,
.progress-xxs {
    height: 3px;
}
.progress.xxs,
.progress-xxs,
.progress.xxs .progress-bar,
.progress-xxs .progress-bar {
    border-radius: 1px;
}
/* Vertical bars */
.progress.vertical {
    position: relative;
    width: 30px;
    height: 200px;
    display: inline-block;
    margin-right: 10px;
}
.progress.vertical > .progress-bar {
    width: 100%;
    position: absolute;
    bottom: 0;
}
.progress.vertical.sm,
.progress.vertical.progress-sm {
    width: 20px;
}
.progress.vertical.xs,
.progress.vertical.progress-xs {
    width: 10px;
}
.progress.vertical.xxs,
.progress.vertical.progress-xxs {
    width: 3px;
}
.progress-group .progress-text {
    font-weight: 600;
}
.progress-group .progress-number {
    float: right;
}
/* Remove margins from progress bars when put in a table */
.table tr > td .progress {
    margin: 0;
}
.progress-bar-light-blue,
.progress-bar-primary {
    background-color: #3c8dbc;
}
.progress-striped .progress-bar-light-blue,
.progress-striped .progress-bar-primary {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-green,
.progress-bar-success {
    background-color: #00a65a;
}
.progress-striped .progress-bar-green,
.progress-striped .progress-bar-success {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-aqua,
.progress-bar-info {
    background-color: #00c0ef;
}
.progress-striped .progress-bar-aqua,
.progress-striped .progress-bar-info {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-yellow,
.progress-bar-warning {
    background-color: #f39c12;
}
.progress-striped .progress-bar-yellow,
.progress-striped .progress-bar-warning {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-red,
.progress-bar-danger {
    background-color: #dd4b39;
}
.progress-striped .progress-bar-red,
.progress-striped .progress-bar-danger {
    background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.campaign-section {
    position: fixed;
    bottom: 0;
    z-index: 9999;
}

.campaign-section .alert {
    background-color: #023b58;
    color: #ffffff;
    border-radius: 0;
    padding: 0 15px;
    height: 4rem;
}

.campaign-section .alert button {
    height: 100%;
    color: #ffffff;
}

#campaign-remaining-time-timer {
    margin-left: 0.6rem;
    display: inline-block;
}

#campaign-remaining-time-timer div {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    padding-top: 0.4rem;
}

#campaign-remaining-time-timer div:nth-of-type(1),
#campaign-remaining-time-timer div:nth-of-type(2) {
    margin-right: 0.6rem;
}

#campaign-remaining-time-timer div:nth-of-type(3) {
    margin-right: 0.2rem;
}

#campaign-remaining-time-timer .remaining-time-item {
    background-color: #ffffff;
    color: #000000;
    padding: 5px;
    font-size: 16px;
    border-radius: 3px;
    margin: 0 2px;
}

#campaign-remaining-time-timer .remaining-time-item-text {
    display: inline-block;
    margin-top: 1rem;
}

.form-group.required .has-star:not(.custom-control-label):not(.custom-file-label)::after, .is-required::after {
    content: "*";
    margin-left: 3px;
    font-weight: normal;
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    color: tomato;
}

.hotel-menu li a.review-type.positive:hover {color: green;}
.hotel-menu li a.review-type.negative:hover {color: red;}
.hotel-menu li a.review-type.positive.active {color: green;}
.hotel-menu li a.review-type.negative.active {color: red;}

.hotel-review-ratings .slider.slider-horizontal {
    pointer-events: none;
}

.logout {margin: 0; font-weight: 700; color: #009cdf;}
.logout:hover {text-decoration: none;}
.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

span.display-flight-info[aria-expanded="true"] > i,
span.display-services-info[aria-expanded="true"] > i {
    transform: rotate(
            180deg
    );
    transition: 0.5s;;
}

span.display-flight-info[aria-expanded="false"] > i,
span.display-services-info[aria-expanded="false"] > i {
    transition: 0.5s;;
}

.display-flight-info,
.display-services-info {
    padding: 1rem;
    cursor: pointer;
    color: #176599;
}

.flight-info-container,
.services-info-container {
    padding: 1.5rem 1rem;
    height: auto !important;
}

.flight-info-container .flight-info-note {
    padding-top: 1rem;
}

.flight-info-container .flight-info-note > div {
    border-top: 1px solid #ccc;
    padding-top: 1rem;
    font-size: 0.8rem;
}

.flight-info-container .outbound-flight-departure,
.flight-info-container .outbound-flight-arrival,
.flight-info-container .inbound-flight-departure,
.flight-info-container .inbound-flight-arrival {
    font-size: 1rem;
}

.flight-info-container .baggage-info {
    font-size: 0.8rem;
}

.services-info-container .advantages-section-info,
.services-info-container .fas.fa-dot-circle {
    color: #176599;}

.services-info-container .advantages-section-header {
    margin-left: 1px;}

.ui-datepicker {
    z-index: 1151 !important;
}

.hotel-offers-loader-container.hotel-page-loader {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    border: 1px solid #cccccc;
    box-shadow: 0 1px 5px -1px rgb(0 0 0 / 50%);
}

.buy-now-and-save-alert {
    border: 1px solid #ccc;
    background: #70cbf4;
    position: fixed;
    right: 0;
    top: 45%;
}

.buy-now-and-save-alert > p:nth-child(2) {
    font-size: 1.5rem;}

.buy-now-and-save-alert.show {
    animation: buy_now_and_save_show_slide 1s 2s ease forwards;
    transform: translateX(100%);
}
@keyframes buy_now_and_save_show_slide {
    0%{
        transform: translateX(100%);
    }
    40%{
        transform: translateX(-10%);
    }
    80%{
        transform: translateX(0%);
    }
    100%{
        transform: translateX(-10px);
    }
}
.buy-now-and-save-alert.hide {
    animation: buy_now_and_save_hide_slide 1s ease forwards;}
@keyframes buy_now_and_save_hide_slide {
    0%{
        transform: translateX(-10px);
    }
    40%{
        transform: translateX(0%);
    }
    80%{
        transform: translateX(-10%);
    }
    100%{
        transform: translateX(100%);
    }
}

.package-transport-info,
.no-transport-info {
    color: #176599;
    font-weight: bold;
}

#gdpr-cookie-message a.mobile-link,
#gdpr-cookie-accept.mobile-accept {display: none;}

/*
================================================================================
|                                     NEW HOMEPAGE                                 |
================================================================================
*/
.top-navbar, .bottom-navbar {background-color: rgba(2, 59, 88, 0.9);}
.top-navbar {border-bottom: 1px solid #fff;}
.top-navbar .nav-link {color: #fff}

.company-call-center {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    color: #ffffff;
    background-color: rgba(2, 59, 88);
    border-radius: 30px;
    padding: 4px 30px 4px 14px;
}
.company-call-center:hover,
.navbar-right .user-info:hover {
    background-color: rgba(2, 59, 88, 0.5);
}
.company-call-center a {
    color: #ffffff;
    text-decoration: none;
}
.company-call-center i.fa-phone-alt { font-size: 1.25em; }

.navbar-brand { margin-right: 0; }

.navbar-right {
    display: flex;
    gap: 15px;
    position: relative;
}

.navbar-right .user-info {
    color: #fff;
    background-color: rgba(2, 59, 88);
    border-radius: 30px;
    padding: 4px 10px 4px 4px;
    cursor: pointer;
}

.navbar-right .user-info .nav-link {
    height: 100%;
    display: flex;
    align-items: center;
}

.navbar-right .user-info .nav-link > span {
    padding: 10px;
    border-radius: 50%;
    border: 1px solid rgb(245, 245, 245);
    background-color: rgb(245, 245, 245);
    margin-right: 10px;
    box-sizing: border-box;
}

.navbar-right .user-info .nav-link { padding: 0; }

.navbar-right .user-info .fa-user {
    color: rgb(60, 60, 60);
}

#main-search-tourists-dropdown-btn {
    padding: 0.47rem 0.75rem;
    background-color: #fff;
    border-color: #fff;
    color: #495057;
    font-size: 100%;
}
#main-search-tourists-dropdown-btn:after {content: none;}
#main-search-tourists-dropdown .dropdown-menu {
    position: relative !important;
    transform: none !important;
    font-size: 100%;
}

#data_plecare {border-right-color: #ccc;}

.box-shadow {box-shadow: 0 1px 10px rgb(0 0 0 / 50%);}
.homepage-row .image_block__head > .title {font-size: 1.5rem;}
.homepage-row .image_block__head > .title-blue {color: #114965;}
.homepage-row .image_block__head > .title-white {color: #ffffff;}
.btn-blue {
    color: #fff;
    background-color: #114965;
    border-color: #114965;
}
.btn-red {
    color: #fff;
    background-color: #d40e14;
    border-color: #d40e14;
}
.height-250 {height: 250px;}
.height-500 {height: 500px;}

.btn-blue:hover, .btn-red:hover {color: #ffffff;}
/*.homepage-row .element-with-hotels .right_part > p,*/
/*.homepage-row .element-with-hotels .right_part > div a {color: #4c4c4c}*/

.homepage-row .element-with-hotels .min-price {border-radius: 3px;}

.homepage-row .element-with-hotels .hotel-item:not(:first-of-type) {border-top: 1px solid rgba(0, 0, 0, 0.1);}

.homepage-row .element-with-hotels .left_part .card {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.homepage-row .element-with-hotels .left_part .card > img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    transform: translate(-50%, -50%);
}

#newsletter-form .form-group {flex-basis: 70%; margin-bottom: 0;}
#newsletter-form .submit-wrapper {flex-basis: 30%;}
#newsletter-form .submit-wrapper button {height: fit-content;}
#newsletter-form .submit-wrapper span {
    color: #114965;
    font-weight: 600; }
.homepage-row .newsletter-wrapper {
    background-color: #cccccc;
    padding: 1rem 0;
}
#newsletter-form .help-block,
#home-page-search-form .help-block {
    max-width: 100%;
    margin-top: 0.2rem;
    font-size: .875rem;
    line-height: 1;
    color: #fff;
    background-color: rgba(220,53,69,.8);
    border-radius: 0.2rem;
}

.homepage-row .icon-content-wrapper i,
.homepage-row .icon-content-wrapper .info {color: #114965;}
.homepage-row .icon-content-wrapper .info > span:last-child {line-height: 1.25;}
.homepage-row .icon-content-wrapper > div:first-of-type {
    border-top: 2px solid #114965;
    border-bottom: 2px solid #114965;
    padding: 1rem 0;
}

.homepage-row .row-heading {
    font-family: Ambit,tuitype,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    letter-spacing: .03em;
    font-size: 24px;
    padding-left: 15px;
    padding-bottom: 0;
}

.homepage-row .text-body {padding-left: 15px;}

.scrollable {
    position: relative;
    overflow: auto;
}

.disable-scrollbars::-webkit-scrollbar {
    background: transparent; /* Chrome/Safari/Webkit */
    width: 0;
}

.disable-scrollbars {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none;  /* IE 10+ */
}

.hotel-page-left-search {
    height: 100%;
    padding: 1rem;
    background-color: #17496b;
    color: #ffffff;
}

#about-to-leave-page-modal .modal-header {
    color: #ffffff;
    background-color: #114965;
    border-color: #114965;
    border-radius: 0;
}

#about-to-leave-page-modal .container-fluid > div:first-of-type {
    font-size: 1.25em;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #4c4c4c;
}
#about-to-leave-page-modal .hotels-section .card-img {min-height: 260px;}

.hotel-notice-1 {
    color: #ffffff;
    background-color: #114965;
    border-color: #114965;
    border-radius: 3px;
}

.hotel-notice-1 > i {flex-basis: 10%;}

.hotel-notice-1 > span {
    flex-basis: 90%;
    /*text-align: center;*/
    font-size: 1rem;
}

.hotel-notice-2 {
    background-color: #e9ecff;
    border-color: #e9ecff;
    border-radius: 3px;
}

.hotel-notice-2 > i {
    flex-basis: 10%;
    color: green;
}

.hotel-notice-2 > div {
    flex-basis: 90%;
}

.reservation-context {background-color: #e2f8c0;padding: 0 15px;}
.reservation-context p {color: #4c4c4c;}
.available-reservation-context {
    color: #fff;
    background-color: #28a745;
    border-color: #28a745;
    font-weight: 700;
    padding: 10px 15px;
}
.status-available {color: #28a745;}
.link-arrow-size {font-size: 0.7rem;}

.category-title {
    font-size: 1.3rem;
    font-family: "Lato Black", sans-serif;
    font-weight: 700;
}
.sub-category-title {
    font-size: 1.1rem;
    font-family: "Lato Bold", sans-serif;
    font-weight: 600;
}

.facilities-container .facilities-section-item-option::before {
    content: "";
    display: inline-block;
    width: 3px;
    height: 3px;
    margin: 3px 5px;
    border-radius: 50%;
    background-color: #6b6b6b;
}

.facility-availability-label {
    font-size: 0.7rem;
    background-color: #f2f2f2;
    padding: 2px;
    margin-left: .25rem;
}

.facilities-container > div:not(:first-of-type) {margin-top: 1.5rem;}
.facilities-section .facilities-section-name > i,
.facilities-section .facilities-section-item-name > i {flex-basis: 10%;}
.facilities-section .facilities-section-name > span,
.facilities-section .facilities-section-item-name > span {flex-basis: 90%;}
.facilities-section .facility-section-description {
    color: #6b6b6b;
    line-height: 1.3;
}
.facilities-sections .facilities-section:not(:last-of-type) {margin-bottom: 1.5rem;}

.questions-answers-container .card-header {
    background-color: unset;
    border: 0;
}

.questions-answers-container .card-header .accicon {font-size: 1.3rem;}
.questions-answers-container .card-header p {
    display: flex;
    align-items: center;
    gap: .8rem;
    font-size: 1rem;
    font-family: "Lato Bold", sans-serif;
    font-weight: 600;
}
.questions-answers-container .card-header p .rotate-icon {transition: 0.3s;}
.questions-answers-container .card-header p:not(.collapsed) .rotate-icon {transform: rotate(-180deg);}
.questions-answers-container .card-body {line-height: 1.2;}

.reviews-container .reviews-total-rates {
    display: flex;
    align-items: center;
    gap: .75rem;
}
.reviews-rates .total-rate-value {
    font-size: 3rem;
    line-height: 3rem;
}
.reviews-rates .total-rate-desc {
    font-size: 1rem;
    line-height: 1.3;
}
.reviews .review-item {border-bottom: 1px solid #dfe0e4;}
.reviews .review-item .review-maker-name {
    font-family: "Lato Bold", sans-serif;
}
.reviews-rates .total-rate-desc > div {
    font-family: "Lato Bold", sans-serif;}
.reviews .review-item .review-rating {
    font-size: 1.3rem;
    font-family: "Lato Bold", sans-serif;
}
.reviews button.view-all-reviews {
    background: none;
    color: #1676e3;
    font-weight: 600;
    border: 1px solid #dfe0e4;
    border-radius: 20px;
}

.similar-properties .similar-property-item {
    border: 1px solid #dfe0e4;
    border-radius: 10px;
    height: 100%;
}
.similar-properties .similar-property-item .item-head {
    border-radius: 10px 10px 0 0;
    overflow: hidden;
}
.similar-properties .similar-property-item .similar-property-link {
    text-decoration: none;
    color: var(--main-color-dark-gray);
}
.similar-properties .similar-property-item .item-body {
    line-height: 1.2; }

.similar-properties .similar-property-item figure,
.rooms .room-item figure {
    aspect-ratio: 21 / 15; }

.room-details-modal-body .room-details .card figure {
    aspect-ratio: 21 / 18; }

.similar-properties .similar-property-item .card-img,
.rooms .room-item .card-img,
.room-details-modal-body .room-details .card .card-img {
    block-size: 100%;
    inline-size: 100%;
    inset-block-end: 0;
    inset-block-start: 0;
    inset-inline-end: 0;
    inset-inline-start: 0;
    position: absolute;
}

.rooms .room-item {
    border: 1px solid #dfe0e4;
    border-radius: 10px;
    min-height: 100%;
}

.custom-blue-btn {
    border-radius: 25px;
    color: #fff;
    background-color: #1676e3;
    border-color: #1676e3;
    font-family: "Lato Bold", sans-serif;
}

.rooms .room-item .facilities {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.similar-properties .similar-property-item > a,
.rooms .room-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.rooms .swiper-slide {
    height: unset; }

.swiper-button-prev, .swiper-button-next {
    height: 30px !important;
    width: 30px !important;
    background-color: #fff;
    border-radius: 15px !important;;
}

.swiper-button-prev:after, .swiper-button-next:after {
    font-size: 15px !important;
    font-weight: 600;
}

.room-details-modal-body .room-details .facilities {
    column-count: 2;
    -webkit-columns: 2;
    -moz-columns: 2;
    column-gap: 15px;
    -webkit-column-gap: 15px;
}

.room-details-modal-body .room-details .facility {
    page-break-inside: avoid;
    break-inside: avoid-column;
    margin-bottom: 1rem;
}

.hotel-page-book-now-btn {
    color: #fff;
    background-color: #1676e3;
    border-color: #1676e3;
}

.leaflet-control-attribution.leaflet-control {display: none;}

/* Blog */
.blog-container {
    display: grid;
    grid-row-gap: 4rem;
    margin: 2rem 0;
}

.blog-container .article {
    display: grid;
    grid-column-gap: 2rem;
}

.blog-container .article .image img {
    border-radius: 16px;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    height: auto;
    width: 100%;
    max-width: 100%;
}

.blog-container .article-content h2 {
    margin-top: .5rem;
    margin-bottom: .75rem;
    font-weight: 700;
    font-size: 22px;
    color: #1b115c;
    padding: 0;
}

.blog-container .article-content h2 a {
    color: #1b115c;
}

.blog-container .article-content time {
    display: block;
    font-size: 15px;
    margin-bottom: .5rem;
}

.blog-container .article-content p {
    margin-top: .5rem;
    font-size: 17px;
    display: inline;
    line-height: 1.4;
}

.blog-container .article-content .more-link {
    text-decoration: underline;
    color: #3567f6;
    display: inline;
}

.article-content h1.article-title {
    font-size: 35px;
    color: #1b115c;
}

.article-content h1 {
    font-size: 27px;
    font-weight: bold;
    color: var(--main-color-dark-gray);
}
.article-content h1 >span {
    font-size: 27px;
    font-weight: bold;
    color: var(--main-color-dark-gray);
}

.article-content h2 {
    font-size: 22px;
    font-weight: bold;
    color: var(--main-color-dark-gray);
}

.article-inside-content {
    max-width: 793px;
    margin-left: auto;
    margin-right: auto;
    color: var(--main-color-dark-gray);
}

.article-inside-content p,
.article-inside-content span,
.article-inside-content h1 span,
.article-inside-content h2 span {
    color: var(--main-color-dark-gray) !important;
}

.article-inside-content p img {
    border-radius: 16px;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    height: auto;
    width: 100%;
}

.gray-border {
    border: 1px solid #dfe0e4;
}

.br-10 {
    border-radius: 10px;
}

/******************** CONTEXT MODAL *******************/
.context-modal .modal-dialog {
    position:fixed;
    top:auto;
    right:auto;
    left:auto;
    bottom: 0;
    width: 100%;
    margin: 0;
}
.context-modal .modal-content {
    border-radius: 12px 12px 0 0;
}
.context-modal .modal-body {
    padding: 16px;
    background-color: rgb(245, 245, 245);
    box-shadow: rgba(0, 0, 0, 0.02) 0px 0px 4px 0px inset, rgba(0, 0, 0, 0.04) 0px 2px 10px 0px inset, rgba(0, 0, 0, 0.04) 0px 10px 20px 0px inset;
    overflow: auto;
    overscroll-behavior: contain;
}
.context-modal .modal-title {
    padding: 0 8px;
    text-align: center;
    line-height: 20px;
    font-size: 16px;
    margin: auto;
    text-transform: uppercase;
}

.context-modal .modal-header {
    display: grid  ;
    grid-template-columns: 20px 1fr 20px;
    padding: 8px 16px;
    box-shadow: rgba(0, 0, 0, 0.04) 0px 10px 20px, rgba(0, 0, 0, 0.04) 0px 2px 10px, rgba(0, 0, 0, 0.02) 0px 0px 4px;
    z-index: 1;
}
.context-modal .modal-header .close {
    padding: 0;
    margin: 0;
    opacity: 1;
}

.context-modal .modal-header .close > span {
    font-size: 30px;
}

.context-modal .modal-body-inside {
    display: flex;
    flex-direction: column;
    background-color: white;
    border-radius: 8px;
    height: 100%;
}

.context-modal .modal-body-inside.with-confirm {
    margin-bottom: 58px;
}

.context-modal .modal-body-inside > .user-menu-content {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: auto;
    padding: 8px;
}

.context-modal .modal-body-inside > .user-menu-content > div {
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    border-radius: 8px;
}

.context-modal .modal-body-inside > .user-menu-content > div a {
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    padding: 8px;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    display: flex;
    align-items: center;
    gap: 10px;
    white-space: nowrap;
    color: #212529;
    text-decoration: none;
}

.context-modal .modal-body-inside > .user-menu-content > div a > span:first-of-type {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding: 0;
    background-color: rgb(245, 245, 245);
    width: 36px;
    height: 36px;
}

.context-modal .modal-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: white;
    padding: 10px;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    z-index: 1050;
    display: flex;
    justify-content: center;
}

.context-modal .modal-footer > button {
    color: #fff;
    background-color: #1676e3;
    border-color: #1676e3;
    font-weight: 600;
    width: 96%;
}

.dropdown-menu-left-align {
    right: 0 !important;
    left: auto !important;
}