/* THB Hero Review Full V3 - compact, balanced, safe image fallback */
.hero-split{
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)!important;
  gap:20px!important;
  align-items:stretch!important;
}
.hero-copy-panel,
.hero-showcase .main-showcase{
  min-height:610px!important;
  height:610px!important;
}
.hero-copy-panel{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  padding:38px!important;
}
.hero-copy-panel h1{
  font-size:clamp(2.7rem,4.5vw,4.15rem)!important;
  line-height:1.01!important;
  margin:14px 0 18px!important;
  max-width:10.5ch!important;
}
.hero-copy-panel .hero-lead{
  max-width:56ch!important;
  margin-bottom:24px!important;
}
.hero-copy-panel .hero-stats{
  margin-top:auto!important;
}
.hero-showcase{
  display:block!important;
  min-width:0;
  height:610px!important;
}
.hero-showcase .main-showcase{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  padding:16px!important;
}
.hero-showcase .showcase-topline{
  flex:0 0 auto;
  min-height:24px;
}
.hero-showcase .showcase-visual{
  position:relative!important;
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  margin:10px 0 12px!important;
  border-radius:22px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(180deg,#edf3ec 0%,#f6f2e9 100%)!important;
}
.hero-showcase .showcase-visual .hero-slide-button{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:18px!important;
  border:0!important;
  background:transparent!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}
.hero-showcase .showcase-visual img,
.hero-showcase .hero-slide-button img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:470px!important;
  min-height:0!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
}
.hero-showcase .hero-placeholder{
  width:min(88%,360px)!important;
  min-height:280px!important;
  padding:28px!important;
  border-radius:20px!important;
  background:linear-gradient(145deg,#f8f4ea,#e7efe6)!important;
  color:#183b2d!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  gap:16px!important;
  box-shadow:none!important;
}
.hero-showcase .hero-placeholder span{
  font-size:.72rem!important;
  letter-spacing:.14em!important;
  color:#758178!important;
}
.hero-showcase .hero-placeholder strong{
  font:700 clamp(1.25rem,2vw,1.7rem)/1.2 Georgia,"Times New Roman",serif!important;
  overflow-wrap:anywhere!important;
}
.hero-showcase .showcase-bottomline{
  flex:0 0 auto!important;
  min-height:48px!important;
  gap:14px!important;
  align-items:flex-end!important;
}
.hero-showcase .showcase-bottomline>div{
  min-width:0!important;
  flex:1 1 auto!important;
}
.hero-showcase .showcase-bottomline strong{
  display:block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.hero-showcase .showcase-bottomline .hero-discount-price,
.hero-showcase .showcase-bottomline>b,
.hero-showcase .showcase-bottomline>strong{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
.hero-showcase .hero-controls{
  position:absolute!important;
  z-index:5!important;
  left:50%!important;
  right:auto!important;
  bottom:68px!important;
  transform:translateX(-50%)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  width:max-content!important;
  max-width:calc(100% - 28px)!important;
  padding:5px 7px!important;
  border:1px solid rgba(255,255,255,.62)!important;
  border-radius:999px!important;
  background:rgba(23,79,55,.82)!important;
  backdrop-filter:blur(10px)!important;
  box-shadow:0 8px 22px rgba(23,79,55,.16)!important;
}
.hero-showcase .hero-controls button{
  min-width:32px!important;
  height:28px!important;
  padding:0 8px!important;
  border:0!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.14)!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:28px!important;
}
.hero-showcase .hero-controls output{
  min-width:38px!important;
  color:#fff!important;
  text-align:center!important;
  font-size:10px!important;
  font-weight:700!important;
}
.hero-showcase .feature-stack{display:none!important}

@media(max-width:1100px){
  .hero-split{grid-template-columns:1fr 1fr!important}
  .hero-copy-panel,.hero-showcase,.hero-showcase .main-showcase{height:570px!important;min-height:570px!important}
  .hero-copy-panel{padding:30px!important}
  .hero-copy-panel h1{font-size:clamp(2.4rem,4.8vw,3.55rem)!important}
  .hero-showcase .showcase-visual img,.hero-showcase .hero-slide-button img{max-height:420px!important}
}
@media(max-width:820px){
  .hero-split{grid-template-columns:1fr!important;gap:14px!important}
  .hero-copy-panel,.hero-showcase,.hero-showcase .main-showcase{height:auto!important;min-height:0!important}
  .hero-copy-panel{padding:24px!important}
  .hero-copy-panel h1{max-width:none!important}
  .hero-copy-panel .hero-stats{margin-top:24px!important}
  .hero-showcase .showcase-visual{aspect-ratio:1.12/1!important;min-height:0!important}
  .hero-showcase .showcase-visual img,.hero-showcase .hero-slide-button img{max-height:none!important}
  .hero-showcase .hero-controls{bottom:66px!important}
}
@media(max-width:520px){
  .hero-copy-panel{padding:20px 18px!important}
  .hero-copy-panel h1{font-size:clamp(2.15rem,12vw,3rem)!important}
  .hero-showcase .main-showcase{padding:12px!important}
  .hero-showcase .showcase-visual{aspect-ratio:1/1.05!important;border-radius:18px!important}
  .hero-showcase .showcase-visual .hero-slide-button{padding:12px!important}
  .hero-showcase .showcase-bottomline strong{font-size:1rem!important}
  .hero-showcase .hero-controls{bottom:62px!important}
}

/* v4: cleaner desktop hero after moving visitor count to header */
@media (min-width:981px){
  .hero-copy-panel,
  .hero-showcase,
  .hero-showcase .main-showcase{
    height:540px!important;
    min-height:540px!important;
  }
  .hero-copy-panel{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    padding:34px 38px!important;
  }
  .hero-copy-panel .hero-lead{margin-top:22px!important;max-width:560px!important}
  .hero-copy-panel .hero-cta-row{margin-top:22px!important}
  .hero-showcase .showcase-visual{min-height:390px!important}
  .hero-showcase .showcase-visual img,
  .hero-showcase .hero-slide-button img{max-height:390px!important}
}


/* v5: refined editorial hero — cleaner, calmer, no headline clipping */
.hero-copy-panel{
  overflow:visible!important;
  justify-content:center!important;
  padding:42px 44px!important;
}
.hero-copy-panel .eyebrow{
  margin:0 0 14px!important;
  color:#64806f!important;
  font-size:.72rem!important;
  font-weight:800!important;
  letter-spacing:.18em!important;
}
.hero-copy-panel h1{
  margin:0!important;
  max-width:13ch!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(2.65rem,3.8vw,3.8rem)!important;
  font-weight:700!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  color:#18281f!important;
  text-wrap:balance!important;
  overflow:visible!important;
}
.hero-copy-panel h1 span{
  color:#247447!important;
  font-style:normal!important;
  font-weight:700!important;
}
.hero-copy-panel .hero-lead{
  max-width:54ch!important;
  margin:24px 0 0!important;
  color:#65756a!important;
  font-size:1rem!important;
  line-height:1.75!important;
}
.hero-copy-panel .hero-cta-row{
  margin-top:26px!important;
  gap:12px!important;
}
.hero-copy-panel .hero-cta-row a{
  min-height:48px!important;
  padding:0 20px!important;
  border-radius:14px!important;
  box-shadow:none!important;
}
.hero-copy-panel .hero-cta-row .primary,
.hero-copy-panel .hero-cta-row a:first-child{
  background:#1f7045!important;
}
.hero-copy-panel .hero-cta-row a:hover{
  transform:translateY(-1px)!important;
}
@media(min-width:981px){
  .hero-copy-panel,
  .hero-showcase,
  .hero-showcase .main-showcase{
    height:520px!important;
    min-height:520px!important;
  }
  .hero-copy-panel{padding:40px 42px!important}
  .hero-showcase .showcase-visual{min-height:372px!important}
  .hero-showcase .showcase-visual img,
  .hero-showcase .hero-slide-button img{max-height:372px!important}
}
@media(max-width:820px){
  .hero-copy-panel{padding:28px 24px!important}
  .hero-copy-panel h1{max-width:12ch!important;font-size:clamp(2.35rem,8.5vw,3.25rem)!important}
  .hero-copy-panel .hero-lead{font-size:.96rem!important;line-height:1.68!important}
}
@media(max-width:520px){
  .hero-copy-panel{padding:24px 20px!important}
  .hero-copy-panel h1{max-width:11ch!important;font-size:clamp(2.15rem,10.8vw,2.8rem)!important;line-height:1.03!important}
  .hero-copy-panel .hero-lead{margin-top:18px!important;font-size:.93rem!important}
  .hero-copy-panel .hero-cta-row{margin-top:20px!important}
}
