/* Forge Compliance shop refresh: cleaner desktop + tablet presentation */
.shop-hero{padding:4.25rem 0 3.5rem;background:radial-gradient(circle at 82% 18%,rgba(255,106,0,.18),transparent 28%),linear-gradient(130deg,#07111c,#10243a)}
.shop-hero .container{max-width:1060px}
.shop-hero h1{max-width:860px;font-size:clamp(2.7rem,5vw,4.8rem);letter-spacing:-.035em;margin-bottom:1.15rem}
.shop-hero .prose{font-size:1.08rem;line-height:1.75;color:#c9d3dc;max-width:760px}
.shop-trust{margin-top:24px;gap:10px 12px}
.shop-trust span{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.11);border-radius:999px;padding:8px 12px;font-size:.9rem;font-weight:800}

.shop-section{padding:4rem 0 5rem;background:linear-gradient(#f4f6f8,#eef2f5)}
.shop-section>.container{max-width:1240px}
.shop-toolbar{display:grid!important;grid-template-columns:minmax(280px,.9fr) minmax(620px,1.8fr);align-items:end!important;gap:30px!important;margin:0 0 18px!important;padding:26px 28px;border-radius:20px;background:#fff;border:1px solid #dde4ea;box-shadow:0 12px 34px rgba(15,30,45,.07)}
.shop-toolbar>div:first-child{min-width:0!important;flex:none!important}
.shop-toolbar>div:first-child h2{font-size:1.75rem;margin:0 0 8px}
.shop-toolbar>div:first-child p{max-width:480px;font-size:.96rem;line-height:1.6;color:#677482}
.shop-toolbar>div:last-child{display:grid!important;grid-template-columns:1.35fr .8fr .8fr!important;gap:14px!important;flex:none!important;min-width:0!important}
.shop-filter{display:block!important;color:#31404c;font-size:.83rem;font-weight:900;letter-spacing:.015em}
.shop-filter input,.shop-filter select{margin:7px 0 0!important;min-width:0!important;height:48px;border-radius:12px;border:1px solid #cfd8e1;background:#f9fbfc;box-shadow:none}
.shop-filter input:focus,.shop-filter select:focus{background:#fff}
#shop-result-count{margin:0 0 20px!important;padding:0 4px;color:#687684!important;font-size:.92rem}

.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.product-card{padding:22px;border-radius:18px;box-shadow:0 10px 28px rgba(15,27,39,.07);border-color:#dfe5ea}
.product-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(15,27,39,.11)}
.product-icon{width:58px;height:58px;border-radius:14px;margin-bottom:18px;font-size:.9rem}
.product-badge{top:16px;right:16px;font-size:.68rem;padding:5px 9px}
.product-category{font-size:.72rem;margin-bottom:5px}
.product-copy h3{font-size:1.16rem;line-height:1.25;margin-bottom:10px}
.product-copy>p:not(.product-category){font-size:.92rem;line-height:1.55;margin-bottom:14px;color:#60707f}
.product-copy ul{margin-bottom:18px}
.product-copy li{font-size:.88rem;line-height:1.45;margin:6px 0;padding-left:20px}
.product-footer{padding-top:16px;gap:12px}
.product-footer .price{font-size:1.4rem}
.product-footer small{font-size:.76rem}
.product-footer .btn{padding:.72rem 1rem;min-width:96px}
.shop-note{margin-top:34px;padding:28px 30px;border-radius:18px}
.shop-note h2{font-size:1.55rem}

@media(min-width:901px) and (max-width:1120px){
  .shop-toolbar{grid-template-columns:1fr}
  .shop-toolbar>div:last-child{grid-template-columns:1.3fr 1fr 1fr!important}
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:900px){
  .shop-hero{padding:2.7rem 0 2.3rem}
  .shop-hero h1{font-size:clamp(2.2rem,8vw,3.4rem)}
  .shop-toolbar{display:block!important;padding:18px!important;border-radius:16px}
  .shop-toolbar>div:last-child{grid-template-columns:1fr 1fr!important;margin-top:16px}
  .shop-toolbar .shop-filter:first-child{grid-column:1/-1}
  .shop-grid{grid-template-columns:1fr!important;gap:16px}
}

@media(max-width:560px){
  .shop-hero{padding:2.25rem 0 1.9rem}
  .shop-trust{gap:8px}
  .shop-trust span{font-size:.78rem;padding:6px 9px}
  .shop-section{padding:2.2rem 0 3.2rem}
  .shop-toolbar{padding:15px!important;margin-bottom:12px!important}
  .shop-toolbar>div:last-child{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .shop-filter input,.shop-filter select{height:44px;padding:.65rem .75rem}
  #shop-result-count{margin-bottom:12px!important}
  .product-card{padding:18px}
  .product-copy ul{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
  .product-footer .btn{min-width:108px}
  .shop-note{display:block;padding:22px}
  .shop-note .btn{margin-top:16px;width:100%}
}
