/* announcement view */

.add-to-clipboard-button.is-in-clipboard,
.delete-from-clipboard-button:not(.is-in-clipboard) {
  display: none;
}

/*
.announcement-title-outer {
	border-bottom: 1px solid #d3d3d3;
}
*/

.announcement-title-outer .title-with-line {
  margin-bottom: 0;
  border-bottom: none;
}

.announcement-title-outer .add-to-clipboard-button,
.announcement-title-outer .delete-from-clipboard-button {
  margin-left: 0;
}

.announcement-info-belt {
  padding: 12px 0;
  color: #808080;
  font-size: 12px;
  font-weight: 500;
}

.announcement-info-belt>span {
  display: inline-block;
}

@media (max-width: 767px) {

  /* ---- Photo-First: gallery is hero, info belt goes below ---- */
  .conteinerTitleImages {
    display: flex;
    flex-direction: column;
    height: auto; /* Allow content to dictate height, not fixed 80vh */
  }

  /* Gallery = first visual element (order: -1 pushes it above everything) */
  .announcement-gallery {
    order: -1;
  }

  /* Info belt visible below title (natural order after gallery moves up) */
  .announcement-info-belt--mobile {
    display: flex !important; /* Restore visibility */
    margin-top: 5px;
    margin-bottom: 12px;
  }

  .announcement-info-belt>span {
    display: block;
  }

  .announcement-info-belt+.alert {
    margin-top: 20px;
  }

  .announcement-title-outer {
    border-bottom: none;
    position: relative; /* Was absolute, now stacks naturally below gallery */
    bottom: auto;
    left: auto;
    right: auto;
    z-index: 1;
    margin-top: 10px;
  }

  .announcement-title-outer .title-with-line {
    border-bottom: 1px solid #d3d3d3;
    margin-bottom: 10px;
    font-size: 20px;
  }

  /* Hide price-contact-box on mobile (price is in sticky CTA, contact is below) */
  .price-contact-box-outer-main-1 {
    display: none !important;
  }

  /* Breadcrumbs — compact on mobile, only show back link prominent */
  .breadcrumb {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 11px;
    padding: 8px 0 4px;
    margin-bottom: 0;
  }

}

@media (min-width: 768px) {

  .announcement-info-belt>span {
    margin-right: 30px;
  }

}

@media (max-width: 991px) {

  .announcement-side-col {
    margin-top: 20px;
  }

}

@media (min-width: 992px) {

  .announcement-title-outer .add-to-clipboard-button,
  .announcement-title-outer .delete-from-clipboard-button {
    width: 143px;
  }

}

.announcement-desc {
  margin-top: 30px;
}

@media (min-width: 768px) and (max-width: 991px) {

  .announcement-desc {
    margin-bottom: 30px;
  }

}

.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: 19px;
  padding-bottom: 15px;
}

.announcement-gallery {

  background: #fff;
  padding: 12px;
  position: relative;
}

/* Gallery photo counter "1 / N" */
.gallery-counter {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 10;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 26px;
  padding: 0 8px;
  border-radius: 999px;
  border: none;
  background: rgba(0, 0, 0, 0.35);
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.5px;
  pointer-events: none;
  box-shadow: none;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.2));
}

@media (max-width: 767.98px) {
  .gallery-counter {
    top: 10px;
    left: 10px;
  }
}

/* Announcement actions (best-practice: share + favorites near media) */
.announcement-actions {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10;
  display: inline-flex;
  align-items: center;
  gap: 16px;
}

.announcement-actions__btn,
.share-fab__btn {
  -webkit-appearance: none;
  appearance: none;
  width: 36px;
  height: 36px;
  border-radius: 0;
  border: none;
  background: transparent;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  text-decoration: none;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.45));
  transition: transform 120ms ease, opacity 120ms ease;
  padding: 0;
}

.announcement-actions__btn svg,
.share-fab__btn svg {
  width: 22px;
  height: 22px;
}

.announcement-actions__btn:hover,
.share-fab__btn:hover {
  transform: scale(1.12);
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.55));
}

.announcement-actions__btn:active,
.share-fab__btn:active {
  transform: scale(0.95);
}

.announcement-actions__btn:focus,
.share-fab__btn:focus {
  outline: none;
}

.announcement-actions__btn:focus-visible,
.share-fab__btn:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 4px;
  border-radius: 4px;
}

/* Filled heart for "added to favorites" */
.announcement-actions__btn--fav-on {
  color: #e74c6f;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.4));
}

.announcement-actions__btn.add-to-clipboard-button.is-in-clipboard {
  display: none;
}

.announcement-actions__btn.delete-from-clipboard-button:not(.is-in-clipboard) {
  display: none;
}

.share-fab {
  position: relative;
}

.share-fab__menu {
  position: absolute;
  top: 52px;
  right: 0;
  min-width: 220px;
  padding: 10px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(17, 24, 39, 0.12);
  box-shadow: 0 18px 48px rgba(17, 24, 39, 0.18);
}

.share-fab__item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 12px;
  border: none;
  background: transparent;
  color: #111827;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

.share-fab__item:hover {
  background: rgba(175, 64, 130, 0.08);
}

.share-fab__item-badge {
  width: 26px;
  height: 26px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  color: #fff;
}

.share-fab__item-badge--copy { background: #374151; }
.share-fab__item-badge--msng { background: #0084FF; }
.share-fab__item-badge--fb { background: #1877F2; }
.share-fab__item-badge--pin { background: #E60023; }
.share-fab__item-badge--wa { background: #25D366; }
.share-fab__item-badge--mail { background: #6b7280; }

.share-fab__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 4px 4px 8px;
  margin-bottom: 4px;
}

.share-fab__header-title {
  font-size: 15px;
  font-weight: 700;
  color: #111827;
}

.share-fab__close {
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  padding: 4px;
  color: #9ca3af;
  cursor: pointer;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 120ms ease, color 120ms ease;
}

.share-fab__close:hover {
  background: rgba(0, 0, 0, 0.06);
  color: #374151;
}

.share-fab__separator {
  height: 1px;
  background: #e5e7eb;
  margin: 4px 10px;
}

@media (max-width: 767.98px) {
  .announcement-actions {
    top: 10px;
    right: 10px;
  }
  .share-fab__menu {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: calc(12px + var(--sticky-cta-offset, 0px));
    top: auto;
    max-width: none;
    min-width: 0;
    border-radius: 18px;
    z-index: 1061;
  }
}


.announcement-gallery .single-photo {
  margin-left: auto;
  margin-right: auto;
}

/* ---- Desktop carousel arrows — bare chevrons, no circles ---- */
.announcement-gallery .carousel-control,
.announcement-gallery .carousel-control:focus,
.announcement-gallery .carousel-control:hover {
  text-shadow: none;
  color: #fff;
  font-size: 0;
  background: transparent;
  opacity: 0;
  width: 40px;
  height: 40px;
  top: 50%;
  transform: translateY(-50%);
  bottom: auto;
  border-radius: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.45));
  transition: opacity 200ms ease;
}

.announcement-gallery:hover .carousel-control {
  opacity: 0.75;
}
.announcement-gallery .carousel-control:hover {
  opacity: 1;
}

.announcement-gallery .left.carousel-control  { left: 10px; right: auto; }
.announcement-gallery .right.carousel-control { right: 10px; left: auto; }

/* Hide old Bootstrap glyphicons, use CSS chevrons */
.announcement-gallery .carousel-control .glyphicon {
  display: none;
}

.announcement-gallery .carousel-control::after {
  content: '';
  display: block;
  width: 14px;
  height: 14px;
  border-top: 2.5px solid #fff;
  border-right: 2.5px solid #fff;
}

.announcement-gallery .left.carousel-control::after {
  transform: rotate(-135deg);
  margin-left: 3px;
}

.announcement-gallery .right.carousel-control::after {
  transform: rotate(45deg);
  margin-right: 3px;
}

@media (min-width: 768px) {


  .announcement-gallery {
    width: 65%;
  }

  .announcement-gallery .carousel .item {
    height: 430px;
  }

  .announcement-gallery .single-photo {
    max-height: 430px;
    max-width: 100%;
    height: auto;
    width: auto;
  }

}

@media (max-width: 767.98px) {

  .announcement-gallery .single-photo {
    margin-left: 0;
    margin-right: 0;
  }

  .conteinerTitleImages {
    position: relative;
    height: auto; /* was 80vh — conflicts with flex column layout set earlier */
  }

  .announcement-gallery {
    padding: 0;
    /* background: transparent; */
    background: #f7f7f7;
    margin-left: -15px;
    margin-right: -15px;
    /*width: calc(100% + 30px);*/
  }

  /* ---- Carousel arrows — subtle, mobile-first (swipe is primary) ---- */
  .announcement-gallery .carousel-control,
  .announcement-gallery .carousel-control:focus,
  .announcement-gallery .carousel-control:hover {
    color: #fff;
    font-size: 0;
    text-shadow: none;
    width: 32px;
    height: 32px;
    top: 50%;
    transform: translateY(-50%);
    bottom: auto;
    border-radius: 0;
    background: transparent;
    opacity: 0.7;
    display: flex;
    align-items: center;
    justify-content: center;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));
    transition: opacity 200ms ease;
  }

  .announcement-gallery .carousel-control:active {
    opacity: 1;
  }

  .announcement-gallery .left.carousel-control  { left: 6px; right: auto; }
  .announcement-gallery .right.carousel-control { right: 6px; left: auto; }

  /* Hide old glyphicons and use CSS arrows instead */
  .announcement-gallery .carousel-control .glyphicon {
    display: none;
  }

  .announcement-gallery .carousel-control::after {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2.5px solid #fff;
    border-right: 2.5px solid #fff;
  }

  .announcement-gallery .left.carousel-control::after {
    transform: rotate(-135deg);
    margin-left: 3px;
  }

  .announcement-gallery .right.carousel-control::after {
    transform: rotate(45deg);
    margin-right: 3px;
  }

  /* ---- Carousel indicators — hidden on mobile (counter "1/N" is enough) ---- */
  .carousel-indicators {
    display: none;
  }

  /* ---- Gallery frame ---- */

  /* Mobile announcement gallery: keep one stable frame without overlap artifacts */
  #galleryCarousel .carousel-inner {
    min-height: 0 !important;
    height: 73vh;
    overflow: hidden;
  }

  #galleryCarousel .carousel-inner > .item,
  #galleryCarousel .carousel-inner > .active,
  #galleryCarousel .carousel-inner > .next,
  #galleryCarousel .carousel-inner > .prev {
    top: 0 !important;
    left: 0 !important;
    height: 100% !important;
    width: 100% !important;
  }

  #galleryCarousel .item a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 73vh;
    cursor: default;
  }

  #galleryCarousel .item a img.single-photo {
    position: static !important;
    max-height: 73vh !important;
    max-width: 100% !important;
    width: auto !important;
    height: auto !important;
    transform: none !important;
    object-fit: contain;
    cursor: default;
    -webkit-touch-callout: none;
  }

  /* Hide smartPhoto grab/zoom cursors on touch devices */
  .announcement-gallery .js-smartPhoto,
  .announcement-gallery .js-smartPhoto * {
    cursor: default !important;
    -webkit-touch-callout: none;
  }

  .announcement-gallery .item.normalized a img {
    margin-top: auto;
    margin-bottom: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

  /* Hide swipe-icon.png hint — unnecessary on touch devices */
  .announcement-gallery::after {
    display: none !important;
  }

}

/* On mobile: details table collapsed (SEO-safe — content stays in DOM) */
@media (max-width: 767px) {
  .announcement-details-section {
    height: 0;
    overflow: hidden;
    margin: 0;
    padding: 0;
    visibility: hidden;
  }
}

.announcement-fields {
  margin-bottom: 10px;
  font-size: 0; /* Prevents inline-block whitespace gap */
}

.announcement-fields > .row > [class*="col-"] {
  display: inline-block;
  float: none;
  vertical-align: top;
  font-size: 14px; /* Restore font size from parent */
}

.view-single-meta {
  margin-bottom: 0;
  padding: 10px 0;
  border-bottom: 1px solid #f0f0f0;
}

.view-single-meta:last-child {
  border-bottom: none;
}

.view-single-meta strong {
  color: #808080;
  font-weight: 500;
  font-size: 13px;
}

.announcement-contact-form {
  border: 1px solid #d6d6d6;
  margin-top: 35px;
  padding: 30px;
  background: #f7f7f7;
}

.announcement-contact-form .title {
  font-size: 30px;
  font-weight: 300;
  color: #2a2a2a;
  border-bottom: 1px solid #a4a4a4;
  margin-top: 0;
  padding-top: 0;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.announcement-contact-form .phone-outer {
  font-size: 25px;
  font-weight: 300;
  color: #2a2a2a;
  display: block;
  margin-bottom: 25px;
}

.announcement-contact-form .phone-outer .hide-if-phone,
.announcement-contact-form .phone-outer .hidden-phone {
  color: #55900f;
}

.announcement-contact-form .phone-outer a:not(.btn):hover {
  color: #ffb400;
  border-bottom: 2px solid #ffb400;
}

.announcement-contact-form .form-control {
  border-radius: 2px;
  padding: 13px 25px;
  height: auto;
  font-size: 13px;
}

.announcement-contact-form textarea {
  height: 115px !important;
  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 {
  background: #fff;
  border: 0px solid #c9c9c9;
  overflow: hidden;
}

.announcement-price-contact-box .btn {
  padding: 6px 0;
}

.announcement-price-contact-box .price-box {
  padding: 20px 15px;
  background: #FFF;
}

.announcement-price-contact-box .price-col {
  color: #323232;
  font-weight: 500;
  font-size: 13px;
}

.announcement-price-contact-box .price-col .price {
  font-size: 26px;
  display: inline-block;
  margin-top: -2px;
}

.announcement-price-contact-box .price-col.to-negotiate .price {
  margin-top: -7px;
}

.announcement-price-contact-box .price-col .to-negotiate-label {
  position: relative;
  top: -7px;
  display: block;
  margin-bottom: -11px;
}

.announcement-price-contact-box .announcement-map {
  border: 0px solid #c9c9c9;
  border-width: 0px 0;
  position: relative;
  margin-bottom: -40px;
}

.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: 110px;
  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: 35px;
  bottom: auto;
  left: 27px;
  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: 7px 30px 30px 30px;
}

.announcement-price-contact-box .price-box+.author-contact-box {
  margin-top: 105px;
}


.announcement-price-contact-box .author-contact-box .user-image {
  border-radius: 50%;
  max-width: 100%;
  height: auto;
  width: 90px;
  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,
.announcement-price-contact-box .price-box+.author-contact-box .user-image-initial,
.announcement-price-contact-box .price-box+.announcement-map .user-image,
.announcement-price-contact-box .price-box+.announcement-map .user-image-initial {
  margin-top: -75px;
}

.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 10px;
}

.announcement-price-contact-box .author-contact-box .action-buttons .btn {
  margin: 4px 0;
}

.announcement-price-contact-box .author-contact-box .action-buttons .full-width {
  padding-top: 8px;
  padding-bottom: 8px;
}

.announcement-price-contact-box .author-contact-box .phone-col {
  font-size: 25px;
  font-weight: 300;
  margin-top: 10px;
  margin-left: 65px;
}

.announcement-price-contact-box .author-contact-box .phone-col .phone-value {
  color: #55900f;
  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: 26px;
    margin-bottom: 10px;
  }

}

.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-author {
  margin-bottom: 10px;
}

.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-author,
.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-phone,
.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-phone .phone-col {
  font-size: 13px;
  font-weight: 500;
  color: #323232;
}

.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-author a,
.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-phone a:not(.btn),
.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-phone .phone-col span {
  color: inherit;
  font-size: 20px;
  display: inline-block;
  margin-left: 10px;
}

.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-author a:hover,
.stickOnScroll-on .announcement-price-contact-box .author-contact-box .row-phone a:not(.btn):hover {
  color: #ffb400;
}

.stickOnScroll-on .announcement-price-contact-box .hide-if-scrolled {
  display: none;
}

.hasStickOnScroll:not(.stickOnScroll-on) .announcement-price-contact-box .show-if-scrolled {
  display: none;
}

.stickOnScroll-on .announcement-price-contact-box .author-contact-box {
  /*padding: 20px 15px;*/
  padding: 0 15px;
}

.stickOnScroll-on .row-phone {
  padding-top: 20px;
  padding-bottom: 20px;
}

@media (min-width: 992px) {

  .stickOnScroll-on+.side-meta-outer {
    margin-top: 230px;
  }

}

@media (min-width: 1200px) {

  .stickOnScroll-on+.side-meta-outer {
    margin-top: 220px;
  }

}

.announcement-main-col .announcement-price-contact-box .show-if-scrolled {
  display: none;
}

.side-meta-outer {
  margin-top: 30px;
}

.announcement-meta {
  background: #2a2a42;
  color: #FFF;
  padding: 25px;
  font-size: 13px;
}

.announcement-meta>.row {
  padding-top: 8px;
  padding-bottom: 8px;
}

.announcement-meta>.row:first-child {
  padding-top: 0;
}

.announcement-meta>.row:last-child {
  padding-bottom: 0;
}

.announcement-meta .show-phone {
  margin-top: -8px;
  padding-top: 4px;
  padding-bottom: 4px;
}

.announcement-meta a {
  color: #FFF;
}

.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-buttons {
  margin-top: 18px;
}

.announcement-buttons .is-in-clipboard {
  filter: grayscale(.75);
  opacity: .9;
}

@media (max-width: 767px) {

  .only-mobile-buttons .btn {
    width: 100%;
    margin: 0;
  }

  .only-mobile-buttons .btn+.btn {
    margin-top: 10px;
  }

}

@media (min-width: 992px) and (max-width: 1199px) {

  .announcement-buttons .btn {
    padding-left: 2px;
    padding-right: 2px;
    font-size: 13px;
  }

  .announcement-buttons .btn-img {
    padding-right: 22px;
  }

  .announcement-buttons .btn-img::after {
    width: 25px;
  }

}

.announcement-social {
  margin-top: 30px;
  font-size: 13px;
}

/* AddThis legacy share block is removed; keep hidden if any old template still outputs it */
.announcement-social {
  display: none;
}

.announcement-social .text {
  font-weight: 500;
  line-height: 60px;
  display: block;
}

.announcement-social .at-share-btn-elements a:last-child {
  margin-right: 0;
}

@media (min-width: 768px) {

  .announcement-social .row>*:first-child {
    padding-right: 0;
  }

  .announcement-social .row>*:last-child {
    padding-left: 0;
  }

}

@media (min-width: 768px) and (max-width: 1245px) {

  .announcement-social .at-share-btn-elements a .at-icon-wrapper,
  .announcement-social .at-share-btn-elements a svg {
    max-width: 34px;
    max-height: 34px;
  }

  .announcement-social .text {
    font-size: 11px;
    line-height: 48px;
  }

}

@media (max-width: 767px) {

  .announcement-social .text {
    line-height: 30px;
  }

}

/*.announcement-map {
	margin-top: 30px;
}

.announcement-map .map-outer {
	height: 330px;
}*/

.announcement-small-link {
  font-size: 13px;
  font-weight: 500;
  margin-top: 8px;
  display: inline-block;
}

.announcement-security-rules {
  margin-top: 40px;
}

.announcement-security-rules .title {
  font-size: 19px;
  font-weight: 300;
  color: #2a2a2a;
  margin: 0 0 12px;
  line-height: 1.3;
}

.announcement-security-rules .title strong {
  font-weight: 500;
  display: block;
}

.announcement-security-rules .title img {
  margin-right: 12px;
}

.announcement-security-rules ul {
  padding: 20px 0 20px 15px;
  border-top: 1px solid #d3d3d3;
  border-bottom: 1px solid #d3d3d3;
  margin: 0;
}

.announcement-bottom-buttons {
  margin-top: 25px;
  padding-top: 20px;
  border-top: 1px solid #d3d3d3;
}

.list-mine .announcement-icon,
.clipboard-list .announcement-icon {
  max-width: 60vw;
  width: 80px;
  height: auto;
}

/* add form */

#createAnnouncement .map-outer {
  height: 50vh;
  min-height: 200px;
  width: 100%;
}

@media (max-width: 767px) {

  #createAnnouncement .map-outer {
    height: 75vh;
    min-height: 100px;
  }

}

@media (min-width: 992px) {

  img.photoToCrop {
    max-width: 600px;
  }

}

/* 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 #d3d3d3;
  margin-bottom: 35px;
  font-size: 13px;
  color: #414141;
}

.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 {
  color: #414141;
}

.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>li>a,
.search-heading-outer .nav-tabs>li>span {
  border-radius: 3px 3px 0 0;
  padding: 10px 15px;
  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: #d2d2d2;
}

.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;
}

.search-heading-outer .search-heading strong {
  font-weight: 500;
}

.announcements-list .single-announcement {
  padding: 4px;
  border: 2px solid #dcdcdc;
}

.announcements-list .single-announcement.promoted {
  border-color: #af4082;
}

.announcements-list .single-announcement+.single-announcement {
  margin-top: 18px;
}

.announcements-list .single-announcement .col-with-title {
  border-right: 1px solid #dcdcdc;
  margin-top: 5px;
  margin-bottom: 5px;
}

.announcements-list .single-announcement.promoted .col-with-title {
  border-color: #af4082;
}

.announcements-list .single-announcement .announcement-title {
  margin: 10px 0;
  padding: 0;
}

.announcements-list .single-announcement .announcement-title,
.announcements-list .single-announcement .announcement-title a {
  color: #2a2a2a;
  font-size: 20px;
  font-weight: 400;
}

.announcements-list .single-announcement .announcement-info {
  font-weight: 400;
  font-size: 14px;
  color: #525252;
  line-height: 1.8;
}

.announcements-list .single-announcement .announcement-list-meta {
  font-size: 11px;
  font-weight: 500;
  margin-bottom: 20px;
}

.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: #2a2a42;
}

@media (min-width: 768px) {

  .announcements-list .single-announcement .img-link {
    margin-top: -5px;
    margin-bottom: -5px;
    position: relative;
  }

  .announcements-list .single-announcement .announcement-info {
    position: static;
    bottom: 0;
    left: 5px;
  }

  .search-heading-outer .heading {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

}

@media (min-width: 992px) {

  .announcements-list .col-with-title {
    padding-left: 5px;
  }

  .announcements-list .col-with-price {
    padding: 20px 35px 20px 10px;
  }

  .announcements-list .single-announcement .img-link {
    left: 10px;
  }

  .announcements-list .single-announcement .col-after-img {
    padding-left: 25px;
    height: 160px;
  }

  .announcements-list .single-announcement .announcement-info {
    left: 25px;
  }

}

.announcements-list .single-announcement .img-link {
  position: relative;
  display: block;
  overflow: hidden;
}

.announcements-list .single-announcement .img-link .featured {
  color: #FFF;
  background: #af4082;
  padding: 6px;
  width: 100%;
  transform: rotate(-45deg);
  position: absolute;
  z-index: 999;
  display: block;
  top: 18%;
  left: -27%;
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 500;
}

.announcements-list .single-announcement .price {
  font-size: 26px;
  color: #000000;
  font-weight: 500;
}

.announcements-list .single-announcement .price-notice {
  font-size: 12px;
  color: #434343;
  font-weight: 500;
  line-height: 1;
}

.announcements-list .single-announcement .add-to-clipboard-link {
  display: block;
  margin-top: 40px;
  color: #5d5d5d;
  font-size: 12px;
  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: rgb(168, 66, 143);
}

.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard,
.announcements-list .single-announcement .add-to-clipboard-link.is-in-clipboard .heart {
  color: #af4082;
}

.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: #af4082;
}

@media (max-width: 768px) {

  .cats-links-belt {
    font-size: 13px;
  }

  .search-heading-outer {
    border: none;
  }

  .search-heading-outer .nav-company-links {
    border-top: 1px solid #d3d3d3;
    border-bottom: 1px solid #d3d3d3;
    padding: 10px 0;
  }

  .search-heading-outer .nav-tabs>li>a,
  .search-heading-outer .nav-tabs>li>span {
    border-radius: 3px;
  }

  .search-heading-outer .nav-tabs>li {
    float: none;
    display: inline-block;
  }

  .announcements-list .single-announcement {
    padding: 8px;
  }

  .announcements-list .single-announcement .col-with-title {
    border-right: none;
    margin-top: 0;
  }

  .announcements-list .single-announcement .img-link {
    width: 100%;
    max-height: 280px;
    /* Safety clamp: prevent rare mobile width blow-ups caused by layout overflow. */
    max-width: calc(100vw - 30px);
    height: 280px;
  }

  .announcements-list .single-announcement .img-link .announcement-icon {
    width: 100%;
    max-width: 100%;
    height: 100%;
    position: relative;
    display: block;
    object-fit: cover;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .announcements-list .single-announcement .announcement-info {
    border-bottom: 1px solid #dcdcdc;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }

  .announcements-list .single-announcement .promoted .announcement-info {
    border-bottom: 1px solid #af4082;
  }

  .announcements-list .single-announcement .announcement-list-meta {
    margin-bottom: 10px;
  }

  .announcements-list .single-announcement .add-to-clipboard-link {
    margin-top: 0;
  }

  .announcements-list .single-announcement .img-link .featured {
    top: 25px;
    left: -38%;
  }

}

.side-tags a {
  text-decoration: underline;
  color: #525252;
  display: inline-block;
  margin: 0 5px;
}

.side-tags .tag01 {
  font-size: 13px;
}

.side-tags .tag02 {
  font-size: 15px;
}

.side-tags .tag03 {
  font-size: 17px;
}

.side-clipboard ul a {
  color: #525252;
}

.side-categories {
  font-size: 13px;
  color: #525252;
}

.side-categories a {
  color: #525252;
}

.side-categories a:hover {
  color: #55900f;
}

.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 #af4082;
  /* #55900f */
}

.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;
}

/* pagination */

.pagination-outer {
  margin: 60px 0 70px;
}

.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: 8px 12px;
}

.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: 2px;
  font-size: 13px;
  margin-left: 3px;
  margin-right: 3px;
}

.pagination>li>a:focus,
.pagination>li>a:hover,
.pagination>li>span:focus,
.pagination>li>span:hover {
  background: #CACACA;
}

.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: #af4082;
  padding: 12px 16px;
  margin-top: -4px;
}

.pagination>.sep>span,
.pagination>.sep>span:hover {
  background: transparent;
  border: none;
  letter-spacing: 3px;
  padding-left: 8px;
  padding-right: 8px;
}

.xs-pagination-button {
  margin-top: 18px;
  font-size: 15px;
  font-weight: 400;
  padding: 15px;
}

/* newsletter box */

.newsletter-box {
  padding: 35px 20px;
  border: 1px solid #a4a4a4;
}

.newsletter-box:last-child {
  margin-bottom: 30px;
}

.newsletter-box .box-title {
  margin-bottom: 15px;
  font-size: 29px;
  font-weight: 300;
}

.newsletter-box .box-title strong {
  font-weight: 500;
}

.newsletter-box form {
  display: block;
  margin: 15px 0;
}

.newsletter-box form .form-control {
  height: 42px;
  border-color: #dfdfdf;
}

.newsletter-box .small-text {
  font-size: 12px;
}

@media (max-width: 1280px) {

  .newsletter-box .g-recaptcha {
    transform: scale(.9);
    transform-origin: left top;
  }

}

@media (max-width: 1199px) {

  .newsletter-box .g-recaptcha {
    transform: scale(.7);
  }

}

@media (max-width: 991px) {

  .newsletter-box .g-recaptcha {
    transform: scale(.66);
  }

}

@media (max-width: 767px) {

  .newsletter-box {
    margin-top: 20px;
  }

  .newsletter-box form .btn {
    padding-left: 1px;
    padding-right: 1px;
  }

  .newsletter-box .box-title {
    font-size: 22px;
  }

  .newsletter-box .g-recaptcha {
    transform: scale(1);
  }

}

@media (max-width: 345px) {

  .newsletter-box {
    overflow: hidden;
  }

  .newsletter-box .g-recaptcha {
    transform: scale(.8);
  }

}

/* news */

.all-news-list .single-news .news-title {
  margin: 0 0 10px;
  font-size: 20px;
}

.all-news-list .single-news {
  padding-bottom: 20px;
}

.all-news-list .single-news+.single-news {
  padding-top: 20px;
  border-top: 1px solid #d3d3d3
}

.news-view-image {
  width: auto;
  height: auto;
  max-width: 100%;
  margin-bottom: 15px;
  display: block;
}

.full-news-img {
  width: 100%;
  margin-bottom: 5px;
}

.news-section-sidebar .single-news+.single-news {
  margin-top: 30px;
}

@media (max-width: 767px) {

  .news-section-sidebar {
    margin-top: 40px;
  }

  .all-news-list .single-news .news-list-image {
    margin-bottom: 15px;
  }

}

@media (min-width: 768px) {

  .news-view-image {
    float: right;
    width: 40%;
    max-width: 250px;
    margin-left: 15px;
  }

}

.form-group-checkbox+.form-group-checkbox {
  margin-top: -15px;
}

/* ======================================================================
   Announcement contact block (moved from style-new-21.css, 2026-02-15)
   ====================================================================== */

.send-message-area {
  background: #dfedcd;
  padding: 25px 40px 40px;
  margin: 80px 0 90px;
}

.send-message-area .announcement-contact-form {
  background: #d6d6d6;
  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;
  }

}
/* Category SEO text (lists spacing) */
.cat-seo-text ul,
.cat-seo-text ol {
  padding-left: 20px;
}

/* ======================================================================
   Mobile Sticky CTA bar (Etap 1)
   ====================================================================== */

.mobile-sticky-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1040;
  background: #fff;
  border-top: 1px solid #e0e0e0;
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1);
  padding: 10px 12px;
  padding-bottom: calc(10px + env(safe-area-inset-bottom, 0px));
  display: flex;
  align-items: center;
  gap: 10px;
}

.mobile-sticky-cta__price {
  flex-shrink: 0;
  min-width: 0;
}

.mobile-sticky-cta__amount {
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  display: block;
  line-height: 1.2;
  white-space: nowrap;
}

.mobile-sticky-cta__negotiate {
  font-size: 11px;
  font-weight: 500;
  color: #af4082;
  display: block;
  line-height: 1.2;
}

.mobile-sticky-cta__buttons {
  flex: 1;
  display: flex;
  gap: 8px;
  min-width: 0;
}

.mobile-sticky-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 14px;
  min-height: 44px;
  white-space: nowrap;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background-color 120ms ease, transform 80ms ease;
  line-height: 1.2;
}

.mobile-sticky-cta__btn:active {
  transform: scale(0.97);
}

.mobile-sticky-cta__btn--msg {
  flex: 1;
  background: #af4082;
  color: #fff;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mobile-sticky-cta__btn--msg:hover,
.mobile-sticky-cta__btn--msg:focus {
  background: #9a3672;
  color: #fff;
  text-decoration: none;
}

.mobile-sticky-cta__btn--phone {
  flex-shrink: 0;
  background: #f0f0f0;
  color: #1a1a1a;
  padding: 10px 14px;
}

.mobile-sticky-cta__btn--phone:hover,
.mobile-sticky-cta__btn--phone:focus {
  background: #e0e0e0;
  color: #1a1a1a;
  text-decoration: none;
}

.mobile-sticky-cta__btn svg {
  flex-shrink: 0;
}

.mobile-sticky-cta__phone-text {
  font-size: 12px;
  font-weight: 700;
  margin-left: 4px;
}

/* Bottom padding so content isn't hidden behind sticky bar */
@media (max-width: 767px) {
  .page-content {
    padding-bottom: calc(80px + env(safe-area-inset-bottom, 0px));
  }
}

/* ======================================================================
   Quick Stats grid (Etap 3) — mobile only
   ====================================================================== */

.quick-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 4px 0 12px;
  margin-top: 8px;
}

.quick-stats__item {
  display: flex;
  flex-direction: column;
  background: #f5f5f7;
  border-radius: 8px;
  padding: 8px 12px;
  flex: 1 1 calc(50% - 4px);
  min-width: calc(50% - 4px);
  max-width: calc(50% - 4px);
}

.quick-stats__item--full {
  flex: 1 1 100%;
  min-width: 100%;
  max-width: 100%;
}

/* Hidden by default, shown when expanded */
.quick-stats__item--extra {
  display: none;
}

.quick-stats.is-expanded .quick-stats__item--extra {
  display: flex;
}

.quick-stats__toggle {
  display: block;
  width: 100%;
  padding: 10px;
  margin-top: 4px;
  background: none;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  color: #af4082;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  text-align: center;
}

.quick-stats__toggle:hover {
  background: #fdf2f8;
}

.quick-stats__label {
  font-size: 11px;
  color: #808080;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  line-height: 1.3;
}

.quick-stats__value {
  font-size: 14px;
  color: #1a1a1a;
  font-weight: 600;
  line-height: 1.4;
}

/* ======================================================================
   Collapsible description (Etap 3)
   ====================================================================== */

.announcement-desc-text-wrap {
  position: relative;
}

/* Moved outside media query for global clamping */
  .announcement-desc-text-wrap.is-clamped .announcement-desc-text {
    max-height: 6em;
    overflow: hidden;
  }

  .announcement-desc-text-wrap.is-clamped::after {
    content: '';
    position: absolute;
    bottom: 32px;
    left: 0;
    right: 0;
    height: 3em;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
    pointer-events: none;
  }

  .announcement-desc-text-wrap.is-expanded .announcement-desc-text {
    max-height: none !important;
    overflow: visible !important;
  }

  .announcement-desc-text-wrap.is-expanded::after {
    display: none !important;
  }

.desc-toggle-btn {
  display: block;
  width: 100%;
  padding: 10px;
  margin-top: 4px;
  background: none;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  color: #af4082;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  text-align: center;
  position: relative;
  z-index: 2;
}

.desc-toggle-btn:hover {
  background: #fdf2f8;
}

/* ======================================================================
   Security accordion — mobile (Etap 3)
   ====================================================================== */

.announcement-security-rules--mobile {
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 0;
}

.security-summary {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  font-size: 15px;
  font-weight: 400;
  color: #2a2a2a;
  cursor: pointer;
  list-style: none;
  line-height: 1.3;
}

.security-summary::-webkit-details-marker {
  display: none;
}

.security-summary::after {
  content: '\25BC';
  margin-left: auto;
  font-size: 10px;
  color: #808080;
  transition: transform 200ms ease;
}

.announcement-security-rules--mobile[open] .security-summary::after {
  transform: rotate(180deg);
}

.security-summary img {
  width: 28px;
  height: auto;
  flex-shrink: 0;
}

.announcement-security-rules--mobile ul {
  padding: 0 16px 12px 42px;
  margin: 0;
  border-top: 1px solid #e0e0e0;
  border-bottom: none;
}

.announcement-security-rules--mobile .text-right {
  padding: 0 16px 12px;
}

/* ======================================================================
   Seller trust card enhancements (Etap 4)
   ====================================================================== */

.status-online--active {
  color: #16a34a;
  font-weight: 600;
}

.author-since {
  font-size: 12px;
  color: #808080;
  margin-top: 2px;
  margin-bottom: 6px;
}

.trust-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 10px;
  padding: 8px 12px;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 6px;
  color: #166534;
  font-size: 12px;
  font-weight: 600;
}

.trust-badge svg {
  color: #16a34a;
  flex-shrink: 0;
}

/* ======================================================================
   Contact form — mobile compact
   ====================================================================== */

@media (max-width: 767px) {
  .announcement-contact-form {
    padding: 20px 16px;
    margin-top: 24px;
    border-radius: 10px;
    border-color: #e0e0e0;
  }

  .announcement-contact-form .title {
    font-size: 20px;
    margin-bottom: 14px;
    padding-bottom: 12px;
  }

  .announcement-contact-form .phone-outer {
    font-size: 18px;
    margin-bottom: 16px;
  }

  .announcement-contact-form textarea {
    height: 90px !important;
  }

  .announcement-contact-form .attachment-file-col,
  .announcement-contact-form .attachment-desc-col {
    font-size: 11px;
  }

  .contact-login-prompt {
    padding: 20px 16px;
    margin-top: 8px;
  }

  .contact-login-prompt__text {
    font-size: 14px;
    margin-bottom: 12px;
  }
}

/* ======================================================================
   Contact form submit button (Etap 5)
   ====================================================================== */

.contact-form-submit-row {
  margin-top: 16px;
}

.contact-form-submit-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 48px;
  padding: 12px 24px;
  background: #af4082;
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 120ms ease, transform 80ms ease;
}

.contact-form-submit-btn:hover,
.contact-form-submit-btn:focus {
  background: #9a3672;
  color: #fff;
}

.contact-form-submit-btn:active {
  transform: scale(0.98);
}

.contact-form-submit-btn svg {
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .contact-form-submit-row {
    text-align: right;
  }

  .contact-form-submit-btn {
    width: auto;
    min-width: 200px;
  }
}

/* ======================================================================
   Contact login prompt (non-logged users) — UX fix #1
   ====================================================================== */

.contact-login-prompt {
  text-align: center;
  padding: 28px 20px;
  margin-top: 12px;
  background: #fdf2f8;
  border: 1px dashed #e8b4d6;
  border-radius: 12px;
  max-width: 420px;
  margin-left: auto;
  margin-right: auto;
}

.contact-login-prompt__icon {
  margin-bottom: 12px;
  color: #af4082;
}

.contact-login-prompt__text {
  font-size: 15px;
  color: #333;
  line-height: 1.5;
  margin-bottom: 16px;
}

.contact-login-prompt__register {
  font-size: 13px;
  color: #808080;
  margin-top: 12px;
  margin-bottom: 0;
}

.contact-login-prompt__register a {
  color: #af4082;
  font-weight: 600;
  text-decoration: underline;
}

.contact-login-prompt__register a:hover {
  color: #9a3672;
}

/* ======================================================================
   Mobile info belt — UX fix #4
   ====================================================================== */

.announcement-info-belt--mobile {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4px 12px;
  padding: 2px 0 6px;
  font-size: 11px;
  font-weight: 300;
  color: #999;
  letter-spacing: 0.01em;
}

.announcement-info-belt--mobile span {
  white-space: nowrap;
}

.announcement-info-belt--mobile .glyphicon {
  font-size: 10px;
  margin-right: 2px;
  opacity: 0.6;
}

/* ======================================================================
   Breadcrumb spacing fix — mobile (announcement page)
   ====================================================================== */

/* Breadcrumb spacing moved to the main mobile block above */

/* ======================================================================
   Batch 6: Desktop Design Refinements (Header & Sidebar)
   ====================================================================== */

/* 1. Header Consistency (Wedding Design) */
/* Force white background to match main page if it differs */
.navbar-default {
  background: #ffffff !important;
  border-bottom: 1px solid #f0e6ec !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

/* 2. Sidebar Premium Restyle */
.announcement-price-contact-box {
  background: #ffffff;
  border: 1px solid #f2e8ee;
  border-radius: 14px;
  padding: 24px;
  box-shadow: 0 10px 30px rgba(45, 30, 38, 0.06);
  margin-bottom: 20px;
  position: relative; /* Ensure z-index works */
}

/* Sticky state refinement */
.announcement-price-contact-box.sticky {
  /* Ensure it stays consistent when sticky */
  z-index: 900;
  box-shadow: 0 10px 40px rgba(45, 30, 38, 0.12); /* Slightly deeper shadow when sticky */
}

/* Adjust inner spacing if needed */
.announcement-price-contact-box .price-box {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid #f7f0f4;
}

.announcement-price-contact-box .author-contact-box {
  margin-top: 10px;
}

.announcement-price-contact-box .user-image {
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(0,0,0,0.08);
  border: 4px solid #fff; /* Thicker border for premium look */
  width: 90px;
  height: 90px;
  margin-bottom: 10px;
}

.announcement-price-contact-box .author-name {
  font-weight: 700;
  color: #2a2a2a;
  font-size: 16px;
  margin-bottom: 4px;
}

/* Fix spacing for the initial avatar that we changed earlier */
.announcement-price-contact-box .price-box+.author-contact-box .user-image,
.announcement-price-contact-box .price-box+.author-contact-box .user-image-initial,
.announcement-price-contact-box .price-box+.announcement-map .user-image,
.announcement-price-contact-box .price-box+.announcement-map .user-image-initial {
  margin-top: -75px; 
}

/* ======================================================================
   MOBILE STICKY CTA REDESIGN (Asymmetric Primary Action)
   ====================================================================== */
@media (max-width: 767px) {
  .mobile-sticky-cta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: #fff;
    box-shadow: 0 -4px 12px rgba(0,0,0,0.08);
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1040;
  }
  
  .mobile-sticky-cta .price-col {
    flex: 0 0 35%;
    text-align: left;
    margin: 0;
    padding: 0;
  }
  
  .mobile-sticky-cta .price-col .price {
    font-size: 20px;
    margin: 0;
  }
  
  /* Make the Action Buttons wrapper Flex */
  .mobile-sticky-cta .action-col {
    flex: 0 0 65%;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin: 0;
    padding: 0;
  }
  
  /* Primary Button - Napisz Wiadomosc */
  .mobile-sticky-cta .action-col .btn-navy {
    flex: 1; /* Takes most of the space */
    font-size: 15px;
    padding: 10px 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  /* Secondary Button - Zadzwon (Icon only) */
  .mobile-sticky-cta .action-col .btn-outline {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%; /* Circle FAB */
    font-size: 0; /* Hide text */
  }
  
  /* Ensure SVG icon inside is visible */
  .mobile-sticky-cta .action-col .btn-outline svg {
    margin: 0;
    width: 20px;
    height: 20px;
  }
}


/* ======================================================================
   Desktop Wedding Premium Redesign v3 — Clean + Rose Accent
   Font: Cormorant Garamond (display), Roboto (body)
   Palette: clean white, soft rose accent, editorial typography
   ====================================================================== */

/* --- 0. Gallery — taller, every photo fits elegantly --- */

@media (min-width: 768px) {
  /* Taller carousel: 530px instead of 430px — wedding dresses are tall */
  .announcement-gallery .carousel .item {
    height: 530px;
    text-align: center;
  }

  .announcement-gallery .single-photo {
    max-height: 530px;
    max-width: 100%;
    height: auto;
    width: auto;
  }

  /* Subtle background so letterboxing isn't harsh white */
  .announcement-gallery {
    background: #f7f7f7;
    border-radius: 8px;
  }
}

/* --- 0b. Align sidebar with gallery — push sidebar down --- */

@media (min-width: 768px) {
  /* Clean up the .well box (transparent, no border) */
  .announcement-title-well {
    background: transparent;
    border: none;
    box-shadow: none;
  }

  /* Push sidebar column down so price box aligns with gallery top */
  .announcement-side-col {
    padding-top: 20px;
  }
}

/* --- 0c. More whitespace between sections --- */

@media (min-width: 768px) {
  .announcement-desc {
    margin-top: 40px;
  }

  .announcement-contact-form {
    margin-top: 45px;
  }

  /* More space before "Zobacz też" */
  .others-section {
    margin-top: 20px;
  }
}

/* --- 0d. Hide "W serwisie od" — misleading (suggests listing age, not user age) --- */

.author-since {
  display: none !important;
}

/* --- 0e. Fix detail fields alignment — Bootstrap .row -15px margin pulls fields left --- */

.announcement-fields .row {
  margin-left: 0;
  margin-right: 0;
}

.announcement-fields .row > [class*="col-"] {
  padding-left: 0;
}

/* --- 1. Sidebar — clean premium --- */

/* Price — Cormorant Garamond, ROSE color — the hero accent */
.announcement-price-contact-box .price-col .price {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 700;
  font-size: 32px;
  letter-spacing: -0.01em;
  color: #af4082;
}

/* Author name */
.announcement-price-contact-box .author-contact-box .author-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  font-size: 18px;
}

/* Primary CTA: "Napisz wiadomość" — premium uppercase */
.announcement-price-contact-box .action-buttons .btn-navy,
.announcement-price-contact-box .action-buttons .btn-navy:focus {
  background: #af4082;
  border-color: #af4082;
  color: #fff;
  border-radius: 6px;
  min-height: 48px;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 180ms ease, transform 80ms ease;
}

.announcement-price-contact-box .action-buttons .btn-navy:hover {
  background: #9a3672;
  border-color: #9a3672;
  color: #fff;
}

.announcement-price-contact-box .action-buttons .btn-navy:active {
  transform: scale(0.98);
}

/* Secondary: "Pokaż ogłoszenia użytkownika" */
.announcement-price-contact-box .action-buttons .btn-navy-outline,
.announcement-price-contact-box .action-buttons .btn-navy-outline:focus {
  background: transparent;
  border: 1.5px solid #ddd;
  color: #666;
  border-radius: 6px;
  min-height: 44px;
  font-weight: 600;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: center;
}

.announcement-price-contact-box .action-buttons .btn-navy-outline:hover {
  border-color: #af4082;
  color: #af4082;
  background: #fdf2f8;
}

/* "Wyślij propozycję ceny" — moved to section 9b */

/* --- 2. Meta box — light blush --- */

.announcement-meta {
  background: #fafafa;
  color: #444;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
  padding: 20px 24px;
}

.announcement-meta a {
  color: #af4082;
}

.announcement-meta a:not(.btn):hover {
  color: #9a3672;
}

.announcement-meta .meta-name {
  color: #999;
}

.announcement-meta .meta-value .price {
  color: #af4082;
}

/* --- 3. Headings — Cormorant Garamond --- */

.announcement-title-outer h1.title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 700;
  color: #2a2a2a;
  letter-spacing: -0.01em;
}

/* Section headings — wedding premium accent separator */
.announcement-desc .title-with-line {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  font-size: 24px;
  color: #2a2a2a;
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 24px;
  position: relative;
}

.announcement-desc .title-with-line::after {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background: #af4082;
  margin-top: 10px;
  border-radius: 1px;
}

/* "Opis sukni ślubnej" heading — needs clear separation from details section above */
.announcement-desc .announcement-details-section + .title-with-line {
  margin-top: 40px;
  padding-top: 10px;
}

.announcement-contact-form .title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  font-size: 26px;
  color: #2a2a2a;
  position: relative;
  padding-bottom: 0;
  border-bottom: none;
}

.announcement-contact-form .title::after {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background: #af4082;
  margin-top: 10px;
  margin-bottom: 20px;
  border-radius: 1px;
}

/* --- 4. Contact form --- */

.announcement-contact-form {
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 10px;
}

.announcement-contact-form .form-control {
  border-radius: 6px;
  border-color: #ddd;
}

.announcement-contact-form .form-control:focus {
  border-color: #af4082;
  box-shadow: 0 0 0 3px rgba(175, 64, 130, 0.08);
}

/* --- 5. Details table --- */

.view-single-meta {
  border-bottom-color: #eee;
}

.view-single-meta strong {
  color: #999;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 10px;
  font-weight: 600;
}

.view-single-meta span:not(:first-child) {
  color: #2a2a2a;
  font-weight: 500;
}

/* --- 6. Alignment --- */

@media (min-width: 768px) {
  .announcement-desc {
    padding-left: 19px;
    padding-right: 19px;
  }
}

.announcement-meta {
  margin-top: 20px;
}

/* --- 7. "Zobacz też" — subtle blush section --- */

.others-section {
  background: #f9f9f9;
  padding-top: 50px;
  padding-bottom: 50px;
}

.others-section .subtitle-with-line {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 700;
  font-size: 24px;
  color: #2a2a2a;
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 28px;
}

.others-section .subtitle-with-line::after {
  content: '';
  display: block;
  width: 50px;
  height: 2px;
  background: #af4082;
  margin-top: 10px;
  border-radius: 1px;
}

/* Card container */
.others-section .home-ad-card {
  padding-bottom: 20px;
}

/* Card inner */
.others-section .home-ad-card .announcement-card-inner {
  border: 1px solid #f0e6ec;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
}

.others-section .home-ad-card .announcement-card-inner:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

/* Image — aspect ratio */
.others-section .home-ad-card .announcement-thumb-link {
  display: block;
  position: relative;
  background: #f7f7f7;
  aspect-ratio: 3 / 4;
  overflow: hidden;
}

.others-section .home-ad-card .announcement-thumb {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  margin: 0;
  object-fit: cover;
  transition: transform 0.35s ease;
}

.others-section .home-ad-card .announcement-card-inner:hover .announcement-thumb {
  transform: scale(1.03);
}

/* Card content */
.others-section .home-ad-card .announcement-card-content {
  padding: 12px 14px 16px;
}

/* Card price — Cormorant Garamond */
.others-section .home-ad-card .announcement-price {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 600;
  color: #af4082;
  font-size: 19px;
}

/* Card city — small uppercase label */
.others-section .home-ad-card .announcement-city {
  color: #999;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-bottom: 4px;
}

.others-section .home-ad-card .announcement-title {
  font-weight: 600;
  color: #2a2a2a;
  font-size: 14px;
  line-height: 1.4;
  margin: 0 0 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.others-section .home-ad-card .announcement-title a {
  color: inherit;
  text-decoration: none;
}

.others-section .home-ad-card .announcement-title a:hover {
  color: #af4082;
}

/* Badge */
.others-section .home-ad-card .home-card-badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  z-index: 2;
  background: rgba(255, 255, 255, 0.9);
  color: #333;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  padding: 4px 10px;
  font-size: 10px;
  font-weight: 600;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

/* --- 8. Premium button styling --- */

.contact-form-submit-btn {
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-size: 13px;
  border-radius: 6px;
}

/* ======================================================================
   9. UX/UI improvements — based on conversion analysis
   ====================================================================== */

/* --- 9a. "Do negocjacji" → green badge/pill instead of plain text --- */

.announcement-price-contact-box .price-col .to-negotiate-label {
  display: inline-block !important;
  position: static;
  top: auto;
  margin: 8px auto 0;
  padding: 5px 16px;
  background: #e8f5e9;
  color: #2e7d32;
  border: 1px solid rgba(46, 125, 50, 0.2);
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.02em;
  margin-bottom: 0;
}

/* --- 9b. "WYŚLIJ PROPOZYCJĘ CENY" → visible outline button (rose) --- */

.announcement-price-contact-box .author-contact-box .action-secondary {
  margin-top: 10px;
}

.announcement-price-contact-box .author-contact-box .btn-suggest-price,
.announcement-price-contact-box .author-contact-box .btn-suggest-price:focus,
.announcement-price-contact-box .author-contact-box a.btn-suggest-price {
  border: 1.5px solid rgba(175, 64, 130, 0.45) !important;
  color: #af4082 !important;
  background: #fff !important;
  border-radius: 10px !important;
  min-height: 48px;
  padding: 12px 16px;
  font-weight: 600;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  line-height: 1.2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
  transition: background-color 180ms ease, border-color 180ms ease, transform 80ms ease;
}

.announcement-price-contact-box .author-contact-box .btn-suggest-price:hover,
.announcement-price-contact-box .author-contact-box a.btn-suggest-price:hover {
  background: #fdf2f8 !important;
  border-color: rgba(175, 64, 130, 0.75) !important;
  color: #af4082 !important;
}

.announcement-price-contact-box .author-contact-box .btn-suggest-price:active {
  transform: scale(0.98);
}

/* --- 9b. Phone reveal/call — modern compact actions --- */

.announcement-price-contact-box .author-contact-box .author-phone {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.announcement-price-contact-box .author-contact-box .author-phone__row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.announcement-price-contact-box .author-contact-box .author-phone__label {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #909090;
}

.announcement-price-contact-box .author-contact-box .author-phone__masked {
  font-size: 14px;
  font-weight: 600;
  color: #2a2a2a;
}

.announcement-price-contact-box .author-contact-box .btn-phone-reveal,
.announcement-price-contact-box .author-contact-box .btn-phone-reveal:focus {
  background: #fff;
  border: 1px solid rgba(175, 64, 130, 0.35);
  color: #af4082;
  border-radius: 999px;
  padding: 8px 12px;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.1;
}

.announcement-price-contact-box .author-contact-box .btn-phone-reveal:hover {
  background: #fdf2f8;
  border-color: rgba(175, 64, 130, 0.6);
  color: #af4082;
}

.announcement-price-contact-box .author-contact-box .btn-phone-call,
.announcement-price-contact-box .author-contact-box .btn-phone-call:focus {
  background: #af4082;
  border: 1px solid #af4082;
  color: #fff;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.1;
  text-decoration: none;
}

.announcement-price-contact-box .author-contact-box .btn-phone-call:hover {
  background: #9a3672;
  border-color: #9a3672;
  color: #fff;
}

.announcement-price-contact-box .author-contact-box .btn-phone-copy,
.announcement-price-contact-box .author-contact-box .btn-phone-copy:focus {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  color: #444;
  border-radius: 999px;
  padding: 10px 14px;
  font-weight: 600;
  font-size: 12px;
  line-height: 1.1;
}

.announcement-price-contact-box .author-contact-box .btn-phone-copy:hover {
  border-color: rgba(175, 64, 130, 0.45);
  color: #af4082;
  background: #fff;
}

/* --- 9c. Hide "ID ogłoszenia" in info-belt (no value for buyers) --- */
/* ID span is the only one without a .glyphicon icon inside */

.announcement-info-belt > span:not(:has(.glyphicon)) {
  display: none;
}

/* --- 9d. Hide "Wyświetleń" on desktop (low counts discourage) --- */
/* Views is always the last span, identified by eye icon */

.announcement-info-belt > span:has(.glyphicon-eye-open) {
  display: none;
}

/* --- 9e. Better label contrast in dress details (WCAG AA fix) --- */

.view-single-meta strong {
  color: #616161;
}

.quick-stats__label {
  color: #616161;
}

/* --- 9f. "Drukuj ofertę" → smaller, more discreet --- */

.print-link {
  font-size: 11px;
  color: #aaa !important;
  opacity: 0.7;
  transition: opacity 0.2s ease;
}

.print-link:hover {
  opacity: 1;
}

.print-link img {
  width: 14px;
  height: 14px;
  opacity: 0.5;
}

/* ======================================================================
   10. UX audit — structural fixes
   ====================================================================== */

/* --- 10a. Sidebar visual separators (price | profile | buttons | phone) --- */

@media (min-width: 768px) {
  /* Divider after price block */
  .announcement-price-contact-box .price-box {
    border-bottom: 1px solid #f0e6ec;
    margin-bottom: 0;
    padding-bottom: 16px;
  }

  /* Divider + spacing between profile and action buttons */
  .announcement-price-contact-box .action-buttons {
    padding-top: 16px;
    border-top: 1px solid #f0e6ec;
    margin-top: 12px;
  }

  /* Divider before phone row */
  .announcement-price-contact-box .row-phone {
    border-top: 1px solid #f0e6ec;
    padding-top: 14px;
    margin-top: 14px;
  }
}

/* --- 10b. More space between "Szczegółowe informacje" and "Opis sukni" --- */

@media (min-width: 768px) {
  .announcement-desc .announcement-details-section + .title-with-line {
    margin-top: 48px;
    padding-top: 16px;
    border-top: 1px solid #f0e6ec;
  }
}

/* --- 10c. Orphan "TREN" row — full width, same visual weight as grid rows --- */

/* Orphan last item — remove bottom border so it doesn't dangle */

@media (min-width: 768px) {
  /* If TREN is the only item in its row, extend visually */
  .announcement-fields .view-single-meta:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
}

/* --- 10d. Contact form — less "nested box" feeling --- */

@media (min-width: 768px) {
  .announcement-contact-form {
    background: #fff !important;
    border: 1px solid #eee !important;
    border-radius: 12px;
    padding: 30px 32px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
  }

  /* Inner login prompt box — softer, less "widget" feel */
  .announcement-contact-form .contact-login-prompt {
    background: #faf8f9;
    border: 1px solid #f0e6ec;
    border-radius: 10px;
    padding: 24px;
  }

  /* Phone section inside contact form — cleaner */
  .announcement-contact-form .phone-outer {
    font-weight: 400;
    font-size: 22px;
  }

  /* Input fields — softer corners */
  .announcement-contact-form .form-control {
    border-radius: 8px !important;
    border-color: #e0e0e0;
  }

  .announcement-contact-form .form-control:focus {
    border-color: #af4082;
    box-shadow: 0 0 0 3px rgba(175, 64, 130, 0.08);
  }

  /* Contact form title — remove old gray border */
  .announcement-contact-form .title {
    border-bottom: none !important;
  }
}

/* ======================================================================
   11. Initial avatar — when user has no photo
   ====================================================================== */

.announcement-price-contact-box .user-image-initial {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: linear-gradient(135deg, #c94b8a, #af4082);
  color: #fff;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 36px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  box-shadow: 0 4px 10px rgba(175, 64, 130, 0.2);
  border: 4px solid #fff;
}

/* ======================================================================
   12. Final UX improvements — best practice 2026
   ====================================================================== */

/* --- 12a. "Zaproponuj cenę" → mały pill-button zamiast dużego CTA --- */

.announcement-price-contact-box .author-contact-box .btn-suggest-price,
.announcement-price-contact-box .author-contact-box a.btn-suggest-price,
.announcement-price-contact-box .author-contact-box .btn-suggest-price:focus {
  font-size: 12px !important;
  padding: 5px 16px !important;
  width: auto !important;
  display: inline-block !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  margin-top: 4px !important;
  margin-bottom: 8px !important;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: rgba(175, 64, 130, 0.4) !important;
  color: #af4082 !important;
  background: transparent !important;
  border-radius: 20px !important;
  font-weight: 500 !important;
  min-height: auto !important;
  box-shadow: none !important;
  line-height: 1.4 !important;
}

.announcement-price-contact-box .author-contact-box .btn-suggest-price:hover,
.announcement-price-contact-box .author-contact-box a.btn-suggest-price:hover {
  background: rgba(175, 64, 130, 0.05) !important;
  border-color: rgba(175, 64, 130, 0.7) !important;
  color: #9a3672 !important;
}

.announcement-price-contact-box .author-contact-box .action-secondary {
  text-align: center;
  margin-top: 6px !important;
}

/* --- 12b. Ukryj status "offline" — tylko pozytywne sygnały --- */

.announcement-price-contact-box .author-status .status-offline {
  display: none !important;
}

/* --- 12c. Typografia szczegółów — większa, czytelniejsza --- */

@media (min-width: 768px) {
  .announcement-details-section .view-single-meta {
    padding: 10px 6px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    border-bottom-color: #f0e6ec !important;
  }

  .announcement-details-section .view-single-meta > span:last-child {
    font-weight: 500 !important;
    color: #2a2a2a !important;
    font-size: 14px !important;
  }
}

/* --- 12d. Wyróżnienie kluczowych parametrów usunięte na życzenie -- ujednolicenie czcionki --- */

/* --- 12e. Chevron na "Pokaż cały opis" --- */

.desc-toggle-btn::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg);
  margin-left: 8px;
  vertical-align: 1px;
  transition: transform 0.25s ease;
}

.announcement-desc-text-wrap.is-expanded .desc-toggle-btn::after {
  transform: rotate(-135deg);
  vertical-align: -2px;
}

/* --- 12f. Ukrycie listy typów plików w formularzu kontaktu --- */

.announcement-contact-form .attachment-desc-col {
  display: none !important;
}
