/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.0
*/

/* =========================================================
   CARDS DE ANÚNCIO (listagens)
   ========================================================= */

/* imagem */
.hp-listing--view-block .hp-listing__image {
  aspect-ratio: 3 / 4 !important;
  border-radius: 12px 12px 0 0;
  overflow: hidden;
}

.hp-listing--view-block .hp-listing__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: transform .3s ease;
}

.hp-listing--view-block:hover .hp-listing__image img {
  transform: scale(1.04);
}

/* card */
.hp-listing--view-block {
  background: #16161a;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(0,0,0,.35);
  height: 100%;
  display: flex;
  flex-direction: column;
  transition: box-shadow .3s ease;
}

.hp-listing--view-block:hover {
  box-shadow: 0 6px 24px rgba(0,0,0,.5);
}

/* conteúdo */
.hp-listing--view-block .hp-listing__content {
  padding: 0 15px;
  flex: 1;
}

.hp-listing--view-block .hp-listing__title {
  font-size: 20px;
  font-weight: 500;
  margin: 0;
  line-height: 1.2;
}

.hp-listing--view-block .hp-listing__title a {
  text-decoration: none;
}

/* detalhes */
.hp-listing--view-block .hp-listing__details--primary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  font-size: 16px;
}

.hp-listing--view-block .hp-listing__details--primary a {
  text-decoration: none;
}

.hp-listing--view-block .hp-icon {
  margin-right: 10px;
  color: #888;
  font-size: 16px;
}

.hp-listing--view-block .hp-listing__category a {
  background: #2a2a30;
  color: #ddd;
  padding: 4px 14px;
  border-radius: 12px;
  font-size: 13px;
}

.hp-listing--view-block .hp-listing__created-date {
  font-size: 10px;
  color: #555;
  width: 100%;
}

/* rodapé do card */
.hp-listing--view-block .hp-listing__footer {
  padding: 12px 18px 16px;
  border-top: 1px solid #2a2a30;
  margin-top: 10px;
}

.hp-listing--view-block .hp-listing__action i {
  color: #b0b0b0;
}

.hp-listing--view-block .hp-listing__action:hover i {
  color: #fff;
}

/* =========================================================
   BADGES (destaque e verificado)
   ========================================================= */

.hp-listing--featured {
  border: 4px solid #ff0087;
  border-radius: 15px;
}

.hp-listing--featured .hp-listing__featured-badge {
  background: #ff0087 !important;
  border: none;
  display: flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.hp-listing--featured .hp-listing__featured-badge i {
  color: #fff !important;
  line-height: 1;
  margin: 0;
}

.hp-listing__verified-badge,
.hp-listing__verified {
  color: #4ac97e !important;
}

/* =========================================================
   FICHA DE ANÚNCIO — largura e layout
   ========================================================= */

.hp-page,
.hp-listings,
.hp-listing--view-page {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.hp-listing--view-page.hp-row {
  display: block !important;
  margin: 0 !important;
}

.hp-listing--view-page > .hp-page__content {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
}

/* título */
.hp-listing--view-page .hp-listing__title {
  margin-top: 40px;
  margin-bottom: 8px;
  text-align: center;
}

/* localização */
.hp-listing--view-page .hp-listing__details--primary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 20px;
  margin: 0 0 12px;
  font-size: 15px;
}

.hp-listing--view-page .hp-listing__details--primary .hp-listing__location {
  border: 2px solid #2a2a30;
  border-radius: 20px;
  padding: 6px 14px;
}

.hp-listing--view-page .hp-listing__details--primary .hp-listing__category,
.hp-listing--view-page .hp-listing__details--primary .hp-listing__created-date {
  display: none;
}

/* =========================================================
   FICHA — galeria
   ========================================================= */

.hp-listing--view-page .hp-listing__images-slider .slick-list {
  height: auto !important;
}

.hp-listing--view-page .hp-listing__images-slider .slick-slide {
  aspect-ratio: 16 / 9 !important;
  background: #0a0a0c !important;
}

.hp-listing--view-page .hp-listing__images-slider .slick-slide img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  display: block;
}

.hp-listing--view-page .hp-listing__images img {
  background-color: #0a0a0c !important;
}

.hp-listing--view-page .hp-listing__images-carousel .slick-slide {
  aspect-ratio: 1 / 1 !important;
}

.hp-listing--view-page .hp-listing__images-carousel .slick-slide img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  background: none !important;
}

/* =========================================================
   FICHA — favoritos
   ========================================================= */

.hp-listing--view-page .hp-listing__action--favorite {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid #2a2a30;
  border-radius: 20px;
  font-size: 14px;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease;
  margin: 16px 0;
}

.hp-listing--view-page .hp-listing__action--favorite:hover {
  border-color: #ff0087;
  color: #ff0087;
  text-decoration: none;
}

.hp-listing--view-page .hp-listing__action--favorite i {
  font-size: 14px;
}

/* =========================================================
   FICHA — atributos e descrição
   ========================================================= */

.hp-listing--view-page .hp-listing__attributes--ternary {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 24px;
}

.hp-listing--view-page .hp-listing__attribute {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.6;
}

.hp-listing--view-page .hp-listing__attributes--secondary .hp-row {
  row-gap: 6px;
}

.hp-listing--view-page .hp-listing__attributes--secondary [class*="hp-col-"] {
  margin-bottom: 0 !important;
}

.hp-listing--view-page .hp-listing__attributes--secondary,
.hp-listing--view-page .hp-listing__attributes--ternary,
.hp-listing--view-page .hp-listing__description {
  border: 1px solid #2a2a30;
  border-radius: 10px;
  padding: 20px 24px;
  margin: 24px 0;
}

.hp-listing--view-page .hp-listing__description p:last-child {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .hp-listing--view-page .hp-listing__attributes--ternary {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   FICHA — blocos de contactos
   ========================================================= */

.hp-listing--view-page .hp-listing__attributes--primary {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: 16px 0;
  padding: 0;
  border: none;
}

.hp-listing--view-page .hp-listing__attributes--primary .hp-listing__attribute {
  flex: 1 1 160px;
  margin: 0 !important;
}

/* =========================================================
   BOTÕES telefone, whatsapp e site
   ========================================================= */

.ms-btn {
  flex: 1 1 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 20px;
  border-radius: 8px;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .2s ease;
}

.ms-btn:hover {
  opacity: .85;
  text-decoration: none;
}

.ms-btn--tel  { background: #ff0087; color: #fff !important; }
.ms-btn--wa   { background: #25D366; color: #fff !important; }
.ms-btn--site { background: #2a2a30; color: #fff !important; }

.ms-btn--wa::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  background-color: #fff;
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 110.9L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 222-99.6 222-222 0-59.3-23.1-115-65.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/></svg>") no-repeat center;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 110.9L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 222-99.6 222-222 0-59.3-23.1-115-65.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/></svg>") no-repeat center;
  mask-size: contain;
  -webkit-mask-size: contain;
}

/* =========================================================
   FICHA — rodapé
   ========================================================= */

.ms-rodape {
  display: flex;
  flex-wrap: wrap;
  align-items: center !important;
  gap: 16px;
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px solid #2a2a30;
}

.ms-rodape > * {
  flex: 0 0 auto;
}

.ms-rodape .hp-modal {
  display: none !important;
  position: absolute;
}

.ms-rodape .hp-menu--listing-manage,
.ms-rodape .hp-menu--tabbed,
.ms-rodape .hp-menu__item {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.ms-rodape .hp-menu--listing-manage ul {
  display: flex;
  gap: 12px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.ms-rodape .hp-menu__item--listing-view {
  display: none;
}

.ms-rodape .hp-menu__item a,
.ms-rodape .hp-listing__action--report {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  padding: 8px 16px;
  border: 1px solid #2a2a30;
  border-radius: 20px;
  font-size: 14px;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease;
}

.ms-rodape .hp-menu__item a:hover,
.ms-rodape .hp-listing__action--report:hover {
  border-color: #ff0087;
  color: #ff0087;
  text-decoration: none;
}

.ms-rodape .ms-ref,
.ms-rodape .hp-listing__created-date {
  font-size: 13px;
  color: #888;
  margin: 0;
}

.ms-rodape .ms-ref {
  margin-left: auto;
}