/* Sheeltech CTA Elementor styles */
.st-cta-section{ width:100%; padding:50px 5%; }
.st-cta-wrap{
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap:26px;
  align-items:stretch;
  max-width:1600px;
  margin:0 auto;
}
.st-cta-card{
  position:relative;
  display:flex; justify-content:space-between; align-items:center;
  padding:18px 20px;
  min-height:92px;
  border-radius:12px;
  color:#fff; text-decoration:none;
  box-shadow: 0 8px 18px rgba(0,0,0,.14), 0 2px 6px rgba(0,0,0,.08);
  overflow:hidden;
  background-size: 250% 250%;
  animation: st-gradient-drift 10s ease infinite;
  outline:none; border:0;
  cursor:pointer;
}
.st-cta-card:hover{ transform: translateY(-2px); filter:saturate(1.06); box-shadow: 0 12px 24px rgba(0,0,0,.22); }
.st-cta-card::after{
  content:""; position:absolute; inset:0;
  background: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.22) 45%, transparent 60%);
  transform: translateX(-120%); transition: transform .7s ease; pointer-events:none; mix-blend-mode: screen;
}
.st-cta-card:hover::after{ transform: translateX(120%); }

.st-cta-content{ display:flex; align-items:center; gap:14px; }
.st-cta-icon{ width:48px; height:48px; border-radius:10px; background: rgba(255,255,255,.22); display:grid; place-items:center; }
.st-cta-icon svg{ width:24px; height:24px; }
.st-cta-copy{ display:flex; flex-direction:column; line-height:1.06; }
.st-cta-kicker{ font-size:12px; font-weight:700; letter-spacing:.15px; text-transform:uppercase; opacity:.92; }
.st-cta-title{ font-size:18px; font-weight:900; letter-spacing:.2px; white-space:nowrap; }
.st-cta-right{ display:flex; align-items:center; gap:8px; }
.st-cta-badge{ font-size:11px; font-weight:800; letter-spacing:.25px; padding:6px 8px; border-radius:999px; background: rgba(255,255,255,.22); border:1px solid rgba(255,255,255,.45); white-space:nowrap; }
.st-cta-arrow{ width:36px; height:36px; border-radius:10px; display:grid; place-items:center; background: rgba(255,255,255,.22); }
.st-cta-arrow svg{ width:18px; height:18px; }

@keyframes st-gradient-drift{ 0%{background-position:0% 50%} 50%{background-position:100% 50%} 100%{background-position:0% 50%} }

/* Tooltips */
.st-cta-card[data-tooltip]::before{
  content: attr(data-tooltip);
  position:absolute; bottom: calc(100% + 10px); left: 16px;
  background: rgba(22,22,22,.96); color:#fff; font-size:12px; font-weight:600;
  padding:8px 10px; border-radius:8px; opacity:0; transform: translateY(6px);
  pointer-events:none; transition: opacity .18s ease, transform .18s ease; white-space:nowrap; z-index:3;
}
.st-cta-card[data-tooltip]::after{
  content:""; position:absolute; bottom: calc(100% + 4px); left: 26px;
  width:10px; height:10px; background: rgba(22,22,22,.96); transform: rotate(45deg);
  opacity:0; transition: opacity .18s ease; z-index:3;
}
.st-cta-card:hover::before, .st-cta-card:hover::after, .st-cta-card:focus-visible::before, .st-cta-card:focus-visible::after{ opacity:1; }

/* Modal */
.st-cta-modal{ position: fixed; inset:0; display:none; place-items: center; background: rgba(0,0,0,.45); z-index: 9999; padding: 20px; }
.st-cta-modal[open]{ display:grid; }
.st-cta-sheet{ width:min(560px, 94vw); background:#fff; border-radius:14px; box-shadow: 0 24px 60px rgba(0,0,0,.25); overflow:hidden; transform: translateY(10px); animation: st-enter .18s ease forwards; }
@keyframes st-enter{ to{ transform: translateY(0); } }
.st-cta-modal-head{ padding: 16px 18px; background: linear-gradient(90deg, #0ea8d1, #6a5af9); color:#fff; display:flex; align-items:center; justify-content:space-between; }
.st-cta-close{ width:34px; height:34px; border:0; background: rgba(255,255,255,.22); color:#fff; border-radius:8px; cursor:pointer; }
.st-cta-form{ padding: 18px; display:grid; gap:12px; }
.st-cta-form label{ font-weight:700; font-size:13px; color:#0d1b2a; display:grid; gap:8px; }
.st-cta-form input, .st-cta-form select, .st-cta-form textarea{ width:100%; border:1px solid #d7e3fc; border-radius:10px; padding:12px 12px; font-size:14px; outline:none; }
.st-cta-form textarea{ min-height:96px; resize:vertical; }
.st-cta-actions{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.st-cta-wa{ background:#f1f5ff; color:#0d1b2a; border:0; border-radius:10px; padding:12px 16px; font-weight:800; cursor:pointer; }
.st-cta-submit{ background:#0ea8d1; color:#fff; border:0; border-radius:10px; padding:12px 16px; font-weight:800; cursor:pointer; }

/* Responsive */
@media (max-width: 980px){
  .st-cta-wrap{ grid-template-columns: 1fr; gap:18px; }
  .st-cta-title{ white-space: normal; }
}

/* === Sheeltech CTA: class-based column layout (replaces inline style) === */
.st-cta-wrap.st-cols-1 { grid-template-columns: 1fr; }
.st-cta-wrap.st-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.st-cta-wrap.st-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.st-cta-wrap.st-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

/* Force one card per row on smaller screens */
@media (max-width: 980px){
  .st-cta-wrap{ grid-template-columns: 1fr !important; }
}
