/* =============================================================
   319D — UTILITY RAIL + QUIETER ADS + ABOUT CUE
   Presentation-only homepage polish. No backend/member/vendor/realtor/admin/data logic.
   ============================================================= */

/* Tetris-fit left rail: helpful utility content absorbs the recovered height,
   while the four paid-ad slots become intentionally smaller and secondary. */
body.home-300d .d300-left-column{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:0!important;
}
body.home-300d .d319-utility-card{
  flex:1 1 auto!important;
  min-height:205px!important;
  padding:14px 13px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:10px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 18% 15%,rgba(121,145,118,.20),transparent 38%),
    linear-gradient(150deg,rgba(25,21,29,.985),rgba(57,40,59,.97) 52%,rgba(42,62,54,.97))!important;
  border-color:rgba(191,151,111,.52)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 10px 22px rgba(0,0,0,.22)!important;
}
body.home-300d .d319-utility-card>.eyebrow{color:#d9aa78!important}
body.home-300d .d319-utility-title{
  margin:0!important;
  font-family:'Fraunces',Georgia,serif!important;
  font-size:1.18rem!important;
  line-height:1.05!important;
  color:#f2e8df!important;
}
body.home-300d .d319-tools{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  align-items:stretch!important;
}
body.home-300d .d319-calendar,
body.home-300d .d319-clock{
  min-width:0!important;
  border:1px solid rgba(212,179,145,.36)!important;
  border-radius:10px!important;
  overflow:hidden!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 6px 14px rgba(0,0,0,.22)!important;
}
body.home-300d .d319-calendar{
  display:grid!important;
  grid-template-rows:auto 1fr auto!important;
  text-align:center!important;
  background:#eadfd3!important;
  color:#2b2429!important;
}
body.home-300d .d319-calendar-month{
  display:block!important;
  padding:5px 4px!important;
  background:linear-gradient(100deg,#6a425f,#536c5e)!important;
  color:#fff6ed!important;
  font-size:.62rem!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
}
body.home-300d .d319-calendar-day{
  display:grid!important;
  place-items:center!important;
  min-height:56px!important;
  font-family:'Fraunces',Georgia,serif!important;
  font-size:2.15rem!important;
  line-height:1!important;
  color:#493744!important;
}
body.home-300d .d319-calendar-weekday{
  padding:3px 4px 6px!important;
  color:#6b5c61!important;
  font-size:.59rem!important;
  font-weight:800!important;
}
body.home-300d .d319-clock{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  padding:9px 6px!important;
  text-align:center!important;
  background:linear-gradient(150deg,rgba(65,46,67,.96),rgba(37,52,47,.98))!important;
}
body.home-300d .d319-clock-label{
  color:#d7b28d!important;
  font-size:.51rem!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
body.home-300d .d319-clock-time{
  margin:6px 0 1px!important;
  font-family:'Fraunces',Georgia,serif!important;
  font-size:1.58rem!important;
  line-height:1!important;
  color:#fff5eb!important;
  white-space:nowrap!important;
}
body.home-300d .d319-clock-ampm{
  color:#b9c8b6!important;
  font-size:.62rem!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
}
body.home-300d .d319-tip{
  margin:0!important;
  padding:9px 10px!important;
  border:1px solid rgba(187,147,108,.29)!important;
  border-radius:9px!important;
  background:rgba(13,12,15,.28)!important;
  color:#dfd5cb!important;
  font-size:.67rem!important;
  line-height:1.28!important;
}
body.home-300d .d319-tip strong{color:#e0ae7b!important}

/* Four useful ad positions, but they no longer visually overpower free Vendor content. */
body.home-300d .d300-left-column .d300-advertise-card{
  flex:0 0 auto!important;
  height:auto!important;
  min-height:0!important;
  padding:12px 12px!important;
}
body.home-300d .d300-left-column .d300-advertise-card h2{
  font-size:1.13rem!important;
  margin:.12rem 0 .25rem!important;
}
body.home-300d .d300-left-column .d300-advertise-card>p{
  font-size:.68rem!important;
  line-height:1.2!important;
  margin:0 0 6px!important;
}
body.home-300d .d300-ad-slots{
  flex:none!important;
  grid-template-rows:repeat(4,52px)!important;
  gap:6px!important;
  margin:7px 0!important;
}
body.home-300d .d300-ad-slots a{
  min-height:52px!important;
  padding:6px 7px!important;
  opacity:.92!important;
}
body.home-300d .d300-ad-slots strong{font-size:.65rem!important}
body.home-300d .d300-ad-slots small{font-size:.56rem!important}
body.home-300d .d300-text-link.d317-ad-inquiry{
  margin-top:4px!important;
  padding-top:6px!important;
}
body.home-300d .d300-text-link.d317-ad-inquiry strong{font-size:.66rem!important}
body.home-300d .d300-text-link.d317-ad-inquiry span{font-size:.56rem!important}

/* Make the About teaser obviously interactive without turning it into another big button. */
body.home-300d .d319-about-link{position:relative!important}
body.home-300d .d319-about-link .d319-read-more{
  display:inline-flex!important;
  align-items:center!important;
  margin-top:7px!important;
  color:#dfae79!important;
  font-size:.72rem!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
body.home-300d .d319-about-link:hover .d319-read-more,
body.home-300d .d319-about-link:focus-visible .d319-read-more{color:#f0c99f!important}

@media(max-width:850px){
  body.home-300d .d319-utility-card{min-height:170px!important;padding:10px!important;gap:7px!important}
  body.home-300d .d319-utility-title{font-size:.86rem!important}
  body.home-300d .d319-calendar-day{min-height:42px!important;font-size:1.6rem!important}
  body.home-300d .d319-clock-time{font-size:1.12rem!important}
  body.home-300d .d319-tip{font-size:.54rem!important;padding:7px!important}
  body.home-300d .d300-ad-slots{grid-template-rows:repeat(4,46px)!important}
  body.home-300d .d300-ad-slots a{min-height:46px!important}
}

@media(max-width:650px){
  body.home-300d .d300-left-column{gap:4px!important}
  body.home-300d .d319-utility-card{
    min-height:156px!important;
    padding:5px 4px!important;
    gap:4px!important;
    border-radius:7px!important;
  }
  body.home-300d .d319-utility-card>.eyebrow{font-size:.36rem!important;letter-spacing:.05em!important}
  body.home-300d .d319-utility-title{font-size:.54rem!important;line-height:1.02!important}
  body.home-300d .d319-tools{
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
  body.home-300d .d319-calendar,
  body.home-300d .d319-clock{border-radius:5px!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:30px!important;
    font-size:1rem!important;
  }
  body.home-300d .d319-calendar-weekday{
    padding:2px!important;
    font-size:.31rem!important;
    line-height:1.05!important;
  }
  body.home-300d .d319-clock{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:.73rem!important;margin:2px 0 0!important}
  body.home-300d .d319-clock-ampm{font-size:.31rem!important}
  body.home-300d .d319-tip{
    padding:4px!important;
    border-radius:5px!important;
    font-size:.31rem!important;
    line-height:1.15!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(4,42px)!important;
    gap:3px!important;
    margin:3px 0!important;
  }
  body.home-300d .d300-ad-slots a{
    min-height:42px!important;
    padding:3px 1px!important;
  }
  body.home-300d .d300-ad-slots strong{font-size:.38rem!important;line-height:1.05!important}
  body.home-300d .d300-ad-slots small{font-size:.31rem!important;line-height:1.05!important}
  body.home-300d .d300-text-link.d317-ad-inquiry{margin-top:2px!important;padding-top:3px!important}
  body.home-300d .d300-text-link.d317-ad-inquiry strong{font-size:.36rem!important}
  body.home-300d .d300-text-link.d317-ad-inquiry span{font-size:.29rem!important;line-height:1.08!important}

  body.home-300d .d319-about-link .d319-read-more{font-size:.55rem!important;margin-top:5px!important}
}
