:root {
    --bs-primary: #fd5631;
    --bs-secondary: #6c757d;
    --bs-muted: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
}


body {
    background-color: #fff;
    color: #2f292b;
}

a {
    transition: color 0.2s ease-in-out;
    color: #fd5631;
    text-decoration: underline;
}

a:hover {
    color: #fd3509;
    text-decoration: none;
}

/* heading and list links */
.link{
    color: #1f1b2d;
    text-decoration: none;
}

.link:hover{
    color: #fd3509 !important;
    text-decoration: underline;
}

/* checkboxes - неутрални цветове */

.form-check-input:focus {
    border-color: #fd5631;
    box-shadow: 0 0 0 0.25rem rgba(253, 86, 49, 0.5);
}
.form-check-input:checked {
    background-color: #fd5631;
    border-color: #fd5631;
}


.text-primary{
    color: #fd5631 !important;
}

.header{
    background-color: #fff;
    box-shadow: 0 0.125rem 0.125rem -0.125rem rgba(31, 27, 45, 0.12), 0 0.25rem 0.75rem rgba(31, 27, 45, 0.12) !important;
}




.jumbotron{
    background-color: #F8F9FA;
}


.card{
    border: 1px solid #DEE2E6;
    border-radius: .25rem !important;
}


.bg-dark{
    background-color: #000 !important;
}

.bg-primary{
    background-color: #FFC62F !important;
}

.bg-secondary{
    background-color: #E1E1E1 !important;
}

.btn-theme{
    padding-left: 1rem;
    padding-right: 1rem;
}


.btn-secondary {
    background-color: #2F292B;
    border-color: #2F292B;
    color: #fff;
    box-shadow: unset;
}


.btn-light {
    background-color: #EEEEEE;
    border-color: #EEEEEE;
    color: #2f292b;
    box-shadow: unset;
}

.btn-primary, .btn-warning {
    background-color: #FFC62F;
    border-color: #FFC62F;
    color: #2f292b;
    box-shadow: unset;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active, .btn-primary.show,
.btn-warning:hover, .btn-warning:focus, .btn-warning:active, .btn-warning.active, .btn-warning.show {
    background-color: #FFBF15;
    border-color: #FFBF15;
    color: #2f292b;
    box-shadow: 0 0 0 0.25rem rgba(255, 191, 21, 0.5);
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active, .btn-secondary.active, .btn-secondary.show,
.btn-outline-secondary:hover, .btn-outline-secondary:focus, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.show
{
    box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);
}


.wave-minisearch{
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 100' transform='rotate(180)' xmlns:v='https://vecta.io/nano'%3E%3Cdefs%3E%3ClinearGradient id='A' x1='0' x2='0' y1='1' y2='0'%3E%3Cstop stop-color='rgba(0  0  0  1)' offset='0%25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23A)' d='M0 70l48-3.3 240-18.4 288-25C672 17 768 13 864 20s192 23 288 28.3c96 4.7 192-1.3 288-3.3s192 2 288 0 192-8 288-15 192-13 288-13.3c96 .3 192 6.3 288 13.3l288 21.7 288 25c96 6.3 192 10.3 288 5 96-4.7 192-18.7 288-30C3840 40 3936 30 4032 35s192 25 288 36.7c96 11.3 192 15.3 288 5 96-9.7 192-33.7 288-33.4 96-.3 192 23.7 288 35 96 11.7 192 11.7 288 0C5568 67 5664 43 5760 40s192 13 288 25 192 18 288 8.3c96-10.3 192-36.3 288-45 96-8.3 192 1.7 240 6.7l48 5v60h-48-240-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288-288H48 0z'/%3E%3C/svg%3E") top left;
    background-size: cover;
    height: 40px;
}

.list-group-item:last-child {
    border-bottom-right-radius: .5rem;
    border-bottom-left-radius: .5rem;
    border-bottom: none !important;
}




.star-full{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(255, 198, 47)' viewBox='0 0 16 16'%3E%3Cpath d='M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z'/%3E%3C/svg%3E");
}

.star-empty{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(206, 212, 218)' viewBox='0 0 16 16'%3E%3Cpath d='M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z'/%3E%3C/svg%3E");
}

.star-half{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgb(255, 198, 47)' class='bi bi-star-half' viewBox='0 0 16 16'%3E%3Cpath d='M5.354 5.119 7.538.792A.516.516 0 0 1 8 .5c.183 0 .366.097.465.292l2.184 4.327 4.898.696A.537.537 0 0 1 16 6.32a.548.548 0 0 1-.17.445l-3.523 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256a.52.52 0 0 1-.146.05c-.342.06-.668-.254-.6-.642l.83-4.73L.173 6.765a.55.55 0 0 1-.172-.403.58.58 0 0 1 .085-.302.513.513 0 0 1 .37-.245l4.898-.696zM8 12.027a.5.5 0 0 1 .232.056l3.686 1.894-.694-3.957a.565.565 0 0 1 .162-.505l2.907-2.77-4.052-.576a.525.525 0 0 1-.393-.288L8.001 2.223 8 2.226v9.8z'/%3E%3C/svg%3E");
}


/** ----------------------- HERO COMPONENT **/
.hero{
    background-color: #F8F9FA;

}

.hero-title-place {
    background: linear-gradient(
            transparent 65%,
            rgba(255, 193, 7, 0.3) 65%,
            rgba(255, 193, 7, 0.3) 95%,
            transparent 95%
    );
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    position: relative;
    z-index: 0;
    isolation: isolate;
    display: inline-block;
    white-space: nowrap;
}


/** ----------------------- LISTINGS COMPONENT **/

.listing-title{
    color: var(--bs-dark) !important;
    font-size: 1.5rem;
    text-decoration: none;
    margin-top: 0;
    margin-bottom: 0.5rem;
    font-weight: 500;
    line-height: 1.2;
    display: block;
}

.listing-title:hover{
    text-decoration: underline;
}

.listing-place{
    color: var(--bs-muted) !important;
    text-decoration: none;
    font-weight: 500;
}

.listing-place:hover{
    text-decoration: underline;
}

.listing-distance{
    color: var(--bs-muted);
}

.listing-highlight{
    color: var(--bs-success);
    font-weight: 500;
}

.listing-content {
    margin-bottom: 0.5rem;
}

.listing-services {
    margin-top: 0.5rem;
}

.listing-service{
    background-color: #fff;
    color: var(--bs-dark);
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.875em;
    font-weight: 500 !important;
    border: 1px solid #dee2e6;
}

.listing-phrases {
    margin-top: 0.5rem;
}

.listing-phrase{
    color: var(--bs-success);
    padding: 0.25rem 0.5rem 0.25rem 32px;
    border-radius: 0.25rem;
    font-size: 0.875em;
    font-weight: 500 !important;
    border: 1px solid #dee2e6;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23198754' class='bi bi-quote' viewBox='0 0 16 16'%3E%3Cpath d='M12 12a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1h-1.388c0-.351.021-.703.062-1.054.062-.372.166-.703.31-.992.145-.29.331-.517.559-.683.227-.186.516-.279.868-.279V3c-.579 0-1.085.124-1.52.372a3.322 3.322 0 0 0-1.085.992 4.92 4.92 0 0 0-.62 1.458A7.712 7.712 0 0 0 9 7.558V11a1 1 0 0 0 1 1h2Zm-6 0a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1H4.612c0-.351.021-.703.062-1.054.062-.372.166-.703.31-.992.145-.29.331-.517.559-.683.227-.186.516-.279.868-.279V3c-.579 0-1.085.124-1.52.372a3.322 3.322 0 0 0-1.085.992 4.92 4.92 0 0 0-.62 1.458A7.712 7.712 0 0 0 3 7.558V11a1 1 0 0 0 1 1h2Z'/%3E%3C/svg%3E") 10px center no-repeat;
}

.listing-image {
    height: 160px;
    width: auto;
    flex-shrink: 0;
    object-fit: cover;
    border-radius: 0.3rem;
}

@media (min-width: 992px) {
    .listing-container + .listing-container{
        margin-top: 1.5rem !important;
    }

    .listing{
        border: 1px solid #dee2e6;
        border-radius: .25rem;
    }

    .listing:hover {
        box-shadow: 0 0.125rem 0.5rem -0.25rem rgba(31, 27, 45, 0.12), 0 0.25rem 1rem rgba(31, 27, 45, 0.12) !important;
    }

    .listing-featured{
        border-color: var(--bs-gray);
        border-width: 2px;
    }

    .listing .listing-header{
        background-color: var(--bs-white);
        border-bottom: 1px solid #dee2e6;
        border-radius: .25rem;
        padding: 1rem 1.5rem;
    }


    .listing-logo{
        border: 1px solid #dee2e6;
        border-radius: 0.25rem;
        padding: 0.25rem;
        margin-top: 0.25rem !important;
        background-color: #ffffff;
    }

    .listing-badge-featured{
        background-color: var(--bs-warning);
        color: var(--bs-dark);
        margin-right: 0.5rem;
    }

    .listing-badge-claimed{
        background-color: var(--bs-dark);
        color: var(--bs-white);
        margin-right: 0.5rem;
    }

    .listing-rating{
        font-size: 1.5rem;
    }

    .listing-reviews-count{
        color: var(--bs-muted);
    }

    .listing-body{
        flex: 1 1 auto;
        padding: 1.5rem;
        background-color: var(--bs-light);
    }

    .listing-button{
        min-width: 150px;
    }
}


@media (max-width: 991px) {
    .listing-container{
        border-top: 4px solid #ccc;
        border-bottom: 4px solid #ccc;
        padding:0!important;
    }

    .listing-container + .listing-container{
        border-top: none;
    }

    .listing, .listing:hover{
        border: none !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        margin-bottom: 0;
    }

    .listing .listing-header{
        border:0 !important;
        background-color: #ffffff !important;
        padding: 1.5rem 1rem 0 1rem !important;
    }

    .listing-title{
        font-size: 1.35rem;
        margin-bottom: 1rem;
    }

    .listing .listing-body{
        border:0 !important;
        background-color: #ffffff !important;
        padding: 1rem;
    }

    .listing-logo{
        border: 1px solid #dee2e6;
        border-radius: 0.25rem;
        background-color: #ffffff;
    }
}

.listing-badges > div + div::before {
    content: "●"; /* По-плътна и голяма точка */
    margin-right: 0.5rem;
    color: #ccc;
}

.listing-badge{
    font-weight: 500 !important;
    color: var(--bs-gray);
}


.hero-listing-title{
    margin:0;
}

@media (max-width: 991px) {
    .hero-listing-title{
        font-weight: 500!important;
    }
}


/** ------------ BULLETED LIST  */

.list {
    list-style-type: none;
    padding-left: 0;
    margin: 0;
    margin-top: 0.5rem;
}

.list li {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23FFC62F' class='bi bi-check-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z'/%3E%3C/svg%3E") left 4px no-repeat;
    background-size: 16px 16px;
    padding-left: 24px;
}

.list li + li{
    margin-top: 0.25rem;
}

/** ------------ ITEM  */

.item {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-clip: border-box;
}

.item-body {
    flex: 1 1 auto;
    padding: 1rem 1rem;
}

.item-body::after {
    display: block;
    clear: both;
    content: "";
}

.item-title{
    margin: 0;
    line-height: 1.2;
    color: #1f1b2d;
    font-weight: 500;
    font-size: calc(1.275rem + 0.3vw);
}



@media (min-width: 1200px) {
    .item-title {
        font-size: 1.5rem;
    }
}

.item-subtitle{
    font-size: 1.125em;
    font-weight: 500;
    margin-top: 1.5rem;
}



.item-header {
    padding: 0.75rem 1rem;
    margin-bottom: 0;
}

.item-header:first-child {

}

.item-footer {
    padding: 0.5rem 1rem;
}
.item-footer:last-child {
}

.item-body-title{
    font-size: 1.30rem;
    font-weight: 500;
    line-height: 1.2;
    color: #1f1b2d;
}

.item-body-subtitle{
    margin-top: 0.5rem;
    color: var(--bs-success);
    font-size: 1.125em;
}

.item-body-image{
    max-width: 30%;
    float: right !important;
    margin: 0.25rem 0 0.25rem 1rem;
    border-radius: 0.25rem;
    font-size: calc(1.275rem + 0.3vw);
}

.item-body-content{
    margin-top: 1rem;
}


.item-services {
    margin-top: 0.5rem;
    margin-bottom: 1rem;
}

.item-service{
    padding: 0.25rem 0.5rem;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    font-weight: 500;
    color: var(--bs-muted);
}

.item-phrases {
    margin-top: 0.5rem;
}

.item-phrase{
    color: var(--bs-success);
    padding: 0.25rem 0.5rem 0.25rem 32px;
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
    font-weight: 500;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23198754' class='bi bi-quote' viewBox='0 0 16 16'%3E%3Cpath d='M12 12a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1h-1.388c0-.351.021-.703.062-1.054.062-.372.166-.703.31-.992.145-.29.331-.517.559-.683.227-.186.516-.279.868-.279V3c-.579 0-1.085.124-1.52.372a3.322 3.322 0 0 0-1.085.992 4.92 4.92 0 0 0-.62 1.458A7.712 7.712 0 0 0 9 7.558V11a1 1 0 0 0 1 1h2Zm-6 0a1 1 0 0 0 1-1V8.558a1 1 0 0 0-1-1H4.612c0-.351.021-.703.062-1.054.062-.372.166-.703.31-.992.145-.29.331-.517.559-.683.227-.186.516-.279.868-.279V3c-.579 0-1.085.124-1.52.372a3.322 3.322 0 0 0-1.085.992 4.92 4.92 0 0 0-.62 1.458A7.712 7.712 0 0 0 3 7.558V11a1 1 0 0 0 1 1h2Z'/%3E%3C/svg%3E") 10px center no-repeat;
}


.item-badges{
    margin-left: 1.5rem;
    margin-bottom: 0.5rem;
}

.item-badge{
    padding: 0.5rem 1rem;
    border-radius: 0.3rem !important;
    text-align: center !important;
    background-color: var(--bs-warning-bg-subtle);
}

.item-badge-heading{
    font-size: 1.25rem;
    font-weight: 500;
    color: var(--bs-dark);
}

.item-badge-subheading{
    color: var(--bs-dark);
}

@media (min-width: 992px) {
    .item + .item{
        margin-top: 1.5rem !important;
    }

    .item-primary {
        background-color: #fff;

        border-radius: .25rem;
    }

    .item-primary:hover {
    }

    .item-primary .item-body + .item-body{

    }

    .item-details .item-body{
        border-radius: 0.25rem 0.25rem 0 0 !important;
        margin-top: 0!important;
    }

    .item-primary .item-title{
        color: var(--bs-dark);
    }

    .item-primary .item-body {
        flex: 1 1 auto;
        padding: 1.5rem;
        margin-top: 0.75rem;
        border: 1px solid #dee2e6;
        border-radius: .25rem;
    }

    .item-primary .item-header {
        background-color: var(--bs-warning-bg-subtle);
        background: linear-gradient(90deg,rgba(255, 243, 205, 1) 0%, rgba(255, 224, 138, 1) 100%);
        border-radius: .25rem !important;
    }

    .item-primary .item-header:first-child {
        border-radius: .25rem 0 0;
    }

    .item-primary .item-footer {
        background-color: var(--bs-light);
        border: 1px solid #dee2e6;
        border-top: 0;
        padding: 0.75rem 1.5rem;
    }

    .item-primary .item-footer:last-child {
        border-radius: 0 0 .25rem;
    }

    /** ---------- **/

    .item-secondary {
        background-color: var(--bs-light);
        border-radius: .25rem !important;
    }

    .item-secondary .item-body {
        flex: 1 1 auto;
        padding: 1rem 1.5rem;
    }

    .item-secondary .item-body + .list-group {
        border-top: 2px solid #fff;
    }

    .item-secondary .item-header {
        background-color: var(--bs-light);
        border-bottom: 2px solid #fff;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .item-secondary .item-header:first-child {
        border-radius: .25rem .25rem 0 0;
    }

    .item-secondary .item-footer {
        border-top: 2px solid #fff;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        background-color: var(--bs-light);
    }

    .item-secondary .item-footer:last-child {
        border-radius: 0 0 .25rem .25rem;
    }

    .item-secondary .list-group-item{
        border: transparent;
        background-color: var(--bs-light);
        border-bottom: 2px solid #fff;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    .item-secondary .list-group-item:last-child {
        border-bottom: none;
        border-bottom-right-radius: .75rem;
        border-bottom-left-radius: .75rem;
    }
}

@media (max-width: 991px) {

    .item-primary .item-header,
    .item-secondary .item-header{
        background-color: var(--bs-warning-bg-subtle);
        background: linear-gradient(90deg,rgba(255, 243, 205, 1) 0%, rgba(255, 224, 138, 1) 100%);
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .item-primary .item-body,
    .item-secondary .item-body,
    .item-primary .item-footer,
    .item-secondary .item-footer{
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .item-primary .item-body + .item-body{
        border-top: 2px solid #efecf3;
    }

    .item-details .item-footer{
        padding-top: 0;
    }


    .item-contacts .list-group{
        padding-top: 1rem;
        padding-bottom: 1rem;

    }

    .item-contacts .list-group-item{
        border: none;
    }

    .item-contacts .contact-label{
        color: var(--bs-dark) !important;
    }
}