/* =============================================================
   320D — LEFT RAIL REBALANCE
   Presentation-only correction to 319D. No backend/member/vendor/realtor/admin/data logic.
   Goal: compact useful date/time/tip card + two genuinely useful ad positions,
   with the rail still ending flush beside the main content (Tetris fit).
   ============================================================= */

/* The utility is intentionally compact now; the ad card receives the rest
   of the available rail height instead of being squeezed into postage stamps. */
body.home-300d .d300-left-column{
  gap:10px!important;
}
body.home-300d .d319-utility-card{
  flex:0 0 30%!important;
  min-height:168px!important;
  max-height:215px!important;
  padding:12px 12px!important;
  justify-content:flex-start!important;
  gap:8px!important;
}
body.home-300d .d319-utility-card>.eyebrow{
  margin-bottom:1px!important;
}
body.home-300d .d319-tools{
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
}
body.home-300d .d319-calendar-day{
  min-height:50px!important;
  font-size:1.9rem!important;
}
body.home-300d .d319-clock{
  min-height:82px!important;
  padding:8px 5px!important;
}
body.home-300d .d319-clock-time{
  font-size:1.42rem!important;
  margin:5px 0 1px!important;
}
body.home-300d .d319-tip{
  margin-top:auto!important;
  padding:7px 8px!important;
  font-size:.62rem!important;
  line-height:1.22!important;
}

/* Two sellable ad positions: large enough for a real ad creative, but still
   clearly secondary to the free Featured Vendors area. */
body.home-300d .d300-left-column .d300-advertise-card{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  padding:13px 12px!important;
  display:flex!important;
  flex-direction:column!important;
}
body.home-300d .d300-left-column .d300-advertise-card h2{
  font-size:1.12rem!important;
  margin:.12rem 0 .24rem!important;
}
body.home-300d .d300-left-column .d300-advertise-card>p{
  font-size:.66rem!important;
  line-height:1.18!important;
  margin:0 0 7px!important;
}
body.home-300d .d300-ad-slots{
  flex:1 1 auto!important;
  display:grid!important;
  grid-template-rows:repeat(2,minmax(108px,1fr))!important;
  gap:8px!important;
  margin:7px 0!important;
}
body.home-300d .d300-ad-slots a{
  min-height:108px!important;
  padding:10px 8px!important;
  align-content:center!important;
  opacity:.96!important;
}
body.home-300d .d300-ad-slots strong{
  font-size:.72rem!important;
  line-height:1.08!important;
}
body.home-300d .d300-ad-slots small{
  font-size:.61rem!important;
  line-height:1.12!important;
}
body.home-300d .d300-text-link.d317-ad-inquiry{
  margin-top:4px!important;
  padding-top:7px!important;
}
body.home-300d .d300-text-link.d317-ad-inquiry strong{font-size:.68rem!important}
body.home-300d .d300-text-link.d317-ad-inquiry span{font-size:.57rem!important}

@media(max-width:850px){
  body.home-300d .d319-utility-card{
    flex-basis:29%!important;
    min-height:150px!important;
    max-height:190px!important;
    padding:9px!important;
    gap:6px!important;
  }
  body.home-300d .d319-calendar-day{min-height:40px!important;font-size:1.5rem!important}
  body.home-300d .d319-clock{min-height:68px!important}
  body.home-300d .d319-clock-time{font-size:1.08rem!important}
  body.home-300d .d319-tip{font-size:.52rem!important;padding:6px!important}
  body.home-300d .d300-ad-slots{grid-template-rows:repeat(2,minmax(92px,1fr))!important}
  body.home-300d .d300-ad-slots a{min-height:92px!important}
}

/* Phone keeps the same three-column visual composition. Compact the utility
   without making it microscopic, and give each of the two ads real height. */
@media(max-width:650px){
  body.home-300d .d300-left-column{gap:5px!important}
  body.home-300d .d319-utility-card{
    flex:0 0 28%!important;
    min-height:130px!important;
    max-height:156px!important;
    padding:5px 4px!important;
    gap:4px!important;
  }
  body.home-300d .d319-utility-card>.eyebrow{
    font-size:.36rem!important;
    letter-spacing:.05em!important;
  }
  body.home-300d .d319-tools{
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
  body.home-300d .d319-calendar{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
  }
  body.home-300d .d319-calendar-month{
    grid-column:1 / 3!important;
    padding:2px!important;
    font-size:.32rem!important;
    letter-spacing:.08em!important;
  }
  body.home-300d .d319-calendar-day{
    min-height:27px!important;
    font-size:.92rem!important;
  }
  body.home-300d .d319-calendar-weekday{
    padding:2px!important;
    font-size:.31rem!important;
    line-height:1.05!important;
  }
  body.home-300d .d319-clock{
    min-height:0!important;
    padding:4px 2px!important;
  }
  body.home-300d .d319-clock-label{font-size:.28rem!important;letter-spacing:.05em!important}
  body.home-300d .d319-clock-time{font-size:.69rem!important;margin:2px 0 0!important}
  body.home-300d .d319-clock-ampm{font-size:.31rem!important}
  body.home-300d .d319-tip{
    padding:4px!important;
    font-size:.31rem!important;
    line-height:1.14!important;
  }

  body.home-300d .d300-left-column .d300-advertise-card{
    padding:5px 3px!important;
  }
  body.home-300d .d300-left-column .d300-advertise-card .eyebrow{font-size:.36rem!important}
  body.home-300d .d300-left-column .d300-advertise-card h2{font-size:.57rem!important;margin:1px 0 2px!important}
  body.home-300d .d300-left-column .d300-advertise-card>p{font-size:.33rem!important;line-height:1.12!important;margin:0 0 3px!important}
  body.home-300d .d300-ad-slots{
    grid-template-rows:repeat(2,minmax(88px,1fr))!important;
    gap:4px!important;
    margin:4px 0!important;
  }
  body.home-300d .d300-ad-slots a{
    min-height:88px!important;
    padding:5px 2px!important;
  }
  body.home-300d .d300-ad-slots strong{font-size:.43rem!important;line-height:1.08!important}
  body.home-300d .d300-ad-slots small{font-size:.35rem!important;line-height:1.08!important}
  body.home-300d .d300-text-link.d317-ad-inquiry{margin-top:2px!important;padding-top:4px!important}
  body.home-300d .d300-text-link.d317-ad-inquiry strong{font-size:.37rem!important}
  body.home-300d .d300-text-link.d317-ad-inquiry span{font-size:.30rem!important;line-height:1.08!important}
}
