/* v58: CTA with icon-only social links. Keep all sections above CTA unchanged. */
.brand-v4-cta.brand-v4-cta-v58{
  max-width:1500px!important;
  margin:clamp(34px,4vw,56px) auto 0!important;
  padding:clamp(24px,3vw,40px) clamp(28px,4vw,66px)!important;
  border-radius:32px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.55fr)!important;
  align-items:center!important;
  gap:clamp(24px,4vw,54px)!important;
  background:
    radial-gradient(circle at 12% 12%, rgba(255,190,92,.22), transparent 28%),
    radial-gradient(circle at 95% 20%, rgba(76,125,255,.20), transparent 32%),
    linear-gradient(135deg,#fffaf0 0%,#eef8f7 52%,#eaf1ff 100%)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:0 22px 62px rgba(15,23,42,.11)!important;
  color:#111827!important;
  position:relative!important;
  overflow:hidden!important;
}

.brand-v4-cta.brand-v4-cta-v58::before{
  content:"";
  position:absolute;
  inset:auto 0 0 0;
  height:5px;
  background:linear-gradient(90deg,#21c4bb,#4c7dff,#ffb84d,#ff6b8a)!important;
  opacity:.9;
}

.brand-v4-cta-v58 .brand-v4-cta-copy,
.brand-v58-social-panel{
  position:relative!important;
  z-index:1!important;
}

.brand-v4-cta-v58 .brand-v4-cta-copy span{
  display:inline-flex!important;
  margin:0 0 10px!important;
  color:#167b78!important;
  font-size:13px!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}

.brand-v4-cta-v58 h2{
  margin:0!important;
  color:#111827!important;
  font-size:clamp(30px,3.1vw,52px)!important;
  line-height:1.12!important;
  letter-spacing:-.04em!important;
  font-weight:950!important;
  text-shadow:none!important;
}

.brand-v4-cta-v58 p{
  max-width:980px!important;
  margin:14px 0 0!important;
  color:#334155!important;
  font-size:clamp(22px,1.9vw,30px)!important;
  line-height:1.55!important;
  font-weight:850!important;
  text-shadow:none!important;
}

.brand-v58-social-panel{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(16px,2vw,24px)!important;
  min-height:128px!important;
  padding:22px 24px!important;
  border-radius:30px!important;
  background:rgba(255,255,255,.56)!important;
  border:1px solid rgba(15,23,42,.08)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 14px 36px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(12px)!important;
}

.brand-v58-social-icon{
  width:72px!important;
  height:72px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:24px!important;
  background:#fff!important;
  text-decoration:none!important;
  box-shadow:0 14px 30px rgba(15,23,42,.14)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease!important;
}

.brand-v58-social-icon svg{
  width:54px!important;
  height:54px!important;
  display:block!important;
  filter:drop-shadow(0 4px 8px rgba(15,23,42,.12));
}

.brand-v58-social-icon:hover{
  transform:translateY(-5px) scale(1.04)!important;
  box-shadow:0 20px 40px rgba(15,23,42,.20)!important;
  filter:saturate(1.06)!important;
}

.brand-v58-line:hover{box-shadow:0 20px 40px rgba(6,199,85,.28)!important;}
.brand-v58-facebook:hover{box-shadow:0 20px 40px rgba(24,119,242,.27)!important;}
.brand-v58-youtube:hover{box-shadow:0 20px 40px rgba(255,0,51,.25)!important;}

@media (max-width:980px){
  .brand-v4-cta.brand-v4-cta-v58{
    grid-template-columns:1fr!important;
  }
  .brand-v58-social-panel{
    justify-content:flex-start!important;
    max-width:420px!important;
  }
}

@media (max-width:640px){
  .brand-v4-cta.brand-v4-cta-v58{
    margin-top:28px!important;
    border-radius:26px!important;
    padding:26px 20px 30px!important;
  }
  .brand-v4-cta-v58 p{
    font-size:20px!important;
  }
  .brand-v58-social-panel{
    min-height:104px!important;
    padding:18px!important;
    gap:14px!important;
  }
  .brand-v58-social-icon{
    width:62px!important;
    height:62px!important;
    border-radius:20px!important;
  }
  .brand-v58-social-icon svg{
    width:46px!important;
    height:46px!important;
  }
}
