:root {
    --white: #FFF;
    --black: #000;
    --dark: #191919;
    --dark-text: #2a2a2a;
    --dark-text2: #3a3a3a;
    --light-grey: #eaeaea;
    --light-grey2: #ebebeb;
    --light-grey3: #bebebe;
    --grey-bg: #f3f3f3;
    --medium-grey: #636363;
    --border-grey: #424242;
    --border-grey2: #D3D3D3;
    --form-bg-title-grey: #8c8c8c;
    --darkest: #242424;
    --dark-search: #2b2b2b;
    --primary: #55900f;
    --primary2: #507D1A;
    --primary-transparent: #56900f48;
    --green-ok: #19875421;
    --red: #FF0022;
    --dark-red: #dc3545;
    --badge-red: #dd0f0f;
    --badge-grey: #cdcdcd;
    --yellow: #ffb400;
    --yellow-hover: #E3A000;
    --city-grey: #808080;
    --icon-grey: #b6b5b6;
    --menu-mobile-bg-grey: #f7f7f7;
    --form-label-grey: #767676;
    --menu-border-grey: #e8e8e8;
    --lead-text-color: #363636;
    --navy: #2a2a42;
    font-size: 14px;
    --base-font: 14;
    --fs-11: calc(11rem / var(--base-font));
    --fs-12: calc(12rem / var(--base-font));
    --fs-13: calc(13rem / var(--base-font));
    --fs-15: calc(15rem / var(--base-font));
    --fs-16: calc(15rem / var(--base-font));
    --fs-18: calc(18rem / var(--base-font));
    --fs-20: calc(20rem / var(--base-font));
    --fs-22: calc(22rem / var(--base-font));
    --fs-24: calc(24rem / var(--base-font));
    --fs-26: calc(26rem / var(--base-font));
    --fs-30: calc(30rem / var(--base-font));
    --fa: 'Font Awesome\ 5 Free';
    --color-facebook: #3b5998;
    --color-twitter: #1DA1F2;
    --container-width: 100vw;
    --base-offset: 5rem;
    --demo-offset: 0.01px;
    --top-offset: calc(var(--base-offset) + var(--demo-offset));
}

@media (min-width: 576px) {

    :root {
        --container-width: 540px;
    }

}

@media (min-width: 768px) {

    :root {
        --container-width: 720px;
    }

}

@media (min-width: 992px) {

    :root {
        --container-width: 960px;
    }

}

@media (min-width: 1200px) {

    :root {
        --container-width: 1140px;
    }

}

@media (min-width: 1400px) {

    :root {
        --container-width: 1320px;
    }

}

.uwy:not(.uon), body .uwy:not(.uon) {
    z-index: 1020 !important;
}

ul, ol {
	padding: 0;
}

p ~ ul,
p ~ ol,
.cke_wysiwyg_div ul,
.cke_wysiwyg_div ol {
	padding-left: 1.5rem;
}

.text-primary {
    color: var(--primary) !important;
}

.bg-light {
    background-color: var(--grey-bg) !important;
}

*:not(html):not(body)::-webkit-scrollbar {
    width: .75rem;
}

.panel-search .input-price ~ .list-group-as-datalist::-webkit-scrollbar {
    width: .5rem;
}

*:not(html):not(body)::-webkit-scrollbar-track {
    background-color: rgba(255,255,255,.75);
    /* box-shadow: inset 0 0 .25rem rgba(0,0,0,.25);  */
    /* border-radius: .25rem; */
}

*:not(html):not(body)::-webkit-scrollbar-thumb {
    background: var(--primary-transparent); 
    border-radius: .25rem;
}

*:not(html):not(body)::-webkit-scrollbar-thumb:hover {
    background: var(--primary); 
}

.color-facebook,
.color-facebook:hover,
.color-facebook:focus,
.color-facebook:focus:not(:hover) {
    color: var(--color-facebook);
}

.btn-facebook {
    background-color: var(--color-facebook);
    color: var(--white);
}

.btn-facebook:hover {
    color: var(--white);
}

.color-twitter,
.color-twitter:hover,
.color-twitter:focus,
.color-twitter:focus:not(:hover) {
    color: var(--color-twitter);
}

.btn-twitter {
    background-color: var(--color-twitter);
    color: var(--white);
}

.btn-twitter:hover {
    color: var(--white);
}

.text-light2 {
    color: var(--badge-grey);
}

.hover-shadow {
    transition: all .25s;
}

.hover-shadow:hover {
    opacity: .9;
    text-shadow: 0 0 .25rem rgba(0,0,0,.15);
}

/* add some necessary classes to bootstrap */

.fw-medium {
    font-weight: 500;
}

.fw-600 {
    font-weight: 600;
}

.opacity-0 {
	opacity: 0;
}

.text-thin {
	font-weight: 300;
}

.text-justify {
    text-align: justify !important;
}

@media (min-width: 576px) {
    .text-sm-justify {
        text-align: justify !important;
    }
}

@media (min-width: 768px) {
    .text-md-justify {
        text-align: justify !important;
    }
}

@media (min-width: 992px) {
    .text-lg-justify {
        text-align: justify !important;
    }
}

@media (min-width: 1200px) {
    .text-xl-justify {
        text-align: justify !important;
    }
}

.min-h-100 {
    min-height: 100%;
}

.form-floating > .text-end ~ label {
    text-align: right;
    left: auto;
    right: 0;
}

.form-floating > .text-end[type="number"] ~ label {
    text-align: right;
    left: auto;
    right: 1.25rem;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

body {
    font-family: 'Poppins', sans-serif;
    font-size: 1rem;
    color: var(--dark-text);
    display: flex;
    flex-direction: column;
}

a {
    text-decoration: none;
    color: var(--primary);
}

a,
.btn-link,
.color-primary,
.text-primary,
.navbar-nav .nav-link.color-primary {
    color: var(--primary);
}

a:hover {
    color: var(--primary);
}

.relative-outer {
    position: relative;
}

textarea {
    resize: none;
}

.form-control[readonly],
.additional-field-outer .form-control[disabled] {
    background: var(--white);
}

.form-control:focus,
.form-select:focus {
    /* box-shadow: inset 0 0 .5rem var(--primary); */
    box-shadow: inset 0 0 .5rem var(--light-grey), 0 .25rem .25rem rgba(0,0,0,.1);
    border-color: var(--primary);
}

.btn {
    border-radius: .5rem;
}

.btn:disabled,
.btn[disabled] {
    opacity: .5;
}

.btn:focus {
    box-shadow: none;
}

.badge.badge-danger {
	background: #fe4e50;
}

.btn-group-xs > .btn,
.btn-xs,
.btn-group-xs > .btn:hover,
.btn-xs:hover {
	padding: .1rem .25rem;
	border-width: 1px;
    font-size: .75rem;
}

.btn-group-lg > .btn,
.btn-lg {
    border-radius: .5rem;
    font-size: var(--fs-16);
}

@media (max-width: 1199.98px) {

    .btn-group-lg > .btn,
    .btn-lg {
        font-size: 1.05rem;
    }

}

.btn-group-lg > .btn > i:first-child,
.btn-lg > i:first-child {
    margin-right: .5rem;
}

.btn-group-lg > .btn > i:last-child,
.btn-lg > i:last-child {
    margin-left: .5rem;
}

.btn-primary, .btn-primary:hover, .btn-primary:focus, .btn-primary:disabled, .btn-primary.disabled, .btn-primary.like-disabled {
	background-color: var(--primary);
	border-color: var(--primary);
	color: #FFF;
}

.btn-primary.like-disabled {
    cursor: default;
    opacity: .65;
}

.btn-primary:hover {
	background: var(--primary2);
}

.btn-tertiary, .btn-tertiary:hover, .btn-tertiary:focus, .btn-tertiary:disabled {
	background: var(--yellow);
	border-color: var(--yellow);
	color: var(--white);
}

.btn-tertiary:hover {
	background: var(--yellow-hover);
}

.btn-outline-tertiary {
    border-color: var(--yellow);
}

.btn-outline-tertiary:hover {
	border-color: var(--yellow-hover);
}

.btn-primary-outline, .btn-primary-outline:hover, .btn-primary-outline:focus,
.btn-outline-primary, .btn-outline-primary:hover, .btn-outline-primary:focus {
	background: #FFF;
	border: 1px solid var(--primary);
	color: var(--primary);
}

.btn-primary-outline:hover,
.btn-outline-primary:hover {
	background: var(--primary);
	border: 1px solid var(--primary);
	color: #FFF;
}

.btn-outline-secondary {
    border-color: var(--light-grey);
    color: var(--dark-text);
}

[class*="btn-outline"]:not(.btn-sm):not(.btn-xs) {
    border-width: 2px;
}

.btn-fb, .btn-fb:hover, .btn-fb:focus {
	background: #4568b2;
	border: 2px solid #4568b2;
	color: #FFF;
}

.btn-fb:hover {
	background: #2C58B5;
}

.btn-google, .btn-google:hover, .btn-google:focus {
	background: #db4c3e;
	border: 2px solid #db4c3e;
	color: #FFF;
}

.btn-google:hover {
	background: #E91602;
}

/* @media (min-width: 992px) {

	.modal:not(.login-modal):not(.modal-sm) .modal-dialog {
		max-width: 920px;
	}

} */

.copy-area .copy-value-hidden {
    opacity: 0;
    height: 0;
    width: 0;
    float: left;
    position: absolute;
    z-index: -99;
}

/* .copy-profile-link {
    overflow: hidden;
} */

.copy-profile-link a {
    display: inline-block;
    max-width: calc(100% - 3rem);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.modal-body > .list-group,
.modal-body > .list-group > .list-group-item {
    border-radius: 0;
}

.modal-body > .list-group { 
    max-height: 50vh;
    max-height: calc(100vh - 8rem);
    overflow: auto;
}

.alert {
	border-radius: .5rem;
}

.alert p:last-child {
    margin-bottom: 0;
}

.alert.alert-success {
	background-color: #C4E69B;
	border-color: #8FC153;
}

.alert.alert-info {
	background-color: #87B7DE;
	border-color: #7EAACF;
	color: #FFF;
}

.alert.alert-danger {
	background-color: #99001E;
	border-color: #800019;
	color: #FFF;
}

.alert.alert-danger a {
    color: #FFF;
    font-weight: bold;
}

.alert ul {
	list-style: none;
}

.alert ul:last-child {
	margin-bottom: 0;
}

.alert.alert-info a {
	color: #114977;
	font-weight: 600;
}

@media (min-width: 768px) {

    .collapse.show-md:not(.show) {
        display: block !important;
    }

}

/* fix button with user icon */

.navbar-light .btn-outline-secondary {
    background: var(--grey-bg);
}

.btn .fa-user {
    border-radius: 50%;
    transform: scale(1);
    overflow: hidden;
    transform-origin: center;
    vertical-align: sub;
}

.btn-outline-secondary:hover,
.navbar-light .btn-outline-secondary:hover {
    background: var(--dark-text);
}

.form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

.form-check-input:focus {
    border-color: var(--primary-transparent);
    box-shadow: 0 0 .25rem var(--primary-transparent);
}

.form-check-input.is-valid:checked,
.was-validated .form-check-input:valid:checked {
    background-color: var(--green-ok);
}

.small, small {
    font-size: .9em;
}

.fake-hidden {
    opacity: 0;
    position: absolute;
    top: -100vh;
    left: -100vh;
}

.row-new-photos ~ [name="photos_to_delete[]"] {
    display: none;
}

/* sections bg */

.white-section {
	background: var(--white);
}

.grey-section,
.navbar-light {
	background: var(--grey-bg);
}

hr {
    background-color: var(--light-grey2);
    opacity: 1;
    margin-top: 2.25rem;
    margin-bottom: 2.25rem;
}

.middle-title {
    color: var(--black);
    font-weight: 400;
    font-size: 2.75rem;
}

.middle-title strong {
    color: var(--primary);
    font-weight: 700;
}

@media (max-width: 991.98px) {

    .middle-title {
        font-size: 2rem;
    }

}

@media (max-width: 767.98px) {

    .middle-title {
        font-size: 1.5rem;
    }

}

.dropdown-menu {
    min-width: 5rem;
}

.dropdown-item.active,
.dropdown-item:active {
    background: var(--primary);
    color: var(--white);
}

/* navbar and body padding */

.navbar-light .navbar-nav .nav-link:not([class*="color-"]) {
    color: var(--dark-text);
}

.navbar-nav .nav-link small {
    font-size: .75em;
}

body.navbar-is-fixed {
    padding-top: var(--top-offset);
}

html.demo {
    --demo-offset: 2.5rem;
}

#demo {
    z-index: 1034;
}

@media (max-width: 991.98px) {

    #demo {
        font-size: .8rem;
    }

    html.demo {
        --demo-offset: 2rem;
    }

}

@media (max-width: 699.98px) {

    html.demo {
        --demo-offset: 3.5rem;
    }

}

@media (max-width: 359.98px) {

    #demo {
        font-size: .7rem;
    }

    #demo .btn {
        font-size: .8rem;
    }

}

html.demo .fixed-top:not(#demo) {
    top: var(--demo-offset);
}

.navbar-top {
    padding-top: .5rem;
    padding-bottom: .5rem;
    border-bottom: 1px solid var(--light-grey);
}

.navbar-top:not(.fixed-top) {
    z-index: 1030;
}

.navbar-top li i[class*="fa"]:first-child {
    font-size: 1.2rem;
}

.navbar-top img[data-src] {
    visibility: hidden;
    opacity: 0;
    width: 0 !important;
    height: 0 !important;
}

.top-my-account-desktop .dropdown-menu li:not(:first-child) {
    /* border-top: 1px solid var(--border-grey2); */
}

.top-my-account-desktop .dropdown-menu li:last-child a {
    padding-bottom: 0;
}

.top-profile-desktop-menu {
    padding: 1.66rem 2rem;
    border: none;
    filter: drop-shadow(0 0 .5rem rgba(0,0,0,.1));
    margin-top: .5rem;
    border-radius: .5rem;
    min-width: 6rem;
    max-height: calc(100vh - var(--top-offset));
    overflow-y: auto;
    position: absolute;
    top: 100%;
}

.top-profile-desktop-menu .dropdown-header,
.top-profile-desktop-menu .dropdown-item {
    padding: .66rem 0;
    font-size: var(--fs-15);
}

.top-profile-desktop-menu .dropdown-header {
    margin-top: .75rem;
    font-size: var(--fs-16);
}

.top-profile-desktop-menu .dropdown-header {
    color: var(--darkest);
    font-weight: 600;
}

.top-profile-desktop-menu .dropdown-item:focus,
.top-profile-desktop-menu .dropdown-item:hover {
    background: transparent;
    color: var(--primary);
}

.top-profile-desktop-menu .badge,
.top-profile-mobile-menu .badge {
    background-color: var(--badge-grey) !important;
    line-height: 1;
    border-radius: 50% !important;
    padding: .3rem 0;
    width: 1.4rem;
    font-weight: 400;
}

.top-profile-desktop-menu .badge-pm,
.top-profile-mobile-menu .badge-pm {
    background-color: var(--badge-red) !important;
}

/* .top-my-account-desktop .dropdown-menu .dropdown-item {
    padding: .5rem 1rem;
} */

/* .top-my-account-desktop .dropdown-menu .dropdown-header {
    padding: 0;
} */

.top-profile-mobile-menu a .user-menu-icon,
.top-profile-desktop-menu a .user-menu-icon {
    width: 1.5rem;
    height: 1.33rem;
    object-fit: contain;
    margin-right: .5rem;
    display: inline-block;
    position: relative;
    top: -.1rem;
}

.top-profile-mobile-menu a:not(.color-primary) .user-menu-icon,
.top-profile-desktop-menu a:not(.color-primary) .user-menu-icon {
    opacity: .25;
}

@media (max-width: 767.98px) {

    .navbar-top li i[class*="fa"]:first-child {
        font-size: 1.5rem;
        display: inline-block;
        margin-right: .5rem;
    }

}

@media (min-width: 768px) and (max-width: 991.98px) {

.navbar-top .navbar-brand img {
    vertical-align: text-bottom;
    max-height: 3rem;
    object-fit: scale-down;
}

}

@media (min-width: 992px) {

    :root {
        --base-offset: 5.75rem;
    }

    .navbar-top {
        /* padding-top: 0;
        padding-bottom: 0; */
        padding-top: .5rem;
        padding-bottom: .5rem;
        /* min-height: 6.5rem; */
    }

    .navbar-brand {
        padding-top: 0.125rem;
        padding-bottom: 0.125rem;
    }

    .navbar-top .nav-link {
        position: relative;
        font-weight: 500;
        font-size: 1.0715rem;
    }

    .navbar-top .nav-link::after {
        content: '';
        display: block;
        height: 3px;
        width: 0;
        max-width: 100%;
        background: transparent;
        position: absolute;
        top: auto;
        right: 0;
        bottom: .25rem;
        left: 0;
        margin: auto;
        transition: all .25s;;
    }

    .navbar-top .nav-link:hover::after {
        background: var(--primary);
        width: 2.5rem;
    }

    .navbar-top .navbar-brand img {
        vertical-align: text-bottom;
        width: 18rem;
        height: 4.5rem;
        object-fit: scale-down;
    }

    .top-group-buttons-desktop > * + * {
        margin-left: .5rem;
    }

    .top-my-account-desktop > .btn {
        border-radius: .5rem !important;
        position: relative;
    }

    .top-group-buttons-desktop .btn > i.fa-user { /* better icon position on desktop */
        position: relative;
        top: -1px;
        z-index: 0;
    }

    .top-group-buttons-desktop .btn > i.fa-plus { /* better icon position on desktop */
        position: relative;
        top: 1px;
        z-index: 0;
    }

    .top-my-account-desktop .dropdown-menu {
        transition: all 0;
        transition-delay: 0;
    }

    .top-my-account-desktop .dropdown-menu {
        display: block;
        visibility: hidden;
    }

    .top-my-account-desktop:hover .dropdown-menu {
        display: block;
        visibility: visible;
    }

    .top-my-account-desktop:not(:hover) .dropdown-menu {
        transition-delay: .75s;
    }

    .top-my-account-desktop .user-img {
        width: 4rem;
        height: 4rem;
        object-fit: cover;
    }

    .top-my-account-desktop .user-img ~ * {
        font-size: var(--fs-16);
    }

}

@media (min-width: 992px) and (max-width: 1199.98px) {

    .navbar-top .navbar-brand img {
        max-width: 12vw;
    }

}

.navbar-top h1 {
    margin-top: auto;
    margin-bottom: auto;
    display: inline-flex;
}

/* .navbar-top .langs-outer { */
.navbar-top .langs-group {
    border-left: 1px solid var(--light-grey);
    border-right: 1px solid var(--light-grey);
}

.navbar-top .langs-group img {
    margin-right: .25rem;
}

.navbar-top .btn-link {
    color: var(--dark-text);
    text-decoration: none;
}

.navbar-top .langs-group.show {
    filter: drop-shadow(0 0 .5rem rgba(0,0,0,.1));
}

.navbar-top .langs-group {
    position: relative;
}

.navbar-top .langs-group:hover {
    z-index: 1;
}

.navbar-top .langs-group,
.navbar-top .langs-group * {
    --this-radius: .5rem;
}

.navbar-top .langs-group .btn {
    border-radius: var(--this-radius);
}

.navbar-top .langs-group .btn,
.navbar-top .langs-group .btn + .dropdown-menu a {
    font-size: var(--fs-15);
}

.navbar-top .langs-group .btn,
.navbar-top .langs-group .btn + .dropdown-menu a {
    padding-left: 1rem;
    padding-right: 1rem;
}

@media (min-width: 1400px) {

    .navbar-top .langs-group .btn,
    .navbar-top .langs-group .btn + .dropdown-menu a {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

}

.navbar-top .langs-group .btn:focus {
    outline: none;
    box-shadow: none;
}

.navbar-top .langs-group .btn.show,
.navbar-top .langs-group .btn.show:focus {
    background: var(--white);
    outline: none;
    border-radius: var(--this-radius) var(--this-radius) 0 0;
    /* box-shadow: 0 0 .5rem rgba(0,0,0,.1); */
    z-index: 9;
    transition: none;
}

.navbar-top .langs-group .btn.show + .dropdown-menu {
    background: var(--white);
    outline: none;
    border-radius:  0 0 var(--this-radius) var(--this-radius);
    /* box-shadow: 0 0 .5rem rgba(0,0,0,.1); */
    z-index: 9;
    margin-top: 0;
    border: none;
    font-size: 1.15rem;
    min-width: 100%;
    max-width: 100%;
    padding-top: 0;
    /* padding-bottom: 0; */
    position: absolute;
    top: 100%;
}

.btn[data-bs-toggle="dropdown"] .icon-down {
    font-size: .66rem;
    top: -.05rem;
    position: relative;
}

.dropdown-toggle::after {
    content: "\f078";
    font-family: var(--fa);
    border: none;
    font-weight: 600;
    vertical-align: middle;
}

.dropdown-toggle[aria-expanded="true"]::after {
    content: "\f077";
}

@media(max-width: 991.98px) {

    .navbar.navbar-light {
        background-color: var(--menu-mobile-bg-grey);
    }

    .navbar .navbar-nav {
        position: relative;
        margin-top: .5rem;
    }

    .navbar .navbar-nav::before {
        content: '';
        position: absolute;
        top: 0;
        right: -2rem;
        bottom: auto;
        left: -2rem;
        display: block;
        /* width: 100%; */
        height: 1px;
        background-color: var(--menu-border-grey);
    }

    .navbar .nav-item {
        font-size: var(--fs-15);
        font-weight: 500;
    }

    .nav-item .dropdown-toggle::after {
        float: right;
    }

    .navbar .nav-item:not(:last-child) {
        border-bottom: 1px solid var(--menu-border-grey);
    }

    .navbar.has-shadow {
        box-shadow: 0 0 1rem rgba(0,0,0,.2);
    }

    .navbar .navbar-nav {
        margin-left: calc(-1 * var(--bs-gutter-x));
        margin-right: calc(-1 * var(--bs-gutter-x));
        padding-left: calc(2rem + var(--bs-gutter-x));
        padding-right: calc(2rem + var(--bs-gutter-x));
    }

    .navbar-top .collapse {
        max-height: calc(100vh - var(--top-offset) - 2rem);
        overflow-y: auto;
        overflow-x: hidden;
    }

    .navbar .navbar-nav .nav-link,
    .navbar .navbar-nav .dropdown-header {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .navbar .navbar-nav .dropdown-header {
        padding-left: 0;
        padding-right: 0;
        color: var(--darkest);
        font-weight: 600;
        font-size: var(--fs-15);
    }

    .navbar .navbar-nav .dropdown-menu {
        background: var(--menu-border-grey);
        border: none;
        border-radius: 0;
        padding-top: 0;
        padding-bottom: 0;
        /* margin: 0 calc(-1 * (2rem + var(--bs-gutter-x))); */
        /* padding-left: calc(2 * 2rem); */
        /* padding-right: 2rem; */
        margin: 0 -2rem;
        padding-left: 2rem;
        padding-right: 2rem;
        position: relative;
    }

    /* bg on left */
    .navbar .navbar-nav .dropdown-menu::before,
    .navbar .navbar-nav .dropdown-menu::after {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        right: 100%;
        bottom: 0;
        left: auto;
        width: calc((100vw - 100%) / 2);
        height: 100%;
        background: inherit;
    }

    .navbar .navbar-nav .dropdown-menu::after {
        left: 100%;
        right: auto;
    }

    .navbar .navbar-nav .dropdown-item {
        color: var(--dark-text);
        padding-top: 1rem;
        padding-bottom: 1rem;
        padding-left: 2rem;
        padding-right: 0;
    }

    .navbar .navbar-nav .dropdown-menu > li:not(:last-child) .dropdown-item,
    .navbar .navbar-nav span.dropdown-menu > .dropdown-item:not(:last-child) {
        padding-bottom: .75rem;
    }

    .navbar .navbar-nav .dropdown-menu > li:not(:first-child) .dropdown-item,
    .navbar .navbar-nav span.dropdown-menu > .dropdown-item:not(:first-child) {
        padding-top: .75rem;
    }

    .navbar .navbar-nav .dropdown-item:focus,
    .navbar .navbar-nav .dropdown-item:hover {
        color: var(--primary);
        background-color: transparent;
    }

    .navbar-light .navbar-brand {
        display: inline-block;
        max-width: 40vw;
    }

    .navbar .mobile-top-icon-with-desc {
        text-align: center;
        border: none;
        border-radius: .5rem;
        position: relative;
        padding: .5rem .75rem .25rem;
        min-height: 100%;
    }

    .navbar .mobile-top-icon-with-desc:focus {
        box-shadow: none;
    }

    .navbar .mobile-top-icon-with-desc:hover {
        background-color: var(--white);
        filter: drop-shadow(0 0 .5rem rgba(0,0,0,.1));
        box-shadow: none;
    }

    .navbar .mobile-top-icon-with-desc .fa-user {
        border-radius: 50%;
        overflow: hidden;
        transform: scale(1);
    }

    .navbar .mobile-top-icon-circle-green .icon-outer,
    .navbar .mobile-top-icon-circle-grey .icon-outer {
        border-radius: 50%;
        display: flex;
        text-align: center;
        width: 2rem;
        height: 2rem;
        margin-left: auto;
        margin-right: auto;
    }

    .navbar .mobile-top-icon-circle-green .icon-outer > i,
    .navbar .mobile-top-icon-circle-grey .icon-outer > i {
        display: block;
        margin: auto;
        font-size: 1.1rem;
    }

    .navbar .mobile-top-icon-circle-green .icon-outer {
        background: var(--primary);
        color: var(--white);
    }

    .navbar .mobile-top-icon-circle-grey .icon-outer {
        background: var(--icon-grey);
        color: var(--white);
    }

    .navbar .mobile-top-icon-with-desc > i {
        font-size: 2.5rem;
        font-style: normal;
        margin-bottom: .33rem;
    }

    .navbar .mobile-top-icon-with-desc .my-bars-icon {
        --line-width: 3px;
        --line-color: var(--black);
        width: 2rem;
        height: 1.5rem;
        border: none;
        border-top-width: var(--line-width);
        border-top-style: solid;
        border-bottom-width: var(--line-width);
        border-bottom-style: solid;
        border-color: var(--line-color);
        position: relative;
        display: block;
        margin-left: auto;
        margin-right: auto;
        /* margin-top: .15rem; */
        margin-bottom: .5rem;
    }

    .navbar .mobile-top-icon-with-desc .my-bars-icon::before {
        content: '';
        width: 100%;
        height: var(--line-width);
        display: block;
        background: var(--line-color);
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        position: absolute;
        margin: auto;
    }

    .navbar .navbar-toggler.mobile-top-icon-with-desc .close-icon {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 3.5rem;
        height: 3.5rem;
        font-size: 3.5rem;
        font-weight: 300;
    }

    .navbar .navbar-toggler.mobile-top-icon-with-desc:not([aria-expanded="true"]) .close-icon {
        visibility: hidden;
    }

    .navbar .navbar-toggler.mobile-top-icon-with-desc[aria-expanded="true"] .close-icon {
        visibility: visible;
    }

    .navbar .navbar-toggler.mobile-top-icon-with-desc[aria-expanded="true"] > .my-bars-icon,
    .navbar .navbar-toggler.mobile-top-icon-with-desc[aria-expanded="true"] > span:last-child {
        visibility: hidden;
    }

    .navbar .mobile-top-icon-with-desc > span:last-child {
        display: block;
        /* font-size: .8rem; */
        font-size: .875rem;
        color: var(--lead-text-color);
        white-space: nowrap;
    }

    .navbar .navbar-toggler.mobile-top-icon-with-desc > i {
        color: var(--black);
    }

}

@media(max-width: 339.98px) {

    .navbar-light .navbar-brand {
        max-width: 30vw;
    }

}

@media(max-width: 299.98px) {

    .navbar .mobile-top-icon-with-desc {
        padding-left: .25rem;
        padding-right: .25rem;
    }

}

@media (min-width: 992px) and (max-width: 1199.98px) {

    .navbar-top .langs-group .btn,
    .navbar-top .langs-group .btn.show + .dropdown-menu a {
        padding-left: .5rem;
        padding-right: .5rem;
    }

}

@media (min-width: 1200px) {

    .btn[data-bs-toggle="dropdown"] .icon-down {
        margin-left: 1.25rem;
    }
}

/* pretty list group as datalist */

.list-group-as-datalist {
    --padding-val: 2rem;
    position: absolute;
    top: 100%;
    top: calc(100% - 1px);
    left: 0;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: calc(var(--padding-val) / 2);
    background: var(--white);
    border-radius: 0 0 1rem 1rem !important;
    /* max-height: 50vh;
    overflow: hidden; */
}

/* 
maybe to do in the future
@media (min-width: 1200px) {

    .list-group-as-datalist > li:nth-child(n+6) {
        display: none;
    }

} */

/* .popover.as-list {
    border: none !important;
}

.popover.as-list .popover-body {
    padding: 0;
} */

.panel-search:not(.panel-search-basic) [name="search_distance"] ~ .list-group-as-datalist,
.input-price ~ .list-group-as-datalist,
.additional-field-outer .list-group-as-datalist {
    --padding-val: 1rem;
}


.input-price ~ .list-group-as-datalist,
.additional-field-outer .list-group-as-datalist {
    filter: drop-shadow(0 .25rem .25rem rgba(0,0,0,.25));
}

@media (max-width: 1399.98px) {

    .panel-search .input-price ~ .list-group-as-datalist {
        --padding-val: .5rem;
    }

}

.list-group-as-datalist:empty {
    visibility: hidden;
}

.list-group-as-datalist .list-group-item {
    padding: .75rem var(--padding-val);
    background: transparent;
    border-left: none;
    border-right: none;
    position: relative;
}

.list-group-as-datalist .list-group-item > * {
    position: relative;
    z-index: 1;
}

.list-group-as-datalist .list-group-item:hover {
    cursor: pointer;
}

/* .list-group-as-datalist .list-group-item::before {
    content: '';
    display: block;
    top: 0;
    right: calc(-1 * var(--padding-val));
    bottom: 0;
    left: calc(-1 * var(--padding-val));
    position: absolute;
    background: var(--white);
    z-index: 0;
}

.list-group-as-datalist .list-group-item:hover::before {
    background: var(--grey-bg);
} */

.list-group-as-datalist .list-group-item:hover {
    background: var(--grey-bg);
}

/* .list-group-as-datalist .list-group-item .list-group-item:hover::before {
    left: 0;
    right: 0;
} */

.list-group-as-datalist .list-group-item .list-group {
    box-shadow: 0 0 .5rem rgba(0,0,0,.1);
}

.list-group-as-datalist .list-group-item .list-group-item {
    padding-left: var(--padding-val);
    padding-right: var(--padding-val);
}

.list-group-as-datalist .list-group-item {
    /* border-top: 1px solid var(--light-grey);
    border-bottom: none; */
    border: none;
    position: relative;
    background: inherit;
}

.list-group-as-datalist .list-group-item::before {
    content: '';
    height: 1px;
    background-color: var(--light-grey);
    display: block;
    left: var(--padding-val);
    right: var(--padding-val);
    top: 0;
    position: absolute;
}

.list-group-as-datalist .list-group-item-last-used + .list-group-item:not(.list-group-item-last-used)::before {
    background-color: var(--light-grey3);
}

.list-group-as-datalist .list-group-item-last-used:first-child {
    padding-top: 0;
    padding-bottom: .25rem;
}

.list-group-as-datalist .list-group-item-last-used:first-child::before {
    display: none;
}

.list-group-as-datalist .list-group-item .under {
    display: block;
    font-size: .75rem;
    color: var(--primary);
}

.form-bg .list-group-as-datalist {
    box-shadow: 0 .25rem .25rem rgba(0,0,0,.25);
    --padding-val: 1rem;
}

.addedit-localizations-datalist {
    max-height: 50vh;
    z-index: 9;
    overflow: auto;
}

/* search panel */

.search-section {
    z-index: 9;
}

.search-lead {
    color: var(--lead-text-color);
    line-height: 1.2;
}

.search-lead:empty {
    display: none;
}

.search-lead p:last-child {
    margin-bottom: 0;
}

.search-lead strong:not([style]) span {
    color: var(--primary);
}

.panel-search form {
    margin: 0;
}

.panel-search .form-control {
    border: none;
}

.panel-search .input-group-with-icon .input-group-text:first-child {
    position: absolute;
    top: 0;
    right: auto;
    bottom: 0;
    left: 1px;
    z-index: 999;
    background-color: transparent;
    border: none;
    color: var(--city-grey);
    font-size: 1.2rem;
}

.panel-search .list-group-as-datalist {
    z-index: 1029;
}

/* .panel-search .input-group-city .form-control-with-icon {
    padding-left: 4rem;
} */

.panel-search .input-group-city-outer {
    position: relative;
}

.panel-search .select-distance-fake {
    cursor: pointer;
}

/* .panel-search .select-distance-arrow-icon {
    position: absolute;
    top: 1.75rem;
    right: 2.5rem;
    font-size: .66rem;
} */

.panel-search .select-distance:not([data-val="0"]) {
    font-weight: 500;
}

.panel-search .sep {
    width: 1px;
    height: 2.5rem;
    margin-top: auto;
    margin-bottom: auto;
    margin-left: 0 !important;
    margin-right: 0 !important;
    /* position: relative;
    right: -2px; */
    background: var(--light-grey);
    z-index: 9;
}

.panel-search .input-group {
    background: var(--white);
}

.panel-search .form-control,
.panel-search .form-select {
    border: 1px solid var(--white);
}

.panel-search .form-floating > .form-control:valid,
.panel-search .form-floating > .form-control[readonly]:valid {
    border-width: 2px;
    border-color: var(--yellow);
}

.panel-search .form-floating small {
    font-size: .75em;
}

.panel-search .form-control:focus,
.panel-search .form-select:focus {
    /* border: 1px solid var(--primary); */
    box-shadow: inset 0 0 .1rem .05rem var(--primary), inset 0 0 .5rem .5rem var(--light-grey);
    z-index: 99;
}

@media (min-width: 992px) {

    .search-advanced-outer .panel-search .form-select[name="search_category"]:not(.select-company-category) {
        max-width: 180px;
    }

}

@media (min-width: 1400px) {

    .search-advanced-outer .panel-search .form-select[name="search_category"]:not(.select-company-category) {
        max-width: 240px;
    }

}

.panel-search .form-control ~ .reset-input,
.panel-search .form-select ~ .reset-input {
    z-index: 99;
    font-size: 1.5rem;
    line-height: 2.5;
}

.panel-search .form-control:invalid ~ .reset-input,
.panel-search .form-select:invalid ~ .reset-input {
    visibility: hidden;
}

.panel-search .input-group-city .crosshair-btn {
    font-size: 1.5rem;
    line-height: 2.5;
    color: var(--primary);
    text-align: center;
}

.search-advanced-outer .panel-search .input-group-city .crosshair-btn {
    line-height: 1.66;
    padding-left: .5rem;
    padding-right: .5rem;
}

.panel-search .form-control ~ .crosshair-btn:not(:hover) {
    opacity: .66;
}

.panel-search .form-control:valid ~ .crosshair-btn {
    visibility: hidden;
}

@media (max-width: 767.98px) {

    .panel-search .form-control ~ .reset-input,
    .panel-search .form-select ~ .reset-input {
        line-height: 1.75;
    }

}

@media (min-width: 768px) {

    .search-advanced-outer {
        margin-top: 1rem;
    }

}

@media (min-width: 992px) {

    .search-advanced-outer {
        margin-top: 2rem;
    }

}

.search-advanced-outer .panel-search .form-control ~ .reset-input,
.search-advanced-outer .panel-search .form-select ~ .reset-input {
    line-height: 1.75;
}

.panel-search .input-group-city .reset-input,
.panel-search .input-group-city .input-city ~ .crosshair-btn {
    right: 30%;
}

.panel-search label.datalist-visible {
    z-index: 1029;
}

.panel-search .list-group > .list-group-item {
    position: relative;
    color: var(--black);
}

.panel-search .list-group > .list-group-item > .list-group {
    position: absolute;
    top: 0;
    /* left: calc(100% - var(--padding-val)/2);
    width: calc(100% - var(--padding-val)/2); */
    left: calc(100%);
    width: 100%;
    background: var(--white);
}

.panel-search .list-group > .list-group-item > .list-group.show,
.panel-search .list-group > .list-group-item > .list-group.show .list-group-item {
    z-index: 9;
}

.panel-search .select-with-checkboxes-outer {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    filter: drop-shadow(0 .25rem .25rem var(--black));
}

.panel-search .additional-field-outer:hover,
.panel-search .additional-field-outer:hover .form-floating,
.panel-search .additional-field-outer:hover .select-with-checkboxes-outer {
    z-index: 999;
}

/* .panel-search .list-group > .list-group-item.show > .list-group {
    display: block;
} */

@media (max-width: 991.98px) {

    .search-lead {
        font-size: 1.5rem;
    }

    .single-section.search-section {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .panel-search > form > .row > * {
        margin-bottom: .5rem;
    }

    .panel-search .btn[type="submit"] {
        border-radius: .5rem;
        font-weight: 500;

    }

    .panel-search .select-distance {
        max-width: 30%;
    }

    .panel-search .select-distance ~ .list-group-as-datalist {
        width: 30%;
        left: auto;
        right: 0;
    }

    /* .panel-search .select-distance-arrow-icon {
        top: 1.33rem;
        right: 2rem;
        font-size: .75rem;
        z-index: 99;
    } */

    .panel-search .input-group-phrase,
    .panel-search .input-group-city,
    .panel-search .input-group-company {
        border-radius: .5rem;
        border: 2px solid var(--light-grey);
    }

    .panel-search .input-group-phrase > input,
    .panel-search .input-group-company > input {
        border-radius: .5rem;
    }

    .panel-search .input-group-phrase .form-control,
    .panel-search .input-group-city .form-control,
    .panel-search .input-group-company .form-control {
        border: none;
    }

    .panel-search .input-group-with-icon .input-group-text {
        font-size: 1.1rem;
    }

    .panel-search .datalist-visible {
        z-index: 99;
    }

    .list-group-as-datalist {
        overflow-y: scroll;
        max-height: 33vh;
    }

    .panel-search .input-group-phrase [name="search_text"],
    .panel-search .input-group-company [name="search_company"] {
        border-radius: .5rem !important;
    }

    .panel-search .input-group-city [name="search_city"] {
        border-top-left-radius: .5rem !important;
        border-bottom-left-radius: .5rem !important;
    }

    .panel-search .input-group-city [name="search_distance"] {
        border-top-right-radius: .5rem !important;
        border-bottom-right-radius: .5rem !important;
    }

    .panel-search .list-group > .list-group-item > .list-group {
        left: auto;
        right: var(--padding-val);
    }

    .panel-search .list-group > .list-group-item > .list-group {
        background: var(--grey-bg);
        border: 1px solid var(--medium-grey);
        position: relative;
        top: .75rem;
        left: 0;
        right: 0;
        width: 100%;
    }

    .panel-search .input-price,
    .panel-search .select-category,
    .panel-search .additional-field-outer .form-control {
        border: 2px solid var(--light-grey);
    }

    .panel-search .input-price[data-list]:not(:valid),
    .panel-search .additional-field-outer .form-control[data-list]:not(:valid) {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
        background-repeat: no-repeat;
        background-position: right .75rem center;
        background-size: 16px 12px;
    }

    .panel-search .input-price[data-list]:not(:valid):focus,
    .panel-search .additional-field-outer .form-control[data-list]:not(:valid):focus {
        background-position: right .75rem bottom .75rem;
    }

}

@media (max-width: 575.98px) {

    .panel-search .select-distance,
    .panel-search .select-distance ~ .list-group-as-datalist {
        width: 35%;
        max-width: 35%;
    }

    .panel-search .input-group-city .reset-input,
    .panel-search .input-group-city .input-city ~ .crosshair-btn {
        right: 35%;
    }

    .panel-search .input-group-city .crosshair-btn {
        line-height: 1.66;
    }

}

@media (min-width: 992px) {

    .panel-search {
        background: var(--dark-search);
        border-radius: 1.25rem;
        color: var(--white);
    }

    .panel-search .form-floating label,
    .panel-search input,
    .panel-search select {
        color: var(--dark);
    }

    .panel-search .form-floating label {
        white-space: nowrap;
        max-width: 100%;
    }

    .panel-search .btn-link {
        color: var(--light-grey2);
    }

    .panel-search .btn-link:hover {
        color: var(--white);
    }

    .search-lead {
        font-size: 2.5rem;
    }

    .panel-search.panel-search-basic .btn[type="submit"] {
        border-radius: 1rem;
        font-weight: 700;
    }

    .panel-search .input-phrase,
    .panel-search .input-group-phrase,
    .panel-search .input-company,
    .panel-search .input-group-company {
        border-radius: var(--input-border-radius) !important;
    }

    .panel-search.panel-search-basic .input-phrase,
    .panel-search.panel-search-basic .input-group-phrase,
    .panel-search.panel-search-basic .input-group-company {
        border-radius: var(--input-border-radius) 0 0 var(--input-border-radius) !important;
    }

    .panel-search .datalist-visible .input-phrase,
    .panel-search .datalist-visible .input-company {
        border-bottom-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
    }

    .panel-search .input-group-city .input-city {
        border-radius: 0;
        right: -1px;
    }

    .panel-search .input-group-city {
        border-radius: 0 1rem 1rem 0;
        border-left: 1px solid var(--light-grey);
    }

    .panel-search {
        --input-border-radius: 1rem;
    }

    .panel-search:not(.panel-search-basic) {
        --input-border-radius: .25rem;
    }

    .panel-search:not(.panel-search-basic) .input-group-city,
    .panel-search:not(.panel-search-basic) .input-group-city .input-city {
        border-top-left-radius: var(--input-border-radius) !important;
        border-bottom-left-radius: var(--input-border-radius) !important;
    }

    .panel-search .datalist-visible[data-list-for-search_city="true"] {
        border-bottom-left-radius: 0 !important;
    }

    .panel-search .datalist-visible[data-list-for-search_city="true"] .input-city {
        border-bottom-left-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
    }

    .list-group-as-datalist {
        padding-top: 1rem;
    }

    .panel-search .input-group-city .list-group-as-datalist:first-of-type {
        /* width: 70%; */
        width: 140%;
        overflow-y: auto;
        max-height: 50vh;
        background-color: transparent;
        direction: rtl;
        padding-bottom: 0;
    }

    .panel-search .input-group-city .list-group-as-datalist:first-of-type::before {
        content: '';
        display: block;
        height: 100%;
        width: calc(50%);
        position: absolute;
        top: 0;
        right: auto;
        left: 0;
        bottom: auto;
        background-color: var(--white);
    }

    .panel-search .input-group-city .list-group-as-datalist:first-of-type > li {
        width: 50%;
        direction: ltr;
        text-align: left;
        margin-right: 50%;
        background-color: var(--white);
    }

    /* .panel-search .input-group-city .list-group-as-datalist > li > span {
        display: block;
    } */

    .panel-search .select-distance {
        max-width: 30%;
        border-radius: 0 var(--input-border-radius) var(--input-border-radius) 0 !important;
    }

    .panel-search.panel-search-basic .select-distance {
        background-size: 8px;
        background-position: right 2rem center;
    }

    .panel-search [data-list-for-search_distance="true"] .select-distance {
        border-bottom-right-radius: 0 !important;
    }

    .panel-search .select-distance ~ .list-group-as-datalist {
        --padding-val: .75rem;
        width: 30%;
        left: auto;
        right: 0;
        max-height: 33vh;
        overflow-y: auto;
    }

    .panel-search .btn[type="submit"] {
        height: 100%;
    }

}

@media (min-width: 1200px) {

    .form-control-with-icon.ps-5 {
        padding-left: 4rem !important;
    }

    .panel-search.panel-search.panel-search-basic .btn[type="submit"] {
        font-size: 1.285rem;
    }

}

.panel-search .select-with-checkboxes-outer ul,
.input-price ~ .list-group-as-datalist,
.additional-field-outer .list-group-as-datalist {
    max-height: 33vh;
    overflow-y: auto;
    font-size: .85rem;
}

@media (max-width: 1199.98px) {

    .panel-search .input-price ~ .list-group-as-datalist {
        font-size: .8rem;
    }

}

.panel-search .select-with-checkboxes-outer ul .form-check-input,
.panel-search .select-with-checkboxes-outer ul .form-check-input:checked {
    width: 16px;
    height: 16px;
}

.panel-search .select-with-checkboxes-outer .form-check .form-check-input + .form-check-label {
    margin-left: .25rem;
}

.panel-search .select-with-checkboxes-outer .form-check {
    min-height: .5rem;
}

.additional-field-outer .close-options-link {
    position: relative;
    top: -1rem;
}

.panel-search .datalist-visible {
    filter: drop-shadow(0 0 .5rem rgba(0,0,0,.1));
}

.input-group .reset-input,
.form-floating .reset-input,
.panel-search .input-group-city .crosshair-btn {
    position: absolute;
    top: 2px;
    right: 2px;
    bottom: 2px;
    left: auto;
}

.form-floating .reset-input {
    top: .75rem;
}

input ~ .reset-input {
    border-radius: 0;
}

input ~ .reset-input:focus {
    box-shadow: none;
}

/* .additional-field-outer .form-floating {
    --char-to-width: .5rem;
}

.additional-field-outer[style*="--label-chars"] .form-floating {
    width: calc((var(--label-chars) + 4) * var(--char-to-width) + 3rem);
}

.additional-field-outer.additional-field-with-options[style*="--label-chars"] .form-floating {
    width: calc((var(--label-chars) + 4) * var(--char-to-width) + 5rem);
} */

.filters-btn {
    position: fixed;
    border-radius: 100%;
    right: .5rem;
    bottom: .5rem;
    font-size: 2rem;
    padding: 1rem;
    line-height: 1;
    z-index: 99;
    box-shadow: 0 .25rem .25rem rgba(0,0,0,.1);
}

.filters-btn.has-chosen::before {
    content: "\f14a";
    font-family: var(--fa);
    font-weight: 900;
    font-size: 1.25rem;
    border-radius: 50%;
    color: var(--yellow);
    display: block;
    width: 1rem;
    height: 1rem;
    top: 0;
    left: .25rem;
    position: absolute;
}

/* mobile search filters */

@media (max-width: 767.98px) {

    .search-advanced-outer {
        display: none;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        overflow-y: auto;
        background-color: var(--white);
        z-index: 1035;
    }

    .search-advanced-outer .advanced-heading {
        position: sticky;
        background-color: var(--white);
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        bottom: auto;
        z-index: 9999;
    }

    .search-advanced-outer .close {
        font-size: 2rem;
        line-height: 1;
    }

    .search-advanced-outer .close,
    .search-advanced-outer .close:hover {
        color: var(--dark);
        text-decoration: none;
    }

}


/* home categories */

.home-categories .outer-cat-h {
    height: 100%;
}

.home-categories .outer-cat {
    display: flex;
    height: 100%;
    border: 3px solid var(--white);
    position: relative;
}

.home-categories .single-cat-column {
    cursor: pointer;
}

@media (min-width: 768px) {

    .home-categories .single-cat-column {
        width: calc(100% / 7);
        min-width: calc(100% / 7);
        max-width: calc(100% / 7);
        margin-top: calc(var(--bs-gutter-x) / 2);
        margin-bottom: calc(var(--bs-gutter-x) / 2);
    }

    .home-categories .single-cat-column .arrow-down {
        display: none;
        color: var(--primary);
        text-align: center;
        position: absolute;
        right: 0;
        /* top: calc(100% + var(--bs-gutter-x) / 2); */
        top: 100%;
        top: calc(100% + 2px);
        left: 0;
        margin: auto;
        height: var(--bs-gutter-x);
        line-height: var(--bs-gutter-x);
        font-size: 1.5rem;
    }

    .home-categories .single-cat-column .arrow-right {
        display: none;
    }

    .home-categories .single-cat-column .outer-cat.active .arrow-down {
        display: block;
    }

    .home-categories .outer-cat {
        padding: 1rem .25rem;
    }

}

@media (min-width: 992px) {

    .home-categories .outer-cat {
        padding: 2rem .25rem;
    }

}

@media (min-width: 768px) and (max-width: 991.98px) {

    .home-categories .single-cat-column .arrow-down {
        font-size: 1rem;
    }

}

.home-categories .outer-cat.active {
    border-color: var(--primary);
}

.home-categories .outer-cat,
.home-categories .subcats-outer {
    background: var(--white);
    border-radius: 1rem;
}

.home-categories .subcats-outer {
    padding: 1.5rem 2.5rem;
    margin-top: var(--bs-gutter-x);
    margin-bottom: calc(2 * var(--bs-gutter-x));
}

.home-categories .subcats-outer .pre-with-cat-title {
    color: var(--primary);
    display: list-item;
    list-style: disc;
    margin-left: 1rem;
}

@media (min-width: 768px) {

    .home-categories .outer-cat:hover,
    .home-categories .outer-cat.active,
    .home-categories .subcats-outer {
        box-shadow: 0 0 .5rem rgba(0,0,0,.1);
    }

    .home-categories .outer-cat.active .category-name {
        color: var(--primary);
    }

}

@media (min-width: 992px) {

    .home-categories .cat-subcats {
        font-size: 1.1rem;
    }

}

.home-categories .cat-subcats ul {
    color: var(--primary);
    padding-left: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--light-grey);
    margin-top: 1rem;
    margin-bottom: 0;
}

.home-categories .cat-subcats ul {
    list-style: disc;
}

.home-categories .cat-subcats ul:empty {
    display: none;
}

.home-categories .cat-subcats ul li {
    margin-bottom: .5rem;
    page-break-inside: avoid;
    break-inside: avoid;
}

.home-categories .cat-subcats ul a {
    color: var(--dark-text);
}

.home-categories .cat-subcats ul a,
.home-categories .cat-subcats ul a * {
    transition: all .25s;
}

.home-categories .cat-subcats ul a:hover {
    text-shadow: 0 0 .5rem rgba(0,0,0,.1);
}

.home-categories .cat-subcats ul a:hover .name {
    color: var(--primary);
}

.home-categories .outer-cat img {
    object-fit: contain;
    width: auto;
    height: auto;
}

.home-categories .category-name {
    color: var(--dark-text);
    font-size: 1rem;
    font-weight: 600;
}

.home-categories .category-name a {
    color: inherit;
}

.home-categories .category-name + small {
    font-size: .9rem;
}

@media (max-width: 767.98px) {

    .home-categories .outer-cat,
    .home-categories .subcats-outer {
        border-radius: .5rem;
    }

    .home-categories > [style] {
        order: 0 !important;
    }

    .home-categories .single-cat-column .outer-cat:not(.active) .arrow-down,
    .home-categories .single-cat-column .outer-cat.active .arrow-right {
        display: none;
    }

    .home-categories .subcats-outer .pre-with-cat-title::before {
        content: '';
        width: calc(100% + 1rem);
        border-top: 1px solid var(--light-grey);
        display: block;
        top: -1rem;
        left: -1rem;
        position: relative;
    }

    .home-categories .subcats-outer {
        margin-top: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        border: 2px solid var(--primary);
        border-top: none;
        padding: 1rem;
        padding-top: 1.5rem;
        margin-bottom: 1rem;
    }

    .home-categories .outer-cat {
        padding-top: .5rem;
        padding-bottom: .5rem;
        border-width: 2px;
    }

    .home-categories .outer-cat.active {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        border-bottom: none;
    }

    .home-categories .single-cat-column {
        margin-top: .5rem;
    }

    .home-categories .outer-cat img {
        width: 10vw;
        height: 10vw;
    }

}

@media (min-width: 768px) and (max-width: 991.98px) {

    .home-categories,
    .home-categories .single-cat-column .arrow-down {
        --bs-gutter-x: .75rem;
    }

    .home-categories .category-name {
        font-size: .6rem;
    }

    .home-categories .cat-subcats ul {
        columns: 3;
        column-gap: 2.5rem;
    }

    .home-categories .outer-cat img {
        max-height: 4rem;
    }

    .home-categories .subcats-outer {
        padding: 1rem 1.5rem;
    }

}

@media (min-width: 992px) {

    .home-categories {
        --bs-gutter-x: 1rem;
    }

    .home-categories .category-name {
        font-size: .85rem;
    }

    .home-categories .cat-subcats ul {
        columns: 4;
        column-gap: 2.5rem;
    }

}

/* sections */

.single-section {
    --standard-padding-y: 4rem;
	padding: var(--standard-padding-y) 0;
    position: relative;
}

.action-subdomain-company-page .single-section {
    --standard-padding-y: 2rem;
}

.stats-section + .text-section,
.text-section + .stats-section,
.stats-section + .container-home_between:empty + .text-section,
.text-section + .container-home_between:empty + .stats-section {
	margin-top: 0;
	padding-top: 0;
}

.text-section + .stats-section .home-stats,
.text-section + .container-home_between:empty + .stats-section .home-stats {
	padding-top: 0;
}

.white-section + .white-section {
    padding-top: 0;
}

.grey-section + .grey-section {
    padding-top: 0;
}

.stats-section .home-stats {
    font-weight: 300;
    color: var(--dark-text);
    font-size: 1.2rem;
    line-height: 1.2;
}

.stats-section .home-stats img {
    width: auto !important;
    height: auto !important;
}

.stats-section .home-stats strong {
	font-weight: 500;
}

.single-section.last-added-section {
    /* --bs-gutter-x: inherit; */
    --bs-gutter-x: 1.5rem;
    padding-bottom: calc(var(--standard-padding-y) - var(--bs-gutter-x));
}

@media (min-width: 576px) and (max-width: 767.98px) {

    .stats-section .single-stat-col {
        font-size: .9rem;
    }

}

.grid-column-carousel.in-row-5,
.grid-column-carousel__list.in-row-5 .single-announcement,
.in-row-5 .single-col {
    --inner-padding: .5rem;
}

.grid-column-carousel__list.in-row-5 .single-announcement,
.in-row-5 .single-col {
    padding-left: var(--inner-padding);
    padding-right: var(--inner-padding);
}


@media (min-width: 768px) {

    .single-section.last-added-section.show-max-8 .single-announcement {
        min-width: calc(100% / 4);
        max-width: calc(100% / 4);
    }

    .in-row-5 .single-announcement, /* !!!!!!!!!!!!! */
    .single-section.last-added-section.show-max-10 .single-announcement,
    .in-row-5 .single-col {
        min-width: calc(100% / 5);
        max-width: calc(100% / 5);
    }

    .grid-column-carousel.in-row-5 {
        margin-left: calc(-1 * var(--inner-padding));
        margin-right: calc(-1 * var(--inner-padding));
    }

    .grid-column-carousel__list.in-row-5 .single-announcement {
        --single-width: calc((var(--container-width) - .75rem) / 5);
        width: var(--single-width);
        min-width: var(--single-width);
        max-width: var(--single-width);
    }

    .single-section.last-added-section.show-max-12 .single-announcement,
    .in-row-6 .single-announcement {
        min-width: calc(100% / 6);
        max-width: calc(100% / 6);
    }

}

.partners-section .single-partner img {
    max-height: 200px;
    object-fit: scale-down;
}

/* titles, subtitles */

.title-outer:not(:first-child) {
	margin-top: 2rem;
}

.title-outer ~ .title-outer {
	margin-top: 2rem;
}

.title,
.title-no-line,
.title-with-line {
	color: var(--dark-text);
	margin: 0 0 1rem;
	padding: 0;
	font-size: var(--fs-24);
	font-weight: 500;
}

.title-with-line {
	border-bottom: 1px solid var(--light-grey);
	/* padding: 0 0 1.5rem; */
	padding: 0 0 1rem;
	/* margin: 0 0 1.5rem; */
	margin: 0 0 1rem;
}

.title strong,
.title-with-line strong {
	font-weight: 700;
}

.title-outer > a,
.title-outer .print-link {
	color: var(--dark-text);
	font-weight: 500;
}

.subtitle-with-line {
	color: var(--dark-text);
	margin: 0 0 2rem;
	padding: 0 0 .75rem;
	border-bottom: 1px solid var(--light-grey);
	font-size: 1.2rem;
	font-weight: 300;
}

.subtitle-with-line strong {
	font-weight: 500;
}

.subtitle-outer > a {
	color: var(--dark-text);
	font-size: .75rem;
	font-weight: 500;
}

.subtitle-outer > a[class*="float"]:hover {
    color: var(--primary);
}

.subtitle-with-line .rss-icon {
	display: inline-block;
	margin-left: .5rem;
	max-width: 2rem;
	max-height: 2rem;
	width: auto;
	height: auto;
}

.subtitle-with-line .rss-icon[data-src] {
	opacity: 0;
}

.partners-section .subtitle-with-line {
    margin-bottom: .75rem;
}

/* announcement blocks */

.small-announcement {
    border-radius: 1rem;
    overflow: hidden;
    position: relative;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* .home-section .single-announcement {
	margin-bottom: var(--bs-gutter-x);
} */

.small-announcement .announcement-thumb {
    min-width: 100%;
    object-fit: cover;
}

.small-announcement.small-company .announcement-thumb {
    object-fit: contain;
}

.small-announcement .announcement-title {
	font-size: 1rem;
	display: block;
	margin: 0 auto auto;
    padding-left: .5rem;
    padding-right: .5rem;
    padding-bottom: .5rem;
    min-height: 3rem;
    text-overflow: ellipsis;
    overflow: hidden;
}

.small-announcement .announcement-title,
.small-announcement .announcement-title a {
	color: var(--dark-text);
	/* min-height: calc(2 * 17.6px); */
}

.last-added-section .small-announcement .announcement-title {
    min-height: 2rem;
    height: 2rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.small-announcement .announcement-city {
	font-size: .875rem;
	color: var(--city-grey);
	display: block;
	font-weight: 600;
	margin-top: auto;
	margin-bottom: 0;
}

.small-announcement .announcement-price {
	font-size: 1.15rem;
	color: var(--primary);
	display: block;
	font-weight: 700;
    margin-top: auto;
    /* margin-bottom: 1rem; */
    padding-left: .1rem;
    padding-right: .1rem;
}

.small-announcement .announcement-price small {
    font-weight: 600;
    font-size: .75em;
}

.last-added-section .single-announcement .small-announcement,
.promoted-section .single-announcement .small-announcement,
.other-announcements-of-user .single-announcement .small-announcement,
.other-announcements-of-category .single-announcement .small-announcement,
.visited-section .small-announcement {
	border: 1px solid var(--border-grey2);
	transition: all .25s;
}

.last-added-section .single-announcement .small-announcement:hover,
.promoted-section .single-announcement .small-announcement:hover,
.other-announcements-of-user .single-announcement .small-announcement:hover,
.other-announcements-of-category .single-announcement .small-announcement:hover,
.visited-section .small-announcement:hover {
	border-color: var(--primary);
	box-shadow: 0 0 0 2px var(--primary);
}

/* promoted carousel */

.grid-column-carousel__list {
    padding-left: 0;
    padding-right: 0;
    display: flex;
    margin-bottom: 3px; /* fix to show items' bottom border */
}

.carousel-outer .grid-column-carousel__list li {
    margin-top: 2px;
}

.grid-column-carousel__page-indicators.hidden {
    display: none;
}

.carousel-outer {
	position: relative;
}

.carousel-outer .prev,
.carousel-outer .next {
    position: absolute;
    color: rgba(0,0,0,.1);
    font-size: 3rem;
    margin-top: auto;
    margin-bottom: auto;
    top: 0;
    bottom: 0;
    height: 3rem;
}

.carousel-outer .prev {
	/* right: calc(100% - .25rem); */
	right: 100%;
}

.carousel-outer .next {
	/* left: calc(100% - .25rem); */
	left: 100%;
}

.carousel-outer .prev:hover,
.carousel-outer .next:hover {
    color: var(--primary-transparent);
    /* color: rgba(0,0,0,.075); */
    filter: drop-shadow(0 0 .25rem rgba(0,0,0,.75));
}

.carousel-outer .grid-column-carousel__list li {
	float: left;
}

.promoted-carousel .announcement-thumb {
	/* width: 250px; */
	height: auto;
}

.last-added-section .announcement-thumb {
	/* width: 200px; */
	height: auto;
}

@media (min-width: 1200px) {

	.carousel-outer .prev {
		right: calc(100% + .5rem);
	}

	.carousel-outer .next {
		left: calc(100% + .5rem);
	}

}

@media (min-width: 1400px) {

	.carousel-outer .prev {
		right: calc(100% + 1rem);
	}

	.carousel-outer .next {
		left: calc(100% + 1rem);
	}

    .carousel-outer .prev,
    .carousel-outer .next {
        font-size: 4rem;
        height: 4rem;
    }

}

@media only screen and (max-width: 991.98px) {

	.carousel-outer {
		/* width: 90%; */
		margin-left: auto;
		margin-right: auto;
	}

	.carousel-outer .prev {
		right: calc(100% + 1px);
	}

	.carousel-outer .next {
		left: calc(100% + 1px);
	}

	.carousel-outer .prev,
	.carousel-outer .next {
		font-size: 2.5rem;
	}

	.carousel-outer::after,
	.announcement-gallery::after {
		content: '';
		display: block;
		position: absolute;
		bottom: 15%;
		right: 3%;
        --test-css-before: url('../images/test_image.svg');
        --test-css: url(../../../favicon.ico);
		background: url('../images/swipe-icon.png') center center no-repeat;
		background-size: contain;
		width: 35px;
		height: 35px;
		animation-name: opacity;
		animation-direction: alternate;
		animation-duration: 1s;
		animation-iteration-count: infinite;
	}

	.carousel-outer a {
		display: block;
	}

}

.announcement-desc-text .yt-video {
    margin-top: .5rem;
    margin-bottom: .5rem;
}

.announcement-title-outer .title-with-line {
	margin-bottom: 0;
	border-bottom: none;
}

.announcement-desc .announcement-desc-text ul,
.announcement-desc .announcement-desc-text ol {
	margin-left: 20px;
}

.announcement-desc .title-with-line {
	font-weight: 500;
	font-size: var(--fs-18);
	padding-bottom: 1rem;
}

.announcement-desc .announcement-fields {
    border-bottom: 1px solid var(--light-grey);
}

.langs-above-desc {
    margin-bottom: 0
}

.langs-above-desc li {
	padding-left: 2px;
	padding-right: 2px;
	display: inline-block;
}

.langs-above-desc li:first-child:last-child {
	display: none;
}

.langs-above-desc li:not(.active):not(:hover) {
	opacity: .5;
}

.langs-above-desc li img {
	max-width: 2rem;
}

.langs-above-desc li.active img {
	/* box-shadow: inset 0 0 1px 2px #55900f; */
    border-radius: 50%;
}

.view-single-meta .list-inline-dotted li {
    float: left;
    width: calc(100% / 2);
}

@media (min-width: 992px) {

	.view-single-meta.col-md-12 .list-inline-dotted li {
		float: left;
		width: calc(100% / 4);
	}

	.view-single-meta.col-md-6 .list-inline-dotted li {
		float: left;
		width: calc(100% / 2);
	}

}

.announcement-mobile-action-buttons {
	position: fixed;
	bottom: 0;
	right: 0;
	left: 0;
	z-index: 1000;
}

.announcement-mobile-action-buttons .btn {
    font-size: var(--fs-16);
}

/* home news */

.news-section .single-news .img-outer {
    border-radius: 1rem;
    overflow: hidden;
    position: relative;
}

.news-section .single-news .ratio .img-outer {
    position: absolute;
}

.news-section .single-news .img-outer .news-thumb {
    min-width: 100%;
    object-fit: contain;
}

.news-section .single-news .ratio .img-outer .news-thumb {
    height: 100%;
    object-fit: cover;
}

.news-section .single-news .news-title {
    font-size: 1.15rem;
    margin-top: .75rem;
}

.news-section .single-news .news-title a {
	color: var(--darkest);
}

.news-section .single-news .news-title a:hover {
	color: var(--primary);
    text-shadow: 0 0 .5rem rgba(0,0,0,.1);
}

.news-section .single-news .news-preface {
    font-size: var(--fs-12);
}

.news-text img {
    max-width: 100%;
    height: auto !important;
}

.news-text h1 {
    font-size: var(--fs-24);
}

.news-text h2 {
    font-size: var(--fs-22);
}

.news-text h3 {
    font-size: var(--fs-20);
}

.news-text h4 {
    font-size: var(--fs-18);
}

.news-author-img {
    width: 4.5rem;
    height: 4.5rem;
    object-fit: cover;
}

/* from with bg */

.form-bg {
    --padding-y: 3rem;
    --padding-x: 3rem;
    background: var(--light-grey);
    border-radius: 1.5rem;
    padding: var(--padding-y) var(--padding-x);
    position: relative;
}

.form-bg .form-bg-title {
    position: absolute;
    font-size: 1.35rem;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    color: var(--white);
    background: var(--form-bg-title-grey);
    text-align: center;
    display: block;
    top: -2.25rem;
    right: var(--padding-x);
    left: var(--padding-x);
    border-radius: .75rem;
    text-align: center;
    font-weight: 400;
    padding-left: calc(var(--padding-x) / 2);
    padding-right: calc(var(--padding-x) / 2);
}

.form-bg .form-bg-title.w-auto {
    width: auto;
    right: auto;
}

.form-bg .form-bg-title strong {
    font-weight: 600;
}

.form-bg hr {
    background-color: rgba(0,0,0,.1);
}

@media (max-width: 991.98px) {

    .form-bg .form-bg-title {
        font-size: 1.125rem;
    }

}

@media (max-width: 767.98px) {

    .page-content > .form-bg:first-of-type,
    .page-content > form:first-child > .form-bg:first-of-type {
        margin-top: 3rem;
    }

}

@media (max-width: 575.98px) {

    .form-bg {
        --padding-x: 1.5rem;
    }

}

@media (min-width: 992px) {

    .form-bg {
        --padding-x: 4rem;
    }

}

@media (min-width: 1200px) {

    .form-bg {
        --padding-x: 6rem;
    }

}

.form-bg .form-bg-title + form {
    margin-top: 2.5rem;
}

.form-bg .form-group,
.form-bg > form > .form-check {
    margin-bottom: 2rem;
}

.form-bg .form-group > label {
    color: var(--form-label-grey);
    font-size: var(--fs-15);
    font-weight: 500;
    padding-left: 2rem;
    padding-right: 2rem;
}

.form-bg .form-check {
    font-size: var(--fs-13);
}

.form-bg form:not(.was-validated) .form-group .form-control:not(:focus),
.form-bg form:not(.was-validated) .form-group .form-select:not(:focus) {
    border-color: var(--white);
}

.form-bg .form-group .input-group,
.form-bg .form-group .form-control-lg,
.form-bg .form-group .form-select-lg {
    --radius-val: .75rem;
}

.form-bg .form-group .form-control-lg,
.form-bg .form-group .form-select-lg {
    font-size: var(--fs-15);
    padding: 1.33rem 3rem;
    border-radius: var(--radius-val);
}

@media (min-width: 992px) {

    .form-bg .form-group textarea.form-control-lg {
        min-height: 10rem;
    }

}

.form-bg .form-group .input-group .form-control-lg,
.form-bg .form-group .input-group .form-select-lg {
    border-radius: 0;
}

.form-bg .form-group .input-group .form-control-lg:first-child,
.form-bg .form-group .input-group .form-select-lg:first-child {
    border-top-left-radius: var(--radius-val);
    border-bottom-left-radius: var(--radius-val);
    padding-right: 1rem;
}

.form-bg .form-group .input-group .form-control-lg:last-child,
.form-bg .form-group .input-group .form-select-lg:last-child {
    border-top-right-radius: var(--radius-val);
    border-bottom-right-radius: var(--radius-val);
    padding-left: 1rem;
}

.form-bg .form-group .input-group,
.form-bg .form-group > .form-control,
.form-bg .form-group > .form-select,
.form-bg .form-group > .counted,
.form-bg .form-group > label ~ .row,
.form-bg .form-group > .input-outer {
    margin-top: .5rem;
}

.form-bg .form-group .input-group .input-group-text:first-child {
    border-top-left-radius: var(--radius-val);
    border-bottom-left-radius: var(--radius-val);
}

.form-bg .form-group .input-group .input-group-text:last-child {
    border-top-right-radius: var(--radius-val);
    border-bottom-right-radius: var(--radius-val);
}

.form-select-lg.is-invalid,
.form-bg .was-validated .form-select-lg:invalid,
.form-bg .form-select-lg.is-valid,
.form-bg .was-validated .form-select-lg:valid {
    background-position: center right 2.25rem, left calc(.375em + .1875rem) center;
}

.form-control-lg.is-invalid,
.form-bg .was-validated .form-control-lg:invalid,
.form-bg .form-control-lg.is-valid,
.form-bg .was-validated .form-control-lg:valid {
    background-position: left calc(.375em + .1875rem) center;
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    background-position: left calc(.375em + .1875rem) center;
}

.form-control.is-invalid + .form-text,
.was-validated .form-control:invalid + .form-text {
    color: var(--dark-red);
    font-weight: 500;
}

.form-check .form-check-input {
    margin-left: -1.5rem;
    margin-top: -.05em;
}

.form-check .form-check-input + .form-check-label {
    margin-left: .5rem;
    color: inherit;
}

.form-check-inline .form-check-input  {
    margin-top: 0;
}

.form-check-label a {
    color: inherit;
}

*:not(.form-switch) > .form-check-input,
*:not(.form-switch) > .form-check-input:checked {
    background-color: var(--white);
    border-color: rgba(0,0,0,.25) !important;
    border-radius: 50% !important;
    /* width: 1.4285rem;
    height: 1.4285rem; */
    width: 20px;
    height: 20px;
}

.form-check-input[type="radio"]:checked {
    border-color: var(--white);
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='10' height='10' version='1.1' viewBox='0 0 2.6458 2.6458' xmlns='http://www.w3.org/2000/svg' xmlns:cc='http://creativecommons.org/ns%23' xmlns:dc='http://purl.org/dc/elements/1.1/' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns%23'%3E%3Cmetadata%3E%3Crdf:RDF%3E%3Ccc:Work rdf:about=''%3E%3Cdc:format%3Eimage/svg+xml%3C/dc:format%3E%3Cdc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/%3E%3Cdc:title/%3E%3C/cc:Work%3E%3C/rdf:RDF%3E%3C/metadata%3E%3Cg transform='translate(0 -294.35)'%3E%3Cellipse cx='1.3229' cy='295.68' rx='1.3229' ry='1.3229' fill='%2355900f' opacity='.94'/%3E%3C/g%3E%3C/svg%3E%0A") !important;
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center;
}

.form-bg .form-check .form-check-input:not([data-field-id]) + .form-check-label {
    padding-top: .25rem;
}

.form-check-input[type="checkbox"],
.form-check-input[type="checkbox"]:checked {
    border-radius: 5px !important;
}

.form-check-input[type="checkbox"]:checked {
    background-color: var(--primary);
}

form label sup,
form h2 sup,
form [class*="title"] sup,
.color-red {
	color: var(--red);
}

form label sup,
form h2 sup,
sup.color-red {
	font-size: 1em;
    top: 0;
}

.form-check-input.is-valid:not(:checked) ~ .form-check-label,
.was-validated .form-check-input:valid:not(:checked) ~ .form-check-label {
    color: inherit;
}

.price-outer-col [name="announcement_cost"] {
    flex-basis: 33%;
}

.price-outer-col [name="announcement_cost_currency"] {
    flex-basis: 6rem;
}

.price-outer-col [name="announcement_cost_tax"] {
    flex-basis: 7rem;
}

.price-outer-col [name="announcement_cost_unit"] {
    flex-basis: 6rem;
}

@media (max-width: 1399.98px) {

    .price-outer-col [name="announcement_cost"] {
        flex-basis: 25%;
    }
    
    .price-outer-col [name="announcement_cost_currency"] {
        flex-basis: 6rem;
    }
    
    .price-outer-col [name="announcement_cost_tax"] {
        flex-basis: 7rem;
    }
    
    .price-outer-col [name="announcement_cost_unit"] {
        flex-basis: 5.5rem;
    }

}

@media (max-width: 991.98px) {

    .price-outer-col [name="announcement_cost"] {
        flex-basis: 25%;
    }
    
    .price-outer-col [name="announcement_cost_currency"] {
        flex-basis: 3rem;
    }
    
    .price-outer-col [name="announcement_cost_tax"] {
        flex-basis: 5rem;
    }
    
    .price-outer-col [name="announcement_cost_unit"] {
        flex-basis: 3rem;
    }

}

@media (max-width: 767.98px) {

    .price-outer-col [name="announcement_cost"] {
        flex-basis: 20%;
    }
    
    .price-outer-col [name="announcement_cost_currency"] {
        flex-basis: 2rem;
    }
    
    .price-outer-col [name="announcement_cost_tax"] {
        flex-basis: 6.5rem;
    }
    
    .price-outer-col [name="announcement_cost_unit"] {
        flex-basis: 2rem;
    }

}

/* list of cities */

.city-or-state-section .cities-list {
	padding: 0 1rem;
	margin-bottom: 2rem;
}

.city-or-state-section .cities-list li {
	margin-bottom: .5rem;
}

.city-or-state-section .cities-list a {
	color: var(--black);
}

.city-or-state-section .cities-list a:hover {
    color: var(--primary);
    text-shadow: 0 0 .5rem rgba(0,0,0,.1);
}

@media (max-width: 991px) {

	.city-or-state-section .buttons .btn {
		margin: 0 0 .5rem;
		width: 100%;
		display: block;
		font-weight: 400;
	}

}

@media (min-width: 260px) and (max-width: 767.98px) {

	.city-or-state-section .cities-list {
		column-count: 2;
		column-gap: 1.5rem;
        padding-right: 0;
	}

}

@media (min-width: 768px) {

	.city-or-state-section .cities-list {
		column-count: 2;
		column-gap: 2rem;
	}

	.city-or-state-section .buttons .btn.btn-primary {
		margin-left: 0;
	}
	
}

@media (min-width: 992px) {

	.city-or-state-section .cities-list {
		column-count: 3;
		column-gap: 3rem;
	}
	
}

/* list check circle at register page */

.list-check-circle {
    --left-offset: 3rem;
    font-size: var(--fs-18);
    color: var(--dark-text2);
    padding-left: var(--left-offset);
    list-style: none;
}

.list-check-circle li::before {
    content: "\f058";
    font-family: var(--fa);
    float: left;
    margin-left: calc(-1 * var(--left-offset));
    font-size: 1.66rem;
    margin-top: -.25rem;
}

.list-check-circle li + li {
    margin-top: 1.5rem;
}

.list-check-circle strong {
    font-weight: 600;
}

@media (max-width: 767.98px) {

    .list-check-circle {
        font-size: 1rem;
        --left-offset: 1.75rem;
        line-height: 1.2;
    }

    .list-check-circle li::before {
        font-size: 1.33rem;
        margin-top: -.15rem;
    }

    .list-check-circle li + li {
        margin-top: .5rem;
    }

}

/* site footer */

.site-footer {
	background: var(--dark);
	color: var(--medium-grey);
}

.site-footer a {
	color: var(--white);
}

.site-footer .footer-top {
	border-bottom: 1px solid var(--border-grey);
}

.site-footer .footer-middle + .footer-bottom {
	border-top: 1px solid var(--border-grey);
}

.site-footer .footer-middle,
.site-footer .footer-bottom {
	font-size: .875rem;
    line-height: 1.5;
}

.site-footer .footer-text p:last-child {
    margin-bottom: 0;
}

.site-footer .payment-logo {
	width: auto;
	max-height: 3rem;
	height: auto;
	object-fit: contain;
}

.go-to-top {
	position: fixed;
	bottom: 2vh;
	right: 2vw;
	display: block;
	color: #B3B3B3;
	font-weight: 500;
	transition: all .25s;
	z-index: 9;
}

.go-to-top:not(:hover) {
	opacity: .7;
}

body:not(.scrolled) .go-to-top {
	opacity: 0;
}

.go-to-top:hover {
	color: #696969;
}

.go-to-top a,
.go-to-top a:hover {
	color: inherit;
}

.go-to-top .square {
	position: relative;
	width: 60px;
	box-shadow: 0 0 30px rgba(0,0,0,.2);
	display: block;
	margin-bottom: 15px;
	background: #FFF;
}

.go-to-top .square::before {
	content: '';
	display: block;
	padding-bottom: 100%;
}

.go-to-top .square .glyphicon,
.go-to-top .square i {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	font-size: 30px;
	line-height: 200%;
}

@media (max-width: 767px) {

	.go-to-top {
		transform: scale(.65);
		transform-origin: right bottom;
		bottom: .5rem;
	}

    .filters-btn ~ .go-to-top,
    .company-search-panel-section ~ .go-to-top {
		bottom: 5rem;        
    }

	.action-pokaz .go-to-top {
		bottom: 5rem;        
    }

}


/* single page content */

.page-content {
    --this-margin: 2.5rem;
	margin-top: var(--this-margin);
	margin-bottom: var(--this-margin);
	position: relative;
}

@media (max-width: 991.98px) {

	.page-content {
		--this-margin: 2rem;
	}

}

@media (max-width: 767.98px) {

	.page-content {
		--this-margin: 1.5rem;
	}

}

@media (min-width: 1200px) {

    .page-content {
		--this-margin: 4rem;
    }

}

.breadcrumbs + .page-content {
    margin-top: 0;
}

.text-page-content img {
	max-width: 100%;
	height: auto !important;
}

.sliding-text:not(.in):not(.show) .text {
	max-height: 3rem;
	overflow: hidden;
}

.sliding-text.in .to-hide,
.sliding-text.show .to-hide {
	display: none;
}

/* register page additional style */

.register-have-account-already-text {
    font-size: var(--fs-15);
}

@media (min-width: 768px) {

    .page-content-register-user {
        margin-top: 4rem;
    }

}

@media (min-width: 992px) {

    .page-content-register-user {
        margin-top: 5rem;
    }

}

.register-social-buttons-outer .btn-lg {
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: var(--fs-15);
    border-radius: .75rem;
}

.rodo-text {
    color: var(--light-grey3);
}

.rodo-text .text a {
    color: inherit;
}

.rodo-text .text ~ a {
    opacity: .5;
}

.rodo-modal .modal-body {
    max-height: 50vh;
    max-height: calc(80vh - 10rem);
    overflow: auto;
}

.announcement-title-card {
	box-shadow: none;
    border-color: rgba(0,0,0,.1);
}

@media (max-width: 767.98px) {

	.announcement-title-card .title {
		font-size: var(--fs-16);
	}

}

.chosen-category-box {
    cursor: pointer;
}

/* create announcement - add photos */

.single-ajax-image img {
	display: inline-block;
	margin-bottom: 5px;
}

.single-ajax-image .first-img-label {
    font-size: 1rem;
    font-weight: 600;
}

@media (max-width: 767.98px) {

    .single-ajax-image.empty + .single-ajax-image.empty {
        display: none !important;
        visibility: hidden;
    }

}

.single-ajax-image label input {
	display: none;
}

.single-ajax-image label input:not(:checked) + .btn {
	opacity: .5;
}

.single-ajax-image {
    position: relative;
    --outer-border-width: 2px;
}

.single-ajax-image:not(.empty) .img-thumbnail {
    border: var(--outer-border-width) solid var(--white);
}

.single-ajax-image:not(.empty) .img-thumbnail.is-main {
    border-color: var(--primary);
}

.single-ajax-image .img-thumbnail.is-main + .action-outer .btn.set-as-main {
    display: none;
}

.single-ajax-image .img-thumbnail {
    --bs-aspect-ratio: 80%; /* 100% */
}

@media (max-width: 575.98px) {

    /* .single-ajax-image .img-thumbnail {
        --bs-aspect-ratio: 50%;
    } */

    .single-ajax-image:not(.empty) {
        --outer-border-width: 3px;
    }

}

/* .single-ajax-image label {
	display: block;
	width: 100%;
} */

.single-ajax-image .img-thumbnail .btn {
	width: 100%;
	border-radius: 0;
	padding: 0;
    font-size: 2rem;
    color: rgba(0,0,0,.5);
}

.single-ajax-image .img-thumbnail .btn:hover {
    text-shadow: 0 0 .5rem var(--white);
    color: rgba(0,0,0,.75);
}

.single-ajax-image .btn .spinner-border {
    vertical-align: middle;
}

.single-ajax-image .img-thumbnail > img {
    object-fit: cover;
}

.single-ajax-image:not(.loading) .btn .spinner-border,
.single-ajax-image.loading .btn .fa-icon,
.single-ajax-image.loading .btn .first-img-label {
    display: none;
}

.single-ajax-image .action-outer {
    position: absolute;
    top: var(--outer-border-width);
    right: calc(var(--outer-border-width) + var(--bs-gutter-x)/ 2);
    bottom: var(--outer-border-width);
    left: calc(var(--outer-border-width) + var(--bs-gutter-x)/ 2);
    background: transparent;
}

.single-ajax-image .badge-main-photo {
    position: absolute;
    left: 0;
    bottom: 0;
    line-height: 1.2;
    border-radius: 0;
    border-top-right-radius: .25rem;
    background: var(--primary);
    color: var(--white);
}

@media (max-width: 767.98px) {

    .single-ajax-image .badge-main-photo {
        font-size: .75rem;
        padding: .5em;
        top: 0;
        right: auto;
        bottom: auto;
        left: 0;
        border-radius: 0;
        border-bottom-right-radius: .25rem;
    }

}

@media (min-width: 768px) {

    .single-ajax-image .action-outer {
        background: rgba(0,0,0,.5);
    }

}

.single-ajax-image [name="photos_main"]:not(:checked) + .badge-main-photo {
    display: none;
}

@media (min-width: 768px) {

    .single-ajax-image:not(:hover) .action-outer {
        background: transparent;
    }

    .single-ajax-image:not(:hover) .action-outer .btn {
        opacity: 0;
    }

}

.single-ajax-image .action-outer .action-buttons {
    margin-top: auto;
    margin-bottom: auto;
}

/* .single-ajax-image .delete {
	position: absolute;
	top: 5px;
	right: 20px;
	border: 2px solid #FFF;
	font-size: 120%;
	line-height: 1;
} */

#photosAjax .tooltip-inner {
    max-width: calc(100% - 2*var(--padding-x));
    margin-left: auto;
    margin-right: auto;
}




/* add form */

#createAnnouncement .map-outer,
#companyValidate .map-outer,
.full-width-map-outer {
	height: 33vh;
	min-height: 250px;
	width: 100%;
}

@media (max-width: 767px) {

	#createAnnouncement .map-outer,
    #companyValidate .map-outer,
    .full-width-map-outer {
		height: 25vh;
		min-height: 50px;
	}
	
}

@media (min-width: 992px) {

	img.photoToCrop {
		max-width: 600px;
	}

}


.announcement-meta {
	background: var(--navy);
	color: var(--white)
}

.announcement-meta .show-phone {
	margin-top: -8px;
	padding-top: 4px;
	padding-bottom: 4px;
}

.announcement-meta a {
	color: var(--white);
}

.announcement-meta a:not(.btn):hover {
	color: #ffb400;
	border-bottom: 2px solid #ffb400;
}

.announcement-meta .meta-name {
	color: #9191a3;
}

.announcement-meta .meta-value .price {
	color: #ffb400;
	font-size: 24px;
}

.announcement-security-rules .title {
	font-size: var(--fs-18);
	font-weight: 300;
}

.announcement-security-rules .title strong {
	font-weight: 500;
	display: block;
}

.announcement-security-rules ul {
	padding: 1rem 0 1rem 1.25rem;
	border-top: 1px solid var(--border-grey2);
	border-bottom: 1px solid var(--border-grey2);
	margin: 0;
}

.announcement-contact-form {
	border: 1px solid rgba(0,0,0,.2);
	margin-top: 2.5rem;
	padding: 2rem;
	background: var(--grey-bg);
}

.announcement-contact-form .title {
	font-size: 2rem;
	font-weight: 300;
	color: var(--dark-text);
	border-bottom: 1px solid rgba(0,0,0,.2);
	margin-top: 0;
	padding-top: 0;
	margin-bottom: 1.5rem;
	padding-bottom: 1.5rem;
}

.announcement-contact-form .phone-outer {
	font-size: 2rem;
	font-weight: 300;
	color: var(--dark-text);
	display: block;
	margin-bottom: 1.5rem;
}

.announcement-contact-form .phone-outer .hide-if-phone,
.announcement-contact-form .phone-outer .hidden-phone {
	color: var(--primary);
}

.announcement-contact-form .phone-outer a:not(.btn):hover {
	color: #ffb400;
	border-bottom: 2px solid #ffb400;
}

@media (max-width: 575.98px) {

    .announcement-contact-form {
        padding: 1rem;
    }

    .announcement-contact-form .title,
    .announcement-contact-form .phone-outer {
        font-size: 1.5rem;
    }

}

.announcement-contact-form .form-control {
	/* height: auto; */
}

.announcement-contact-form textarea {
	height: 115px;
	min-width: 100%;
	max-width: 100%;
}

.announcement-contact-form .attachment-file-col,
.announcement-contact-form .attachment-desc-col {
	font-size: 12px;
}

.announcement-contact-form .attachment-file-col .file-name-value {
	white-space: nowrap; 
	overflow: hidden;
	text-overflow: ellipsis;
	display: block;
}

.announcement-contact-form .attachment-file-col .file-label > span {
	font-weight: 500;
	cursor: pointer;
	color: #2b2b2b;
}

.price-contact-box-outer-main-1 .announcement-map,
.price-contact-box-outer-main-1 .author-contact-box {
	display: none;
}

.price-contact-box-outer-main-2 .price-box,
.price-contact-box-outer-main-2 .announcement-price-contact-box .row-phone {
	display: none;
}

.price-contact-box-outer-main-2 .announcement-price-contact-box .announcement-map {
	border-top: none;
}

.announcement-price-contact-box-outer.sticky-top {
    top: var(--top-offset);
    transition: all .25s;
}

.announcement-price-contact-box-outer.sticky-top .hide-if-scrolled {
    transition: all .25s;
}

body.scrolled .announcement-price-contact-box-outer.sticky-top .hide-if-scrolled {
    height: 0;
    overflow: hidden;
    margin: 0;
}

body.scrolled .announcement-price-contact-box-outer.sticky-top + * {
    margin-top: 4rem !important;
}

.announcement-price-contact-box .announcement-map,
#itemsMap {
    background-image: url('../images/grey-spinner-on-white.svg');
    background-repeat: no-repeat;
    background-position: center;
}

.announcement-price-contact-box {
	border: 1px solid rgba(0,0,0,.1);
	overflow: hidden;
}

.announcement-price-contact-box:empty {
	display: none;
}

.announcement-price-contact-box .price-box {
	padding: 1rem 1.5rem;
	background: var(--white);
}

.announcement-price-contact-box .price-col {
	color: #323232;
	font-weight: 500;
	font-size: 13px;
}

.announcement-price-contact-box .price-col .price {
	font-size: 1.75rem;
    line-height: 1;
}

.announcement-price-contact-box .price-col .price small {
    font-size: .66em;
}

.announcement-price-contact-box .announcement-map {
	/* border: 1px solid #c9c9c9; */
	/* border-width: 1px 0; */
	position: relative;
}

body:not(.scrolled) .announcement-price-contact-box-outer.sticky-top .announcement-price-contact-box .announcement-map,
.announcement-price-contact-box-outer:not(.sticky-top) .announcement-price-contact-box .announcement-map {
	margin-bottom: -3rem;
}

.announcement-price-contact-box .announcement-map:first-child {
	border-top: none;
}

.announcement-price-contact-box .announcement-map,
.announcement-price-contact-box .announcement-map .map-outer,
.announcement-price-contact-box .announcement-map #map-outer {
	height: 15rem;
	width: 100%;
	min-width: 100%;
	max-width: 100%;
	position: relative;
	z-index: 0;
}

.announcement-price-contact-box .announcement-map.box-no-map {
	max-height: 72px;
}

.announcement-price-contact-box .announcement-map .address-box {
	position: absolute;
	top: 10px;
	right: 15px;
	bottom: auto;
	left: 15px;
	border: 1px solid #c9c9c9;
	background: rgba(255,255,255,.9);
	font-size: 13px;
	font-weight: 500;
	padding: 5px 10px;
}

.announcement-price-contact-box .announcement-map .address-box .map-marker {
	margin: 3px 12px 10px 0;
	font-size: 15px;
}

.announcement-price-contact-box .author-contact-box {
	position: relative;
	z-index: 999;
	padding: 0 1.5rem 2rem;
}

.announcement-price-contact-box-outer.sticky-top .announcement-price-contact-box .author-contact-box {
    transition: all .25s;
}

body.scrolled .announcement-price-contact-box-outer.sticky-top .announcement-price-contact-box .author-contact-box {
    padding: 1.5rem;
}

/* .announcement-price-contact-box .price-box + .author-contact-box {
	margin-top: -2.5rem;
} */


.announcement-price-contact-box .author-contact-box .user-image {
	border-radius: 50%;
	max-width: 100%;
	height: auto;
	width: 6rem;
	margin-top: 0;
	position: relative;
	background-size: cover;
	background-position: center center;
}

.announcement-price-contact-box .author-contact-box .user-image::before {
	content: '';
	display: block;
	padding-bottom: 100%;
}

.announcement-price-contact-box .price-box + .author-contact-box .user-image {
	margin-top: 1rem;
}

.announcement-price-contact-box .author-contact-box .author-name {
	font-size: 20px;
	color: #323232;
	font-weight: 500;
	margin: 5px auto;
}

.announcement-price-contact-box .author-contact-box .action-buttons {
	margin: 0 0 1rem;
}

.announcement-price-contact-box .author-contact-box .action-buttons .btn {
	margin: .5rem 0;
}

.announcement-price-contact-box .author-contact-box .phone-col {
	font-size: 1.5rem;
	font-weight: 300;
}

.announcement-price-contact-box .author-contact-box .phone-col .phone-value {
	color: var(--primary);
	display: inline-block;
	border-bottom: 2px solid transparent;
}

.announcement-price-contact-box .author-contact-box .phone-col a.phone-value:hover {
	color: #ffb400;
	border-bottom-color: #ffb400;
}

@media (max-width: 767px) {

	.announcement-price-contact-box .author-contact-box .phone-col {
		font-size: 2rem;
	}

}

.announcement-gallery {
	background: var(--grey-bg);
	padding: 1rem;
	position: relative;
}

.announcement-gallery .carousel-item a {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.announcement-gallery .single-photo {
	margin-left: auto;
	margin-right: auto;
    display: block;
}

.announcement-gallery .carousel-control-next-icon,
.announcement-gallery .carousel-control-prev-icon {
    background-color: rgba(0,0,0,.75);
    border: .5rem solid transparent;
    border-radius: .5rem;
}

.announcement-gallery .carousel-control-next-icon:hover,
.announcement-gallery .carousel-control-prev-icon:hover {
    filter: drop-shadow(0 0 .25rem rgba(255,255,255,.5));
}

.announcement-gallery .carousel-control-next-icon,
.announcement-gallery .carousel-control-prev-icon {
    width: 3rem;
    height: 3rem;
}

.announcement-gallery .gallery-photo-counter {
    left: 1rem;
    bottom: 1rem;
    color: var(--white);
    background-color: rgba(0,0,0,.5);
    position: absolute;
    padding: .5rem;
    line-height: 1;
}


@media (min-width: 992px) {

    .announcement-gallery .carousel-control-next-icon,
    .announcement-gallery .carousel-control-prev-icon {
        width: 4rem;
        height: 4rem;
    }

}

.announcement-gallery .carousel-control,
.announcement-gallery .carousel-control:focus,
.announcement-gallery .carousel-control:hover {
	text-shadow: none;
	color: #bdbdbd;
	background: none;
	opacity: 1;
}

.announcement-gallery .carousel-control:hover {
	text-shadow: 0 3px 3px rgba(0,0,0,.5);
}

@media (min-width: 768px) {

	/* .announcement-gallery .carousel .item {
		height: 100vh;
	} */

	.announcement-gallery .single-photo {
		height: 480px;
		max-height: calc(100vh - 100px);
		max-width: 100%;
		width: auto;
        object-fit: contain;
        object-position: center;
        margin: auto;
        display: block;
	}

}

@media (max-width: 767.98px) {

	.announcement-gallery {
		padding: 0;
		/* background: transparent; */
		background: var(--grey-bg);
	}

	.announcement-gallery .carousel-control,
	.announcement-gallery .carousel-control:focus,
	.announcement-gallery .carousel-control:hover {
		color: #FFF;
		font-size: 30px;
		text-shadow: 0 0 10px #000;
		width: 12%;
	}

	/* .announcement-gallery .carousel-item {
		position: relative;
	} */

	.announcement-gallery .carousel-item a img {
		max-height: 45vh;
        max-width: 100%;
        object-fit: contain;
	}

	.announcement-gallery .carousel-item.normalized a img {
		margin-top: auto;
		margin-bottom: auto;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
	}

	.carousel-indicators li {
		box-shadow: 0 0 8px rgba(0,0,0,.15);
	}

}



.announcement-info-belt {
	padding: 1rem 0;
	color: var(--medium-grey);
	font-size: var(--fs-13);
	font-weight: 500;
}

.announcement-info-belt > span {
	display: inline-block;
    margin-right: 1rem;
}

@media (max-width: 767px) {
	
	/* .announcement-info-belt > span {
		display: block;
        margin-right: 0;
	} */
	
	.announcement-info-belt + .alert {
		margin-top: 2rem;
	}

	.announcement-title-outer {
		border-bottom: none;
	}
	
	.announcement-title-outer .title-with-line {
		border-bottom: 1px solid #d3d3d3;
		margin-bottom: 1rem;
		font-size: 1.5rem;
	}

}

/* breadcrumbs */

.breadcrumb-outer {
	border-bottom: 1px solid var(--light-grey2);
	padding: .75rem 0;
}

.breadcrumb-outer .breadcrumb {
	background: transparent;
	border-radius: 0;
}

.breadcrumb-outer .breadcrumb,
.breadcrumb-outer .breadcrumb a {
	font-size: .75rem;
	font-weight: 500;
	color: var(--medium-grey);
}

.breadcrumb-outer .breadcrumb > *:not(:first-child) {
    margin-left: .25rem;
}

.breadcrumb-outer .breadcrumb > *:not(:last-child) {
    margin-right: .25rem;
}

.breadcrumb-outer .breadcrumb > *:last-child {
	color: var(--dark-text);
	cursor: default;
}

.breadcrumb-outer .breadcrumb .return-link {
	color: var(--primary);
	font-weight: 600;
}

.breadcrumb-outer .breadcrumb .return-link:hover {
	color: var(--yellow);
}

.search-page-sidebar {
    margin-bottom: 2rem;
}

@media (min-width: 992px) {

    :root {
        --sidebar-width: calc((100% / 12) * 2.5);
    }

    .search-page-sidebar {
        width: var(--sidebar-width);
        max-width: var(--sidebar-width);
    }

    .search-page-content-next-to-sidebar {
        width: calc(100% - var(--sidebar-width));
        max-width: calc(100% - var(--sidebar-width));
    }

}

.panel-side {
	border-radius: 0;
	background: var(--grey-bg);
	border: 1px solid #dcdcdc;
	padding: 15px;
	box-shadow: none;
}

.grey-section .panel-side {
    background: var(--white);
}

.panel-side + .panel-side {
    margin-top: 1rem;
}

.panel-side .panel-heading {
	padding: 0;
    margin-bottom: .75rem;
	font-weight: 500;
	color: var(--dark-text);
    font-size: inherit;
}

.side-tags a {
	text-decoration: underline;
	color: #525252;
	display: inline-block;
	margin: 0 2px;
}

.side-tags .tag01 {
	font-size: var(--fs-13);
}

.side-tags .tag02 {
	font-size: var(--fs-15);
}

.side-tags .tag03 {
	font-size: var(--fs-18);
}

.side-clipboard ul a {
	color: #525252;
}

.side-categories {
	font-size: 13px;
	color: #525252;
}

.side-categories a {
	color: #525252;
}

.side-categories a:hover {
	color: var(--primary);
}

.side-categories a small {
    font-size: .75rem;
}

.side-categories .active a {
    font-weight: bold;
}

.side-categories .categories-toggle {
	font-size: 60%;
	cursor: pointer;
}

.side-categories ul ul .triangle {
	font-size: 45%;
	top: -2px;
}

.side-categories .categories-toggle.collapse.in {
	display: inline-block;
}

.side-categories ul li {
	padding: 0;
	margin: 3px 0;
	padding-left: 6px;
	border-left: 3px solid var(--primary);
}

.side-categories ul li.active {
	font-weight: 500;
}

/*
.side-categories ul li .name.active {
	font-weight: 500;
	color: #202020;
}
*/

.side-categories ul ul {
	padding: 2px 0 0;
}

.side-categories ul ul li,
.side-categories ul ul li a {
	color: #807777;
	font-size: 12px;
}

/* newsletter box */

.newsletter-box {
	border: 1px solid var(--border-grey2);
}

.announcements-list + .newsletter-box {
	margin-top: 2rem;
}

.newsletter-box:last-child {
	margin-bottom: 2rem;
}

.newsletter-box .box-title {
	font-size: 2rem;
	font-weight: 300;
}

@media (max-width: 767.98px) {

    .newsletter-box .box-title {
        font-size: 1.5rem;
    }

}

.newsletter-box .box-title strong {
	font-weight: 500;
}


/* search page */

.cats-links-belt {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #d3d3d3;
}

.announcements-list + .cats-links-belt {
	margin-top: 20px;
}

.cats-links-belt ul {
	margin-bottom: 0;
}

.cats-links-belt a {
	color: #2a2a42;
	line-height: 1.8;
}

.search-heading-outer {
	border-bottom: 1px solid var(--border-grey2);
	margin-bottom: 1rem;
	font-size: var(--fs-13);
	color: var(--medium-grey);
}

.search-heading-outer .user-image {
	border-radius: 50%;
	width: auto;
	height: auto;
	max-height: 60px;
	display: inline-block;
	margin-right: 10px;
	margin-bottom: 5px;
}

.search-heading-outer,
.search-heading-outer .nav a:not(:active) {
	color: var(--border-grey);
}

.search-heading-outer .heading {
	font-size: 19px;
	font-weight: 300;
	color: #2a2a2a;
	margin: 0;
	padding: 0;
	line-height: 2;
}

.search-heading-outer .nav-tabs {
	border-bottom: none;
}

.search-heading-outer .nav-tabs .dropdown-menu {
    padding: 0;
    top: -2px !important;
}

.search-heading-outer .nav-tabs > li > a,
.search-heading-outer .nav-tabs > li > span {
	border-radius: 3px 3px 0 0;
	/* padding: 10px 15px; */
	padding: .5rem .75rem;
	display: block;
}

.search-heading-outer .nav-tabs > li,
.search-heading-outer .nav-tabs > li:hover {
	margin-bottom: 0;
}

.search-heading-outer .nav-tabs > li > a,
.search-heading-outer .nav-tabs > li > a:hover,
.search-heading-outer .nav-tabs > li.active > a,
.search-heading-outer .nav-tabs > li > span {
	border: none;
}

.search-heading-outer .nav-tabs > li.active > a {
	background: var(--border-grey2);
}

/* .search-heading-outer .nav-tabs > li:not(.active) > a {
	padding: 10px;
}

.search-heading-outer .nav-tabs > li > span {
	padding: 10px 4px;
} */

.search-heading-outer .nav-sort-links .dropdown > a {
	font-weight: 500;
}

@media (max-width: 767.98px) {

    .search-heading-outer .nav-sort-links .dropdown > a {
        padding-right: 0;
    }

}

.search-heading-outer .search-heading strong {
	font-weight: 500;
}

.announcements-list .single-announcement {
	border: 1px solid var(--border-grey2);
	transition: all .25s;
    background: rgba(255,255,255,.75);
}

.companies-list .single-announcement {
    /* min-height: 100%; */
    height: 100%;
}

@media (max-width: 575.98px) {

    .companies-list .single-announcement > .row {
        min-height: 100%;
        /* height: 100%; */
        flex-direction: column;
        justify-content: space-between;
    }

}

@media (max-width: 575.98px) {

    .tpl-schema-search .search-heading-outer .heading {
        margin-top: 0;
    }

}

@media (min-width: 992px) {

    .companies-list .single-announcement > .row {
        min-height: 180px;
    }

    .companies-list .single-announcement .img-link img {
        max-height: 175px;
    }

}

.announcements-list .single-announcement:hover {
	box-shadow: 0 2px 7px rgba(0,0,0,.33);
}

.announcements-list .single-announcement.promoted {
	border-color: var(--yellow);
	background: #ffb30010;
}

.announcements-list .single-announcement ~ .single-announcement,
.announcements-list .single-announcement ~ .mobile-observe-search-box {
	margin-top: 1rem;
}

.announcements-list .single-announcement .col-with-title {
	border-right: 1px solid var(--border-grey2);
}

.announcements-list .single-announcement.promoted .col-with-title {
	border-color: var(--yellow);
}

.announcements-list .single-announcement .announcement-title {
	padding: 0;
}

.announcements-list .single-announcement .announcement-title,
.announcements-list .single-announcement .announcement-title a {
	color: var(--dark-text);
	font-size: var(--fs-20);
	font-weight: 400;
    overflow-wrap: anywhere;
}

@media (max-width: 991.98px) {

    .announcements-list .single-announcement .announcement-title,
    .announcements-list .single-announcement .announcement-title a {
        font-size: var(--fs-16);
    }

}

@media (max-width: 767.98px) {

    .announcements-list .single-announcement .announcement-title,
    .announcements-list .single-announcement .announcement-title a {
        font-size: var(--fs-20);
        line-height: 1.5;
    }

}

.announcements-list .single-announcement .announcement-info {
	font-weight: 500;
	font-size: var(--fs-12);
	color: #808080;
}

.announcements-list .single-announcement .announcement-list-meta {
	font-size: var(--fs-11);
	font-weight: 500;
}

.announcements-list .single-announcement .announcement-list-meta,
.announcements-list .single-announcement .announcement-list-meta a {
	color: #838383;	
}

.announcements-list .single-announcement .announcement-list-meta .type {
	font-weight: 500;
	color: var(--navy);
}

@media (min-width: 768px) {
	
	.announcements-list .single-announcement .img-link {
		position: relative;
	}

	.search-heading-outer .heading {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	
}

.announcements-list .single-announcement .img-link,
.announcements-list .single-announcement .carousel {
	position: relative;
	display: block;
	overflow: hidden;
}

.announcements-list .single-announcement .carousel .carousel-control-prev,
.announcements-list .single-announcement .carousel .carousel-control-next {
    filter: drop-shadow(0 0 .25rem var(--black));
}


.announcements-list .single-announcement .featured,
.small-announcement .featured {
	color: var(--white);
	background: var(--yellow);
	padding: .5rem;
	width: 100%;
	transform: rotate(-45deg);
	position: absolute;
	z-index: 999;
	display: block;
	top: 14%;
	left: -27%;
	text-align: center;
	text-transform: uppercase;
	font-size: .8rem;
	font-weight: 500;
}

@media (max-width: 991.98px) {

    .announcements-list .single-announcement .featured,
    .small-announcement .featured {
        font-size: .7rem;
        top: 15%;
        left: -26%;
        padding: .25rem;
    }

}

@media (max-width: 767.98px) {

    .announcements-list .single-announcement .featured,
    .small-announcement .featured {
        top: 19px;
        left: -26%;
    }

}

@media (max-width: 575.98px) {

    .announcements-list .single-announcement .featured,
    .small-announcement .featured {
        top: 2rem;
        left: -4rem;
        font-size: 1rem;
        width: 14rem;
    }

}

@media (min-width: 768px) {

    .announcements-list .single-announcement .img-link .announcement-icon {
		object-fit: contain;
		transition: all .25s;
	}
	
	.announcements-list .single-announcement .img-link .announcement-icon:hover {
		transform: scale(1.15);
	}

}

.announcements-list .list-photo-counter {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--primary);
    color: var(--white);
    padding: .33rem;
    line-height: 1;
    z-index: 9;
}

.announcements-list .single-announcement .price {
	font-size: var(--fs-26);
	color: var(--primary);
	font-weight: 500;
}

.announcements-list .single-announcement .price small {
    font-size: .6em;
}

.announcements-list .single-announcement .price-notice {
	font-size: var(--fs-12);
	color: #434343;
	font-weight: 500;
	line-height: 1;
}

.announcements-list .single-announcement .add-to-clipboard-link {
	display: block;
	color: #5d5d5d;
	font-size: var(--fs-12);
	font-weight: 500;
}

.announcements-list .single-announcement .add-to-clipboard-link .heart {
	font-size: 150%;
	color: #c2c2c2;
	position: relative;
	top: 4px;
}

.announcements-list .single-announcement .add-to-clipboard-link:hover,
.announcements-list .single-announcement .add-to-clipboard-link:hover .heart {
	color: #75BC21;
}

.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard,
.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard .heart {
	color: var(--yellow);
}

.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard:hover,
.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard:hover .heart {
	color: #D7AD48;
}

@media (max-width: 767.98px) {
	
	.cats-links-belt {
		font-size: 13px;
	}
	
	.search-heading-outer {
		border: none;
	}
	
	.search-heading-outer .nav-tabs > li > a, .search-heading-outer .nav-tabs > li > span {
		border-radius: .25rem;
	}
	
	.search-heading-outer .nav-tabs > li {
		float: none;
		display: inline-block;
	}

	.announcements-list .single-announcement .col-with-title {
		border-right: none;
	}
	
	.announcements-list:not(.companies-list) .single-announcement .img-link {
		width: 100%;
        padding-bottom: 100%;
	}
	
	.announcements-list .single-announcement .img-link .announcement-icon {
		width: 100%;
		height: 100%;
		position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        object-fit: cover;
	}
	
	.announcements-list .single-announcement .announcement-list-meta {
		margin-bottom: .75rem;
	}

	.announcements-list .single-announcement .add-to-clipboard-link {
		margin-top: 0;
	}

}

@media (max-width: 575.98px) {

	.announcements-list:not(.companies-list) .single-announcement .img-link {
		width: 100%;
        padding-bottom: 75%;
	}

	.companies-list .single-announcement .img-link {
        width: 100%;
        padding-bottom: 82.5%;
    }

	.companies-list .single-announcement .img-link img {
        position: absolute;
        object-fit: contain;
        object-position: center center;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

}

@media (min-width: 768px) {

    .announcements-list.companies-list .col-with-title > .row {
        min-height: 165px;
    }

}

.announcements-list .single-announcement .carousel-item img {
    object-fit: cover;
}

.carousel-indicators [data-bs-target] {
    width: .75rem;
    height: .75rem;
    border-radius: 50%;
    opacity: .5;
    background: transparent;
    border: 2px solid var(--white);
}

.carousel-indicators .active[data-bs-target] {
    background: var(--white);
    opacity: .75;
}

@media (min-width: 992px) {

    .carousel-indicators [data-bs-target] {
        width: .5rem;
        height: .5rem;
    }

}

.announcement-gallery .carousel-indicators > button {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
}


/* OSM attribution */

.olControlAttribution {
    right: 2px !important;
    bottom: 2px !important;
}

.olControlAttribution a {
    color: inherit;
}


/* pagination */

.pagination-outer {
	margin: 2rem 0;
}

.pagination {
	margin: 0;
}

.pagination > li > a,
.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span,
.pagination > li > span:focus,
.pagination > li > span:hover,
.pagination > .sep > span,
.pagination > .sep > span:hover {
	background: #d9d9d9;
	color: #303030;
	padding: .75rem 1rem;
}

.pagination > li > a,
.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span,
.pagination > li > span:focus,
.pagination > li > span:hover,
.pagination>li:first-child > a,
.pagination > li:first-child > span,
.pagination>li:last-child > a,
.pagination > li:last-child > span {
	border: none;
	border-radius: .15rem;
	font-size: var(--fs-13);
	/* margin-left: 3px;
	margin-right: 3px; */
	margin-left: .15rem;
	margin-right: .15rem;
}

.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span:focus,
.pagination > li > span:hover {
	background: var(--light-grey);
}

.pagination > li > a .small {
	font-size: 70%;
}

.pagination > .active > a,
.pagination > .active > a:focus,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:focus,
.pagination > .active > span:hover {
	background: var(--primary);
	padding: 1rem 1.25rem;
	margin-top: -.25rem;
    color: var(--white);
}

.pagination > .sep > span,
.pagination > .sep > span:hover {
	background: transparent;
	border: none;
	letter-spacing: 3px;
	padding-left: .75rem;
	padding-right: .75rem;
}



.list-mine .announcement-icon,
.clipboard-list .announcement-icon {
	/* max-width: 60vw;
	width: 80px; */
	height: auto;
}

.list-mine tr,
.list-mine td {
    border-color: rgba(0,0,0,.25);
}

@media (min-width: 768px) and (max-width: 991px) {

	.list-mine .announcement-icon {
		max-width: 7.5vw;
	}

	.list-mine tbody td:last-child .btn {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		display: block;
	}

}

@media (min-width: 992px) {

	.clipboard-list .announcement-icon,
	.list-mine .announcement-icon {
		max-width: 7.5vw;
	}

}

table .checkbox-cell-outer {
	position: relative;
	min-width: 25px;
}

/* table .checkbox-cell-outer label {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

table .checkbox-cell-outer label input {
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
} */

table .arrow-under-checkbox-cells {
	vertical-align: middle !important;
	font-size: 190%;
	font-weight: 600;
	padding: 0;
}

.list-mine .payment-info {
    font-size: .9rem;
}

.list-mine .payment-info .btn {
    margin-top: .25rem;
    margin-bottom: .25rem;
}

@media (max-width: 767px) {

	table .arrow-under-checkbox-cells {
		display: none !important;
	}

	.list-mine td {
        border: none;
    }

	.list-mine tfoot td .btn {
		margin-bottom: .5rem;
	}

	.list-mine .payment-info .btn {
		margin-top: .25rem;
		margin-bottom: .25rem;
	}

	/* table .checkbox-cell-outer label {
		position: static;
		margin-top: .5rem;
		margin-bottom: .5rem;
	}

	table .checkbox-cell-outer label input {
		position: static;
	} */

}

table .row-checked {
	background-color: rgba(107, 202, 69, 0.36) !important;
}


@media (max-width: 767px) {

	.table-mobile-ready thead {
		display: none;
	}

	.table-mobile-ready tbody tr,
	.table-mobile-ready tbody tr td,
	.table-mobile-ready tfoot tr td {
		display: block;
		text-align: center;
	}

	/* .table-mobile-ready tbody tr td:last-child {
		padding-bottom: 15px;
	} */

	.table-mobile-ready tbody tr:not(:last-child) td:first-child {
		border-top-style: solid;
		border-top-width: 3px;
        border-top-color: inherit;
	}

	.table-mobile-ready td .announcement-icon {
		max-width: 100%;
        max-height: 200px;
		width: auto;
        height: auto;
        border: 1px solid var(--border-grey2);
	}

}


.pricing-table .single-price {
    white-space: nowrap;
}

.pricing-table th,
.pricing-table td {
    border-left-width: 1px;
    border-right-width: 1px;
}

.pricing-table th:first-child:empty {
    border-left: none;
}

.pricing-table th {
    border-color: inherit !important;
    vertical-align: middle;
}


/* Payments options */

.discount-code-outer input.error[type="text"] {
	background: rgb(255, 237, 242);
	color: var(--red);
}

.do-payment-options {
    border-top: 1px solid #e1e1e1;
}

.do-payment-options label {
	cursor: pointer;
	display: block;
	text-align: center;
    height: 100%;
}

.do-payment-options img {
	/* filter: drop-shadow(0 0 1px rgba(0,0,0,.3)); */
	display: block;
	max-height: 50px;
	max-width: 100%;
	width: auto;
	height: auto;
    object-fit: contain;
	/* position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
	padding-left: 5px;
	padding-right: 5px; */
	margin: auto;
}

.do-payment-options .card {
	/* padding-left: 10px;
	padding-right: 10px; */
	box-shadow: none;
	/* height: 85px; */
	position: relative;
    min-height: 100%;
}

.do-payment-options input:checked + .card {
	border-color: var(--primary);
}

.do-payment-options input:not(:checked) + .card img {
	filter: grayscale(100%);
	opacity: .85;
}

.do-payment-options input[value="dotpay"]:not(:checked) + .card img,
.do-payment-options input[value="inpay"]:not(:checked) + .card img {
	filter: grayscale(100%) invert(100%);
}

.do-payment-options input[value="dotpay"]:checked + .card img,
.do-payment-options input[value="inpay"]:checked + .card img {
	filter: drop-shadow(0 0 1px rgba(0,0,0,.33));
}

.do-payment-options input[type="radio"] {
	display: none;
}

.total-outer {
	border-top: 1px solid #e1e1e1;
}

.choose-bordered-box {
	border: 1px solid #dfead2; /* #c9c9c9 */
	background: #fbfbfb;
}

.choose-bordered-box-part .show-hide-mobile {
	display: none;
	font-size: var(--fs-18);
	color: var(--primary);
    position: relative;
    z-index: 999;
}

@media (min-width: 1200px) {

    .payment-return-btn {
        margin-top: -2.5rem;
    }

}

/* .pay-col-option-outer .box-checked .choose-bordered-box-part .show-hide-mobile {
	color: var(--white);
} */

@media (max-width: 767px) {

	.choose-bordered-box-part .show-hide-mobile.down {
		display: block;
	}

    .choose-bordered-box-part ul {
        display: none;
    }
    

    .do-payment-options img {
        max-height: 50px;
        width: 50vw;
        max-width: 80%;
    }
	
}

.choose-bordered-box-part ul {
	/* font-weight: 500; */
	font-weight: 400;
	list-style: none;
	padding-left: 1.5rem;
}

.choose-bordered-box-part ul li {
	color: var(--medium-grey);
	position: relative;
}

.choose-bordered-box-part ul li + li {
	margin-top: 1rem;
}

.choose-bordered-box-part ul li .list-icon {
	/* position: absolute;
	left: -1.5rem; */
    margin-left: -1.5rem;
    margin-right: .25rem;
}

.choose-bordered-box-part .list-icon {
	color: var(--primary);
	display: inline-block;
}

.choose-bordered-box-part .choose-bordered-box-title {
	color: #2a2a2a;
}

.choose-bordered-box-grey {
	background: var(--light-grey2);
    /* min-height: 30%; */
}

@media (min-width: 992px) {

    .choose-bordered-box-grey {
        min-height: 10rem;
    }

}

.choose-bordered-box-part label::first-letter {
	text-transform: uppercase;
}

.choose-bordered-box-grey label {
	display: block;
	position: relative;
	color: var(--black);
	font-size: var(--fs-16);
}

.choose-bordered-box-grey label input[type=checkbox] {
	position: absolute;
	top: 0;
	left: 0;
}

.choose-bordered-box-title,
.choose-bordered-box-subtitle {
	text-align: center;
	display: block;
}

.choose-bordered-box-subtitle {
	display: none;
}

.choose-bordered-box-part .choose-bordered-box-title {
	font-size: var(--fs-18);
	position: relative;
	line-height: 1.25;
	/* font-weight: 900; */
}

.choose-bordered-box-part .choose-bordered-box-title small {
    font-size: .7em;
    color: var(--medium-grey);
}

/* .choose-bordered-box:not(.box-type-VIEW) .choose-bordered-box-part .choose-bordered-box-title > span:first-child { */
.choose-bordered-box .choose-bordered-box-part .choose-bordered-box-title > span:first-child {
	font-weight: 300;
}

.choose-bordered-box .choose-bordered-box-part .choose-bordered-box-title > span:first-child {
	display: block;
}

.new-select-payment-form .option-info {
	display: inline-block;
	position: relative;
	/* left: 6px;
	top: -1px;
	z-index: 10;

	position: absolute;
	top: 8px;
	right: 8px;
	left: auto;
	width: 23px; */
}

.pay-col-option-outer .choose-bordered-box.box-checked .choose-bordered-box-title {
	background-color: var(--primary);
	border-radius: .25rem;
	color: #FFF;
}

.pay-col-option-outer .choose-bordered-box.box-checked .choose-bordered-box-title .option-info > img,
.pay-col-option-outer .choose-bordered-box.box-checked .choose-bordered-box-title .option-info > a > img {
	filter: invert(100%);
}

/* .pay-col-option-outer .choose-bordered-box:not(.box-checked) .choose-bordered-box-title {
	border-bottom: 1px solid #e1e1e1;
} */

/* .pay-col-option-outer .choose-bordered-box:not(.box-checked) .choose-bordered-box {
	border-color: #EBEBEB;
} */

/* .choose-bordered-box.box-type-VIEW .choose-bordered-box-part:first-child {
	padding-top: 10px;
	padding-bottom: 5px;
} */

/* .box-type-PROMOTED .choose-bordered-box-subtitle {
	color: #55900f;
}

.box-type-MAIN .choose-bordered-box-subtitle {
	color: #ff6000;
} */

.choose-bordered-box-part input[type="checkbox"] {
	-webkit-appearance: radio;
	-moz-appearance: radio;
	-ms-appearance: radio;
}

.new-select-payment-form .option-info .option-info-content {
	min-width: 500px;
	max-width: 100vw;
	text-align: center;
}

.new-select-payment-form .option-info .option-info-content > img:first-child {
	float: none;
	max-width: 100%;
	margin: 0 0 3px;
}

.new-select-payment-form .sum-result strong {
	font-size: 120%;
	font-weight: 900;
}

@media (max-width: 767px) {

	.pay-col-option-outer .box-checked .choose-bordered-box {
		border-color: var(--primary);
	}

	.choose-bordered-box,
	.choose-bordered-box-part {
		padding: 0;
	}

	.choose-bordered-box {
		border-radius: 3px;
		overflow: hidden;
	}

	.pay-col-option-outer .choose-bordered-box-part .choose-bordered-box-title {
		border-radius: 0;
	}

	.pay-col-option-outer:nth-of-type(odd) .choose-bordered-box-title {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	}

	.pay-col-option-outer .choose-bordered-box-title {
		text-align: left;
		margin-bottom: 0;
	}

	.choose-bordered-box-grey {
		width: 100%;
	}

	.pay-col-option-outer .choose-bordered-box-title .option-info > img,
	.pay-col-option-outer .choose-bordered-box-title .option-info > a > img {
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: auto;
		position: absolute;
	}

	.do-payment-options {
		margin-top: 0;
	}

	.discount-code-outer .discount-text strong {
		display: block;
	}

	.new-select-payment-form .sum-outer {
		border-top: 1px solid #e1e1e1;
	}


}



/* pm */

.navbar ul .badge,
.pm-boxes-tabs .badge {
	background: var(--badge-grey);
	color: var(--white);
	border-radius: 1rem;
    margin: .2rem 0 .2rem .5rem;
}

.pm-boxes-tabs .badge {
    background: var(--badge-red);
}

.pm-boxes-tabs {
	border-bottom: none;
	position: relative;
	z-index: 9;
}

.pm-boxes-tabs .nav-item + .nav-item {
    margin-left: 1px;
}

.pm-boxes-tabs .nav-link {
	color: var(--darkest);
    /* border-radius: .25rem .25rem 0 0; */
	/* margin: 0; */
}

.pm-boxes-tabs .active {
	border-bottom: none;
	position: relative;
    overflow: hidden;
}

.pm-boxes-tabs .nav-link {
	background-color: var(--grey-bg);
	border: 1px solid #d5d5d5;
    border-bottom: none;
}

.pm-boxes-tabs .active::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: auto;
	height: 2px;
	background: var(--primary);
	z-index: 9;
}

.pm-boxes-tabs .active::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	right: 1px;
	bottom: -1px;
	height: 1px;
	background: #FFF;
}

/* .pm-boxes-tabs > li + li a {
	margin-left: -1px;
} */

.pm-boxes-tabs + .alert {
	margin-top: 1rem;
}

.messages-in-box-list .list-group-item {
	border-radius: 0;
	border: 1px solid #d5d5d5;
}

.messages-in-box-list .list-group-item + .list-group-item {
    border-top: none;
}

.messages-in-box-list {
	color: #6d6d6d;
	font-size: var(--fs-12);
}

.messages-in-box-list .thread-name {
	color: #2b2b2b;
	font-weight: 500;
	font-size: var(--fs-15);
}

.messages-in-box-list .last-message-short {
	color: inherit;
}

.messages-in-box-list .last-message-short .like-link {
	border-bottom: 2px solid #d4e3c3;
	display: inline-block;
	font-weight: 500;
	line-height: 1;
}

.messages-in-box-list .trash-icon {
	color: var(--medium-grey);
	font-size: var(--fs-20);
}

.messages-in-box-list .list-group-item .message-date {
	color: var(--dark-text2);
}

.messages-in-box-list .list-group-item.unread {
	background: var(--white);
}

.messages-in-box-list .list-group-item.read {
	background: var(--grey-bg);
}

@media (max-width: 767px) {

	.messages-in-box-list .last-message-short {
		margin-bottom: 1rem;
	}

}

@media (min-width: 992px) {

	.pm-boxes-tabs > li > a {
		padding: 1rem 3rem;
		font-size: var(--fs-16);
	}

	.messages-in-box-list .list-group-item {
		padding: 1rem 1rem 1rem 3rem;
	}
	
	.messages-in-box-list .list-group-item .border-left {
		border-left: 1px solid var(--light-grey);
	}
	
	.messages-in-box-list .list-group-item div:not(.border-left) + .border-left {
		padding-left: 2rem;
	}
	
	.messages-in-box-list .thread-name {
		margin-top: 1rem;
	}

	/* .pm-search {
		position: relative;
		top: 25px;
		width: 20%;
		z-index: 999;
		border: 1px solid #616161;
	}

	.pm-search input,
	.pm-search input:focus {
		border: none;
		box-shadow: none;
	}

	.pm-search .btn,
	.pm-search .btn:hover {
		padding: 8px 10px 4px;
		color: #616161;
		background: transparent;
		border: none;
	} */

}

.pm-single-messages-list .single-message {
	padding: 2rem;
	margin-top: 3rem;
}

.pm-single-messages-list .single-message:first-child {
    margin-top: 0;
}

.pm-single-messages-list .single-message + .single-message {
	margin-top: 2rem;
}

.pm-single-messages-list .single-message.message-to-me + .single-message.message-to-me {
	margin-top: .5rem;
}

.pm-single-messages-list .single-message.message-from-me + .single-message.message-from-me {
	margin-top: .5rem;
}

.pm-single-messages-list .single-message.message-to-me {
	margin-right: 3rem;
	border: 1px solid var(--primary);
}

.pm-single-messages-list .single-message.message-from-me {
	margin-left: 3rem;
	border: 1px solid var(--yellow);
}

.pm-single-messages-list .single-message .meta {
	margin-bottom: 2rem;
	font-size: var(--fs-12);
	font-weight: 500;
}

.pm-single-messages-list .single-message .attachment {
	margin-top: 1rem;
	font-weight: 600;
}

@media (max-width: 767px) {

	.small-photo-in-thread {
		margin-bottom: 1rem;
        width: auto;
        height: auto;
	}
	
	.thread-buttons-col .btn {
		display: block;
		width: 100%;
	}
	
	.thread-buttons-col .btn + .btn {
		margin-left: 0;
		margin-top: .25rem;
	}

}

.title-in-thread {
	color: var(--dark-text);
	font-size: var(--fs-16);
}

.preview-link-in-thread {
	font-size: var(--fs-13);
}

.preview-link-in-thread .glyphicon {
	color: #848484;
}

.send-message-area {
	background: #dfedcd;
	padding: 25px 40px 40px;
	margin: 80px 0 90px;
}

.send-message-area .announcement-contact-form {
	background: #dfedcd;
	border: none;
	margin: 0;
	padding: 0;
}

.send-message-area .announcement-contact-form textarea {
	height: 125px;
}

.announcement-security-rules ul {
	padding-bottom: 0;
	border-bottom: 0;
}

@media (min-width: 768px) {

	.send-message-area .announcement-security-rules {
		margin-top: 0;
	}
	
}

/* smartphoto/lightbox */


.lightboxOverlay,
.smartphoto {
	z-index: 99999 !important;
}

.lightbox {
	z-index: 100000 !important;
}

.smartphoto {
	background: rgba(0,0,0,.9) !important;
}

.smartphoto[aria-hidden="false"] .current .smartphoto-img {
    display: block;
}

.smartphoto-inner .smartphoto-arrows li {
	width: 4rem;
	height: 4rem;
	border: .5rem solid transparent;
}

.smartphoto-inner .smartphoto-arrows a {
	background-repeat: no-repeat;
    background-position: center;
}

.smartphoto-inner .smartphoto-nav li {
	width: 75px;
	height: 75px;
	border: 2px solid transparent;
}

.smartphoto-inner .smartphoto-nav li:hover {
	border: 2px solid #FFF;
}

.smartphoto-img-wrap {
	margin-top: -40px;
}

.smartphoto-body .smartphoto-header {
	background: transparent;
}

@media (min-width: 992px) {

    .smartphoto .smartphoto-dismiss {
        width: 2.5rem;
        height: 2.5rem;
        background-repeat: no-repeat;
        background-position: center;
        top: 1rem;
        right: 1.5rem;
    }

    .smartphoto-arrows .smartphoto-arrow-left {
        left: 1rem;
    }

    .smartphoto-arrows .smartphoto-arrow-right {
        right: 1rem;
    }

}

@media (min-width: 1200px) {

    .smartphoto .smartphoto-dismiss {
        width: 3rem;
        height: 3rem;
        top: 2rem;
        right: 3rem;
    }

    .smartphoto-arrows .smartphoto-arrow-left {
        left: 2rem;
    }

    .smartphoto-arrows .smartphoto-arrow-right {
        right: 2rem;
    }

    .smartphoto-inner .smartphoto-arrows li {
        width: 6rem;
        height: 6rem;
        border: 1rem solid transparent;
    }

}

/* Fix for small width of columns with buttons in announcements table */

@media (min-width: 992px) {

    table .table-column-buttons {
        width: 10vw;
    }

}

@media (min-width: 1600px) {

    table .table-column-buttons {
        width: 10rem;
    }

}

@media (max-width: 767.98px) {

    .table-column-buttons .btn {
        padding-top: .75rem;
        padding-bottom: .75rem;
        font-weight: 500;
    }

}

/* Accordion */

.accordion-button:not(.collapsed) {
    color: var(--primary);
    background-color: var(--primary-transparent);
}

.accordion-button {
    background-color: var(--light-grey);
}

.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-button:focus {
    border-color: var(--primary);
    box-shadow: none;
}

/* home map of Poland */

.map-area > svg {
    width: 100%;
    height: auto;
}

.map-area > svg path {
    fill: var(--city-grey) !important;
    fill-opacity: 1 !important;
    stroke: var(--primary) !important;
    stroke-width: 0 !important;
    transition: all .25s;
}

.map-area > svg path:hover {
    fill: var(--primary) !important;
    cursor: pointer;
}

/* Company page */

.company-page-header-section {
    padding-bottom: calc(var(--standard-padding-y) / 2);
}

.company-page-header-section:first-of-type {
    padding-top: 0;
}

.company-page-header {
    border: 1px solid var(--light-grey);
    --bg-offset-bottom: 3rem;
}

.company-page-header, 
.company-page-header .company-bg-img-outer {
    border-radius: 1rem;
    overflow: hidden;
}

.company-page-header .company-bg-img-outer {
    margin-bottom: var(--bg-offset-bottom);
}

.company-page-header .company-bg-img:not([data-src]) {
    object-fit: cover;
}

.company-page-header .company-logo {
    --logo-size: 200px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.company-page-header .company-bg-img-outer + .company-logo {
    margin-top: calc(-1 * var(--bg-offset-bottom) - 2rem);
}

@media (min-width: 576px) {

    .company-page-header .company-bg-img-outer + .company-logo {
        margin-top: calc((-1 * var(--bg-offset-bottom)) - 4rem);
    }

}

@media (min-width: 768px) {

    .company-page-header .company-bg-img-outer + .company-logo {
        margin-top: calc((-1 * var(--bg-offset-bottom)) - (var(--logo-size)/2));
    }

}

@media (max-width: 767.98px) {

    .company-search-panel-section {
        padding: calc(var(--standard-padding-y)/2) 0;
    }

}

.company-desc.long-company-desc .company-desc-text {
    max-height: 200vh;
    transition: max-height .5s ease-in-out;
    overflow: visible;
    position: relative;
}

.company-desc.long-company-desc .company-desc-text ul,
.company-desc.long-company-desc .company-desc-text ol {
    padding-left: 1.25rem;
}

.company-desc.long-company-desc .company-desc-text-hidden {
    min-height: 7rem;
    max-height: 10rem;
    overflow: hidden;
}

.company-desc.long-company-desc .company-desc-text::after {
    content: '';
    display: block;
    position: absolute;
    top: auto;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(255,255,255,1) 50%);
    opacity: 0;
    transition: opacity .5s ease-in-out;
}

.company-desc.long-company-desc .company-desc-text-hidden::after {
    opacity: 1;
}

.company-desc-text + .link-outer {
    font-weight: 600;
    margin-top: 2rem;
    position: relative;
    z-index: 9;
    transition: margin-top .5s ease-in-out;
}

.company-desc-text.company-desc-text-hidden + .link-outer {
    margin-top: -3rem;
}

.company-desc-text.company-desc-text-hidden + .link-outer .toggler-hide {
    display: none;
}

.company-desc-text:not(.company-desc-text-hidden) + .link-outer .toggler-show {
    display: none;
}



.ad-box {
	margin: 0 auto;
	text-align: center;
    max-width: 100%;
    overflow: hidden;
}

.ad-box img {
	margin-left: auto;
	margin-right: auto;
	width: auto;
	height: auto !important;
	max-width: 100%;
}

.ad-box img:first-child:last-child {
	display: block;
}

.ad-box iframe {
    max-width: 100%;
}

.ad-box .test-ad {
	display: block;
	text-align: center;
	font-size: 120%;
}

.ad-box.home_top {
	margin-top: 10px;
	margin-bottom: 30px;
}

.ad-box.list_over_heading {
	margin-top: 1rem;
	margin-bottom: 1.75rem;
}

@media (max-width: 767px) {

	.ad-box.home_top {
		margin-top: 30px;
	}

}

.ad-box.home_under_categories {
	margin-top: 45px;
}

.ad-box.home_over_footer {
	margin-bottom: 45px;
}

.ad-box.announcement_under_gallery {
	margin-top: 25px;
}

/*.ad-box.home_between_1 {
	margin-top: 45px;
}*/

.announcement-social {
    position: relative;
}

.announcement-social .copy-area {
    position: relative;
    display: inline-block;
}

.announcement-social .btn {
    position: relative;
    border-radius: 3px;
    padding-left: .6rem;
    padding-right: .6rem;
    padding-top: .6rem;
    padding-bottom: .6rem;
    display: inline-block;
    line-height: 1;
    font-size: 1.5rem;
    width: 39px;
    text-align: center;
}

.copy-area {
    position: relative;
}

.copy-area .tooltip {
    top: auto;
    bottom: 93%;
    width: 150px;
    left: -46px;
}

.copy-area:hover .tooltip.on-hover {
    opacity: 1;
}

.copy-profile-link.copy-area .tooltip {
    left: auto;
    right: -51px;
}

@media (max-width: 767.98px) {

    .announcement-social .btn {
        padding-top: .575rem;
        padding-bottom: .575rem;
    }

    .copy-area .tooltip {
        left: -57px;
    }

    .copy-area:focus .tooltip.on-hover {
        opacity: 1;
    }

    .copy-profile-link.copy-area .tooltip {
        left: auto;
        right: -52px;
        bottom: 95%;
    } 

    .copy-profile-link.copy-area .tooltip {
        display: none !important;
    }

}

.tooltip-primary .tooltip-inner {
    background-color: var(--primary);
}

.tooltip-primary.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,
.tooltip-primary.bs-tooltip-top .tooltip-arrow::before {
    border-top-color: var(--primary);
}

.tooltip-primary.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,
.tooltip-primary.bs-tooltip-bottom .tooltip-arrow::before {
    border-bottom-color: var(--primary);
}


/* PWA button */

#appInstallBar {
    /* overflow: hidden; */
    padding-left: 15px;
    padding-right: 15px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 99999999999;
}

pwa-install,
:root {
    --modal-z-index: 999999999;
    --install-button-color: var(--primary);
}

pwa-install #headerContainer img {
    background-color: var(--white);
}

#appInstallBar {
    display: none !important;
}

@media screen and (max-width: 767.98px) {

    .is-chrome #appInstallBar.show,
    .is-safari #appInstallBar.show {
        display: block !important;
    }

}

@media (display-mode: standalone) {

    #appInstallBar,
    .is-chrome #appInstallBar,
    .is-safari #appInstallBar,
    #appInstallBar.show,
    .is-chrome #appInstallBar.show,
    .is-safari #appInstallBar.show {
        display: none !important;
    }

}

.opinion-form-modal .is_opinion_rating_0 {
    opacity: 0;
    width: 0;
    height: 0;
}

.opinion-form-modal [name*="opinion_rating"] {
    display: none;
}

.opinion-form-modal [name*="opinion_rating"] + label {
    cursor: pointer;
}

.icon-opinion-star,
.opinion-form-modal [name*="opinion_rating"] + label .icon-opinion-star {
    color: var(--primary);
}

.opinion-show-rating .icon-opinion-star {
    color: var(--yellow);
}

.opinion-form-modal .is_opinion_rating_0:checked ~ label .icon-opinion-star,
.opinion-form-modal [name*="opinion_rating"]:checked + label ~ label .icon-opinion-star,
.opinion-show-rating .empty {
    color: var(--light-grey);
    text-shadow: 0 0 1px var(--primary);
}

.opinion-form-modal textarea {
    max-height: 25vh;
}

.rating-average-outer {
    font-size: 1.5rem;
}

.toggle-btn-ellipsis::after {
    display: none;
}

.announcement-side-col .relative-outer .tooltip,
.breadcrumbs-observed-outer .tooltip {
    transform: none !important;
    right: 100% !important;
    left: auto !important;
    white-space: nowrap;
}

.announcement-side-col .relative-outer .tooltip .tooltip-arrow,
.breadcrumbs-observed-outer .tooltip .tooltip-arrow {
    visibility: hidden;
}

.is-in-clipboard[data-observe-search] .empty,
[data-observe-search]:not(.is-in-clipboard) .full {
    display: none;
}

[data-suggested-cat-path] li:last-child {
    font-weight: bold;
}

[data-current-cat-img][src=""] {
    display: none;
}

/* company working hours */

.switch-is-open-on-day:checked + label .closed,
.switch-is-open-on-day:not(:checked) + label .open {
    display: none;
}

.switch-is-open-on-day {
    position: relative;
    top: .25rem;
}

[name*="hours"][list]::-webkit-calendar-picker-indicator {
	display: none;
    opacity: 0;
    visibility: hidden;
    width: 0;
}

.company-category-chose-outer select option {
    display: none;
}

.form-group-hours .switch-is-open-on-day,
.form-group-hours .switch-is-open-on-day:checked {
    width: 2.75rem;
    height: 1.75rem;
    border-radius: 1em !important;
    position: relative;
    top: -0.0125rem;
}

.form-group-hours .switch-is-open-on-day + label {
    padding-top: .125rem !important;
}

.form-group-hours .form-check-label {
    padding-top: 0 !important;
}

.check-category-with-icon ~ label img {
    object-fit: scale-down;
}

.check-category-with-icon:not(:checked) ~ label {
    opacity: .6;
}

@media (max-width: 767.98px) {

    .check-category-with-icon ~ label img {
        filter: invert(100%);
    }

}

/* search results map */

#itemsMap {
    width: 100%;
    height: 75vh;
}

.popover-in-search-results-map,
.popover-in-search-results-map .popover-body {
    border-radius: 1rem;
}

#itemsMap .gm-style-iw-d {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-height: none;
}

#itemsMap .gm-style-iw-d .small-announcement {
    border-radius: 0;
}

.popover-in-search-results-map .popover-body,
#itemsMap .gm-style-iw {
    padding: 0;
    max-width: 14rem !important;
}

.popover-in-search-results-map .popover-body .carousel-item img,
#itemsMap .gm-style-iw .carousel-item img {
    object-fit: cover;
}

@media (min-width: 992px) {

    .popover-in-search-results-map .popover-body,
    #itemsMap .gm-style-iw {
        min-width: 11rem !important;
    }

}

@media (max-width: 991.98px) {

    .popover-in-search-results-map .popover-body,
    #itemsMap .gm-style-iw {
        min-width: 10rem !important;
        max-width: 12rem !important;
    }

}

.popover-in-search-results-map .popover-body .clipboard-outer,
#itemsMap .gm-style-iw .clipboard-outer {
    position: absolute;
    top: .5rem;
    right: .5rem;
    z-index: 99;
    font-size: 1.5rem;
    line-height: 1;
}

.popover-in-search-results-map .popover-body .clipboard-outer a,
#itemsMap .gm-style-iw .clipboard-outer a {
    color: var(--icon-grey);
    text-shadow: 0 0 1px var(--white);
    filter: drop-shadow(0 0 .25rem rgba(0,0,0,.5));
    text-stroke: 1px var(--white);
    -webkit-text-stroke: 1px var(--white);
    -moz-text-stroke: 1px var(--white);
}

.popover-in-search-results-map .popover-body .clipboard-outer a.is-in-clipboard,
#itemsMap .gm-style-iw .clipboard-outer a.is-in-clipboard {
    color: var(--primary);
    filter: drop-shadow(0 0 .25rem #000);
}

#itemsMap .gm-style-iw-d {
    padding: 0 !important;
    overflow-x: hidden !important;
    max-height: none;
}

#itemsMap .gm-style-iw-d + button {
    display: none !important;
}

.fixed-map-button {
    position: fixed;
    top: auto;
    right: 0;
    bottom: 1rem;
    left: 0;
    width: 12rem;
    margin: auto;
}

@media (min-width: 768px) {

    .fixed-map-button {
        display: none !important;
        visibility: hidden;
    }

}

/* =========================================================
   XMJ.PL - DODATKOWE STYLE STRONY GŁÓWNEJ
   WERSJA POSPRZĄTANA
   ---------------------------------------------------------
   Zostawione w jednym miejscu:
   1) telefon / lista ogłoszeń
   2) nowy hero / wyszukiwarka
   3) statystyki i baner
   4) kategorie
   5) karty ogłoszeń
   6) nagłówki sekcji
   ========================================================= */


/* =========================================================
   1. Lista ogłoszeń na telefonie
   ========================================================= */

@media (max-width: 575.98px) {

    .announcements-list .single-announcement .announcement-title,
    .announcements-list .single-announcement .announcement-title a {
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        line-height: 1.25 !important;
        max-height: 2.5em !important;
    }

    .announcements-list .single-announcement .price {
        font-size: 24px !important;
        line-height: 1 !important;
        font-weight: 600 !important;
    }

    .announcements-list .single-announcement .featured {
        font-size: 12px !important;
        line-height: 1 !important;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
        opacity: 0.92 !important;
        letter-spacing: 0.5px !important;
    }
}


/* =========================================================
   2. Nowy hero / wyszukiwarka na stronie głównej
   ========================================================= */

.xmj-hero-section {
    padding-top: 96px !important;
    padding-bottom: 10px !important;
    background:
        radial-gradient(circle at top right, rgba(76,166,76,0.12), transparent 35%),
        linear-gradient(180deg, #ffffff 0%, #fbfbf8 100%) !important;
}

.xmj-hero-section .container {
    max-width: 1260px !important;
}

.xmj-hero-box {
    max-width: 1230px !important;
    width: 100% !important;
    min-height: 385px !important;
    margin: 0 auto 10px auto !important;
    border-radius: 28px !important;
    background: linear-gradient(135deg, #ffffff 0%, #f8fff5 58%, #f3faef 100%) !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.08) !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: stretch !important;
    position: relative !important;
}

.xmj-hero-left {
    width: 67% !important;
    padding: 38px 34px 34px 54px !important;
    position: relative !important;
    z-index: 2 !important;
}

.xmj-hero-right {
    width: 33% !important;
    padding: 28px 32px 28px 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.xmj-hero-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #ecfae8 !important;
    color: #358c25 !important;
    border: 1px solid #d6efcd !important;
    border-radius: 999px !important;
    padding: 8px 14px !important;
    font-size: 0.82rem !important;
    font-weight: 800 !important;
    margin-bottom: 18px !important;
}

.xmj-hero-badge i {
    color: #f4a000 !important;
}

.xmj-hero-title {
    font-size: 3.05rem !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    letter-spacing: -1.8px !important;
    color: #1d2430 !important;
    margin: 0 0 12px 0 !important;
    max-width: 720px !important;
}

.xmj-hero-title span {
    color: #4ca64c !important;
    position: relative !important;
    white-space: nowrap !important;
}

.xmj-hero-title span:after {
    content: "" !important;
    position: absolute !important;
    left: 6px !important;
    right: 6px !important;
    bottom: 3px !important;
    height: 9px !important;
    background: rgba(255, 185, 0, 0.28) !important;
    border-radius: 999px !important;
    z-index: -1 !important;
}

.xmj-hero-text {
    font-size: 1.12rem !important;
    line-height: 1.55 !important;
    color: #536070 !important;
    margin: 0 0 18px 0 !important;
    max-width: 720px !important;
}

.xmj-hero-search {
    max-width: 760px !important;
    width: 100% !important;
    padding: 10px !important;
    border-radius: 18px !important;
    margin-top: 0 !important;
    transform: translateY(-2px) !important;
    background: #ffffff !important;
    box-shadow: 0 8px 26px rgba(0,0,0,0.10) !important;
    border: 1px solid #edf0ea !important;
}

.xmj-hero-search-row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
}

.xmj-hero-phrase-col {
    flex: 0 0 38% !important;
    max-width: 38% !important;
}

.xmj-hero-city-col {
    flex: 0 0 39% !important;
    max-width: 39% !important;
}

.xmj-hero-button-col {
    flex: 0 0 23% !important;
    max-width: 23% !important;
}

.xmj-hero-search .input-group {
    width: 100% !important;
    height: 52px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

.xmj-hero-search .input-group-text,
.xmj-hero-search .input-group-prepend,
.xmj-hero-search .input-group-append {
    height: 52px !important;
    min-width: 42px !important;
    width: 42px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #f5f8f3 !important;
    border: 1px solid #e4e8df !important;
    color: #1d2430 !important;
}

.xmj-hero-search input,
.xmj-hero-search .form-control {
    height: 52px !important;
    min-height: 52px !important;
    border: 1px solid #e4e8df !important;
    box-shadow: none !important;
    font-size: 0.88rem !important;
    padding-left: 12px !important;
    padding-right: 10px !important;
    background: #ffffff !important;
    min-width: 0 !important;
}

.xmj-hero-phrase-col input,
.xmj-hero-phrase-col .form-control {
    width: 100% !important;
}

.xmj-hero-city-col input,
.xmj-hero-city-col .form-control {
    flex: 1 1 auto !important;
    min-width: 105px !important;
    max-width: none !important;
    font-size: 0.86rem !important;
}

.xmj-hero-city-col .input-group-text {
    flex: 0 0 42px !important;
}

.xmj-hero-city-col select,
.xmj-hero-city-col .form-select,
.xmj-hero-city-col [name="search_distance"],
.xmj-hero-city-col .distance-select {
    flex: 0 0 68px !important;
    width: 68px !important;
    max-width: 68px !important;
    min-width: 68px !important;
    height: 52px !important;
    min-height: 52px !important;
    font-size: 0.78rem !important;
    padding-left: 6px !important;
    padding-right: 4px !important;
    border: 1px solid #e4e8df !important;
    background-color: #ffffff !important;
}

.xmj-hero-search-btn {
    height: 52px !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    border: none !important;
    font-size: 0.94rem !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
    box-shadow: 0 8px 18px rgba(76,166,76,0.32) !important;
}

.xmj-hero-search-btn i {
    margin-right: 6px !important;
}

.xmj-hero-tags {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 10px !important;
    color: #697386 !important;
    font-size: 0.86rem !important;
}

.xmj-hero-tags span {
    font-weight: 800 !important;
    color: #526071 !important;
}

.xmj-hero-tags a {
    display: inline-flex !important;
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #e7e7e7 !important;
    color: #3d4754 !important;
    text-decoration: none !important;
    border-radius: 999px !important;
    padding: 7px 13px !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04) !important;
}

.xmj-hero-tags a:hover {
    background: #f3fbef !important;
    color: #2f941f !important;
}

.xmj-hero-card-main {
    width: 100% !important;
    min-height: 285px !important;
    border-radius: 28px !important;
    background:
        radial-gradient(circle at top right, rgba(76,166,76,0.22), transparent 36%),
        radial-gradient(circle at bottom left, rgba(255,184,0,0.20), transparent 34%),
        linear-gradient(145deg, #ffffff, #eef9eb) !important;
    box-shadow: 0 14px 36px rgba(0,0,0,0.10) !important;
    border: 1px solid rgba(76,166,76,0.13) !important;
    position: relative !important;
    padding: 30px 26px 28px 26px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
}

.xmj-hero-card-main:before {
    content: "" !important;
    position: absolute !important;
    width: 180px !important;
    height: 180px !important;
    border-radius: 50% !important;
    background: rgba(76,166,76,0.12) !important;
    right: -55px !important;
    top: -55px !important;
}

.xmj-hero-person-icon {
    position: absolute !important;
    left: 28px !important;
    top: 32px !important;
    width: 70px !important;
    height: 70px !important;
    border-radius: 22px !important;
    background: #ffffff !important;
    color: #4ca64c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 34px !important;
    box-shadow: 0 10px 26px rgba(0,0,0,0.10) !important;
}

.xmj-hero-floating {
    position: absolute !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    padding: 10px 13px !important;
    box-shadow: 0 8px 22px rgba(0,0,0,0.10) !important;
    border: 1px solid #eeeeee !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
}

.xmj-hero-floating strong {
    font-size: 0.86rem !important;
    color: #1d2430 !important;
}

.xmj-hero-floating span {
    font-size: 0.75rem !important;
    color: #697386 !important;
}

.xmj-hero-floating-one {
    right: 18px !important;
    top: 58px !important;
}

.xmj-hero-floating-two {
    display: none !important;
}

.xmj-hero-visual-title {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 112px !important;
    margin-bottom: 8px !important;
    font-size: 1.32rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
}

.xmj-hero-visual-text {
    position: relative !important;
    z-index: 2 !important;
    max-width: 300px !important;
    font-size: 0.88rem !important;
    line-height: 1.4 !important;
    color: #5c6674 !important;
    margin-bottom: 16px !important;
}

.xmj-hero-add-btn {
    position: relative !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 999px !important;
    padding: 12px 20px !important;
    font-size: 0.9rem !important;
    font-weight: 900 !important;
    box-shadow: 0 8px 18px rgba(76,166,76,0.32) !important;
    width: fit-content !important;
}

.xmj-hero-benefits {
    max-width: 1230px !important;
    margin: 10px auto 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
}

.xmj-hero-benefit {
    background: #ffffff !important;
    border-radius: 18px !important;
    padding: 18px 20px !important;
    display: flex !important;
    align-items: center !important;
    gap: 13px !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.055) !important;
    border: 1px solid #f0f0f0 !important;
}

.xmj-hero-benefit i {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
    background: #effbea !important;
    color: #4ca64c !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 18px !important;
}

.xmj-hero-benefit strong {
    display: block !important;
    color: #1d2430 !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

.xmj-hero-benefit span {
    display: block !important;
    color: #6a7482 !important;
    font-size: 0.82rem !important;
    line-height: 1.25 !important;
    margin-top: 3px !important;
}


/* =========================================================
   3. Statystyki i baner promocyjny pod hero
   ========================================================= */

.xmj-stats-container {
    max-width: 1230px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    margin-top: 14px !important;
}

.xmj-stats-banner {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 18px 24px !important;
    box-shadow: 0 10px 32px rgba(0,0,0,0.06) !important;
    border: 1px solid rgba(76,166,76,0.08) !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

.xmj-stat-item {
    min-width: 0 !important;
    justify-content: flex-start !important;
    padding: 10px 12px !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg, #ffffff, #fbfffa) !important;
    transition: all 0.18s ease-in-out !important;
}

.xmj-stat-item:hover {
    background: #f8fff5 !important;
    transform: translateY(-1px) !important;
}

.xmj-stat-icon-box {
    flex: 0 0 48px !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 16px !important;
    font-size: 1.28rem !important;
}

.xmj-stat-text {
    font-size: 0.82rem !important;
    line-height: 1.22 !important;
}

.xmj-stat-text span:first-child {
    color: #1d2430 !important;
    font-weight: 750 !important;
}

.xmj-stat-text span:last-child {
    color: #4e5968 !important;
    font-size: 0.78rem !important;
}

.xmj-stat-number {
    font-size: 1.28rem !important;
    line-height: 1.05 !important;
    font-weight: 900 !important;
    font-style: normal !important;
    letter-spacing: -0.3px !important;
    margin: 2px 0 !important;
}

.xmj-live-number {
    font-size: 1.25rem !important;
    font-weight: 850 !important;
}

#xmj-live-trend {
    font-size: 0.68rem !important;
    margin-left: 5px !important;
}

.xmj-promo-banner {
    max-width: 1230px !important;
    margin: 14px auto 14px auto !important;
    padding: 22px 28px !important;
    border-radius: 24px !important;
    background:
        radial-gradient(circle at top right, rgba(76,166,76,0.16), transparent 28%),
        linear-gradient(135deg, #ffffff 0%, #f7fff4 58%, #eef9ea 100%) !important;
    border: 1px solid rgba(76,166,76,0.14) !important;
    box-shadow: 0 10px 32px rgba(0,0,0,0.065) !important;
}

.xmj-promo-inner {
    gap: 22px !important;
}

.xmj-promo-label {
    background: #eefaeb !important;
    color: #2f941f !important;
    border: 1px solid #d5efcd !important;
    padding: 7px 12px !important;
    font-size: 0.72rem !important;
}

.xmj-promo-label i {
    color: #f4a000 !important;
}

.xmj-promo-title {
    font-size: 1.65rem !important;
    margin-bottom: 8px !important;
}

.xmj-promo-text {
    font-size: 0.95rem !important;
    line-height: 1.45 !important;
    margin-bottom: 12px !important;
}

.xmj-promo-point {
    padding: 7px 10px !important;
    border-radius: 999px !important;
    font-size: 0.82rem !important;
}

.xmj-promo-card {
    border-radius: 20px !important;
    padding: 18px !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.09) !important;
}

.xmj-promo-card strong {
    font-size: 1.75rem !important;
}

.xmj-promo-btn {
    padding: 11px 18px !important;
    font-size: 0.92rem !important;
}


/* =========================================================
   4. Kategorie
   ========================================================= */

.home-section.categories-section,
.single-section.categories-section,
section.categories-section,
.xmj-categories-section {
    max-width: 1230px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.categories-section .container {
    max-width: 1230px !important;
}

.categories-section a,
.categories-section a:hover {
    text-decoration: none !important;
    color: inherit !important;
}

/* usuwamy ozdobne kreski tylko z nazw kategorii, nie z ikon FontAwesome */
.categories-section h2:after,
.categories-section h3:after,
.categories-section h4:after,
.categories-section h5:after,
.categories-section h6:after,
.categories-section .category-name:after,
.categories-section .name:after,
.categories-section a:after {
    display: none !important;
    content: none !important;
}

.categories-section .card,
.categories-section .single-category,
.categories-section .category-box,
.categories-section .category-item {
    border-radius: 18px !important;
    border: 1px solid rgba(0,0,0,0.045) !important;
    box-shadow: 0 7px 20px rgba(0,0,0,0.045) !important;
    transition: all 0.18s ease-in-out !important;
    background: #ffffff !important;
}

.categories-section .card:hover,
.categories-section .single-category:hover,
.categories-section .category-box:hover,
.categories-section .category-item:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 24px rgba(0,0,0,0.075) !important;
}

.xmj-category-html-icon {
    width: 54px !important;
    height: 54px !important;
    border-radius: 17px !important;
    background: linear-gradient(135deg, #ffffff, #f6fff2) !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    box-shadow: 0 6px 16px rgba(0,0,0,0.055) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #4ca64c !important;
    font-size: 24px !important;
    margin-bottom: 10px !important;
    transition: all 0.18s ease-in-out !important;
}

.xmj-category-html-icon i {
    line-height: 1 !important;
}

.xmj-category-html-icon:hover {
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 10px 24px rgba(76,166,76,0.16) !important;
}

.xmj-category-html-icon.xmj-cat-1,
.xmj-category-html-icon.xmj-cat-2,
.xmj-category-html-icon.xmj-cat-3,
.xmj-category-html-icon.xmj-cat-4,
.xmj-category-html-icon.xmj-cat-21 {
    color: #2f8f2f !important;
    background: #f3fff1 !important;
}

.xmj-category-html-icon.xmj-cat-5,
.xmj-category-html-icon.xmj-cat-9,
.xmj-category-html-icon.xmj-cat-10 {
    color: #1976d2 !important;
    background: #f0f7ff !important;
}

.xmj-category-html-icon.xmj-cat-6 {
    color: #d32f2f !important;
    background: #fff3f3 !important;
}

.xmj-category-html-icon.xmj-cat-7,
.xmj-category-html-icon.xmj-cat-11 {
    color: #455a64 !important;
    background: #f4f7f8 !important;
}

.xmj-category-html-icon.xmj-cat-8,
.xmj-category-html-icon.xmj-cat-13,
.xmj-category-html-icon.xmj-cat-22 {
    color: #d81b60 !important;
    background: #fff1f7 !important;
}

.xmj-category-html-icon.xmj-cat-12,
.xmj-category-html-icon.xmj-cat-14,
.xmj-category-html-icon.xmj-cat-15,
.xmj-category-html-icon.xmj-cat-16 {
    color: #ef6c00 !important;
    background: #fff7ed !important;
}

.xmj-category-html-icon.xmj-cat-17,
.xmj-category-html-icon.xmj-cat-18,
.xmj-category-html-icon.xmj-cat-19,
.xmj-category-html-icon.xmj-cat-20,
.xmj-category-html-icon.xmj-cat-23 {
    color: #6a1b9a !important;
    background: #faf2ff !important;
}

.categories-section h2,
.categories-section h3,
.categories-section h4,
.categories-section h5,
.categories-section h6,
.categories-section .category-name,
.categories-section .name,
.categories-section a span,
.categories-section a strong {
    display: block !important;
    max-width: 100% !important;
    color: #081426 !important;
    font-size: 0.82rem !important;
    line-height: 1.18 !important;
    font-weight: 800 !important;
    letter-spacing: -0.15px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: normal !important;
    overflow: hidden !important;
}


/* =========================================================
   5. Nowoczesne karty ogłoszeń na stronie głównej
   ========================================================= */

.xmj-ad-card,
.small-announcement.xmj-ad-card {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    border-radius: 22px !important;
    overflow: hidden !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.065) !important;
    transition: all 0.2s ease-in-out !important;
    padding: 0 !important;
    text-align: left !important;
    height: 100% !important;
    min-height: 0 !important;
}

.xmj-ad-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 38px rgba(0,0,0,0.11) !important;
}

.xmj-ad-photo,
.small-announcement.xmj-ad-card .xmj-ad-photo {
    position: relative !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    overflow: hidden !important;
    background: #f5f7f4 !important;
}

.xmj-ad-img-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.xmj-ad-img,
.small-announcement.xmj-ad-card .xmj-ad-img {
    width: 100% !important;
    height: 185px !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.25s ease-in-out !important;
}

.xmj-ad-card:hover .xmj-ad-img {
    transform: scale(1.04) !important;
}

.xmj-ad-body,
.small-announcement.xmj-ad-card .xmj-ad-body {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 12px 13px 12px 13px !important;
    min-height: 112px !important;
    overflow: hidden !important;
}

.xmj-ad-title,
.xmj-ad-title.announcement-title,
.small-announcement.xmj-ad-card .xmj-ad-title,
.small-announcement.xmj-ad-card h4.announcement-title {
    width: 100% !important;
    height: 39px !important;
    min-height: 39px !important;
    max-height: 39px !important;
    margin: 0 0 5px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-align: left !important;
    font-size: 0.98rem !important;
    line-height: 1.25 !important;
    font-weight: 900 !important;
}

.xmj-ad-title a,
.small-announcement.xmj-ad-card .xmj-ad-title a,
.small-announcement.xmj-ad-card h4.announcement-title a {
    color: #1d2430 !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    white-space: normal !important;
    text-overflow: ellipsis !important;
    word-break: break-word !important;
    line-height: 1.25 !important;
}

.xmj-ad-title a:hover {
    color: #2f941f !important;
}

.xmj-ad-rating,
.small-announcement.xmj-ad-card .xmj-ad-rating {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    height: auto !important;
    min-height: 20px !important;
    max-height: 22px !important;
    margin: 0 0 6px 0 !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    line-height: 1.1 !important;
}

.xmj-ad-rating-number,
.small-announcement.xmj-ad-card .xmj-ad-rating-number {
    font-size: 0.9rem !important;
    font-weight: 900 !important;
    color: #222222 !important;
}

.xmj-ad-stars,
.small-announcement.xmj-ad-card .xmj-ad-stars {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    color: #f4b400 !important;
    text-shadow: 0 0 6px rgba(244, 180, 0, 0.35) !important;
    font-size: 1.08rem !important;
    line-height: 1 !important;
    letter-spacing: 1.4px !important;
}

.xmj-ad-opinions,
.small-announcement.xmj-ad-card .xmj-ad-opinions {
    font-size: 0.78rem !important;
    color: #6b7280 !important;
    line-height: 1 !important;
}

.xmj-ad-bottom,
.small-announcement.xmj-ad-card .xmj-ad-bottom {
    margin-top: 4px !important;
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    column-gap: 8px !important;
    align-items: center !important;
    overflow: hidden !important;
}

.xmj-ad-city,
.xmj-ad-card .announcement-city,
.small-announcement.xmj-ad-card .xmj-ad-city,
.small-announcement.xmj-ad-card span.announcement-city {
    position: static !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: auto !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    color: #6b7280 !important;
    font-size: 0.76rem !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    text-align: left !important;
    text-transform: none !important;
}

.xmj-ad-city i {
    color: #4ca64c !important;
}

.xmj-ad-price,
.xmj-ad-card .announcement-price,
.small-announcement.xmj-ad-card .xmj-ad-price,
.small-announcement.xmj-ad-card span.announcement-price {
    position: static !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    display: block !important;
    width: auto !important;
    min-width: 58px !important;
    max-width: none !important;
    overflow: visible !important;
    white-space: nowrap !important;
    text-overflow: unset !important;
    color: #2f941f !important;
    text-align: right !important;
    font-size: 1rem !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.xmj-ad-price small,
.xmj-ad-card .announcement-price small {
    font-size: 0.68rem !important;
}

.xmj-ad-heart,
.xmj-ad-card .clipboard-outer {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 20 !important;
}

.xmj-ad-heart a,
.xmj-ad-card .clipboard-outer a {
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background: rgba(255,255,255,0.95) !important;
    color: #4ca64c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 5px 16px rgba(0,0,0,0.16) !important;
    text-decoration: none !important;
}

.xmj-ad-heart i,
.xmj-ad-card .clipboard-outer i {
    margin: 0 !important;
    font-size: 16px !important;
}

.xmj-ad-featured,
.xmj-ad-card .featured {
    position: absolute !important;
    left: 12px !important;
    top: 12px !important;
    z-index: 15 !important;
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    color: #ffffff !important;
    border-radius: 999px !important;
    padding: 6px 10px !important;
    font-size: 0.68rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    box-shadow: 0 5px 14px rgba(76,166,76,0.3) !important;
}

.xmj-ad-carousel,
.xmj-ad-carousel .carousel-inner,
.xmj-ad-carousel .carousel-item {
    border-radius: 22px 22px 0 0 !important;
    overflow: hidden !important;
}

.xmj-ad-indicators {
    margin-bottom: 6px !important;
}

.xmj-ad-indicators button,
.xmj-ad-carousel .carousel-indicators button {
    width: 7px !important;
    height: 7px !important;
    border-radius: 50% !important;
    border: 0 !important;
    opacity: 0.65 !important;
}

.xmj-ad-carousel .carousel-control-prev,
.xmj-ad-carousel .carousel-control-next {
    width: 34px !important;
    opacity: 0 !important;
    transition: opacity 0.2s ease-in-out !important;
}

.xmj-ad-card:hover .carousel-control-prev,
.xmj-ad-card:hover .carousel-control-next {
    opacity: 0.8 !important;
}

.home-section .small-announcement,
.single-section .small-announcement,
.announcements-list .small-announcement {
    margin-bottom: 18px !important;
}

.home-section .row,
.single-section .row {
    row-gap: 18px !important;
}


/* =========================================================
   6. Nagłówki sekcji ogłoszeń
   ========================================================= */

.home-section:not(.categories-section) h2,
.single-section:not(.categories-section) h2,
.announcements-section h2,
.block-title,
.section-title {
    font-size: 1.45rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
    letter-spacing: -0.4px !important;
    margin-bottom: 14px !important;
}

.home-section:not(.categories-section) h2:after,
.single-section:not(.categories-section) h2:after,
.announcements-section h2:after {
    content: "" !important;
    display: block !important;
    width: 54px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #4ca64c, #f4b400) !important;
    border-radius: 999px !important;
    margin-top: 8px !important;
}

.home-section:not(.categories-section) a[href*="promowane-ogloszenia"],
.home-section:not(.categories-section) a[href*="search.html"],
.single-section:not(.categories-section) a[href*="promowane-ogloszenia"],
.single-section:not(.categories-section) a[href*="search.html"] {
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    color: #ffffff !important;
    border-radius: 999px !important;
    padding: 9px 18px !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-shadow: 0 6px 16px rgba(76,166,76,0.26) !important;
    border: none !important;
}

.home-section:not(.categories-section) a[href*="promowane-ogloszenia"]:hover,
.home-section:not(.categories-section) a[href*="search.html"]:hover,
.single-section:not(.categories-section) a[href*="promowane-ogloszenia"]:hover,
.single-section:not(.categories-section) a[href*="search.html"]:hover {
    background: linear-gradient(135deg, #43aa43, #287f1c) !important;
    transform: translateY(-1px) !important;
    color: #ffffff !important;
}

.home-section:not(.categories-section),
.single-section:not(.categories-section) {
    margin-top: 24px !important;
    margin-bottom: 12px !important;
}

.home-section:not(.categories-section) > .container,
.single-section:not(.categories-section) > .container {
    border-top: 1px solid rgba(0,0,0,0.06) !important;
    padding-top: 16px !important;
}


/* =========================================================
   7. Responsive
   ========================================================= */

@media (max-width: 991.98px) {

    .xmj-hero-section {
        padding-top: 70px !important;
        padding-bottom: 6px !important;
    }

    .xmj-hero-box {
        display: block !important;
        min-height: auto !important;
        margin: 0 8px 8px 8px !important;
        border-radius: 22px !important;
    }

    .xmj-hero-left {
        width: 100% !important;
        padding: 22px 15px 15px 15px !important;
    }

    .xmj-hero-right {
        width: 100% !important;
        padding: 0 15px 16px 15px !important;
    }

    .xmj-hero-badge {
        font-size: 0.67rem !important;
        padding: 6px 10px !important;
        margin-bottom: 12px !important;
    }

    .xmj-hero-title {
        font-size: 2rem !important;
        line-height: 1.08 !important;
        letter-spacing: -0.8px !important;
        margin-bottom: 10px !important;
    }

    .xmj-hero-text {
        font-size: 0.92rem !important;
        line-height: 1.4 !important;
        margin-bottom: 14px !important;
    }

    .xmj-hero-search {
        max-width: 100% !important;
        transform: none !important;
        padding: 9px !important;
        border-radius: 16px !important;
    }

    .xmj-hero-search-row {
        flex-wrap: wrap !important;
    }

    .xmj-hero-phrase-col,
    .xmj-hero-city-col,
    .xmj-hero-button-col {
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }

    .xmj-hero-search .input-group,
    .xmj-hero-search input,
    .xmj-hero-search .form-control,
    .xmj-hero-search .input-group-text,
    .xmj-hero-search select,
    .xmj-hero-search .form-select {
        height: 46px !important;
        min-height: 46px !important;
    }

    .xmj-hero-search .input-group-text {
        width: 40px !important;
        min-width: 40px !important;
        flex: 0 0 40px !important;
    }

    .xmj-hero-city-col input,
    .xmj-hero-city-col .form-control {
        min-width: 0 !important;
        font-size: 0.84rem !important;
    }

    .xmj-hero-city-col select,
    .xmj-hero-city-col .form-select,
    .xmj-hero-city-col [name="search_distance"],
    .xmj-hero-city-col .distance-select {
        flex: 0 0 70px !important;
        width: 70px !important;
        max-width: 70px !important;
        min-width: 70px !important;
        height: 46px !important;
        min-height: 46px !important;
    }

    .xmj-hero-search-btn {
        height: 46px !important;
    }

    .xmj-hero-card-main {
        min-height: 170px !important;
        border-radius: 20px !important;
        padding: 22px 18px !important;
    }

    .xmj-hero-person-icon {
        width: 58px !important;
        height: 58px !important;
        border-radius: 18px !important;
        font-size: 28px !important;
        left: 18px !important;
        top: 18px !important;
    }

    .xmj-hero-floating-one,
    .xmj-hero-floating-two {
        display: none !important;
    }

    .xmj-hero-visual-title {
        margin-top: 58px !important;
        font-size: 1.08rem !important;
    }

    .xmj-hero-visual-text {
        font-size: 0.82rem !important;
        margin-bottom: 12px !important;
    }

    .xmj-hero-add-btn {
        width: 100% !important;
        padding: 11px 14px !important;
        font-size: 0.86rem !important;
    }

    .xmj-hero-benefits {
        margin: 10px 8px 0 8px !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }

    .xmj-hero-benefit {
        border-radius: 14px !important;
        padding: 11px 10px !important;
        gap: 9px !important;
    }

    .xmj-hero-benefit i {
        width: 34px !important;
        height: 34px !important;
        border-radius: 11px !important;
        font-size: 15px !important;
    }

    .xmj-hero-benefit strong {
        font-size: 0.82rem !important;
    }

    .xmj-hero-benefit span {
        font-size: 0.68rem !important;
    }

    .xmj-stats-container {
        padding-left: 8px !important;
        padding-right: 8px !important;
        margin-top: 8px !important;
    }

    .xmj-stats-banner {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        padding: 10px 8px !important;
        border-radius: 18px !important;
    }

    .xmj-stat-item {
        padding: 8px 7px !important;
        gap: 7px !important;
        border-radius: 14px !important;
    }

    .xmj-stat-icon-box {
        flex: 0 0 36px !important;
        width: 36px !important;
        height: 36px !important;
        border-radius: 12px !important;
        font-size: 1rem !important;
    }

    .xmj-stat-text {
        font-size: 0.66rem !important;
        line-height: 1.15 !important;
    }

    .xmj-stat-text span:last-child {
        font-size: 0.62rem !important;
    }

    .xmj-stat-number {
        font-size: 0.96rem !important;
    }

    #xmj-live-trend {
        display: block !important;
        margin-left: 0 !important;
        margin-top: 1px !important;
        font-size: 0.6rem !important;
    }

    .xmj-promo-banner {
        margin: 8px 8px 10px 8px !important;
        padding: 12px 10px !important;
        border-radius: 18px !important;
    }

    .xmj-promo-title {
        font-size: 1.05rem !important;
    }

    .xmj-promo-text {
        font-size: 0.76rem !important;
    }

    .xmj-promo-card {
        padding: 10px !important;
    }

    .xmj-category-html-icon,
    .categories-section .xmj-category-html-icon {
        width: 48px !important;
        height: 48px !important;
        border-radius: 15px !important;
        font-size: 21px !important;
        margin-bottom: 9px !important;
    }

    .categories-section h2,
    .categories-section h3,
    .categories-section h4,
    .categories-section h5,
    .categories-section h6,
    .categories-section .category-name,
    .categories-section .name,
    .categories-section a span,
    .categories-section a strong {
        font-size: 0.74rem !important;
        line-height: 1.15 !important;
    }

    .xmj-ad-card {
        border-radius: 18px !important;
    }

    .xmj-ad-img,
    .small-announcement.xmj-ad-card .xmj-ad-img {
        height: 165px !important;
    }

    .xmj-ad-body,
    .small-announcement.xmj-ad-card .xmj-ad-body {
        min-height: 108px !important;
        padding: 12px 11px 13px 11px !important;
    }

    .xmj-ad-title,
    .xmj-ad-title.announcement-title,
    .small-announcement.xmj-ad-card .xmj-ad-title,
    .small-announcement.xmj-ad-card h4.announcement-title {
        height: 40px !important;
        min-height: 40px !important;
        max-height: 40px !important;
        font-size: 0.9rem !important;
    }

    .xmj-ad-price,
    .xmj-ad-card .announcement-price,
    .small-announcement.xmj-ad-card .xmj-ad-price,
    .small-announcement.xmj-ad-card span.announcement-price {
        font-size: 0.9rem !important;
        min-width: 54px !important;
    }

    .xmj-ad-city,
    .xmj-ad-card .announcement-city,
    .small-announcement.xmj-ad-card .xmj-ad-city,
    .small-announcement.xmj-ad-card span.announcement-city {
        font-size: 0.72rem !important;
    }

    .xmj-ad-heart a,
    .xmj-ad-card .clipboard-outer a {
        width: 34px !important;
        height: 34px !important;
    }

    .xmj-ad-featured,
    .xmj-ad-card .featured {
        font-size: 0.62rem !important;
        padding: 5px 8px !important;
    }

    .home-section:not(.categories-section) h2,
    .single-section:not(.categories-section) h2,
    .announcements-section h2,
    .block-title,
    .section-title {
        font-size: 1.15rem !important;
        margin-bottom: 10px !important;
    }

    .home-section:not(.categories-section) h2:after,
    .single-section:not(.categories-section) h2:after,
    .announcements-section h2:after {
        width: 42px !important;
        height: 3px !important;
        margin-top: 6px !important;
    }

    .home-section:not(.categories-section) a[href*="promowane-ogloszenia"],
    .home-section:not(.categories-section) a[href*="search.html"],
    .single-section:not(.categories-section) a[href*="promowane-ogloszenia"],
    .single-section:not(.categories-section) a[href*="search.html"] {
        padding: 7px 12px !important;
        font-size: 0.68rem !important;
    }

    .home-section:not(.categories-section),
    .single-section:not(.categories-section) {
        margin-top: 16px !important;
    }
}
/* =========================================================
   XMJ - widok pojedynczego ogłoszenia / pokaz.smarty
   ========================================================= */

.xmj-single-page {
    max-width: 1230px !important;
    padding-top: 24px !important;
    padding-bottom: 28px !important;
}

/* układ główny */
.xmj-single-page .row.gx-lg-4,
.xmj-single-page .row.gx-xxl-5 {
    align-items: flex-start !important;
}

/* tytuł ogłoszenia */
.xmj-single-page .announcement-title-card {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.xmj-single-page .announcement-title-card .title,
.xmj-single-page h1.title {
    font-size: 2.05rem !important;
    line-height: 1.15 !important;
    font-weight: 950 !important;
    letter-spacing: -0.8px !important;
    color: #1d2430 !important;
    margin-bottom: 12px !important;
}

/* pasek informacji pod tytułem */
.xmj-single-page .announcement-info-belt,
.xmj-single-page .announcement-info,
.xmj-single-page .info-belt {
    background: #ffffff !important;
    border-radius: 18px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.05) !important;
    padding: 12px 16px !important;
}

/* galeria */
.xmj-single-page .announcement-gallery {
    position: relative !important;
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 12px 34px rgba(0,0,0,0.075) !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
}

.xmj-single-page #galleryCarousel,
.xmj-single-page #galleryCarousel .carousel-inner,
.xmj-single-page #galleryCarousel .carousel-item {
    border-radius: 24px !important;
    overflow: hidden !important;
}

.xmj-single-page .single-photo {
    width: 100% !important;
    height: 520px !important;
    object-fit: cover !important;
    display: block !important;
    background: #f4f6f2 !important;
}

/* licznik zdjęć */
.xmj-single-page .gallery-photo-counter {
    position: absolute !important;
    right: 18px !important;
    bottom: 18px !important;
    z-index: 10 !important;
    background: rgba(29,36,48,0.78) !important;
    color: #ffffff !important;
    border-radius: 999px !important;
    padding: 7px 12px !important;
    font-size: 0.82rem !important;
    font-weight: 900 !important;
    backdrop-filter: blur(8px) !important;
}

/* strzałki galerii */
.xmj-single-page .carousel-control-prev,
.xmj-single-page .carousel-control-next {
    width: 54px !important;
    opacity: 1 !important;
}

.xmj-single-page .carousel-control-prev-icon,
.xmj-single-page .carousel-control-next-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background-color: rgba(255,255,255,0.95) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.18) !important;
    filter: invert(1) grayscale(1) !important;
}

/* kropki karuzeli */
.xmj-single-page .carousel-indicators {
    margin-bottom: 14px !important;
}

.xmj-single-page .carousel-indicators button {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    border: none !important;
    opacity: 0.7 !important;
}

.xmj-single-page .carousel-indicators button.active {
    background-color: #4ca64c !important;
    opacity: 1 !important;
}

/* opis ogłoszenia */
.xmj-single-page .announcement-desc {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 24px 26px !important;
    margin-top: 24px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .title-with-line,
.xmj-single-page .announcement-desc h2 {
    font-size: 1.28rem !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
    margin-bottom: 16px !important;
}

.xmj-single-page .title-with-line:after {
    content: "" !important;
    display: block !important;
    width: 54px !important;
    height: 4px !important;
    background: linear-gradient(90deg, #4ca64c, #f4b400) !important;
    border-radius: 999px !important;
    margin-top: 8px !important;
}

.xmj-single-page .announcement-desc-text {
    color: #3c4654 !important;
    font-size: 0.96rem !important;
    line-height: 1.7 !important;
}

/* parametry ogłoszenia */
.xmj-single-page .announcement-fields {
    margin-bottom: 18px !important;
}

.xmj-single-page .view-single-meta > div {
    border: 1px solid rgba(76,166,76,0.14) !important;
    background: #fbfffa !important;
    border-radius: 16px !important;
    padding: 12px 14px !important;
    min-height: 54px !important;
}

.xmj-single-page .view-single-meta strong {
    display: block !important;
    color: #1d2430 !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    margin-bottom: 2px !important;
}

/* prawa kolumna */
.xmj-single-page .announcement-side-col {
    position: relative !important;
}

/* boks cena/kontakt */
.xmj-single-page .announcement-price-contact-box-outer,
.xmj-single-page .price-contact-box-outer-main-1,
.xmj-single-page .price-contact-box-outer-main-2 {
    border-radius: 24px !important;
}

.xmj-single-page .announcement-price-contact-box-outer > *,
.xmj-single-page .price-contact-box-outer-main-1 > *,
.xmj-single-page .price-contact-box-outer-main-2 > * {
    border-radius: 24px !important;
    box-shadow: 0 12px 34px rgba(0,0,0,0.075) !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
}

/* meta w prawej kolumnie */
.xmj-single-page .side-meta-outer {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 18px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

/* przyciski */
.xmj-single-page .btn-primary {
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    border: none !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
    box-shadow: 0 7px 18px rgba(76,166,76,0.28) !important;
}

.xmj-single-page .btn-tertiary,
.xmj-single-page .btn-outline-tertiary,
.xmj-single-page .btn-light-grey,
.xmj-single-page .btn-dark-grey,
.xmj-single-page .btn-outline-secondary {
    border-radius: 14px !important;
    font-weight: 850 !important;
}

/* kontakt formularz */
.xmj-single-page .announcement-contact-form {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 24px !important;
    margin-top: 24px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .announcement-contact-form .title {
    font-size: 1.22rem !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
}

.xmj-single-page .announcement-contact-form .form-control {
    border-radius: 14px !important;
    border: 1px solid #e1e6dc !important;
    min-height: 48px !important;
    box-shadow: none !important;
}

.xmj-single-page .announcement-contact-form textarea.form-control {
    min-height: 130px !important;
}

/* zasady bezpieczeństwa */
.xmj-single-page .announcement-security-rules {
    background: linear-gradient(135deg, #ffffff, #f5fff2) !important;
    border-radius: 24px !important;
    padding: 20px !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .announcement-security-rules .title {
    font-size: 1.08rem !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
}

/* udostępnianie */
.xmj-single-page .announcement-social {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 16px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.05) !important;
}

.xmj-single-page .announcement-social .btn {
    border-radius: 14px !important;
}

/* dolny pasek na telefonie */
.announcement-mobile-action-buttons {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 9999 !important;
    background: rgba(255,255,255,0.96) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 -8px 24px rgba(0,0,0,0.12) !important;
    border-top: 1px solid rgba(0,0,0,0.08) !important;
}

.announcement-mobile-action-buttons .btn {
    border-radius: 14px !important;
    font-weight: 900 !important;
}

/* podobne ogłoszenia */
.other-announcements-of-user,
.other-announcements-of-category {
    margin-top: 20px !important;
}

.other-announcements-of-user .container,
.other-announcements-of-category .container {
    max-width: 1230px !important;
}

.other-announcements-of-user .subtitle-with-line,
.other-announcements-of-category .subtitle-with-line {
    font-size: 1.35rem !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
}

/* TELEFON */
@media (max-width: 991.98px) {

    .xmj-single-page {
        padding-top: 12px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        padding-bottom: 88px !important;
    }

    .xmj-single-page .announcement-title-card .title,
    .xmj-single-page h1.title {
        font-size: 1.55rem !important;
        line-height: 1.16 !important;
        margin-bottom: 10px !important;
    }

    .xmj-single-page .announcement-gallery {
        border-radius: 20px !important;
    }

    .xmj-single-page #galleryCarousel,
    .xmj-single-page #galleryCarousel .carousel-inner,
    .xmj-single-page #galleryCarousel .carousel-item {
        border-radius: 20px !important;
    }

    .xmj-single-page .single-photo {
        height: 300px !important;
    }

    .xmj-single-page .carousel-control-prev,
    .xmj-single-page .carousel-control-next {
        width: 44px !important;
    }

    .xmj-single-page .carousel-control-prev-icon,
    .xmj-single-page .carousel-control-next-icon {
        width: 34px !important;
        height: 34px !important;
    }

    .xmj-single-page .gallery-photo-counter {
        right: 12px !important;
        bottom: 12px !important;
        padding: 6px 10px !important;
        font-size: 0.75rem !important;
    }

    .xmj-single-page .announcement-desc,
    .xmj-single-page .announcement-contact-form,
    .xmj-single-page .announcement-security-rules,
    .xmj-single-page .announcement-social {
        border-radius: 20px !important;
        padding: 18px !important;
        margin-top: 16px !important;
    }

    .xmj-single-page .title-with-line,
    .xmj-single-page .announcement-desc h2 {
        font-size: 1.08rem !important;
    }

    .xmj-single-page .announcement-desc-text {
        font-size: 0.9rem !important;
        line-height: 1.6 !important;
    }

    .xmj-single-page .view-single-meta > div {
        border-radius: 14px !important;
        padding: 10px 11px !important;
    }
}

@media (max-width: 575.98px) {

    .xmj-single-page .single-photo {
        height: 255px !important;
    }

    .xmj-single-page .announcement-title-card .title,
    .xmj-single-page h1.title {
        font-size: 1.38rem !important;
    }

    .xmj-single-page .announcement-desc,
    .xmj-single-page .announcement-contact-form,
    .xmj-single-page .announcement-security-rules,
    .xmj-single-page .announcement-social {
        padding: 15px !important;
    }
}
/* =========================================================
   XMJ - SINGLE: poprawka po pierwszym podglądzie
   pokaz.smarty / widok pojedynczego ogłoszenia
   ========================================================= */

/* ogólny kontener */
.xmj-single-page {
    max-width: 1220px !important;
    padding-top: 18px !important;
}

/* tytuł - bez szarego starego boxa */
.xmj-single-page .announcement-title-outer,
.xmj-single-page .announcement-title-card,
.xmj-single-page .card.announcement-title-card,
.xmj-single-page .card.bg-light.announcement-title-card {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.xmj-single-page h1.title,
.xmj-single-page .announcement-title-card h1.title {
    font-size: 1.85rem !important;
    line-height: 1.18 !important;
    font-weight: 950 !important;
    letter-spacing: -0.5px !important;
    color: #1d2430 !important;
    margin: 0 0 12px 0 !important;
}

/* info pod tytułem */
.xmj-single-page .d-none.d-md-block {
    color: #556070 !important;
}

/* galeria - mniejsza i nowocześniejsza */
.xmj-single-page .announcement-gallery {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.07) !important;
    margin-top: 14px !important;
    margin-bottom: 18px !important;
}

.xmj-single-page #galleryCarousel,
.xmj-single-page #galleryCarousel .carousel-inner,
.xmj-single-page #galleryCarousel .carousel-item {
    border-radius: 22px !important;
    overflow: hidden !important;
}

.xmj-single-page .single-photo {
    width: 100% !important;
    height: 430px !important;
    object-fit: cover !important;
    display: block !important;
    background: #f5f5f5 !important;
}

/* licznik zdjęć */
.xmj-single-page .gallery-photo-counter {
    position: absolute !important;
    left: 14px !important;
    bottom: 14px !important;
    right: auto !important;
    z-index: 20 !important;
    background: rgba(29,36,48,0.78) !important;
    color: #ffffff !important;
    padding: 7px 11px !important;
    border-radius: 12px !important;
    font-size: 0.8rem !important;
    font-weight: 900 !important;
}

/* strzałki galerii */
.xmj-single-page .carousel-control-prev,
.xmj-single-page .carousel-control-next {
    width: 54px !important;
    opacity: 1 !important;
}

.xmj-single-page .carousel-control-prev-icon,
.xmj-single-page .carousel-control-next-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    background-color: rgba(255,255,255,0.96) !important;
    box-shadow: 0 6px 18px rgba(0,0,0,0.20) !important;
    filter: invert(1) grayscale(1) !important;
}

/* opis */
.xmj-single-page .announcement-desc {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 22px 24px !important;
    margin-top: 18px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .announcement-desc .title-with-line,
.xmj-single-page .announcement-desc h2 {
    font-size: 1.22rem !important;
    font-weight: 950 !important;
    color: #1d2430 !important;
    margin-bottom: 14px !important;
}

.xmj-single-page .announcement-desc-text {
    font-size: 0.96rem !important;
    line-height: 1.65 !important;
    color: #394352 !important;
}

/* parametry w opisie */
.xmj-single-page .view-single-meta > div,
.xmj-single-page .announcement-fields .border {
    border: 1px solid rgba(76,166,76,0.15) !important;
    background: #fbfffa !important;
    border-radius: 14px !important;
    padding: 10px 12px !important;
}

/* prawa kolumna - cena / kontakt */
.xmj-single-page .announcement-side-col {
    padding-top: 0 !important;
}

.xmj-single-page .announcement-price-contact-box-outer {
    border-radius: 22px !important;
}

.xmj-single-page .announcement-price-contact-box-outer > div,
.xmj-single-page .announcement-price-contact-box-outer .card,
.xmj-single-page .announcement-price-contact-box-outer .price-contact-box,
.xmj-single-page .price-contact-box-outer-main-1 > div,
.xmj-single-page .price-contact-box-outer-main-2 > div {
    background: #ffffff !important;
    border-radius: 22px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.07) !important;
    overflow: hidden !important;
}

/* cena w prawym boxie */
.xmj-single-page .announcement-price-contact-box-outer .price,
.xmj-single-page .announcement-price-contact-box-outer .announcement-price,
.xmj-single-page .announcement-price-contact-box-outer [class*="price"] {
    color: #2f941f !important;
}

/* przyciski w prawym boxie */
.xmj-single-page .announcement-price-contact-box-outer .btn-primary,
.xmj-single-page .announcement-price-contact-box-outer .btn-tertiary,
.xmj-single-page .announcement-price-contact-box-outer .show-phone,
.xmj-single-page .announcement-price-contact-box-outer a[href*="contact"] {
    border-radius: 14px !important;
    font-weight: 900 !important;
}

/* meta po prawej - zdejmujemy stare ciemne tło */
.xmj-single-page .side-meta-outer,
.xmj-single-page .side-meta-outer > div,
.xmj-single-page .side-meta-outer .card,
.xmj-single-page .side-meta-outer .bg-dark,
.xmj-single-page .side-meta-outer .text-bg-dark,
.xmj-single-page .side-meta-outer table,
.xmj-single-page .side-meta-outer .announcement-meta {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #1d2430 !important;
    border-radius: 22px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .side-meta-outer {
    padding: 0 !important;
    overflow: hidden !important;
}

.xmj-single-page .side-meta-outer * {
    color: #1d2430 !important;
}

.xmj-single-page .side-meta-outer strong,
.xmj-single-page .side-meta-outer b {
    color: #2f941f !important;
}

/* drukuj / schowek */
.xmj-single-page .print-link,
.xmj-single-page .add-to-clipboard-button,
.xmj-single-page .delete-from-clipboard-button {
    border-radius: 14px !important;
    font-weight: 900 !important;
}

/* udostępnij */
.xmj-single-page .announcement-social {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 16px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.05) !important;
}

/* zasady bezpieczeństwa */
.xmj-single-page .announcement-security-rules {
    background: linear-gradient(135deg, #ffffff, #f5fff2) !important;
    border-radius: 22px !important;
    padding: 20px !important;
    border: 1px solid rgba(76,166,76,0.14) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .announcement-security-rules .title {
    color: #1d2430 !important;
    font-weight: 950 !important;
}

/* formularz kontaktowy */
.xmj-single-page .announcement-contact-form {
    background: #ffffff !important;
    border-radius: 22px !important;
    padding: 22px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
}

.xmj-single-page .announcement-contact-form .form-control {
    border-radius: 14px !important;
    border: 1px solid #e1e6dc !important;
    box-shadow: none !important;
}

/* mobilny pasek kontaktu */
.announcement-mobile-action-buttons {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 9999 !important;
    background: rgba(255,255,255,0.96) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 -8px 24px rgba(0,0,0,0.12) !important;
}

.announcement-mobile-action-buttons .btn {
    border-radius: 14px !important;
    font-weight: 900 !important;
}

/* TELEFON */
@media (max-width: 991.98px) {

    .xmj-single-page {
        padding-top: 10px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        padding-bottom: 88px !important;
    }

    .xmj-single-page h1.title,
    .xmj-single-page .announcement-title-card h1.title {
        font-size: 1.45rem !important;
        line-height: 1.16 !important;
    }

    .xmj-single-page .single-photo {
        height: 300px !important;
    }

    .xmj-single-page .announcement-gallery {
        border-radius: 20px !important;
    }

    .xmj-single-page #galleryCarousel,
    .xmj-single-page #galleryCarousel .carousel-inner,
    .xmj-single-page #galleryCarousel .carousel-item {
        border-radius: 20px !important;
    }

    .xmj-single-page .announcement-desc,
    .xmj-single-page .announcement-contact-form,
    .xmj-single-page .announcement-security-rules,
    .xmj-single-page .announcement-social {
        border-radius: 20px !important;
        padding: 16px !important;
    }
}

@media (max-width: 575.98px) {
    .xmj-single-page .single-photo {
        height: 255px !important;
    }
}
/* =========================================================
   XMJ - prawy panel single / pokaz-price-contact-box.smarty
   ========================================================= */

.xmj-single-contact-panel {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* cena */
.xmj-single-price-card {
    background: linear-gradient(135deg, #ffffff, #f6fff2) !important;
    border: 1px solid rgba(76,166,76,0.15) !important;
    border-radius: 24px !important;
    padding: 22px !important;
    box-shadow: 0 12px 34px rgba(0,0,0,0.075) !important;
    margin-bottom: 14px !important;
}

.xmj-single-price-label {
    font-size: 0.78rem !important;
    color: #68717d !important;
    font-weight: 800 !important;
    margin-bottom: 6px !important;
}

.xmj-single-price-value .price {
    display: block !important;
    color: #2f941f !important;
    font-size: 2.05rem !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    letter-spacing: -0.8px !important;
}

.xmj-price-tax,
.xmj-price-unit {
    color: #68717d !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
}

.xmj-single-negotiate {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #eefaeb !important;
    color: #2f941f !important;
    border-radius: 999px !important;
    padding: 7px 11px !important;
    font-size: 0.78rem !important;
    font-weight: 900 !important;
    margin-top: 10px !important;
}

.xmj-single-suggest-btn {
    display: block !important;
    width: 100% !important;
    margin-top: 12px !important;
    background: #fff4f2 !important;
    color: #d93025 !important;
    border: 1px solid #ffd4cf !important;
    border-radius: 14px !important;
    font-weight: 900 !important;
    padding: 11px 14px !important;
}

/* mapa / lokalizacja */
.xmj-single-location-card {
    background: #ffffff !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
    margin-bottom: 14px !important;
}

.xmj-single-location-card .map-outer {
    height: 170px !important;
    border-radius: 24px 24px 0 0 !important;
    overflow: hidden !important;
}

.xmj-single-address-box {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 16px !important;
    background: #ffffff !important;
}

.xmj-single-address-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 14px !important;
    background: #effbea !important;
    color: #4ca64c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 42px !important;
}

.xmj-single-address-text strong {
    display: block !important;
    color: #1d2430 !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

.xmj-single-address-text a {
    color: #2f941f !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    font-size: 0.84rem !important;
}

/* karta sprzedawcy */
.xmj-single-seller-card {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 22px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 12px 34px rgba(0,0,0,0.075) !important;
}

.xmj-seller-top {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin-bottom: 16px !important;
}

.xmj-seller-avatar {
    width: 76px !important;
    height: 76px !important;
    min-width: 76px !important;
    border-radius: 24px !important;
    background-size: cover !important;
    background-position: center !important;
    border: 4px solid #effbea !important;
    box-shadow: 0 8px 22px rgba(0,0,0,0.10) !important;
    margin: 0 !important;
}

.xmj-seller-info {
    min-width: 0 !important;
    flex: 1 !important;
}

.xmj-seller-name {
    display: block !important;
    color: #1d2430 !important;
    font-size: 1.08rem !important;
    line-height: 1.15 !important;
    font-weight: 950 !important;
    text-align: left !important;
}

.xmj-seller-type {
    color: #68717d !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    margin-top: 2px !important;
}

.xmj-seller-status {
    display: block !important;
    font-size: 0.78rem !important;
    font-weight: 800 !important;
    margin-top: 4px !important;
}

.xmj-seller-since {
    display: block !important;
    color: #68717d !important;
    font-size: 0.75rem !important;
    margin-top: 3px !important;
}

/* reputacja */
.xmj-seller-reputation {
    background: #fbfffa !important;
    border: 1px solid rgba(76,166,76,0.13) !important;
    border-radius: 20px !important;
    padding: 15px !important;
    margin: 0 0 16px 0 !important;
    text-align: center !important;
}

.xmj-reputation-level {
    color: #2f941f !important;
    font-size: 0.96rem !important;
    font-weight: 950 !important;
    margin-bottom: 7px !important;
}

.xmj-verified-seller {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    color: #2f941f !important;
    background: #eefaeb !important;
    border-radius: 999px !important;
    padding: 6px 10px !important;
    font-size: 0.76rem !important;
    font-weight: 900 !important;
    margin-bottom: 8px !important;
}

.xmj-reputation-rating {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    margin-bottom: 12px !important;
}

.xmj-reputation-rating strong {
    font-size: 0.95rem !important;
    color: #1d2430 !important;
}

.xmj-reputation-rating .icon-opinion-star {
    color: #f4b400 !important;
    font-size: 0.9rem !important;
}

.xmj-reputation-stats {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
}

.xmj-reputation-stats div {
    background: #ffffff !important;
    border-radius: 14px !important;
    padding: 9px 5px !important;
    border: 1px solid rgba(0,0,0,0.05) !important;
}

.xmj-reputation-stats strong {
    display: block !important;
    color: #1d2430 !important;
    font-size: 1rem !important;
    line-height: 1.1 !important;
}

.xmj-reputation-stats span {
    display: block !important;
    color: #68717d !important;
    font-size: 0.68rem !important;
    line-height: 1.1 !important;
    margin-top: 3px !important;
}

.xmj-next-level {
    color: #68717d !important;
    font-size: 0.76rem !important;
    font-weight: 800 !important;
}

.xmj-next-level span {
    color: #2f941f !important;
    font-weight: 950 !important;
}

.xmj-reputation-progress {
    height: 9px !important;
    border-radius: 999px !important;
    background: #e8efe5 !important;
    margin-top: 8px !important;
    overflow: hidden !important;
}

.xmj-reputation-count {
    color: #68717d !important;
    font-size: 0.72rem !important;
    margin-top: 7px !important;
}

/* przyciski */
.xmj-single-action-buttons {
    display: grid !important;
    gap: 10px !important;
    margin-top: 12px !important;
}

.xmj-message-btn {
    background: linear-gradient(135deg, #4fbd4f, #2f941f) !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 16px !important;
    padding: 13px 16px !important;
    font-weight: 950 !important;
    text-align: center !important;
    box-shadow: 0 8px 20px rgba(76,166,76,0.30) !important;
}

.xmj-message-btn:hover {
    color: #ffffff !important;
}

.xmj-seller-all-ads-btn {
    background: #f5f8f3 !important;
    color: #1d2430 !important;
    border: 1px solid #dfe8da !important;
    border-radius: 16px !important;
    padding: 12px 16px !important;
    font-weight: 900 !important;
    text-align: center !important;
}

/* telefon */
.xmj-phone-hidden,
.xmj-phone-revealed {
    margin-top: 12px !important;
    background: #f8fff5 !important;
    border-radius: 16px !important;
    padding: 12px !important;
    border: 1px solid rgba(76,166,76,0.13) !important;
}

.xmj-phone-hidden .phone-col,
.xmj-phone-revealed .phone-col {
    color: #1d2430 !important;
    font-size: 0.86rem !important;
    font-weight: 800 !important;
}

.xmj-show-phone-btn {
    width: 100% !important;
    background: #eefaeb !important;
    color: #2f941f !important;
    border-radius: 14px !important;
    padding: 10px 12px !important;
    font-weight: 950 !important;
    border: 1px solid #d5efcd !important;
}

/* godziny */
.xmj-hours-box {
    margin-top: 14px !important;
    background: #f8faf7 !important;
    border-radius: 16px !important;
    padding: 14px !important;
    border: 1px solid rgba(0,0,0,0.05) !important;
}

.xmj-hours-title {
    color: #1d2430 !important;
    font-weight: 950 !important;
    margin-bottom: 8px !important;
}

.xmj-hours-box li {
    color: #4d5664 !important;
    line-height: 1.6 !important;
}

/* MOBILE */
@media (max-width: 991.98px) {
    .xmj-single-price-card,
    .xmj-single-location-card,
    .xmj-single-seller-card {
        border-radius: 20px !important;
    }

    .xmj-single-price-card,
    .xmj-single-seller-card {
        padding: 18px !important;
    }

    .xmj-single-price-value .price {
        font-size: 1.72rem !important;
    }

    .xmj-seller-avatar {
        width: 64px !important;
        height: 64px !important;
        min-width: 64px !important;
        border-radius: 20px !important;
    }
}
/* =========================================================
   XMJ - jasny panel meta w pojedynczym ogłoszeniu
   pokaz-meta.smarty
   ========================================================= */

.xmj-single-page .xmj-single-meta-card,
.xmj-single-page .announcement-meta.xmj-single-meta-card {
    background: #ffffff !important;
    border-radius: 24px !important;
    padding: 20px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
    color: #1d2430 !important;
}

.xmj-meta-title {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    color: #1d2430 !important;
    font-size: 1.05rem !important;
    font-weight: 950 !important;
    margin-bottom: 15px !important;
}

.xmj-meta-title i {
    color: #4ca64c !important;
}

.xmj-meta-list {
    display: grid !important;
    gap: 10px !important;
}

.xmj-meta-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: #fbfffa !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    border-radius: 17px !important;
    padding: 12px 13px !important;
    transition: all 0.18s ease-in-out !important;
}

.xmj-meta-item:hover {
    background: #f4fff0 !important;
    transform: translateY(-1px) !important;
}

.xmj-meta-icon {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 14px !important;
    background: #effbea !important;
    color: #4ca64c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
}

.xmj-meta-content {
    min-width: 0 !important;
    flex: 1 !important;
}

.xmj-meta-name {
    display: block !important;
    color: #68717d !important;
    font-size: 0.74rem !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    margin-bottom: 3px !important;
}

.xmj-meta-value {
    display: block !important;
    color: #1d2430 !important;
    font-size: 0.9rem !important;
    line-height: 1.2 !important;
    font-weight: 950 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.xmj-meta-value a {
    color: #2f941f !important;
    text-decoration: none !important;
    font-weight: 950 !important;
}

.xmj-meta-value a:hover {
    color: #247a19 !important;
}

/* usuwa stare ciemne style, jeżeli jeszcze gdzieś nachodzą */
.xmj-single-page .side-meta-outer,
.xmj-single-page .side-meta-outer .announcement-meta,
.xmj-single-page .side-meta-outer * {
    color: inherit !important;
}

.xmj-single-page .side-meta-outer {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* telefon */
@media (max-width: 991.98px) {
    .xmj-single-page .xmj-single-meta-card,
    .xmj-single-page .announcement-meta.xmj-single-meta-card {
        border-radius: 20px !important;
        padding: 16px !important;
    }

    .xmj-meta-title {
        font-size: 0.98rem !important;
    }

    .xmj-meta-item {
        border-radius: 15px !important;
        padding: 10px 11px !important;
    }

    .xmj-meta-icon {
        width: 38px !important;
        height: 38px !important;
        flex: 0 0 38px !important;
        border-radius: 13px !important;
    }

    .xmj-meta-value {
        font-size: 0.84rem !important;
    }
}

/* =========================================================
   XMJ - FINAL poprawka ciemnego panelu meta na single
   działa dla starego i nowego pokaz-meta.smarty
   ========================================================= */

/* zdejmujemy ciemne tło z prawej kolumny meta */
.xmj-single-page .side-meta-outer,
.xmj-single-page .side-meta-outer > div,
.xmj-single-page .side-meta-outer .announcement-meta,
.xmj-single-page .announcement-meta {
    background: transparent !important;
    background-color: transparent !important;
    color: #1d2430 !important;
    border: none !important;
    box-shadow: none !important;
}

/* główna karta informacji */
.xmj-single-page .announcement-meta,
.xmj-single-page .announcement-meta.py-2,
.xmj-single-page .announcement-meta.px-4,
.xmj-single-page .announcement-meta.xmj-single-meta-card {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-radius: 24px !important;
    padding: 20px !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
    color: #1d2430 !important;
}

/* jeśli wczytuje się stary układ z row */
.xmj-single-page .announcement-meta .row,
.xmj-single-page .announcement-meta .row-gx-2 {
    background: #fbfffa !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    border-radius: 16px !important;
    padding: 12px 13px !important;
    margin: 0 0 10px 0 !important;
    align-items: center !important;
}

/* nazwy po lewej */
.xmj-single-page .announcement-meta .meta-name {
    color: #68717d !important;
    font-size: 0.76rem !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
}

/* wartości po prawej */
.xmj-single-page .announcement-meta .meta-value {
    color: #1d2430 !important;
    font-size: 0.9rem !important;
    font-weight: 950 !important;
    line-height: 1.2 !important;
}

/* linki */
.xmj-single-page .announcement-meta .meta-value a,
.xmj-single-page .announcement-meta a {
    color: #2f941f !important;
    text-decoration: none !important;
    font-weight: 950 !important;
}

/* nowy układ jeśli już jest xmj-meta */
.xmj-single-page .xmj-meta-title {
    color: #1d2430 !important;
    font-size: 1.05rem !important;
    font-weight: 950 !important;
    margin-bottom: 15px !important;
}

.xmj-single-page .xmj-meta-title i {
    color: #4ca64c !important;
}

.xmj-single-page .xmj-meta-list {
    display: grid !important;
    gap: 10px !important;
}

.xmj-single-page .xmj-meta-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    background: #fbfffa !important;
    border: 1px solid rgba(76,166,76,0.12) !important;
    border-radius: 17px !important;
    padding: 12px 13px !important;
}

.xmj-single-page .xmj-meta-icon {
    width: 42px !important;
    height: 42px !important;
    flex: 0 0 42px !important;
    border-radius: 14px !important;
    background: #effbea !important;
    color: #4ca64c !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.xmj-single-page .xmj-meta-name {
    color: #68717d !important;
    font-size: 0.74rem !important;
    font-weight: 800 !important;
}

.xmj-single-page .xmj-meta-value,
.xmj-single-page .xmj-meta-value a {
    color: #1d2430 !important;
    font-size: 0.9rem !important;
    font-weight: 950 !important;
}

/* bezpieczeństwo: żadne dziecko meta nie może mieć ciemnego tła */
.xmj-single-page .announcement-meta * {
    text-shadow: none !important;
}

/* telefon */
@media (max-width: 991.98px) {
    .xmj-single-page .announcement-meta,
    .xmj-single-page .announcement-meta.py-2,
    .xmj-single-page .announcement-meta.px-4,
    .xmj-single-page .announcement-meta.xmj-single-meta-card {
        border-radius: 20px !important;
        padding: 16px !important;
    }

    .xmj-single-page .announcement-meta .row,
    .xmj-single-page .announcement-meta .row-gx-2,
    .xmj-single-page .xmj-meta-item {
        border-radius: 15px !important;
        padding: 10px 11px !important;
    }

    .xmj-single-page .announcement-meta .meta-value,
    .xmj-single-page .xmj-meta-value {
        font-size: 0.84rem !important;
    }
}

/* usuwa stare szare pudełko tytułu */
.xmj-single-page .announcement-title-outer {
    margin-bottom: 14px !important;
}

.xmj-single-page .announcement-title-card,
.xmj-single-page .card.announcement-title-card,
.xmj-single-page .card.bg-light.announcement-title-card {
    background: #ffffff !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-radius: 24px !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.055) !important;
    padding: 22px 24px !important;
    position: relative !important;
    overflow: hidden !important;
}

/* delikatne zielone światło po lewej */
.xmj-single-page .announcement-title-card:before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 6px !important;
    background: linear-gradient(180deg, #4ca64c, #f4b400) !important;
    border-radius: 999px !important;
}

/* tytuł */
.xmj-single-page h1.title,
.xmj-single-page .announcement-title-card h1.title {
    font-size: 2rem !important;
    line-height: 1.16 !important;
    font-weight: 950 !important;
    letter-spacing: -0.7px !important;
    color: #1d2430 !important;
    margin: 0 !important;
    padding-left: 10px !important;
    text-align: left !important;
}

/* eleganckie podkreślenie pod tytułem */
.xmj-single-page .announcement-title-card h1.title:after,
.xmj-single-page h1.title:after {
    content: "" !important;
    display: block !important;
    width: 84px !important;
    height: 5px !important;
    background: linear-gradient(90deg, #4ca64c, #f4b400) !important;
    border-radius: 999px !important;
    margin-top: 12px !important;
}

/* pasek: Dodano / Wyświetleń / ID */
.xmj-single-page .announcement-main-col > .d-none.d-md-block {
    margin-top: 12px !important;
    margin-bottom: 18px !important;
}

/* łapie stary info belt i robi z niego nowoczesny pasek */
.xmj-single-page .announcement-main-col > .d-none.d-md-block > * {
    background: #ffffff !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.045) !important;
    padding: 12px 14px !important;
    color: #5d6674 !important;
    font-size: 0.86rem !important;
    font-weight: 700 !important;
}

/* jeżeli info belt ma w środku kolumny */
.xmj-single-page .announcement-main-col > .d-none.d-md-block .row {
    align-items: center !important;
    row-gap: 8px !important;
}

.xmj-single-page .announcement-main-col > .d-none.d-md-block .col,
.xmj-single-page .announcement-main-col > .d-none.d-md-block .col-auto,
.xmj-single-page .announcement-main-col > .d-none.d-md-block [class*="col-"] {
    color: #5d6674 !important;
}

/* wartości: godzina, wyświetlenia, ID */
.xmj-single-page .announcement-main-col > .d-none.d-md-block strong,
.xmj-single-page .announcement-main-col > .d-none.d-md-block b {
    color: #1d2430 !important;
    font-weight: 950 !important;
}

/* małe ikonki/akcent */
.xmj-single-page .announcement-main-col > .d-none.d-md-block i {
    color: #4ca64c !important;
    margin-right: 5px !important;
}

/* telefon */
@media (max-width: 991.98px) {
    .xmj-single-page .announcement-title-card,
    .xmj-single-page .card.announcement-title-card,
    .xmj-single-page .card.bg-light.announcement-title-card {
        border-radius: 20px !important;
        padding: 18px 18px !important;
    }

    .xmj-single-page h1.title,
    .xmj-single-page .announcement-title-card h1.title {
        font-size: 1.38rem !important;
        line-height: 1.18 !important;
        padding-left: 8px !important;
    }

    .xmj-single-page .announcement-title-card h1.title:after,
    .xmj-single-page h1.title:after {
        width: 62px !important;
        height: 4px !important;
        margin-top: 9px !important;
    }
}
/* =========================================================
   XMJ - sekcja kategorii + stopka
   ========================================================= */

/* --- BARDZO JASNE ZIELONE TŁO POD KAFELKAMI --- */
body,
.main,
.content,
.homepage-categories-section,
.categories-section,
.index-categories-section,
.category-list-section {
    background-color: #f7fcf5 !important;
}

/* Jeżeli masz osobny kontener sekcji kategorii */
.homepage-categories-section,
.categories-section,
.index-categories-section,
.category-list-section {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}

/* same kafelki zostają jasne */
.homepage-categories-section .category-box,
.categories-section .category-box,
.index-categories-section .category-box,
.category-list-section .category-box,
.categories-box .item,
.categories-list .item {
    background: #ffffff !important;
    border: 1px solid rgba(76,166,76,0.10) !important;
    box-shadow: 0 8px 22px rgba(76,166,76,0.06) !important;
}

/* --- STOPKA --- */
footer,
.footer,
#footer {
    background: linear-gradient(180deg, #111111 0%, #151515 100%) !important;
    color: #d9e4d6 !important;
    border-top: 1px solid rgba(120,190,120,0.15) !important;
}

/* linki w stopce */
footer a,
.footer a,
#footer a {
    color: #ffffff !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

footer a:hover,
.footer a:hover,
#footer a:hover {
    color: #8fd16f !important;
}

/* górne linki w stopce */
footer .row:first-child,
.footer .row:first-child,
#footer .row:first-child {
    padding-top: 8px !important;
    padding-bottom: 10px !important;
}

/* tekst opisu */
footer p,
.footer p,
#footer p,
footer .small,
.footer .small,
#footer .small {
    color: #b8c3b5 !important;
    line-height: 1.7 !important;
}

/* linie/separatory */
footer hr,
.footer hr,
#footer hr,
footer .border-top,
.footer .border-top,
#footer .border-top {
    border-color: rgba(143, 209, 111, 0.16) !important;
}

/* sekcja płatności */
footer .payments-box,
.footer .payments-box,
#footer .payments-box {
    text-align: center !important;
    padding-top: 10px !important;
}

footer .payments-box img,
.footer .payments-box img,
#footer .payments-box img {
    max-height: 42px !important;
    width: auto !important;
}

/* mobilnie */
@media (max-width: 767.98px) {
    footer,
    .footer,
    #footer {
        text-align: center !important;
    }

    footer a,
    .footer a,
    #footer a {
        display: inline-block !important;
        margin-bottom: 10px !important;
    }

    footer .payments-box,
    .footer .payments-box,
    #footer .payments-box {
        margin-top: 12px !important;
    }
}
/* =========================================================
   XMJ - ETAP 6: jasne zielone tło kategorii + nowoczesna stopka
   ========================================================= */


/* =========================================================
   1. TŁO MIĘDZY KAFELKAMI KATEGORII
   ========================================================= */

body {
    background-color: #f6fbf3 !important;
}

/* sekcja kategorii / tło pod kafelkami */
.categories,
.categories-outer,
.categories-section,
.home-categories,
.homepage-categories,
.index-categories,
.category-list,
.category-list-outer,
.xmj-categories,
.xmj-categories-section,
main .categories,
section.categories {
    background: #f6fbf3 !important;
    background-color: #f6fbf3 !important;
}

/* większy oddech wokół kafelków */
.categories-outer,
.categories-section,
.home-categories,
.homepage-categories,
.index-categories,
.xmj-categories-section {
    padding-top: 28px !important;
    padding-bottom: 34px !important;
}

/* kafelki kategorii zostają białe, ale delikatniejsze */
.categories a,
.categories .card,
.categories .category,
.categories .category-box,
.categories .single-category,
.categories .item,
.categories-outer a,
.categories-section a,
.home-categories a,
.homepage-categories a,
.index-categories a,
.category-list a,
.xmj-categories a {
    background-color: #ffffff !important;
    border-color: rgba(76,166,76,0.12) !important;
    box-shadow: 0 8px 22px rgba(76,166,76,0.06) !important;
}

/* tło za samą siatką, żeby nie było szarego */
.container:has(.category-box),
.container:has(.single-category),
.container:has(.category-list),
.container:has(.categories) {
    background: transparent !important;
}


/* =========================================================
   2. STOPKA - NOWOCZEŚNIEJSZA, CZYTELNIEJSZA
   ========================================================= */

footer,
.footer,
#footer,
.main-footer,
.page-footer {
    background: linear-gradient(180deg, #111711 0%, #0f120f 100%) !important;
    color: #dbe8d6 !important;
    border-top: 1px solid rgba(143,209,111,0.18) !important;
    box-shadow: 0 -10px 30px rgba(0,0,0,0.10) !important;
}

/* kontener w stopce */
footer .container,
.footer .container,
#footer .container,
.main-footer .container,
.page-footer .container {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
}

/* linki w górnym rzędzie stopki */
footer a,
.footer a,
#footer a,
.main-footer a,
.page-footer a {
    color: #ffffff !important;
    text-decoration: none !important;
    font-weight: 850 !important;
    transition: color 0.2s ease, opacity 0.2s ease !important;
}

footer a:hover,
.footer a:hover,
#footer a:hover,
.main-footer a:hover,
.page-footer a:hover {
    color: #8fd16f !important;
    opacity: 1 !important;
}

/* górna nawigacja w stopce */
footer ul,
.footer ul,
#footer ul,
.main-footer ul,
.page-footer ul {
    margin-bottom: 0 !important;
}

footer li,
.footer li,
#footer li,
.main-footer li,
.page-footer li {
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

/* tekst opisu XMJ */
footer p,
.footer p,
#footer p,
.main-footer p,
.page-footer p,
footer .text,
.footer .text,
#footer .text,
footer .small,
.footer .small,
#footer .small {
    color: #b9c7b5 !important;
    line-height: 1.75 !important;
    font-weight: 500 !important;
}

/* linie w stopce */
footer hr,
.footer hr,
#footer hr,
.main-footer hr,
.page-footer hr,
footer .border-top,
.footer .border-top,
#footer .border-top {
    border-color: rgba(143,209,111,0.18) !important;
    opacity: 1 !important;
}

/* napis "Płatności obsługiwane przez" */
footer small,
.footer small,
#footer small,
footer .payments,
.footer .payments,
#footer .payments {
    color: #aebcad !important;
}

/* logo PayU i płatności */
footer img,
.footer img,
#footer img {
    max-height: 42px !important;
    width: auto !important;
}

/* środek dolnej części stopki */
footer .text-center,
.footer .text-center,
#footer .text-center {
    text-align: center !important;
}

/* delikatne odsunięcie PayU */
footer img[src*="payu"],
.footer img[src*="payu"],
#footer img[src*="payu"],
footer img[src*="PayU"],
.footer img[src*="PayU"],
#footer img[src*="PayU"] {
    margin-top: 4px !important;
    filter: drop-shadow(0 4px 10px rgba(143,209,111,0.16)) !important;
}


/* =========================================================
   3. TELEFON
   ========================================================= */

@media (max-width: 767.98px) {
    .categories-outer,
    .categories-section,
    .home-categories,
    .homepage-categories,
    .index-categories,
    .xmj-categories-section {
        padding-top: 20px !important;
        padding-bottom: 24px !important;
    }

    footer,
    .footer,
    #footer,
    .main-footer,
    .page-footer {
        text-align: center !important;
    }

    footer .container,
    .footer .container,
    #footer .container {
        padding-top: 22px !important;
        padding-bottom: 22px !important;
    }

    footer a,
    .footer a,
    #footer a {
        display: inline-block !important;
        margin: 4px 8px !important;
    }

    footer p,
    .footer p,
    #footer p {
        font-size: 0.82rem !important;
        line-height: 1.65 !important;
    }
}

/* =========================================================
   XMJ - MINIATURKI OGŁOSZEŃ KOMPUTER
   Zdjęcia bez ucinania - strona główna / listy ogłoszeń
   ========================================================= */

@media (min-width: 1200px) {

    /* kontener zdjęcia w kafelku */
    .small-announcement.xmj-ad-card .xmj-ad-photo,
    .xmj-ad-card .xmj-ad-photo {
        background: #ffffff !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        overflow: hidden !important;
    }

    /* link ze zdjęciem */
    .small-announcement.xmj-ad-card .xmj-ad-img-link,
    .xmj-ad-card .xmj-ad-img-link {
        width: 100% !important;
        height: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #ffffff !important;
        overflow: hidden !important;
    }

    /* samo zdjęcie - pokazuje całe zdjęcie, nie ucina */
    .small-announcement.xmj-ad-card .xmj-ad-img,
    .xmj-ad-card .xmj-ad-img {
        width: 100% !important;
        height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        background: #ffffff !important;
        display: block !important;
    }

    /* wyłączamy powiększanie zdjęcia po najechaniu, bo potrafi ucinać */
    .small-announcement.xmj-ad-card:hover .xmj-ad-img,
    .xmj-ad-card:hover .xmj-ad-img {
        transform: none !important;
    }
}

/* =========================================================
   XMJ.PL - MIGAJĄCE PODŚWIETLENIE "Rabat za udostępnienie"
   ========================================================= */

.xmj-rabat-menu-highlight {
    position: relative !important;
    background: #f4fff1 !important;
    border: 2px solid #7bdc63 !important;
    border-radius: 16px !important;
    padding: 10px 14px !important;
    color: #111827 !important;
    font-weight: 900 !important;
    box-shadow: 0 0 0 0 rgba(76, 166, 76, 0.45) !important;
    animation: xmjRabatPulse 1.7s infinite !important;
}

.xmj-rabat-menu-highlight:hover {
    background: #eaffea !important;
    color: #168a2d !important;
    border-color: #4caf50 !important;
}

/* mała strzałka pod menu */
.xmj-rabat-menu-highlight::after {
    content: "Najważniejsze";
    position: absolute;
    left: 50%;
    top: 100%;
    transform: translateX(-50%);
    margin-top: 18px;
    color: #4caf50;
    font-size: 13px;
    font-weight: 900;
    white-space: nowrap;
    text-shadow: 0 2px 8px rgba(255,255,255,0.95);
}

/* strzałka graficzna */
.xmj-rabat-menu-highlight::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
    width: 32px;
    height: 32px;
    margin-top: 4px;
    border-left: 4px solid #7bdc63;
    border-bottom: 4px solid #7bdc63;
    transform: translateX(-50%) rotate(135deg);
    border-radius: 4px;
}

/* delikatne pulsowanie */
@keyframes xmjRabatPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(76, 166, 76, 0.45), 0 8px 22px rgba(76,166,76,0.12);
    }
    70% {
        box-shadow: 0 0 0 12px rgba(76, 166, 76, 0), 0 8px 22px rgba(76,166,76,0.12);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(76, 166, 76, 0), 0 8px 22px rgba(76,166,76,0.12);
    }
}

/* telefon - bez napisu i strzałki, żeby menu się nie rozjechało */
@media (max-width: 991.98px) {
    .xmj-rabat-menu-highlight {
        border-radius: 12px !important;
        padding: 12px 14px !important;
    }

    .xmj-rabat-menu-highlight::before,
    .xmj-rabat-menu-highlight::after {
        display: none !important;
    }
}