/* V22 hotfix: product preview cards, grid spacing and cache-busted layout polish */
.product-mockups-section{
  width:min(var(--v19-page-max, 1240px), calc(100vw - 96px)) !important;
  max-width:var(--v19-page-max, 1240px) !important;
  margin:80px auto !important;
  padding:20px 0 10px !important;
  overflow:visible !important;
}
.product-mockups-section .section-title{
  max-width:860px !important;
  margin:0 auto 42px !important;
  text-align:center !important;
}
.fixed-product-grid,
.mockup-grid{
  display:grid !important;
  grid-template-columns:minmax(360px,1.12fr) minmax(260px,.94fr) minmax(260px,.94fr) !important;
  gap:22px !important;
  align-items:stretch !important;
  width:100% !important;
}
.mockup-grid.three{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
.premium-mockups .featured-mockup{grid-row:span 2 !important;}
.product-mockup{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  overflow:hidden !important;
  padding:26px !important;
  min-height:260px !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(30,231,255,.16), transparent 35%),
    linear-gradient(145deg, rgba(7,18,39,.96), rgba(18,14,46,.9)) !important;
  border:1px solid rgba(129,201,255,.24) !important;
  box-shadow:0 24px 70px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.product-mockup > *{position:relative !important; z-index:2 !important;}
.product-mockup:after{
  content:'' !important;
  position:absolute !important;
  inset:auto -15% -35% 20% !important;
  height:160px !important;
  background:radial-gradient(circle, rgba(105,100,255,.18), transparent 65%) !important;
  pointer-events:none !important;
}
.mockup-top{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:16px !important;
  margin:0 0 4px !important;
  min-width:0 !important;
}
.mockup-top strong{
  display:block !important;
  color:#fff !important;
  font-size:18px !important;
  line-height:1.15 !important;
  letter-spacing:-.02em !important;
}
.mockup-top span{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  color:#8feeff !important;
  font-size:11px !important;
  text-transform:uppercase !important;
  font-weight:900 !important;
  letter-spacing:.08em !important;
  border:1px solid rgba(143,238,255,.24) !important;
  border-radius:999px !important;
  padding:7px 10px !important;
  background:rgba(143,238,255,.075) !important;
}
.mock-chat-stream{display:grid !important; gap:12px !important;}
.mock-bubble{
  display:block !important;
  width:fit-content !important;
  max-width:100% !important;
  border-radius:18px 18px 6px 18px !important;
  padding:14px 16px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.11) !important;
  color:#e9f2ff !important;
  line-height:1.5 !important;
}
.mock-bubble.ai{
  border-radius:18px 18px 18px 6px !important;
  background:linear-gradient(145deg,rgba(30,231,255,.14),rgba(167,60,255,.13)) !important;
  border-color:rgba(143,238,255,.22) !important;
}
.mock-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:9px !important;
  margin:2px 0 0 !important;
}
.mock-actions span,
.risk-stack span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  border-radius:999px !important;
  padding:8px 11px !important;
  background:rgba(255,255,255,.075) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  color:#fff !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
}
.mock-list{
  display:grid !important;
  gap:10px !important;
  margin:4px 0 0 !important;
  padding:0 !important;
  list-style:none !important;
}
.mock-list li{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:12px 13px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.052) !important;
  border:1px solid rgba(255,255,255,.09) !important;
  color:#d9e6fb !important;
  line-height:1.25 !important;
}
.mock-list b{
  flex:0 0 30px !important;
  display:grid !important;
  place-items:center !important;
  width:30px !important;
  height:30px !important;
  border-radius:10px !important;
  background:rgba(143,238,255,.13) !important;
  color:#8feeff !important;
}
.quote-preview-lines{display:grid !important; gap:12px !important; margin-top:4px !important;}
.quote-preview-lines span{display:block !important; height:13px !important; border-radius:999px !important; background:rgba(255,255,255,.12) !important;}
.quote-preview-lines span:nth-child(1){width:100% !important;}
.quote-preview-lines span:nth-child(2){width:84% !important;}
.quote-preview-lines span:nth-child(3){width:62% !important;}
.quote-preview-lines strong{display:block !important; margin-top:8px !important; color:#fff !important; border-radius:16px !important; padding:14px !important; background:rgba(69,255,174,.09) !important; border:1px solid rgba(69,255,174,.22) !important;}
.finance-dials{display:grid !important; grid-template-columns:1fr 1fr !important; gap:12px !important; margin-top:4px !important;}
.finance-dials div{display:grid !important; place-items:center !important; text-align:center !important; min-height:110px !important; border-radius:20px !important; background:radial-gradient(circle at 50% 0,rgba(143,238,255,.18),rgba(255,255,255,.05)) !important; border:1px solid rgba(143,238,255,.16) !important;}
.finance-dials b{display:block !important; font-size:26px !important; color:#fff !important;}
.finance-dials span,.mock-note{display:block !important; color:#aebad0 !important; line-height:1.5 !important;}
.risk-stack{display:flex !important; flex-wrap:wrap !important; gap:9px !important; margin-top:4px !important;}
.risk-stack .amber{border-color:rgba(255,195,77,.32) !important; background:rgba(255,195,77,.1) !important;}
.risk-stack .red{border-color:rgba(255,86,124,.32) !important; background:rgba(255,86,124,.1) !important;}
.risk-stack .green{border-color:rgba(69,255,174,.28) !important; background:rgba(69,255,174,.09) !important;}
.platform-product-proof .product-mockup{min-height:230px !important;}
@media(max-width:1180px){
  .product-mockups-section{width:min(100%, calc(100vw - 48px)) !important;}
  .fixed-product-grid,.mockup-grid,.mockup-grid.three{grid-template-columns:1fr 1fr !important;}
  .premium-mockups .featured-mockup{grid-row:auto !important;}
}
@media(max-width:760px){
  .product-mockups-section{width:min(100%, calc(100vw - 32px)) !important; margin:56px auto !important;}
  .fixed-product-grid,.mockup-grid,.mockup-grid.three{grid-template-columns:1fr !important;}
  .product-mockup{min-height:0 !important; padding:22px !important; border-radius:22px !important;}
  .mockup-top{align-items:flex-start !important; flex-direction:column !important; gap:9px !important;}
  .finance-dials{grid-template-columns:1fr !important;}
}
