/* =========================================================
   SINEM / HOME
   Homepage sections & flow
========================================================= */

/* =========================
   HOME GRID WRAP
========================= */

.home-grid-wrap{
  padding-top:18px;
}

.home-grid{
  align-items:stretch;
}

.blog-sidebar{
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}

.featured-listings{
  height:100%;
  display:flex;
  flex-direction:column;
}

/* =========================
   BLOG BLOCK
========================= */

.home-blog-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.blog-sidebar .section-heading{
  margin-bottom:14px;
}

/* =========================
   LISTINGS BLOCK
========================= */

.featured-listings{
  padding:22px;
}

.listing-slider{
  margin-top:6px;
}

/* =========================
   ABOUT SECTION
========================= */

.home-about{
  position:relative;
  margin-top:0;
  padding:42px;
  overflow:hidden;
}

.home-about::before{
  content:"";
  position:absolute;
  top:-60px;
  right:-60px;
  width:220px;
  height:220px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(199,170,152,.25), transparent 70%);
  pointer-events:none;
}

.home-about-inner{
  position:relative;
  z-index:2;
}
.home-grid-wrap,
.home-testimonials,
.home-about{
  position:relative;
  z-index:1;
}

.home-about-name{
  font-family:var(--font-heading);
  font-size:1.4rem;
  color:var(--color-heading);
  margin-bottom:10px;
}

.home-about-text{
  color:var(--color-text);
  line-height:1.75;
  font-size:1.02rem;
}

.home-about-button{
  margin-top:20px;
}

/* =========================
   TESTIMONIALS SECTION
========================= */

.home-testimonials{
  margin-top:0;
}

.home-testimonials-header{
  margin-bottom:18px;
}

.testimonials-grid{
  margin-top:6px;
}

.testimonial-card{
  position:relative;
}

.testimonial-card::before{
  content:"“";
  position:absolute;
  top:10px;
  left:16px;
  font-size:42px;
  color:rgba(176,141,120,.18);
  font-family:var(--font-heading);
  pointer-events:none;
}

/* =========================
   EMPTY STATE
========================= */

.home-empty-state{
  padding:28px 0;
  text-align:center;
  color:var(--color-text-soft);
}

/* =========================
   SPACING TWEAKS
========================= */

.home-main > section:first-child{
  margin-top:10px;
}

.home-main > section + section{
  position:relative;
  margin-top:20px;
}

.home-main > section + section::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-90px;
  height:120px;
  background:url('../images/ui/section-fade.png') center/cover no-repeat;
  pointer-events:none;
  opacity:.9;
  z-index:0;
}

/* =========================
   MICRO POLISH
========================= */

.home-grid .content-card{
  transition:
    transform var(--transition-base),
    box-shadow var(--transition-base);
}

.home-grid .content-card:hover{
  transform:translateY(-2px);
  box-shadow:0 22px 40px rgba(143,112,93,.12);
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width:1024px){

  .home-about{
    padding:34px;
  }

}

@media (max-width:780px){

  .home-grid-wrap{
    padding-top:14px;
  }

  .featured-listings{
    padding:18px;
  }

  .home-about{
    padding:28px 22px;
    margin-top:var(--section-space-sm);
  }

  .home-about-name{
    font-size:1.3rem;
  }

  .home-about-text{
    font-size:.98rem;
  }

}

@media (max-width:520px){

  .home-about{
    padding:22px 18px;
  }

  .home-about-name{
    font-size:1.2rem;
  }

}
.listings-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.listing-heading-actions {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.home-all-listings-link {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(234,223,215,.95);
  color: #7b675b;
  font-size: 13px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  transition: color .22s ease, transform .22s ease, border-color .22s ease;
}

.home-all-listings-link:hover {
  color: #5f4a3f;
  border-color: rgba(198,164,139,.45);
  transform: translateY(-1px);
}

@media (max-width: 640px) {
  .listings-heading {
    align-items: flex-start;
    flex-direction: column;
  }
}
.featured-listings-cta{
  margin-top:24px;
  text-align:center;
}

.featured-listings-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 28px;
  border-radius:999px;
  background:var(--color-heading);
  color:#fff;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 14px 28px rgba(80,60,50,.16);
  transition:all .25s ease;
}

.featured-listings-cta a:hover{
  transform:translateY(-2px);
  background:var(--color-accent);
  color:#fff;
}
.latest-posts-cta{
  margin-top:24px;
  text-align:center;
}

.latest-posts-cta a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 28px;
  border-radius:999px;
  background:var(--color-heading);
  color:#fff;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 14px 28px rgba(80,60,50,.16);
  transition:all .25s ease;
}

.latest-posts-cta a:hover{
  transform:translateY(-2px);
  background:var(--color-accent);
  color:#fff;
}