/* TalkMoney Marketplace — Vibrant storefront refresh */
:root{
  --tm-royal:#0757d9;
  --tm-orange:#f47b20;
  --tm-green:#087f49;
  --tm-cream:#fff7e7;
  --tm-purple:#7547d8;
}
body{
  background:
    radial-gradient(circle at 1% 18%,rgba(244,123,32,.15),transparent 18rem),
    radial-gradient(circle at 99% 30%,rgba(7,87,217,.14),transparent 20rem),
    radial-gradient(circle at 3% 90%,rgba(8,127,73,.11),transparent 18rem),
    var(--tm-cream);
}
.tm-ecosystem-bar{background:linear-gradient(90deg,#06274d,#083e72)!important}
header.site{
  background:#fff;
  box-shadow:0 8px 24px rgba(10,42,85,.08);
  position:sticky;top:0;z-index:20
}
.hero{
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 82% 16%,rgba(255,255,255,.25),transparent 10rem),
    linear-gradient(118deg,#063b92 0%,#0757d9 48%,#0a77e8 100%)!important;
  color:#fff;
  border-radius:0 0 34px 34px;
}
.hero:before,.hero:after{content:"";position:absolute;border-radius:999px;pointer-events:none}
.hero:before{width:310px;height:310px;right:-100px;bottom:-160px;background:#f47b20}
.hero:after{width:220px;height:220px;right:150px;bottom:-155px;background:#087f49}
.hero .container{position:relative;z-index:2}
.hero h1{font-size:clamp(2.4rem,5vw,4.6rem)!important;letter-spacing:-.045em;line-height:1.02!important}
.hero .lead{color:#e9f3ff!important;font-size:1.06rem}
.receipt{
  background:rgba(255,255,255,.96)!important;color:#172a46!important;
  border:0!important;border-radius:22px!important;
  box-shadow:0 22px 50px rgba(5,38,92,.22)!important;
}
.r-head{background:linear-gradient(135deg,#fff2df,#fff)!important;border-radius:14px;padding:12px!important}
.hero-cta .btn{min-height:46px;border-radius:13px;font-weight:850}
.btn-gold{background:linear-gradient(135deg,#ff993d,#f47b20)!important;color:#fff!important}
.btn-outline{background:#fff!important;color:#0b4fbd!important;border-color:#d6e4f8!important}
.cat-rail{gap:16px!important}
.cat-card{
  background:#fff!important;border:0!important;border-radius:20px!important;
  box-shadow:0 12px 26px rgba(15,46,92,.08)!important;
  min-height:190px;position:relative;overflow:hidden;
  transition:transform .16s ease,box-shadow .16s ease
}
.cat-card:hover{transform:translateY(-4px);box-shadow:0 18px 34px rgba(15,46,92,.13)!important}
.cat-card:nth-child(1){background:linear-gradient(145deg,#eef5ff,#fff)!important;border-top:6px solid #0757d9!important}
.cat-card:nth-child(2){background:linear-gradient(145deg,#fff3e8,#fff)!important;border-top:6px solid #f47b20!important}
.cat-card:nth-child(3){background:linear-gradient(145deg,#eefaf4,#fff)!important;border-top:6px solid #087f49!important}
.cat-card .icon{
  width:56px;height:56px;border-radius:16px;display:grid;place-items:center;
  background:#fff;box-shadow:0 8px 18px rgba(15,46,92,.08);font-size:1.6rem
}
.section{position:relative;z-index:1}
#featured{background:transparent!important}
.filters{gap:9px!important}
.chip{
  border-radius:999px!important;padding:10px 15px!important;font-weight:800!important;
  background:#fff!important;border:1px solid #dce6f4!important
}
.chip.active{background:#0757d9!important;color:#fff!important;border-color:#0757d9!important}
#search-box,#price-min,#price-max{
  background:#fff!important;border:1px solid #d7e2f1!important;
  box-shadow:0 6px 15px rgba(15,46,92,.05)
}
.product-card{
  border:0!important;border-radius:20px!important;overflow:hidden!important;
  background:#fff!important;box-shadow:0 12px 28px rgba(15,46,92,.09)!important;
  transition:transform .16s ease,box-shadow .16s ease
}
.product-card:hover{transform:translateY(-5px);box-shadow:0 20px 38px rgba(15,46,92,.14)!important}
.product-thumb{background:linear-gradient(145deg,#edf5ff,#fff6e8)!important}
.product-body h4{font-weight:850!important}
.buy-btn{
  border-radius:12px!important;min-height:44px!important;font-weight:850!important;
  background:linear-gradient(135deg,#0757d9,#0b76ed)!important
}
.product-card:nth-child(4n+2) .buy-btn{background:linear-gradient(135deg,#f47b20,#e8650d)!important}
.product-card:nth-child(4n+3) .buy-btn{background:linear-gradient(135deg,#087f49,#0a9a59)!important}
.product-card:nth-child(4n) .buy-btn{background:linear-gradient(135deg,#7547d8,#8b5cf6)!important}
.tm-money-stage{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.tm-money-stage span{position:absolute;font-weight:900;font-size:clamp(2.4rem,6vw,5rem);opacity:.05;animation:tmMarketFloat 8s ease-in-out infinite}
.tm-money-stage span:nth-child(1){left:1%;top:22%;color:#f47b20}
.tm-money-stage span:nth-child(2){right:1%;top:30%;color:#087f49;animation-delay:-2s}
.tm-money-stage span:nth-child(3){left:2%;bottom:10%;color:#0757d9;animation-delay:-4s}
.tm-money-stage span:nth-child(4){right:2%;bottom:8%;color:#f47b20;animation-delay:-6s}
@keyframes tmMarketFloat{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-16px) rotate(5deg)}}
@media(max-width:720px){
  .hero{border-radius:0 0 24px 24px}
  .hero h1{font-size:2.5rem!important}
}
