/* EcoUrban v1.22.23 — cards imobiliários premium apenas no celular.
   Aplica-se à Home e à página de resultados, sem afetar desktop/admin.
   Conteúdo, fotografias, preço e informações continuam vindo do banco. */
/* O contador adicional de imagens é exclusivo da versão mobile. */
.home-v131 .home-cards .premium-home-property-card .property-photo-count { display:none; }
@media (max-width: 720px) {
  /* Home: mantém a seção de imóveis alinhada sem compressão dos cartões. */
  .home-v131 .home-cards {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) !important;
    gap:17px !important;
    width:100%;
    min-width:0;
  }
  .home-v131 .home-cards:has(>.premium-home-property-card:only-child) {
    grid-template-columns:minmax(0,1fr) !important;
  }
  .home-v131 .home-cards > .premium-home-property-card:only-child {
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card,
  .listing-luxury-v1370 .premium-list-card-v140 {
    display:flex !important;
    flex-direction:column !important;
    position:relative !important;
    min-width:0 !important;
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    border-radius:25px !important;
    border:1px solid rgba(238,194,92,.64) !important;
    background:#061522 !important;
    box-shadow:0 18px 43px rgba(0,0,0,.38), inset 0 1px 0 rgba(247,209,113,.12) !important;
    overflow:hidden !important;
    transform:none !important;
    color:#f7f7f5;
    text-decoration:none;
    -webkit-tap-highlight-color:transparent;
  }
  .home-v131 .home-cards .premium-home-property-card::before,
  .listing-luxury-v1370 .premium-list-card-v140::before {
    content:none !important;
    display:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card:active,
  .listing-luxury-v1370 .premium-list-card-v140:active {
    transform:scale(.994) !important;
  }
  /* Fotografia maior, recorte limpo e foto real sempre preservada. */
  .home-v131 .home-cards .premium-home-property-card .property-card-media,
  .home-v131 .home-cards > .premium-home-property-card:only-child .property-card-media,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-media {
    display:block !important;
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    width:100% !important;
    aspect-ratio:1.32 / 1 !important;
    flex:0 0 auto !important;
    border-bottom:0 !important;
    border-radius:0 !important;
    background:#0b1b28 !important;
    overflow:hidden !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-media>img,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-media>img {
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
    object-position:center !important;
    filter:none !important;
    transform:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-media .property-card-photo-shade {
    display:block !important;
    position:absolute !important;
    inset:0 !important;
    background:linear-gradient(180deg,rgba(0,0,0,.10) 0%,transparent 42%,rgba(3,14,24,.18) 75%,rgba(3,14,24,.52) 100%) !important;
    pointer-events:none;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-badges,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-badges {
    position:absolute !important;
    z-index:3 !important;
    top:13px !important;
    left:13px !important;
    right:13px !important;
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:10px !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-badges span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-badges span,
  .home-v131 .home-cards .premium-home-property-card .property-card-badges em,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-badges em {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:30px !important;
    padding:6px 12px !important;
    margin:0 !important;
    font-size:10px !important;
    line-height:1.1 !important;
    letter-spacing:.075em !important;
    font-weight:850 !important;
    font-style:normal !important;
    text-transform:uppercase !important;
    white-space:nowrap !important;
    border-radius:100px !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-badges span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-badges span {
    background:#071725 !important;
    color:#fff7e7 !important;
    border:1px solid rgba(244,212,134,.58) !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-badges em,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-badges em {
    margin-left:auto !important;
    background:linear-gradient(125deg,#f9e5a4,#deb252) !important;
    color:#0b1722 !important;
    border:1px solid rgba(255,246,203,.7) !important;
    box-shadow:0 5px 15px rgba(0,0,0,.17) !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-photo-count,
  .listing-luxury-v1370 .premium-list-card-v140 .property-photo-count {
    position:absolute !important;
    top:auto !important;
    left:auto !important;
    z-index:4 !important;
    bottom:26px !important;
    right:12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:auto !important;
    height:31px !important;
    min-height:31px !important;
    padding:0 10px !important;
    gap:6px !important;
    background:rgba(3,15,25,.91) !important;
    color:#fff !important;
    border:1px solid rgba(247,213,131,.3) !important;
    border-radius:100px !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:750 !important;
    box-shadow:0 6px 20px rgba(0,0,0,.32) !important;
    pointer-events:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-photo-count .ui-icon,
  .listing-luxury-v1370 .premium-list-card-v140 .property-photo-count .ui-icon {
    display:inline-block !important;
    width:14px !important;
    height:14px !important;
    background:#f3cd76 !important;
  }
  /* O conteúdo ganha painel superior arredondado como na referência. */
  .home-v131 .home-cards .premium-home-property-card .property-card-body,
  .home-v131 .home-cards > .premium-home-property-card:only-child .property-card-body,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-body {
    position:relative !important;
    z-index:2 !important;
    display:flex !important;
    flex-direction:column !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    width:100% !important;
    padding:18px 17px 17px !important;
    margin-top:-19px !important;
    border-radius:21px 21px 0 0 !important;
    border-top:1px solid rgba(226,183,90,.28) !important;
    background:linear-gradient(155deg,#0b1c2c 0%,#071622 65%,#081824 100%) !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-meta,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-meta {
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:9px !important;
    margin:0 0 9px !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-meta span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-meta span {
    color:#f2cd73 !important;
    font-size:10px !important;
    font-weight:850 !important;
    line-height:1.35 !important;
    letter-spacing:.16em !important;
    text-transform:uppercase !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-meta span+span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-meta span+span {
    color:#b6bdc5 !important;
    font-weight:650 !important;
    letter-spacing:.11em !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-body h3,
  .home-v131 .home-cards > .premium-home-property-card:only-child .property-card-body h3,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-body h2 {
    min-height:0 !important;
    margin:0 0 9px !important;
    color:#fff9ed !important;
    font-family:Georgia,'Times New Roman',serif !important;
    font-size:clamp(22px,6vw,28px) !important;
    line-height:1.08 !important;
    letter-spacing:-.028em !important;
    font-weight:750 !important;
    overflow-wrap:anywhere;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-location,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-location {
    display:flex !important;
    align-items:flex-start !important;
    gap:8px !important;
    min-height:0 !important;
    margin:0 0 13px !important;
    color:#b8c3cf !important;
    font-size:12px !important;
    line-height:1.5 !important;
    font-weight:450 !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-location .location-icon,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-location .location-icon {
    display:inline-block !important;
    width:16px !important;
    height:16px !important;
    flex:0 0 16px !important;
    margin-top:1px !important;
    background:#eac16a !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-price,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-price {
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    justify-content:flex-start !important;
    gap:10px !important;
    margin:0 0 14px !important;
    padding:0 !important;
    border:0 !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-price strong,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-price strong {
    min-width:0 !important;
    max-width:100%;
    color:#f5d17b !important;
    font-size:clamp(24px,6.4vw,31px) !important;
    line-height:1.14 !important;
    font-weight:850 !important;
    letter-spacing:-.04em !important;
    white-space:normal !important;
    overflow-wrap:anywhere;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-price small,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-price small {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:28px !important;
    padding:5px 10px !important;
    margin:0 !important;
    color:#f3d485 !important;
    border:1px solid rgba(233,186,85,.44) !important;
    border-radius:100px !important;
    background:rgba(233,186,85,.07) !important;
    font-size:10px !important;
    font-weight:850 !important;
    letter-spacing:.11em !important;
    text-transform:uppercase !important;
  }
  /* 3 blocos de especificações; só mostra dados realmente cadastrados. */
  .home-v131 .home-cards .premium-home-property-card .premium-card-specs,
  .listing-luxury-v1370 .premium-list-card-v140 .property-specs-v140 {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:6px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }
  .home-v131 .home-cards .premium-home-property-card .premium-card-specs > span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-specs-v140 > span {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    min-width:0 !important;
    min-height:44px !important;
    padding:6px 5px !important;
    margin:0 !important;
    border:1px solid rgba(158,180,204,.25) !important;
    border-radius:12px !important;
    background:linear-gradient(180deg,rgba(15,36,52,.6),rgba(6,19,30,.74)) !important;
    color:#eef2f5 !important;
    font-size:clamp(10px,2.6vw,12px) !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    text-align:center !important;
    letter-spacing:0 !important;
    overflow-wrap:anywhere;
  }
  .home-v131 .home-cards .premium-home-property-card .premium-card-specs .ui-icon,
  .listing-luxury-v1370 .premium-list-card-v140 .property-specs-v140 .ui-icon {
    display:inline-block !important;
    width:16px !important;
    height:16px !important;
    flex:0 0 16px !important;
    background:#f0c66b !important;
  }
  .home-v131 .home-cards .premium-home-property-card .premium-card-specs > span:first-child:nth-last-child(1),
  .listing-luxury-v1370 .premium-list-card-v140 .property-specs-v140 > span:first-child:nth-last-child(1) {
    grid-column:1/-1;
  }
  /* Descrição extensa é exclusiva da página de detalhes do anúncio. */
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-description {
    display:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-cta,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-cta {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:13px !important;
    position:relative !important;
    width:100% !important;
    min-height:52px !important;
    margin:14px 0 0 !important;
    padding:10px 36px 10px 16px !important;
    border:1px solid rgba(255,239,185,.68) !important;
    border-radius:13px !important;
    background:linear-gradient(110deg,#ffe29a 0%,#eac471 50%,#cda04c 100%) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.55), 0 8px 22px rgba(191,138,45,.17) !important;
    color:#081522 !important;
    font-size:13px !important;
    font-weight:850 !important;
    letter-spacing:0 !important;
    line-height:1.2 !important;
    text-align:center !important;
    text-transform:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-cta>span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-cta>span {
    color:#081522 !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-cta b,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-cta b {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    position:absolute !important;
    top:50% !important;
    right:12px !important;
    transform:translateY(-50%) !important;
    width:23px !important;
    height:23px !important;
    margin:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-cta .ui-icon,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-cta .ui-icon {
    width:18px !important;
    height:18px !important;
    background:#0c1c27 !important;
  }
  .home-v131 .home-section-head>.btn.ghost {
    min-height:42px;
    border:1px solid rgba(226,184,84,.38) !important;
    border-radius:12px !important;
    background:rgba(11,28,41,.94) !important;
    color:#f4d58d !important;
    font-weight:750 !important;
  }
  .home-v131 .home-cards .premium-home-property-card:focus-visible,
  .listing-luxury-v1370 .premium-list-card-v140:focus-visible {
    outline:2px solid #f9d584 !important;
    outline-offset:3px;
  }
}
@media (max-width:360px) {
  .home-v131 .home-cards .premium-home-property-card .property-card-body,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-body {
    padding:15px 12px 14px !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-price strong,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-price strong {
    font-size:24px !important;
  }
  .home-v131 .home-cards .premium-home-property-card .property-card-cta,
  .listing-luxury-v1370 .premium-list-card-v140 .property-card-cta {
    min-height:48px !important;
    font-size:12px !important;
  }
  .home-v131 .home-cards .premium-home-property-card .premium-card-specs > span,
  .listing-luxury-v1370 .premium-list-card-v140 .property-specs-v140 > span {
    font-size:10px !important;
    padding-inline:3px !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .home-v131 .home-cards .premium-home-property-card,
  .listing-luxury-v1370 .premium-list-card-v140 {
    transition:none !important;
  }
}
