/* Project-specific overrides. Keep template vendor styles in main.css. */
a { color: hsl(var(--base)); }
a:hover { color: hsl(var(--secondary)); }
.btn-magnetic:is(:hover, :focus) > i { transform: none; }
.btn-magnetic:focus { border-width: 1px; border-style: solid; }
.banner-area__images .banner-imgs img { display: block; width: 100%; margin: 0; }
.destination-content__text a:is(:hover, :focus) { color: hsl(var(--white)); }
.navbar-one.sticky, #offcanvasNavbar { top: var(--admin-panel-height, 0px); }
.content-page p { margin-bottom: 24px; line-height: 1.8; }
.content-page h2 { margin: 40px 0 24px !important; }
.content-page li + li { margin-top: 8px; }

.site-header {
    position: relative;
}

.site-header > .breadcrumb {
    position: relative;
    inset: auto;
}

.header-search {
    display: flex;
    align-items: center;
    width: 240px;
    height: 42px;
    padding: 0 4px 0 14px;
    border: 1px solid hsl(var(--black) / 0.2);
    border-radius: 5px;
    background-color: hsl(var(--white));
    box-shadow: none;
}

.header-search:focus-within {
    border-color: hsl(var(--secondary));
    box-shadow: none;
}

.header-search input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: hsl(var(--black));
    font: inherit;
}

.header-search input::placeholder {
    color: hsl(var(--black) / 0.55);
}

.header-search button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 4px;
    outline: 0;
    background: hsl(var(--base));
    color: hsl(var(--white));
    box-shadow: none;
    transition: background-color 0.3s ease;
}

.site-header .header-search button:is(:hover, :focus-visible) {
    background: hsl(var(--base));
    color: hsl(var(--white));
}

.site-header .header-search button {
    --account-hover-fill: hsl(var(--secondary));
    position: relative;
    isolation: isolate;
    overflow: hidden;
}
.site-header .header-search button::before {
    content: "";
    position: absolute;
    top: var(--account-hover-y, 50%);
    left: var(--account-hover-x, 50%);
    z-index: -1;
    width: 0;
    height: 0;
    border-radius: 10px;
    background: var(--account-hover-fill);
    transform: translate(-50%, -50%);
    transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
}
.site-header .header-search button:is(:hover, :focus-visible)::before { width: 225%; height: 225%; }

.header-search input:focus,
.header-search input:focus-visible,
.header-search button:focus,
.header-search button:focus-visible {
    outline: 0;
    box-shadow: none;
}

.navbar-one .right-nav .log-btn {
    flex: 0 0 auto;
    min-width: 72px;
    height: 42px;
    padding-top: 0;
    padding-bottom: 0;
    justify-content: center;
    text-align: center;
    white-space: nowrap;
}

@media (max-width: 1199px) {
    .header-search {
        width: 100%;
        max-width: 320px;
    }
}

.footer-area.footer-three .footer-area__about .footer-social {
    gap: 15px;
}

.footer-area.footer-three .footer-area__about a.footer-social__link {
    width: 40px;
    height: 40px;
    border-radius: 100px;
    background: hsl(var(--secondary));
    box-shadow: none;
    transition: opacity 0.3s ease, background-color 0.3s ease;
}

.footer-area.footer-three .footer-area__about a.footer-social__link:hover {
    background: hsl(var(--base));
}

.footer-social__icon {
    display: block;
    width: 26px;
    height: 26px;
    filter: brightness(0) invert(1);
}

.footer-social__link:focus-visible {
    outline: 2px solid hsl(var(--base));
    outline-offset: 3px;
    background: hsl(var(--base));
}

.site-header [id^="bx_incl_area_"],
.site-header [id^="bx_incl_area_"] {
    display: flex;
    align-items: center;
    min-width: 0;
    min-height: 0;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
}

.site-header a.navbar-brand [id^="bx_incl_area_"],
.site-header .right-nav [id^="bx_incl_area_"] {
    display: inline-flex;
    flex: 0 0 auto;
}

.site-header .offcanvas-body > [id^="bx_incl_area_"] {
    flex: 1 1 auto;
    justify-content: center;
}

.site-header .breadcrumb [id^="bx_incl_area_"] {
    display: block;
}

.site-header [id^="bx_incl_area_"] > script,
.site-header [id^="bx_incl_area_"] > style {
    display: none !important;
}
.site-header .bx-context-toolbar-empty-area {
    min-height: 0 !important;
}

.site-header [id^="bx_incl_area_"] > script,
.site-header [id^="bx_incl_area_"] > style {
    display: none !important;
}

.copy-right__text p {
    color: hsl(var(--secondary));
    font-size: 0.875rem;
    margin: 0;
}

@media screen and (max-width: 1199px) {
    .copy-right__text p {
        font-size: 0.938rem;
    }
}
@media screen and (max-width: 991px) {
    .copy-right__text p {
        font-size: 0.875rem;
    }
}
@media screen and (max-width: 575px) {
    .copy-right__text p {
        font-size: 0.813rem;
    }
}

.copy-right__text p a {
    color: hsl(var(--base));
    font-weight: 600;
}

ul.footer-widget__contact li span.material-icons{
    color: hsl(var(--secondary) / 0.7);
}

.breadcrumb__link > .material-icons{
    color: hsl(--base);
}

.auth-page {
    background: hsl(var(--secondary) / 0.02);
}

.auth-form .auth-field {
    position: relative;
}

.auth-form .form-control,
.auth-form .form-select {
    border-color: hsl(var(--secondary) / 0.2);
}

.auth-form .form-control:focus,
.auth-form .form-select:focus {
    border-color: hsl(var(--secondary));
    box-shadow: 0 0 0 3px hsl(var(--secondary) / 0.08);
}

.auth-form .form-control.is-invalid,
.auth-form .form-select.is-invalid,
.auth-form .form-check-input.is-invalid {
    border-color: #d92d20;
    background-image: none;
    box-shadow: none;
}

.auth-form .form-control.is-invalid:focus,
.auth-form .form-select.is-invalid:focus,
.auth-form .form-check-input.is-invalid:focus {
    border-color: #d92d20;
    box-shadow: 0 0 0 3px rgb(217 45 32 / 10%);
}

.auth-error {
    margin: 6px 0 0;
    color: #b42318;
    font-size: 0.8125rem;
    line-height: 1.35;
    text-align: left !important;
}

.auth-form .password-show-toggle {
    z-index: 3;
    width: 28px;
    padding: 0;
    border: 0;
    background: transparent;
}

.auth-form .form-floating:has(.password-show-toggle) .form-control {
    padding-right: 54px;
}

.auth-select-field {
    margin-bottom: 1.5rem;
}

.auth-select-field .form-label {
    display: block;
    margin-bottom: 8px;
    color: hsl(var(--secondary));
    font-weight: 500;
}

.auth-select-field .form-select {
    min-height: 58px;
    padding: 0 16px;
    border-radius: 5px;
    color: hsl(var(--secondary));
    background-color: hsl(var(--white));
}

.auth-select-field .nice-select {
    float: none;
    width: 100%;
    height: 58px;
    padding: 0 48px 0 16px;
    border: 1px solid hsl(var(--secondary) / 0.2);
    border-radius: 5px;
    background: hsl(var(--white));
    color: hsl(var(--secondary));
    font-size: 1rem;
    line-height: 56px;
    text-align: left;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.auth-select-field .nice-select::after {
    right: 20px;
    width: 8px;
    height: 8px;
    border-color: hsl(var(--secondary));
}

.auth-select-field .nice-select:hover,
.auth-select-field .nice-select:focus,
.auth-select-field .nice-select.open {
    border-color: hsl(var(--secondary));
    box-shadow: 0 0 0 3px hsl(var(--secondary) / 0.08);
}

.auth-select-field .nice-select .list {
    width: 100%;
    margin-top: 6px;
    border: 1px solid hsl(var(--secondary) / 0.12);
    border-radius: 5px;
    box-shadow: 0 12px 30px hsl(var(--secondary) / 0.12);
}

.auth-select-field .nice-select .option {
    min-height: 44px;
    padding: 0 16px;
    line-height: 44px;
}

.auth-select-field .nice-select .option:hover,
.auth-select-field .nice-select .option.focus,
.auth-select-field .nice-select .option.selected.focus {
    background: hsl(var(--base) / 0.1);
}

.auth-select-field .nice-select.is-invalid {
    border-color: #d92d20;
    box-shadow: none;
}

.auth-consent {
    align-items: flex-start !important;
}

.auth-consent .form-check {
    width: 100%;
    margin: 0;
}

.auth-consent .form-check-label a {
    color: hsl(var(--base));
}

.sing-info-box .social-login .social-icons .auth-provider {
    min-height: 44px;
    font: inherit;
    font-weight: 500;
    transition: opacity 0.25s ease, transform 0.25s ease;
}

.sing-info-box .social-login .social-icons .auth-provider:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.sing-info-box .social-login .social-icons .auth-provider--yandex {
    background: #fc3f1d;
}

.sing-info-box .social-login .social-icons .auth-provider--vk {
    background: #0077ff;
}

.auth-provider__mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: hsl(var(--white));
    color: #fc3f1d;
    font-weight: 700;
    line-height: 1;
}

.auth-provider__icon {
    display: block;
    width: 22px;
    height: 22px;
    filter: brightness(0) invert(1);
}

.auth-confirmation {
    background: hsl(var(--secondary) / 0.02);
}

.auth-confirmation__card {
    max-width: 980px;
    margin: 60px auto 0;
    padding: 40px;
    border: 1px solid hsl(var(--secondary) / 0.14);
    border-radius: 6px;
    background: hsl(var(--white));
    box-shadow: 0 10px 35px hsl(var(--secondary) / 0.06);
}

.auth-confirmation .payment-confirmed__icon i {
    color: hsl(var(--secondary));
}

.auth-confirmation .payment-confirmed__text p {
    max-width: 720px;
}

.auth-confirmation__actions {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}

.auth-confirmation__actions .btn-magnetic {
    background: hsl(var(--base));
    color: hsl(var(--white));
    border-color: hsl(var(--base));
}

.auth-confirmation__actions .btn-magnetic span {
    background: hsl(var(--secondary));
}

.auth-confirmation__actions .btn-magnetic:hover,
.auth-confirmation__actions .btn-magnetic:focus {
    border-color: hsl(var(--secondary));
    color: hsl(var(--white));
}

@media (max-width: 575px) {
    .sing-info-box .social-login .social-icons {
        grid-template-columns: 1fr;
    }

    .auth-confirmation__card {
        margin-top: 30px;
        padding: 20px;
    }
}

.breadcrumb .container {
    position: relative;
}

.breadcrumb .breadcrumb-banner-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: auto !important;
    max-width: 1400px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    height: 100% !important;
    transform: none !important;
    z-index: 0 !important;
    padding: 0 !important;
}

.breadcrumb .breadcrumb-banner-img::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: hsl(var(--secondary) / 0.2);
    z-index: 1;
    pointer-events: none;
}

.breadcrumb .breadcrumb-banner-img .slide-item-wrapper {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.breadcrumb .breadcrumb-banner-img .slide-item-wrapper img.slide-bg {
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    transition: opacity 1s ease-in-out;
}

.breadcrumb__wrapper {
    position: relative;
    z-index: 2;
}

#bx_incl_area_4 {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.breadcrumb .breadcrumb-banner-img .slide-item-wrapper {
    pointer-events: none;
}

.breadcrumb .breadcrumb-banner-img .slide-item-wrapper img.slide-bg[style*="opacity: 1"] {
    pointer-events: auto;
}
