/* SYSADMIN.KM.UA v2.1.0.1 — Unified CTA Design System */
:root{
  --wn-cta-cyan:#16c9ef;
  --wn-cta-blue:#2478ff;
  --wn-cta-text:#f8fcff;
  --wn-cta-border:rgba(35,207,255,.42);
  --wn-cta-bg:rgba(6,20,36,.78);
  --wn-cta-radius:9px;
  --wn-cta-shadow:0 12px 34px rgba(20,139,238,.22);
}

/* One interaction language for every public CTA. Existing class names are
   intentionally retained so this patch does not change Blade behaviour. */
.infra-header-cta,
.infra-btn-primary,
#services .wn-service-link,
#call-to-action .wn-approach-btn,
#pricing .wn-price-cta,
#faq-2 .wn-faq-cta,
#submit-btn{
  box-sizing:border-box;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:48px;
  padding:0 20px;
  border:1px solid rgba(50,211,255,.24);
  border-radius:var(--wn-cta-radius);
  background:linear-gradient(110deg,var(--wn-cta-cyan) 0%,var(--wn-cta-blue) 100%);
  color:var(--wn-cta-text)!important;
  font-family:Jost,sans-serif;
  font-size:13px;
  font-weight:800;
  line-height:1;
  letter-spacing:.25px;
  text-decoration:none!important;
  white-space:nowrap;
  box-shadow:var(--wn-cta-shadow);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,border-color .22s ease;
}

.infra-header-cta i,
.infra-btn-primary i,
#services .wn-service-link i,
#call-to-action .wn-approach-btn i,
#pricing .wn-price-cta i,
#faq-2 .wn-faq-cta i{
  color:inherit!important;
  font-size:14px;
  line-height:1;
  transition:transform .22s ease;
}

.infra-header-cta:hover,
.infra-btn-primary:hover,
#services .wn-service-link:hover,
#call-to-action .wn-approach-btn:hover,
#pricing .wn-price-cta:hover,
#faq-2 .wn-faq-cta:hover,
#submit-btn:hover{
  color:#fff!important;
  filter:brightness(1.08);
  transform:translateY(-2px);
  border-color:rgba(112,231,255,.62);
  box-shadow:0 17px 42px rgba(20,139,238,.32),0 0 0 1px rgba(42,214,255,.07) inset;
}

.infra-header-cta:hover i,
.infra-btn-primary:hover i,
#services .wn-service-link:hover i,
#call-to-action .wn-approach-btn:hover i,
#pricing .wn-price-cta:hover i,
#faq-2 .wn-faq-cta:hover i{transform:translate(2px,-2px)}

.infra-header-cta:focus-visible,
.infra-btn:focus-visible,
#services .wn-service-link:focus-visible,
#call-to-action .wn-approach-btn:focus-visible,
#pricing .wn-price-cta:focus-visible,
#faq-2 .wn-faq-cta:focus-visible,
#submit-btn:focus-visible{
  outline:2px solid #7eeaff;
  outline-offset:3px;
}

/* Primary hero CTA remains deliberately more prominent. */
.infra-actions .infra-btn-primary{min-height:52px;padding:0 24px}

/* Header CTA: same system, compact footprint. */
.infra-header-cta{min-height:42px;padding:0 17px;margin-left:25px}

/* Service cards: compact variant, no pill shape. */
#services .wn-service-link{min-height:42px;padding:0 16px;gap:10px;align-self:flex-start}

/* Commercial CTAs retain their layout role while sharing the visual system. */
#call-to-action .wn-approach-btn{min-height:48px;padding:0 20px}
#pricing .wn-price-cta{min-height:48px;padding:0 20px;margin-top:auto;align-self:stretch}
#faq-2 .wn-faq-cta{min-height:48px;padding:0 20px;gap:12px}

/* Secondary action belongs to the same geometry but stays visually subordinate. */
.infra-btn-ghost{
  min-height:52px;
  padding:0 24px;
  border:1px solid var(--wn-cta-border);
  border-radius:var(--wn-cta-radius);
  background:var(--wn-cta-bg);
  color:#bcefff!important;
  box-shadow:0 10px 28px rgba(0,0,0,.12);
  transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.infra-btn-ghost:hover{
  color:#fff!important;
  transform:translateY(-2px);
  border-color:#24d8ff;
  background:rgba(10,42,66,.92);
  box-shadow:0 14px 34px rgba(12,137,192,.16);
}

/* Future contact form submit button inherits the system without Bootstrap blue. */
#submit-btn{min-height:48px;padding:0 22px;margin-top:16px!important}

@media (max-width:767.98px){
  .infra-actions{gap:10px}
  .infra-actions .infra-btn{min-height:48px;padding:0 18px}
  #services .wn-service-link,
  #call-to-action .wn-approach-btn,
  #faq-2 .wn-faq-cta{min-height:46px}
  #pricing .wn-price-cta{min-height:48px}
}

@media (prefers-reduced-motion:reduce){
  .infra-header-cta,.infra-btn,#services .wn-service-link,#call-to-action .wn-approach-btn,#pricing .wn-price-cta,#faq-2 .wn-faq-cta,#submit-btn,
  .infra-header-cta i,.infra-btn i,#services .wn-service-link i,#call-to-action .wn-approach-btn i,#pricing .wn-price-cta i,#faq-2 .wn-faq-cta i{transition:none!important}
}
