/* Cards v2 (estilo Airbnb) — portais de lançamentos
   Camada única para todo .prop-card (home, /lancamentos/, "Você também pode gostar").
   Carregada no fim do <body> para vencer o CSS inline de cada página.
   Desktop (>=769px): grade larga, 6 por linha, cards de altura uniforme.
   Mobile: mantém o card em linha já aprovado, só com os ajustes de conteúdo. */

:root{
  --cv2-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  --cv2-ink:#222222;
  --cv2-muted:#6a6a6a;
  --cv2-line:#dddddd;
  --cv2-radius:14px;
  --cv2-verified:#0095F6;   /* azul do selo verificado do Instagram */
  --cv2-heart:#FF385C;
}

/* ---------- conteúdo removido (redundante) ---------- */
.prop-card .prop-details,
.prop-card .prop-registro,
.prop-card .destaque-faixa,
.prop-card .prop-badge-ribbon,
.prop-card .prop-badge-entrega.cv2-merged{display:none !important}

/* ---------- tipografia única ---------- */
.prop-card,
.prop-card .prop-body,
.prop-card .prop-body *{font-family:var(--cv2-font) !important;letter-spacing:normal}

/* ---------- selo verificado (reaproveita o .rg-check de registro-check.js) ---------- */
.prop-card .rg-check{display:inline-block !important;margin-left:4px;vertical-align:-2px;position:relative}
.prop-card .rg-check svg{width:14px !important;height:14px !important}
.prop-card .rg-check svg path:first-child{fill:var(--cv2-verified) !important}
.prop-card .rg-pop{background:#fff !important;border:1px solid var(--cv2-line) !important;color:var(--cv2-ink) !important;
  box-shadow:0 6px 20px rgba(0,0,0,.14);border-radius:10px !important;font-size:.72rem !important}
@media (min-width:769px){
  .prop-card .rg-pop{display:none !important;position:absolute !important;left:12px;right:12px;margin:0 !important;z-index:20}
  .prop-card .rg-check{z-index:4 !important}
  .prop-card .rg-pop.open{display:block !important}
}

/* ---------- coração (favoritos) ---------- */
.prop-card .fav-btn{background:transparent !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;
  width:32px !important;height:32px !important;top:10px !important;right:10px !important;box-shadow:none !important;border:0 !important;padding:0}
.prop-card .fav-btn:hover{transform:scale(1.08)}
.prop-card .fav-btn svg{width:24px !important;height:24px !important;fill:rgba(0,0,0,.5) !important;stroke:#fff !important;stroke-width:2 !important;color:#fff !important;overflow:visible}
.prop-card .fav-btn.saved svg{fill:var(--cv2-heart) !important;stroke:#fff !important}
.prop-card .fav-btn.cv2-pop svg{animation:cv2Heart .35s cubic-bezier(.3,1.6,.5,1)}
@keyframes cv2Heart{0%{transform:scale(.7)}60%{transform:scale(1.18)}100%{transform:scale(1)}}

/* ---------- etiqueta de fase (pílula branca) ---------- */
.prop-card .prop-badge{background:rgba(255,255,255,.95) !important;color:var(--cv2-ink) !important;border:0 !important;
  border-radius:999px !important;padding:5px 10px !important;font-size:.72rem !important;font-weight:600 !important;
  letter-spacing:0 !important;text-transform:none !important;box-shadow:0 2px 8px rgba(0,0,0,.18) !important;
  font-family:var(--cv2-font) !important;line-height:1.2 !important;white-space:nowrap;max-width:calc(100% - 24px);overflow:hidden;text-overflow:ellipsis}
.prop-card .prop-badge::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:1px;background:var(--cv2-dot,#A88B4A)}
.prop-card .prop-badge-red{--cv2-dot:#E0294A}
.prop-card .prop-badge-amber{--cv2-dot:#E8A317}
.prop-card .prop-badge-green{--cv2-dot:#1B9E4B}
.prop-card .prop-badge-blue{--cv2-dot:#2B6CD6}
.prop-card .photos-btn{font-size:0 !important;gap:4px !important;padding:5px 9px !important;}
.prop-card .photos-btn .photo-count{font-size:.7rem !important;font-weight:600}
.prop-card .photos-btn{background:rgba(34,34,34,.72) !important;border-radius:999px !important;font-family:var(--cv2-font) !important;
  letter-spacing:0 !important;text-transform:none !important;font-weight:600 !important}

/* ---------- faixa diagonal de destaque (moderna) ---------- */
.prop-thumb .prop-ribbon{top:44px !important;left:44px !important;width:240px !important;transform:translate(-50%,-50%) rotate(-45deg) !important;
  padding:7px 0 !important;font-family:var(--cv2-font) !important;font-size:.6rem !important;font-weight:600 !important;
  letter-spacing:.05em !important;text-transform:uppercase;overflow:hidden;z-index:5 !important;
  background:linear-gradient(100deg,#B0122B 0%,#E0294A 55%,#FF5A76 100%) !important;
  box-shadow:0 6px 16px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.35),inset 0 -1px 0 rgba(0,0,0,.2) !important;
  text-shadow:0 1px 1px rgba(0,0,0,.25)}
.prop-thumb .prop-ribbon.prop-ribbon-verde{background:linear-gradient(100deg,#0E7A37 0%,#1B9E4B 55%,#3CCB72 100%) !important}
.prop-thumb .prop-ribbon.prop-ribbon-azul{background:linear-gradient(100deg,#1C35A8 0%,#2B50D6 55%,#5B7CFF 100%) !important}
.prop-thumb .prop-ribbon::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);
  animation:cv2Shine 3.2s ease-in-out infinite}
@keyframes cv2Shine{0%,55%{left:-60%}100%{left:130%}}
@media (prefers-reduced-motion:reduce){.prop-thumb .prop-ribbon::after{animation:none;display:none}}
/* com faixa no canto, a pílula de fase desce para a base da foto */
.prop-card .prop-thumb:has(.prop-ribbon) .prop-badge{top:auto !important;bottom:12px !important;left:12px !important}

/* =========================================================
   DESKTOP — grade larga 6 por linha, card estilo Airbnb
   ========================================================= */
@media (min-width:769px){
  .listings-section > .container,
  .cv2-wide{max-width:1760px !important;padding-left:40px !important;padding-right:40px !important;width:100% !important;box-sizing:border-box}

  .prop-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:32px 16px !important}
  .prop-grid.mais-grid-props-4{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
  .listings-section .prop-grid,.cv2-wide .prop-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important}
}
@media (min-width:1024px){
  .listings-section .prop-grid,.cv2-wide .prop-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
}
@media (min-width:1280px){
  .listings-section .prop-grid,.cv2-wide .prop-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important}
}
@media (min-width:769px){
  /* card com profundidade: superfície branca, borda leve, sombra em camadas */
  .prop-grid{gap:28px 20px !important}
  .prop-grid .prop-card{background:#fff !important;border:1px solid #ebebeb !important;border-radius:18px !important;overflow:hidden !important;
    box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 18px rgba(0,0,0,.07) !important;transform:none;flex-direction:column !important;height:100%;
    transition:box-shadow .25s ease,transform .25s ease !important;contain-intrinsic-size:auto 640px}
  .prop-grid .prop-card:hover{transform:translateY(-4px) !important;box-shadow:0 2px 4px rgba(0,0,0,.06),0 16px 34px rgba(0,0,0,.14) !important}
  .prop-grid .prop-card .prop-thumb{aspect-ratio:4/5 !important;height:auto !important;flex:0 0 auto !important;width:100% !important;
    border-radius:0 !important;overflow:hidden !important;background:#eee}
  .prop-grid .prop-card .prop-thumb > img{width:100% !important;height:100% !important;object-fit:cover !important;transition:transform .5s ease}
  .prop-grid .prop-card:hover .prop-thumb > img{transform:scale(1.05)}
  .prop-grid .prop-card .prop-thumb-overlay{display:block !important;background:linear-gradient(180deg,rgba(0,0,0,.22) 0%,rgba(0,0,0,0) 28%,rgba(0,0,0,0) 70%,rgba(0,0,0,.28) 100%) !important}
  .prop-grid .prop-card .prop-badge{position:absolute !important;top:12px !important;left:12px !important}

  /* destaque: moldura dourada fina no card */
  .prop-grid .prop-card.prop-destaque{border-color:#d9bf7f !important;box-shadow:0 0 0 1px #d9bf7f,0 8px 22px rgba(120,90,20,.16) !important}
  .prop-grid .prop-card.prop-destaque:hover{box-shadow:0 0 0 1px #c9a55c,0 18px 36px rgba(120,90,20,.24) !important}

  /* corpo em blocos separados; linhas de altura fixa = cards do mesmo tamanho */
  .prop-grid .prop-card .prop-body{padding:12px 14px 14px !important;display:grid !important;grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"nome nome" "constr constr" "local local" "specs specs" "preco cta";
    row-gap:2px;background:#fff !important;flex:1 1 auto;align-content:start;min-height:0 !important;height:auto !important;position:static !important}
  .prop-grid .prop-card .prop-name{grid-area:nome;font-size:.98rem !important;font-weight:600 !important;color:var(--cv2-ink) !important;
    line-height:1.3 !important;margin:0 0 4px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .prop-grid .prop-card .prop-construtora,.prop-grid .prop-card .prop-location{display:block !important;position:relative;padding-left:20px !important;
    margin:0 !important;line-height:1.4 !important;min-height:1.4em;min-width:0}
  .prop-grid .prop-card .prop-construtora{grid-area:constr}
  .prop-grid .prop-card .prop-location{grid-area:local}
  .prop-grid .prop-card .prop-construtora::before,.prop-grid .prop-card .prop-location::before{content:"";position:absolute;left:0;top:50%;margin-top:-7px;width:14px;height:14px;
    background:#9a9a9a;-webkit-mask:var(--cv2-mi) center/contain no-repeat;mask:var(--cv2-mi) center/contain no-repeat}
  .prop-grid .prop-card .prop-construtora{--cv2-mi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='2' width='16' height='20' rx='2'/%3E%3Cpath d='M9 22v-4h6v4M8 6h.01M16 6h.01M12 6h.01M12 10h.01M12 14h.01M16 10h.01M16 14h.01M8 10h.01M8 14h.01'/%3E%3C/svg%3E")}
  .prop-grid .prop-card .prop-location{--cv2-mi:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E")}
  .prop-grid .prop-card .prop-construtora,.prop-grid .prop-card .prop-construtora a,.prop-grid .prop-card .prop-location{font-size:.8rem !important;font-weight:400 !important;
    color:var(--cv2-muted) !important;text-transform:none !important;letter-spacing:0 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .prop-grid .prop-card .prop-construtora a{min-width:0}
  .prop-grid .prop-card .rg-pop{grid-column:1/-1;top:auto !important;bottom:64px}

  /* características: blocos com ícone, separados do resto por linhas */
  .prop-grid .prop-card .prop-specs{grid-area:specs;display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px !important;
    margin:10px 0 0 !important;padding:10px 0 !important;border:0 !important;border-top:1px solid #efefef !important;border-bottom:1px solid #efefef !important;min-height:74px}
  .prop-grid .prop-card .prop-spec{display:flex !important;flex-direction:column;align-items:center;justify-content:center;gap:2px;
    background:#f7f7f7 !important;border:0 !important;border-radius:10px !important;padding:7px 4px !important;margin:0 !important;min-width:0;text-align:center !important}
  .prop-grid .prop-card .prop-spec::before,.prop-grid .prop-card .prop-spec::after{display:none !important}
  .prop-grid .prop-card .cv2-ic{display:block;width:16px;height:16px;color:var(--accent,#A88B4A);line-height:0}
  .prop-grid .prop-card .cv2-ic svg{width:16px;height:16px}
  .prop-grid .prop-card .spec-val{font-size:.8rem !important;font-weight:600 !important;color:var(--cv2-ink) !important;line-height:1.2 !important;
    max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--cv2-font) !important;letter-spacing:0 !important}
  .prop-grid .prop-card .spec-lbl{font-size:.64rem !important;font-weight:500 !important;color:var(--cv2-muted) !important;line-height:1.2 !important;
    text-transform:none !important;letter-spacing:0 !important;font-family:var(--cv2-font) !important;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  .prop-grid .prop-card .prop-price-cta-row{display:contents !important}
  .prop-grid .prop-card .prop-price-wrap{grid-area:preco;margin:10px 0 0 !important;min-height:2.7em;display:flex !important;flex-direction:column;justify-content:flex-end;min-width:0}
  .prop-grid .prop-card .prop-price-label{font-size:.72rem !important;color:var(--cv2-muted) !important;text-transform:none !important;
    letter-spacing:0 !important;font-weight:400 !important;line-height:1.3 !important}
  .prop-grid .prop-card .prop-price{font-size:1rem !important;font-weight:600 !important;color:var(--cv2-ink) !important;line-height:1.3 !important;white-space:nowrap}
  .prop-grid .prop-card .prop-price-wrap.tem-depor .prop-price-label{display:none !important}
  .prop-grid .prop-card .destaque-depor{margin:0 !important;gap:6px !important;flex-wrap:nowrap !important;overflow:hidden}
  .prop-grid .prop-card .destaque-depor-de{font-size:.72rem !important;color:var(--cv2-muted) !important;font-weight:400 !important}
  .prop-grid .prop-card .destaque-depor-off{font-size:.66rem !important;padding:1px 7px !important}

  .prop-grid .prop-card .prop-ctas{grid-area:cta;align-self:end;display:flex !important;gap:0 !important;margin:0 0 2px 8px !important}
  /* link do card cobre o card inteiro (mantém o <a> para Google, nova aba e teclado) */
  .prop-grid .prop-card{position:relative}
  .prop-grid .prop-card .prop-btn-primary{display:block !important;position:absolute !important;inset:0 !important;z-index:1 !important;margin:0 !important;
    font-size:0 !important;color:transparent !important;background:transparent !important;border:0 !important;padding:0 !important;box-shadow:none !important;border-radius:18px !important;min-width:0 !important;width:auto !important;height:auto !important}
  .prop-grid .prop-card .prop-btn-primary:focus-visible{outline:2px solid #222;outline-offset:2px}
  .prop-grid .prop-card .prop-btn-wa,.prop-grid .prop-card .prop-construtora a,.prop-grid .prop-card .photos-btn{position:relative;z-index:3}
  .prop-grid .prop-card .photos-btn{position:absolute}
  .prop-grid .prop-card .prop-btn-wa{width:38px !important;height:38px !important;min-width:38px !important;border-radius:50% !important;padding:0 !important;
    display:flex !important;align-items:center;justify-content:center;background:#25D366 !important;color:#fff !important;border:0 !important;
    box-shadow:0 3px 8px rgba(37,211,102,.35) !important;transition:transform .2s}
  .prop-grid .prop-card .prop-btn-wa:hover{transform:scale(1.08)}
  .prop-grid .prop-card .prop-btn-wa svg{width:18px !important;height:18px !important}
}

/* ícones das características também no mobile (card em linha) */
@media (max-width:768px){
  .prop-card .cv2-ic{display:block;width:14px;height:14px;margin:0 auto 2px;color:var(--accent,#A88B4A);line-height:0}
  .prop-card .cv2-ic svg{width:14px;height:14px}
}

/* =========================================================
   MOBILE — mantém o card em linha, só ajustes de conteúdo
   ========================================================= */
@media (max-width:768px){
  .prop-card .prop-name{font-weight:600 !important}
  .prop-card .prop-badge{font-size:.6rem !important;padding:3px 8px !important;max-width:calc(100% - 66px) !important}
  .prop-card .photos-btn{padding:3px 7px !important}
  .prop-card .prop-ribbon{font-size:.48rem !important;width:180px !important;left:34px !important;top:34px !important;padding:4px 0 !important}
  .prop-card .fav-btn svg{width:20px !important;height:20px !important}
}

/* =========================================================
   VARIANTE .empreend-card (páginas de construtora) — mesmo visual do .prop-card
   ========================================================= */
.empreend-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr)) !important;gap:24px 18px !important}
.empreend-card{position:relative;display:flex !important;flex-direction:column;background:#fff !important;border:1px solid #ebebeb !important;border-radius:18px !important;
  overflow:hidden !important;box-shadow:0 1px 2px rgba(0,0,0,.06),0 6px 18px rgba(0,0,0,.07) !important;transition:box-shadow .25s ease,transform .25s ease !important;
  font-family:var(--cv2-font) !important;cursor:pointer}
.empreend-card:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(0,0,0,.06),0 16px 34px rgba(0,0,0,.14) !important}
.empreend-card .empreend-card-img{aspect-ratio:4/5;min-height:0 !important;overflow:hidden;flex:0 0 auto}
.empreend-card .empreend-card-img img{transition:transform .5s ease}
.empreend-card:hover .empreend-card-img img{transform:scale(1.05)}
.empreend-card .empreend-card-body{padding:12px 14px 14px !important;display:flex;flex-direction:column;flex:1 1 auto}
.empreend-card .empreend-card-label{position:absolute;top:12px;left:12px;z-index:2;margin:0 !important;background:rgba(255,255,255,.95);color:var(--cv2-ink) !important;
  border-radius:999px;padding:5px 10px;font-family:var(--cv2-font) !important;font-size:.72rem !important;font-weight:600 !important;letter-spacing:0 !important;
  text-transform:none !important;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.empreend-card .empreend-card-label::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;vertical-align:1px;background:#A88B4A}
.empreend-card .empreend-card-title{font-family:var(--cv2-font) !important;font-size:.98rem !important;font-weight:600 !important;color:var(--cv2-ink) !important;
  line-height:1.3 !important;margin:0 0 4px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:0 !important}
.empreend-card .empreend-card-local{position:relative;padding-left:20px;font-size:.8rem !important;color:var(--cv2-muted) !important;margin:0 !important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}
.empreend-card .empreend-card-local::before{content:"";position:absolute;left:0;top:50%;margin-top:-7px;width:14px;height:14px;background:#9a9a9a;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") center/contain no-repeat}
.empreend-card .empreend-card-specs{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px !important;margin:10px 0 0 !important;padding:10px 0;
  border-top:1px solid #efefef;border-bottom:1px solid #efefef}
.empreend-card .empreend-card-spec{display:flex !important;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:#f7f7f7 !important;border:0 !important;
  border-radius:10px !important;padding:7px 4px !important;font-family:var(--cv2-font) !important;font-size:.72rem !important;font-weight:600 !important;letter-spacing:0 !important;
  text-transform:none !important;color:var(--cv2-ink) !important;text-align:center;line-height:1.2;min-width:0;overflow:hidden}
.empreend-card .empreend-card-spec.cv2-spec-entrega{display:none !important}
.empreend-card .cv2-ic{display:block;width:16px;height:16px;color:var(--accent,#A88B4A);line-height:0}
.empreend-card .cv2-ic svg{width:16px;height:16px}
.empreend-card .empreend-card-price{font-family:var(--cv2-font) !important;font-size:1rem !important;font-weight:600 !important;color:var(--cv2-ink) !important;margin:10px 0 0 !important;letter-spacing:0 !important}
.empreend-card .empreend-card-price .cv2-pl{display:block;font-size:.72rem;font-weight:400;color:var(--cv2-muted)}
.empreend-card .empreend-card-link{position:absolute;inset:0;z-index:1;font-size:0 !important;color:transparent !important}
.empreend-card .cv2-verif{display:inline-block;width:14px;height:14px;margin-left:4px;vertical-align:-2px;position:relative;z-index:3;cursor:help}
.empreend-card .cv2-verif svg{width:14px;height:14px;display:block}
.empreend-card .cv2-verif svg path:first-child{fill:var(--cv2-verified)}
.empreend-card .cv2-verif:hover::after{content:attr(data-rg);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);white-space:nowrap;background:#fff;
  color:var(--cv2-ink);border:1px solid var(--cv2-line);border-radius:10px;padding:6px 9px;font-size:.7rem;font-weight:500;box-shadow:0 6px 20px rgba(0,0,0,.14)}

/* =========================================================
   CELULAR — ajustes do card em linha (17/10)
   ========================================================= */
.cv2-etapa{display:none}
@media (max-width:768px){
  /* etiqueta etapa → entrega no texto, não na foto */
  .prop-card .prop-thumb .prop-badge{display:none !important}
  .prop-card .cv2-etapa{display:inline-flex;align-items:center;align-self:flex-start;max-width:100%;margin:0 0 5px;padding:3px 9px;border-radius:999px;
    background:#f3f1ec;color:#222;font-family:var(--cv2-font) !important;font-size:.64rem;font-weight:600;letter-spacing:0;line-height:1.3;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .prop-card .cv2-etapa::before{content:"";flex:0 0 6px;width:6px;height:6px;border-radius:50%;margin-right:6px;background:#A88B4A}
  .prop-card .cv2-etapa.cv2-prop-badge-red::before{background:#E0294A}
  .prop-card .cv2-etapa.cv2-prop-badge-amber::before{background:#E8A317}
  .prop-card .cv2-etapa.cv2-prop-badge-green::before{background:#1B9E4B}
  .prop-card .cv2-etapa.cv2-prop-badge-blue::before{background:#2B6CD6}

  /* sem o botão "→": o card inteiro abre o empreendimento (o link continua no HTML) */
  .prop-grid .prop-card,.mais-grid-props-4 .prop-card{position:relative !important}
  .prop-card .prop-btn-primary{position:absolute !important;inset:0 !important;z-index:1 !important;margin:0 !important;padding:0 !important;
    width:auto !important;height:auto !important;min-width:0 !important;font-size:0 !important;color:transparent !important;background:transparent !important;
    border:0 !important;box-shadow:none !important;border-radius:12px !important}
  .prop-card .prop-btn-primary *{display:none !important}
  .prop-card .prop-btn-wa,.prop-card .fav-btn,.prop-card .photos-btn,.prop-card .prop-construtora a,.prop-card .rg-check{z-index:3 !important}
  .prop-card .prop-btn-wa,.prop-card .prop-construtora a{position:relative}
  .prop-card .rg-pop{position:relative;z-index:4}

  /* características: sem ícone, fonte menor, cada uma no seu bloco */
  .prop-card .cv2-ic{display:none !important}
  .prop-card .prop-specs{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:5px !important;border:0 !important;padding:0 !important;margin:6px 0 !important}
  .prop-card .prop-spec{display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;gap:1px !important;
    background:#f6f5f2 !important;border:0 !important;border-radius:8px !important;padding:5px 2px !important;margin:0 !important;min-width:0 !important}
  .prop-card .prop-spec::before,.prop-card .prop-spec::after,
  html body .prop-grid .prop-card .prop-spec:not(:last-child)::after,html body .prop-grid .prop-card .prop-spec:not(:first-child)::before,
  html body .mais-grid-props-4 .prop-card .prop-spec:not(:last-child)::after,html body .prop-card .prop-specs .prop-spec:nth-child(n)::after{display:none !important;content:none !important}
  .prop-card .spec-val{font-size:.74rem !important;font-weight:600 !important;line-height:1.2 !important;white-space:nowrap !important;overflow:hidden;text-overflow:ellipsis;max-width:100%;
    font-family:var(--cv2-font) !important;color:#222 !important;letter-spacing:0 !important}
  .prop-card .spec-lbl{font-size:.56rem !important;font-weight:500 !important;line-height:1.2 !important;text-transform:none !important;letter-spacing:0 !important;
    color:#6a6a6a !important;font-family:var(--cv2-font) !important;white-space:nowrap}
}

/* grade dos cards em bairros e construtoras (coluna de conteúdo mais estreita) */
@media (min-width:769px){
  .prop-grid.cv2-grid-auto{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr)) !important;gap:28px 20px !important}
}
@media (max-width:768px){
  .prop-grid.cv2-grid-auto{display:grid !important;grid-template-columns:1fr !important;gap:12px !important}
  /* preço "a partir de" na mesma linha do botão quadrado do WhatsApp */
  html body .prop-card .prop-price-cta-row{display:flex !important;flex-wrap:nowrap !important;align-items:flex-end !important;justify-content:space-between !important;gap:8px !important;margin-top:auto !important}
  html body .prop-card .prop-price-wrap{flex:1 1 auto !important;min-width:0 !important;margin:0 !important}
  html body .prop-card .prop-ctas{flex:0 0 auto !important;margin:0 0 0 auto !important;display:flex !important;align-items:flex-end}
  html body .prop-card.prop-destaque .prop-price-cta-row{flex-wrap:nowrap !important}
  html body .prop-card.prop-destaque .prop-price-wrap{flex:1 1 auto !important}
  html body .prop-card .prop-price{white-space:nowrap !important}
  html body .prop-card .destaque-depor{flex-wrap:wrap !important}
}
@media (max-width:768px){
  /* destaques: destaques.css força o preço em linha inteira — aqui ele volta para a linha do WhatsApp */
  html body .prop-grid .prop-card.prop-destaque .prop-price-cta-row,html body .mais-grid-props-4 .prop-card.prop-destaque .prop-price-cta-row{
    flex-wrap:nowrap !important;align-items:flex-end !important;gap:8px !important}
  html body .prop-grid .prop-card.prop-destaque .prop-price-wrap,html body .mais-grid-props-4 .prop-card.prop-destaque .prop-price-wrap{
    flex:1 1 auto !important;min-width:0 !important}
  html body .prop-grid .prop-card.prop-destaque .prop-price,html body .mais-grid-props-4 .prop-card.prop-destaque .prop-price{font-size:.9rem !important}
  html body .prop-grid .prop-card.prop-destaque .prop-ctas,html body .mais-grid-props-4 .prop-card.prop-destaque .prop-ctas{margin-left:auto !important;flex:0 0 auto !important}
}
@media (max-width:768px){
  /* a foto nunca define a altura do card no celular (em qualquer página) */
  html body .prop-card .prop-thumb{position:relative !important;overflow:hidden !important}
  html body .prop-card .prop-thumb > img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;object-fit:cover !important}
}
@media (max-width:768px){
  /* altura reservada para cards fora da tela = altura real do card no celular (evita "pulos" ao rolar) */
  html body .prop-card{contain-intrinsic-size:auto 210px !important}
}

@media (max-width:768px){
  /* link do card cobrindo o card todo (vence a regra antiga do botão "→" de 30px) */
  html body .prop-grid .prop-card .prop-ctas .prop-btn-primary,html body .mais-grid-props-4 .prop-card .prop-ctas .prop-btn-primary,
  html body .prop-card .prop-ctas .prop-btn-primary{position:absolute !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;
    width:auto !important;height:auto !important;min-width:0 !important;min-height:0 !important;max-width:none !important;z-index:1 !important;
    background:transparent !important;border:0 !important;box-shadow:none !important;font-size:0 !important;color:transparent !important;padding:0 !important;margin:0 !important}
  html body .prop-card .prop-ctas{position:static !important}
}
@media (max-width:768px){
  /* altura se ajusta ao conteúdo (alguns portais têm fonte maior e cortavam a etiqueta no topo) */
  html body .prop-grid .prop-card,html body .mais-grid-props-4 .prop-card{height:auto !important;min-height:206px !important;max-height:none !important}
  html body .prop-card .prop-body{height:auto !important;max-height:none !important;overflow:visible !important;justify-content:flex-start !important;min-height:206px}
  html body .prop-card .prop-thumb{height:auto !important;min-height:206px !important;align-self:stretch !important}
}
