/* Sun House — final mobile optimisation layer
   2026-09-09
   Loaded after sunhouse-mobile.css to neutralise older conflicting mobile overrides. */

@media (max-width:720px) {
  :root{
    --mobile-gutter:14px;
    --mobile-gap:36px;
    --mobile-panel:rgba(8,11,13,.72);
  }

  html,body{
    overflow-x:hidden !important;
  }

  /* HEADER */
  .v7-nav-inner{
    width:calc(100% - 24px) !important;
    min-height:64px !important;
    grid-template-columns:minmax(0,1fr) auto auto !important;
    gap:8px !important;
  }

  .v7-greeting{
    min-width:0 !important;
    font-size:.82rem !important;
  }

  .v7-mobile-menu-toggle{
    width:38px !important;
    height:38px !important;
    flex:0 0 38px !important;
  }

  .v7-lang{
    white-space:nowrap !important;
    font-size:.72rem !important;
  }

  /* HERO */
  .v7-hero-inner{
    width:calc(100% - 28px) !important;
    padding:76px 0 24px !important;
  }

  .sunhouse-horizontal-brand{
    width:min(280px,78vw) !important;
    margin:0 auto 14px !important;
  }

  .v7-kicker{
    margin-bottom:5px !important;
    font-size:.72rem !important;
  }

  .v7-copy h1{
    margin:0 0 10px !important;
    font-size:clamp(2.55rem,12.5vw,3.75rem) !important;
    line-height:.9 !important;
  }

  .v7-copy p{
    font-size:.88rem !important;
    line-height:1.38 !important;
  }

  .v7-actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin-top:14px !important;
  }

  .v7-btn,
  .v7-btn.primary,
  .v7-btn:not(.primary){
    width:100% !important;
    min-width:0 !important;
    min-height:46px !important;
    padding:10px 11px !important;
    font-size:.64rem !important;
    line-height:1.15 !important;
    justify-content:center !important;
    gap:6px !important;
    white-space:normal !important;
    text-align:center !important;
    overflow:hidden !important;
  }

  .v7-homes-cta-arrow,
  .v7-quote-cta b{
    display:none !important;
  }

  .v7-service-strip{
    margin-top:14px !important;
    padding-top:12px !important;
    gap:4px !important;
  }

  .v7-service-strip a{
    min-width:0 !important;
    padding:0 4px !important;
  }

  .v7-service-strip strong{
    font-size:.68rem !important;
  }

  .v7-service-strip small{
    font-size:.57rem !important;
    line-height:1.25 !important;
  }

  /* PROPERTY CAROUSEL — three cards visible, but stripped to essentials */
  #alojamento{
    margin:0 !important;
    padding:0 var(--mobile-gutter) var(--mobile-gap) !important;
  }

  #alojamento > .wrap{
    padding:0 !important;
  }

  .property-section-head{
    margin:0 0 10px !important;
  }

  .property-section-head-mobile h2{
    font-size:.82rem !important;
    letter-spacing:.09em !important;
  }

  .mobile-view-all{
    padding:6px 9px !important;
    font-size:.60rem !important;
  }

  .property-carousel-shell{
    gap:5px !important;
  }

  .property-carousel{
    gap:7px !important;
    padding:0 !important;
  }

  .property-carousel > .card{
    flex:0 0 calc((100% - 14px)/3) !important;
    min-width:calc((100% - 14px)/3) !important;
  }

  .property-carousel .photo{
    aspect-ratio:1.3/1 !important;
    border-radius:14px 14px 0 0 !important;
  }

  .property-carousel .card-body{
    min-height:152px !important;
    padding:8px 7px 7px !important;
    border-radius:0 0 14px 14px !important;
  }

  .property-carousel .card h3{
    margin:0 !important;
    font-size:.72rem !important;
    line-height:1.08 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  .property-carousel .meta{
    margin-top:5px !important;
    font-size:.56rem !important;
    line-height:1.1 !important;
  }

  .property-carousel .card-body > p{
    display:none !important;
  }

  .property-carousel .property-room-stats{
    display:flex !important;
    justify-content:flex-start !important;
    gap:5px !important;
    margin-top:7px !important;
    padding-top:6px !important;
  }

  .property-carousel .property-room-stat{
    gap:2px !important;
  }

  .property-carousel .property-room-stat small{
    display:none !important;
  }

  .property-carousel .property-room-stat strong{
    font-size:.62rem !important;
  }

  .property-carousel .property-room-icon{
    width:12px !important;
    height:12px !important;
  }

  .property-carousel .price{
    margin-top:7px !important;
    max-width:none !important;
    font-size:.60rem !important;
    line-height:1.15 !important;
  }

  .property-card-link{
    min-height:28px !important;
    margin-top:6px !important;
    padding:5px 7px !important;
    font-size:.60rem !important;
  }

  .property-featured-badge{
    top:7px !important;
    left:7px !important;
    padding:5px 7px !important;
    font-size:.52rem !important;
  }

  .property-carousel-arrow{
    width:28px !important;
    height:28px !important;
    flex:0 0 28px !important;
    font-size:1rem !important;
  }

  /* ALUGAR / GERIR / RENOVAR */
  .v7-services{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
    padding:0 var(--mobile-gutter) var(--mobile-gap) !important;
  }

  .v7-service-card{
    min-height:128px !important;
    padding:14px 9px !important;
    border-radius:16px !important;
  }

  .v7-service-card h2{
    margin:0 0 6px !important;
    font-size:1.15rem !important;
    line-height:1 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .v7-service-card h3{
    margin:0 0 6px !important;
    font-size:.62rem !important;
    line-height:1.2 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .v7-service-card p{
    margin:0 !important;
    font-size:.58rem !important;
    line-height:1.25 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:3 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  .v7-service-card span{
    margin-top:8px !important;
    font-size:.55rem !important;
  }

  /* LOWER SECTIONS */
  .owner-management,
  #obras{
    padding:0 var(--mobile-gutter) var(--mobile-gap) !important;
  }

  .owner-management > .wrap,
  #obras > .wrap{
    padding:0 !important;
  }

  .section-head{
    margin-bottom:12px !important;
  }

  .section-head .gold{
    font-size:.66rem !important;
    line-height:1.25 !important;
  }

  .section-head h2,
  .owner-management .section-head h2,
  #obras .section-head h2{
    margin-top:5px !important;
    font-size:1.68rem !important;
    line-height:1.02 !important;
    letter-spacing:-.025em !important;
  }

  .section-head p{
    margin-top:8px !important;
    font-size:.78rem !important;
    line-height:1.35 !important;
  }

  .owner-management .service-grid,
  #obras .service-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:7px !important;
  }

  .owner-management .service-grid > .card,
  #obras .service-grid > .card{
    min-height:118px !important;
    border-radius:15px !important;
  }

  .owner-management .service-grid .card-body,
  #obras .service-grid .card-body{
    padding:12px 9px !important;
  }

  .owner-management .service-grid .card h3,
  #obras .service-grid .card h3{
    margin:0 0 6px !important;
    font-size:.66rem !important;
    line-height:1.16 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    hyphens:auto !important;
  }

  .owner-management .service-grid .card p,
  #obras .service-grid .card p{
    margin:0 !important;
    font-size:.58rem !important;
    line-height:1.26 !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    display:-webkit-box !important;
    -webkit-line-clamp:4 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  /* Bottom navigation must never cover content */
  body{
    padding-bottom:86px !important;
  }

  .sunhouse-mobile-bottom-nav{
    left:10px !important;
    right:10px !important;
    bottom:10px !important;
    width:auto !important;
    max-width:none !important;
    min-height:66px !important;
    padding:7px 8px !important;
    border-radius:24px !important;
  }

  .sunhouse-mobile-bottom-nav a,
  .sunhouse-mobile-bottom-nav button{
    min-width:0 !important;
  }

  .sunhouse-mobile-bottom-nav small{
    font-size:.60rem !important;
  }

  .sunhouse-mobile-bottom-nav [data-open-live-chat]:last-child{
    min-width:0 !important;
  }
}

/* Very narrow phones: keep 3-up cards but trim secondary copy harder. */
@media (max-width:390px){
  .v7-copy h1{
    font-size:2.45rem !important;
  }

  .property-carousel .card-body{
    min-height:142px !important;
  }

  .v7-service-card{
    min-height:116px !important;
    padding:12px 7px !important;
  }

  .v7-service-card p{
    -webkit-line-clamp:2 !important;
  }

  .owner-management .service-grid > .card,
  #obras .service-grid > .card{
    min-height:108px !important;
  }

  .owner-management .service-grid .card p,
  #obras .service-grid .card p{
    -webkit-line-clamp:3 !important;
  }
}



/* =====================================================
   PROPERTY CAROUSEL — organised 3-up mobile layout
   Keeps the established Sun House mobile structure while
   preventing title/price/stats/button collisions.
===================================================== */
@media (max-width:720px){
  #alojamento{
    padding-left:var(--mobile-gutter) !important;
    padding-right:var(--mobile-gutter) !important;
  }

  .property-section-head{
    margin-bottom:12px !important;
  }

  .mobile-featured-title-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:start !important;
    gap:10px !important;
  }

  .property-section-head-mobile h2{
    max-width:230px !important;
    font-size:clamp(.82rem,3.8vw,1.05rem) !important;
    line-height:1.08 !important;
    letter-spacing:.045em !important;
  }

  .mobile-view-all{
    align-self:start !important;
    white-space:nowrap !important;
    border-radius:999px !important;
  }

  .property-carousel-shell{
    position:relative !important;
    display:grid !important;
    grid-template-columns:28px minmax(0,1fr) 28px !important;
    align-items:center !important;
    gap:5px !important;
    width:100% !important;
  }

  .property-carousel{
    width:100% !important;
    min-width:0 !important;
    gap:7px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    scroll-padding:0 !important;
  }

  .property-carousel > .property-card{
    flex:0 0 calc((100% - 14px)/3) !important;
    min-width:calc((100% - 14px)/3) !important;
    width:calc((100% - 14px)/3) !important;
    display:flex !important;
    flex-direction:column !important;
    overflow:hidden !important;
    border-radius:14px !important;
    background:rgba(18,18,18,.92) !important;
    scroll-snap-align:start !important;
  }

  .property-carousel .photo{
    flex:0 0 auto !important;
    width:100% !important;
    aspect-ratio:1.28/1 !important;
    overflow:hidden !important;
  }

  .property-carousel .photo img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }

  .property-carousel .card-body{
    flex:1 !important;
    min-width:0 !important;
    min-height:178px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:8px 7px 7px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,rgba(49,51,52,.96),rgba(31,32,33,.98)) !important;
  }

  .property-carousel .property-card-heading{
    display:block !important;
    min-height:2.35em !important;
  }

  .property-carousel .property-card-heading h3{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    font-size:.69rem !important;
    line-height:1.12 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }

  .property-carousel .meta{
    min-height:2.15em !important;
    margin:5px 0 0 !important;
    font-size:.52rem !important;
    line-height:1.12 !important;
    color:rgba(255,255,255,.68) !important;
    overflow:hidden !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
  }

  .property-carousel .card-body > p{
    display:none !important;
  }

  .property-carousel .price{
    order:3 !important;
    width:100% !important;
    max-width:none !important;
    min-height:2.35em !important;
    margin:6px 0 0 !important;
    font-size:.56rem !important;
    line-height:1.14 !important;
    font-weight:800 !important;
    color:var(--gold2) !important;
    white-space:normal !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .property-carousel .property-room-stats{
    order:4 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:2px !important;
    margin:6px 0 0 !important;
    padding:6px 0 0 !important;
    border-top:1px solid rgba(255,255,255,.12) !important;
  }

  .property-carousel .property-room-stat{
    min-width:0 !important;
    min-height:0 !important;
    padding:0 !important;
    border:0 !important;
    background:none !important;
    box-shadow:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:2px !important;
  }

  .property-carousel .property-room-icon{
    flex:0 0 11px !important;
    width:11px !important;
    height:11px !important;
  }

  .property-carousel .property-room-stat strong{
    flex:0 0 auto !important;
    font-size:.57rem !important;
    line-height:1 !important;
  }

  .property-carousel .property-room-stat small{
    display:none !important;
  }

  .property-carousel .property-card-link{
    order:5 !important;
    width:100% !important;
    min-height:27px !important;
    margin:7px 0 0 !important;
    padding:5px 4px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:999px !important;
    font-size:.57rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
  }

  .property-featured-badge{
    max-width:calc(100% - 12px) !important;
    padding:4px 5px !important;
    font-size:.46rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  .property-carousel-arrow{
    position:relative !important;
    inset:auto !important;
    z-index:3 !important;
    margin:0 !important;
  }
}

@media (max-width:390px){
  .property-carousel .card-body{
    min-height:170px !important;
    padding:7px 6px 6px !important;
  }

  .property-carousel .property-card-heading h3{
    font-size:.64rem !important;
  }

  .property-carousel .meta{
    font-size:.49rem !important;
  }

  .property-carousel .price,
  .property-carousel .property-card-link{
    font-size:.52rem !important;
  }
}



/* =====================================================
   LOWER SERVICE SECTIONS — visual spacing refinement
   Match approved mobile mockup: more breathing room inside
   panels, text aligned to the top, shorter cards.
===================================================== */
@media (max-width:720px){
  .owner-management,
  #obras{
    padding-left:var(--mobile-gutter) !important;
    padding-right:var(--mobile-gutter) !important;
  }

  .owner-management > .wrap,
  #obras > .wrap{
    padding:18px 16px 16px !important;
    border:1px solid rgba(255,255,255,.22) !important;
    border-radius:24px !important;
    background:rgba(20,20,20,.34) !important;
  }

  .owner-management .section-head,
  #obras .section-head{
    margin:0 0 16px !important;
  }

  .owner-management .section-head .gold,
  #obras .section-head .gold{
    display:block !important;
    margin:0 0 8px !important;
    font-size:.67rem !important;
    line-height:1.2 !important;
  }

  .owner-management .section-head h2,
  #obras .section-head h2{
    margin:0 !important;
    max-width:100% !important;
    font-size:clamp(1.62rem,7vw,2rem) !important;
    line-height:1.04 !important;
  }

  .owner-management .section-head p,
  #obras .section-head p{
    margin:12px 0 0 !important;
    max-width:100% !important;
    font-size:.78rem !important;
    line-height:1.4 !important;
  }

  .owner-management .service-grid,
  #obras .service-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    align-items:stretch !important;
    gap:8px !important;
  }

  .owner-management .service-grid > .card,
  #obras .service-grid > .card{
    min-width:0 !important;
    min-height:0 !important;
    height:auto !important;
    border-radius:18px !important;
    display:flex !important;
    align-items:flex-start !important;
  }

  .owner-management .service-grid .card-body,
  #obras .service-grid .card-body{
    width:100% !important;
    min-height:150px !important;
    height:auto !important;
    padding:18px 12px 14px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    text-align:left !important;
  }

  .owner-management .service-grid .card h3,
  #obras .service-grid .card h3{
    width:100% !important;
    margin:0 0 10px !important;
    font-size:.72rem !important;
    line-height:1.14 !important;
    text-align:left !important;
    hyphens:none !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
  }

  .owner-management .service-grid .card p,
  #obras .service-grid .card p{
    width:100% !important;
    margin:0 !important;
    font-size:.62rem !important;
    line-height:1.3 !important;
    text-align:left !important;
    display:block !important;
    overflow:visible !important;
    -webkit-line-clamp:unset !important;
  }
}

@media (max-width:390px){
  .owner-management > .wrap,
  #obras > .wrap{
    padding:16px 13px 14px !important;
  }

  .owner-management .service-grid .card-body,
  #obras .service-grid .card-body{
    min-height:142px !important;
    padding:16px 10px 12px !important;
  }

  .owner-management .service-grid .card h3,
  #obras .service-grid .card h3{
    font-size:.67rem !important;
  }

  .owner-management .service-grid .card p,
  #obras .service-grid .card p{
    font-size:.58rem !important;
  }
}



/* =====================================================
   PROPERTY CAROUSEL — position audit / final mobile fix
   The arrows were consuming horizontal card width. They now
   float over the outer gutter, while the three cards own 100%
   of the carousel width. Header and bottom-nav clearance fixed.
===================================================== */
@media (max-width:720px){
  #alojamento{
    position:relative !important;
    padding:14px var(--mobile-gutter) 96px !important;
    overflow:hidden !important;
  }

  #alojamento > .wrap{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
  }

  .property-section-head{
    width:100% !important;
    margin:0 0 14px !important;
  }

  .mobile-featured-title-row{
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:center !important;
    column-gap:12px !important;
  }

  .property-section-head-mobile h2{
    max-width:190px !important;
    margin:0 !important;
    font-size:.88rem !important;
    line-height:1.04 !important;
    letter-spacing:.035em !important;
  }

  .mobile-view-all{
    position:static !important;
    justify-self:end !important;
    margin:0 !important;
    padding:7px 10px !important;
    font-size:.58rem !important;
    line-height:1 !important;
  }

  .property-carousel-shell{
    position:relative !important;
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  .property-carousel{
    width:100% !important;
    min-width:0 !important;
    display:flex !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
  }

  .property-carousel > .property-card{
    flex:0 0 calc((100% - 16px)/3) !important;
    min-width:calc((100% - 16px)/3) !important;
    width:calc((100% - 16px)/3) !important;
    max-width:calc((100% - 16px)/3) !important;
    margin:0 !important;
  }

  .property-carousel-arrow{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:20 !important;
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    min-height:30px !important;
    margin:0 !important;
    border-radius:50% !important;
  }

  .property-carousel-arrow.is-prev{
    left:-12px !important;
  }

  .property-carousel-arrow.is-next{
    right:-12px !important;
  }

  .property-carousel .photo{
    width:100% !important;
    aspect-ratio:1.24/1 !important;
  }

  .property-carousel .card-body{
    min-height:182px !important;
    padding:9px 8px 8px !important;
  }

  .property-carousel .property-card-heading{
    min-height:2.35em !important;
  }

  .property-carousel .property-card-heading h3{
    font-size:.68rem !important;
    line-height:1.12 !important;
  }

  .property-carousel .meta{
    min-height:2.2em !important;
    margin-top:7px !important;
    font-size:.52rem !important;
  }

  .property-carousel .price{
    min-height:2.3em !important;
    margin-top:7px !important;
    font-size:.55rem !important;
  }

  .property-carousel .property-room-stats{
    margin-top:auto !important;
    padding-top:7px !important;
  }

  .property-carousel .property-card-link{
    margin-top:7px !important;
  }
}

@media (max-width:390px){
  #alojamento{
    padding-left:18px !important;
    padding-right:18px !important;
  }

  .property-section-head-mobile h2{
    max-width:165px !important;
    font-size:.82rem !important;
  }

  .property-carousel{
    gap:6px !important;
  }

  .property-carousel > .property-card{
    flex-basis:calc((100% - 12px)/3) !important;
    min-width:calc((100% - 12px)/3) !important;
    width:calc((100% - 12px)/3) !important;
    max-width:calc((100% - 12px)/3) !important;
  }

  .property-carousel-arrow.is-prev{ left:-11px !important; }
  .property-carousel-arrow.is-next{ right:-11px !important; }
}



/* =====================================================
   APPROVED MOBILE VISUAL — compact hero + property cards
===================================================== */
@media (max-width:720px){
  /* Keep the Sun House brand clearly above the headline */
  .v7-hero-inner{
    padding-top:72px !important;
  }

  .sunhouse-horizontal-brand{
    width:min(300px,82vw) !important;
    margin:0 auto 16px !important;
    position:relative !important;
    z-index:4 !important;
  }

  .sunhouse-brand-key,
  .sunhouse-brand-name{
    position:relative !important;
    z-index:4 !important;
  }

  .v7-copy{
    position:relative !important;
    z-index:2 !important;
  }

  .v7-copy h1{
    margin-top:0 !important;
  }

  /* Property area */
  #alojamento{
    padding-top:18px !important;
    padding-bottom:96px !important;
  }

  .property-carousel .photo{
    aspect-ratio:1.36/1 !important;
  }

  .property-carousel .card-body{
    min-height:132px !important;
    padding:9px 8px 8px !important;
    justify-content:flex-start !important;
  }

  .property-carousel .property-card-heading{
    min-height:2.25em !important;
    margin:0 !important;
  }

  .property-carousel .property-card-heading h3{
    font-size:.66rem !important;
    line-height:1.12 !important;
  }

  .property-carousel .meta{
    min-height:1.3em !important;
    margin-top:6px !important;
    font-size:.49rem !important;
    -webkit-line-clamp:1 !important;
  }

  .property-carousel .price{
    min-height:auto !important;
    margin-top:7px !important;
    font-size:.54rem !important;
    line-height:1.08 !important;
  }

  .property-carousel .property-room-stats{
    margin-top:8px !important;
    padding-top:7px !important;
    gap:2px !important;
  }

  .property-carousel .property-room-stat{
    flex-direction:column !important;
    gap:2px !important;
  }

  .property-carousel .property-room-stat small{
    display:block !important;
    font-size:.39rem !important;
    line-height:1 !important;
    color:rgba(255,255,255,.78) !important;
  }

  .property-carousel .property-card-link{
    min-height:24px !important;
    margin-top:8px !important;
    padding:4px 3px !important;
    font-size:.54rem !important;
  }

  .property-featured-badge{
    top:8px !important;
    left:8px !important;
    width:auto !important;
    max-width:calc(100% - 16px) !important;
    padding:5px 8px !important;
    border-radius:999px !important;
    font-size:.43rem !important;
    line-height:1 !important;
    letter-spacing:.01em !important;
    text-overflow:clip !important;
  }
}

@media (max-width:390px){
  .sunhouse-horizontal-brand{
    width:min(286px,82vw) !important;
  }

  .property-carousel .card-body{
    min-height:126px !important;
    padding:8px 7px 7px !important;
  }

  .property-featured-badge{
    font-size:.40rem !important;
    padding:5px 7px !important;
  }
}
