:root{
  --pscta-navy:#485a85;
  --pscta-navy-deep:#263a68;
  --pscta-gold:#d6a75e;
  --pscta-dark:#1f2533;
  --pscta-white:#fff;
}

.ps-visa-single__cta-row .ps-smart-online-cta{
  position:relative;
  isolation:isolate;
  min-height:50px;
  padding:8px 12px 8px 10px !important;
  border:1px solid rgba(214,167,94,.62) !important;
  border-radius:16px !important;
  background:
    radial-gradient(circle at 20% 0,rgba(255,255,255,.16),transparent 34%),
    linear-gradient(135deg,var(--pscta-navy-deep),var(--pscta-navy)) !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(38,58,104,.23),0 2px 0 rgba(255,255,255,.12) inset !important;
  display:inline-grid !important;
  grid-template-columns:36px auto 30px;
  align-items:center;
  gap:9px;
  overflow:hidden;
  text-decoration:none !important;
  transform:none;
}

.ps-visa-single__cta-row .ps-smart-online-cta::before{
  content:"";
  position:absolute;
  z-index:-1;
  inset:-60% -30%;
  background:linear-gradient(110deg,transparent 36%,rgba(255,255,255,.19) 48%,transparent 60%);
  transform:translateX(65%);
  transition:transform .7s ease;
}

.ps-visa-single__cta-row .ps-smart-online-cta:hover::before,
.ps-visa-single__cta-row .ps-smart-online-cta:focus-visible::before{
  transform:translateX(-60%);
}

.ps-visa-single__cta-row .ps-smart-online-cta:hover,
.ps-visa-single__cta-row .ps-smart-online-cta:focus-visible{
  color:#fff !important;
  border-color:var(--pscta-gold) !important;
  box-shadow:0 16px 34px rgba(38,58,104,.3),0 0 0 3px rgba(214,167,94,.12) !important;
  transform:translateY(-2px) !important;
}

.ps-smart-online-cta__icon,
.ps-smart-online-cta__arrow{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:11px;
  flex:0 0 auto;
}

.ps-smart-online-cta__icon{
  background:linear-gradient(180deg,#f1c980,var(--pscta-gold));
  color:#263a68;
  box-shadow:0 7px 16px rgba(214,167,94,.27);
}

.ps-smart-online-cta__icon svg{
  width:20px;
  height:20px;
  fill:currentColor;
}

.ps-smart-online-cta__text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  min-width:0;
  line-height:1.2;
}

.ps-smart-online-cta__kicker{
  display:block;
  margin-bottom:2px;
  color:rgba(255,255,255,.7);
  font-size:9px;
  font-weight:500;
  letter-spacing:0;
}

.ps-smart-online-cta__label{
  color:#fff;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}

.ps-smart-online-cta__arrow{
  width:28px;
  height:28px;
  color:#fff;
  background:rgba(255,255,255,.1);
}

.ps-smart-online-cta__arrow svg{
  width:17px;
  height:17px;
  fill:currentColor;
  transform:scaleX(-1);
}

/* Desktop: primary CTA is visually larger than the utility pills. */
@media (min-width:768px){
  .ps-visa-single__cta-row .ps-smart-online-cta{
    margin-inline-start:4px;
    min-width:205px;
  }
}

/* Mobile: turn the action into a full-width primary card. */
@media (max-width:767px){
  .ps-visa-single__cta-row{
    width:100%;
  }

  .ps-visa-single__cta-row .ps-smart-online-cta{
    order:99;
    width:100%;
    min-height:58px;
    margin-top:5px;
    grid-template-columns:40px 1fr 32px;
    border-radius:17px !important;
    padding:9px 10px !important;
    box-shadow:0 14px 30px rgba(38,58,104,.24),0 0 0 1px rgba(214,167,94,.14) inset !important;
  }

  .ps-smart-online-cta__icon{
    width:40px;
    height:40px;
    border-radius:13px;
  }

  .ps-smart-online-cta__label{
    font-size:14px;
  }

  .ps-smart-online-cta__kicker{
    font-size:10px;
  }
}

.ps-smart-online-cta-float{
  display:none;
}

@media (max-width:767px){
  .ps-smart-online-cta-float{
    position:fixed;
    z-index:9990;
    left:12px;
    right:12px;
    bottom:max(12px,env(safe-area-inset-bottom));
    display:block;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(18px) scale(.985);
    transition:opacity .24s ease,transform .24s ease,visibility .24s ease;
  }

  .ps-smart-online-cta-float.is-visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0) scale(1);
  }

  .ps-smart-online-cta-float__link{
    direction:rtl;
    display:grid;
    grid-template-columns:18px 1fr 34px;
    align-items:center;
    gap:10px;
    min-height:58px;
    padding:8px 12px 8px 10px;
    border:1px solid rgba(214,167,94,.72);
    border-radius:18px;
    background:linear-gradient(135deg,#263a68,#485a85);
    color:#fff !important;
    text-decoration:none !important;
    box-shadow:0 18px 42px rgba(20,31,58,.32),0 0 0 1px rgba(255,255,255,.08) inset;
    backdrop-filter:blur(12px);
  }

  .ps-smart-online-cta-float__pulse{
    position:relative;
    width:10px;
    height:10px;
    justify-self:center;
    border-radius:999px;
    background:var(--pscta-gold);
    box-shadow:0 0 0 6px rgba(214,167,94,.14);
  }

  .ps-smart-online-cta-float__pulse::after{
    content:"";
    position:absolute;
    inset:-6px;
    border:1px solid rgba(214,167,94,.55);
    border-radius:inherit;
    animation:psctaPulse 2.2s ease-out infinite;
  }

  .ps-smart-online-cta-float__copy{
    display:flex;
    flex-direction:column;
    line-height:1.25;
  }

  .ps-smart-online-cta-float__copy small{
    margin-bottom:2px;
    font-size:10px;
    color:rgba(255,255,255,.68);
  }

  .ps-smart-online-cta-float__copy strong{
    font-size:14px;
    font-weight:850;
    color:#fff;
  }

  .ps-smart-online-cta-float__chevron{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:11px;
    background:linear-gradient(180deg,#f1c980,var(--pscta-gold));
    color:#263a68;
  }

  .ps-smart-online-cta-float__chevron svg{
    width:18px;
    height:18px;
    fill:currentColor;
    transform:scaleX(-1);
  }

  @keyframes psctaPulse{
    0%{opacity:.8;transform:scale(.7)}
    75%,100%{opacity:0;transform:scale(1.55)}
  }
}

@media (prefers-reduced-motion:reduce){
  .ps-visa-single__cta-row .ps-smart-online-cta,
  .ps-visa-single__cta-row .ps-smart-online-cta::before,
  .ps-smart-online-cta-float{
    transition:none !important;
  }
  .ps-smart-online-cta-float__pulse::after{
    animation:none !important;
  }
}
