/* ============================================================
   TINY HOUSE MARKET — Fixes for Furniture theme
   ============================================================ */

/* ====== Logo resize ====== */
header#header .logo,
#_desktop_logo img,
.header-top .logo,
.logo img {
  max-height: 64px !important;
  width: auto !important;
}

/* Header layout */
header#header {
  background: #ffffff !important;
  border-bottom: 1px solid #e8e3da;
  padding: 12px 0 !important;
}

header#header .header-top {
  padding: 0 !important;
  align-items: center;
}

/* ====== Hero slider full width ====== */
#carousel,
.carousel,
.homeslider,
.homeslider-container {
  margin: 0 0 40px !important;
  width: 100% !important;
  max-width: 100% !important;
}

#carousel .carousel-inner img,
.homeslider img {
  width: 100% !important;
  height: auto !important;
  max-height: 600px;
  object-fit: cover;
}

#carousel .carousel-caption,
.homeslider .caption {
  background: rgba(0,0,0,0.4);
  border-radius: 4px;
  padding: 24px 32px !important;
}

#carousel .carousel-caption h2,
.homeslider .caption h2 {
  color: #fff !important;
  font-size: 42px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.5);
}

/* ====== Banner section ====== */
.banner,
#ps-banner,
.ps-banner {
  margin: 40px 0 !important;
  text-align: center;
}

.banner img {
  max-width: 100%;
  height: auto;
  border-radius: 4px;
}

.banner .description,
.banner h2 {
  font-size: 22px !important;
  color: #2a2a2a;
  margin-top: 16px;
}

/* ====== Custom text block ====== */
#custom-text {
  background: #fbfaf6;
  padding: 60px 32px !important;
  text-align: center;
  margin: 40px 0;
  border-radius: 4px;
}

#custom-text h2 {
  font-size: 32px !important;
  margin-bottom: 24px !important;
  color: #1a1a1a;
}

#custom-text p {
  max-width: 720px;
  margin: 0 auto 16px;
  line-height: 1.7;
  color: #4a4a4a;
  font-size: 16px;
}

/* ====== Products section ====== */
.featured-products,
.products-section {
  padding: 60px 0;
}

.featured-products h2,
.tabhome_title h4 {
  text-align: center;
  font-size: 28px !important;
  margin-bottom: 40px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
}

.product-miniature,
.js-product-miniature {
  background: #ffffff !important;
  border: 1px solid #e8e3da !important;
  border-radius: 4px;
  margin-bottom: 28px !important;
  transition: all .3s ease;
  overflow: hidden;
}

.product-miniature:hover,
.js-product-miniature:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}

.product-miniature .thumbnail-container {
  height: 240px !important;
  overflow: hidden !important;
}

.product-miniature .product-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.product-miniature .product-title {
  padding: 16px 16px 4px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-transform: none !important;
}

.product-miniature .product-title a {
  color: #1a1a1a !important;
}

.product-miniature .price {
  padding: 0 16px 16px !important;
  color: #b8860b !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

/* ====== Top bar tabs (Our products) ====== */
.tabhome {
  margin: 0 0 40px !important;
}

.tabhome .tabhome_title {
  border-bottom: 2px solid #e8e3da;
  padding-bottom: 16px;
}

.tabhome .tabhome_title h4 {
  text-align: left !important;
  display: inline-block;
  font-size: 22px !important;
}

/* ====== Footer ====== */
.footer-container {
  background: #1a1a1a !important;
  color: rgba(255,255,255,0.75) !important;
  padding: 60px 0 24px !important;
  margin-top: 60px;
}

.footer-container h3,
.footer-container h4,
.footer-container .h3,
.footer-container .h4 {
  color: #fff !important;
  font-size: 16px !important;
  margin-bottom: 18px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

.footer-container a {
  color: rgba(255,255,255,0.7) !important;
  font-size: 14px !important;
}

.footer-container a:hover {
  color: #b8860b !important;
}

/* ====== Buttons ====== */
.btn-primary,
button[type="submit"]:not(.search) {
  background: #1a1a1a !important;
  border: 1px solid #1a1a1a !important;
  color: #fff !important;
  padding: 12px 28px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
}

.btn-primary:hover,
button[type="submit"]:not(.search):hover {
  background: #b8860b !important;
  border-color: #b8860b !important;
}

/* ====== Mobile ====== */
@media (max-width: 767px) {
  .logo img,
  #_desktop_logo img {
    max-height: 48px !important;
  }
  #carousel .carousel-caption h2 {
    font-size: 24px !important;
  }
  #custom-text h2 {
    font-size: 24px !important;
  }
}
