/* HSOU shared direct-contact panel — loaded after every product theme. */
.contact-card{
  grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);
  align-items:center;
}

.contact-card .contact-info-panel{
  --cp-accent:var(--purple,var(--red,var(--green,var(--blue,#1769e0))));
  position:relative;
  display:block;
  min-width:0;
  overflow:hidden;
  padding:30px;
  border:1px solid rgba(126,146,181,.25);
  border-radius:24px;
  background:linear-gradient(145deg,#fff 0%,#f8fbff 100%);
  color:#0b1d3a;
  box-shadow:0 22px 55px rgba(10,30,68,.18);
}

[data-contact-theme="meta"] .contact-info-panel{--cp-accent:#7047eb;}
[data-contact-theme="tiktok"] .contact-info-panel{--cp-accent:#fe2c55;}
[data-contact-theme="realize"] .contact-info-panel{--cp-accent:#005645;}
[data-contact-theme="teads"] .contact-info-panel{--cp-accent:#6a4ab8;}
[data-contact-theme="yandex"] .contact-info-panel{--cp-accent:#fc3f1d;}
[data-contact-theme="mediago"] .contact-info-panel{--cp-accent:#5030e5;}
[data-contact-theme="criteo"] .contact-info-panel{--cp-accent:#ff4f12;}

.contact-card .contact-info-panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,var(--cp-accent),#26d7d1,#ffd21f);
}

.contact-info-panel header{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:end;
  gap:4px 18px;
  padding-bottom:19px;
  margin-bottom:18px;
  border-bottom:1px solid #dfe6f0;
}

.contact-info-panel header::after{
  content:"1 对 1";
  grid-column:2;
  grid-row:1 / 3;
  align-self:center;
  padding:8px 12px;
  border-radius:999px;
  background:#eef4ff;
  color:var(--cp-accent);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}

.contact-info-panel header>span{
  color:var(--cp-accent);
  font-size:11px;
  font-weight:900;
  letter-spacing:.2em;
}

.contact-info-panel header h3{
  margin:3px 0 0;
  color:#0b1d3a;
  font-size:30px;
  line-height:1.2;
}

.contact-info-panel header p{
  grid-column:1 / -1;
  margin:9px 0 0;
  color:#697a94;
  font-size:14px;
  line-height:1.65;
}

.contact-info-panel .contact-methods{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.contact-info-panel .contact-methods a{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  grid-template-rows:auto auto;
  gap:3px 12px;
  align-items:center;
  min-width:0;
  min-height:102px;
  padding:16px;
  border:1px solid #dce5f0;
  border-radius:17px;
  background:#fff;
  color:#0b1d3a;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(16,45,88,.06);
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}

.contact-info-panel .contact-methods a:hover{
  transform:translateY(-4px);
  border-color:var(--cp-accent);
  box-shadow:0 15px 30px rgba(16,45,88,.12);
}

.contact-info-panel .contact-methods a>i{
  grid-column:1;
  grid-row:1 / 3;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:linear-gradient(145deg,var(--cp-accent),#253d78);
  color:#fff;
  font-size:17px;
  font-style:normal;
  font-weight:900;
  box-shadow:0 8px 18px rgba(41,70,127,.18);
}

.contact-info-panel .contact-methods a>span{
  grid-column:2;
  display:block;
  min-width:0;
  margin:0;
  color:#667792;
  font-size:12px;
  font-weight:800;
  line-height:1.3;
}

.contact-info-panel .contact-methods small{
  display:block;
  margin-top:5px;
  color:#0b1d3a;
  font-size:16px;
  font-weight:900;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.contact-info-panel .contact-methods a>b{
  grid-column:2;
  display:block;
  margin:0;
  color:var(--cp-accent);
  font-size:11px;
  font-weight:900;
}

.contact-info-panel .contact-address{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  align-items:center;
  gap:13px;
  margin-top:12px;
  padding:16px;
  border:1px solid #dce5f0;
  border-radius:17px;
  background:linear-gradient(90deg,#f5f8fd,#fff);
  color:#0b1d3a;
}

.contact-info-panel .contact-address>i{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  border-radius:14px;
  background:#0b1d3a;
  color:#fff;
  font-style:normal;
  font-size:19px;
}

.contact-info-panel .contact-address b{
  display:block;
  font-size:13px;
}

.contact-info-panel .contact-address p{
  margin:4px 0 0;
  color:#657590;
  font-size:14px;
  line-height:1.5;
}

.contact-info-panel .contact-extra{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  margin-top:12px;
  padding:12px 15px;
  border-radius:13px;
  background:#0b1d3a;
  color:#dfe9fa;
  font-size:12px;
}

.contact-info-panel .contact-extra a{
  color:#fff;
  font-weight:900;
  text-decoration:none;
}

@media(max-width:1050px){
  .contact-card{grid-template-columns:1fr;}
  .contact-card .contact-info-panel{max-width:760px;width:100%;margin:0 auto;}
}

@media(max-width:680px){
  .contact-card .contact-info-panel{padding:23px;border-radius:20px;}
  .contact-info-panel header{grid-template-columns:1fr;}
  .contact-info-panel header::after{display:none;}
  .contact-info-panel .contact-methods{grid-template-columns:1fr;}
  .contact-info-panel .contact-methods a{min-height:94px;}
  .contact-info-panel .contact-extra{align-items:flex-start;flex-direction:column;}
}

@media(max-width:420px){
  .contact-card .contact-info-panel{padding:19px;}
  .contact-info-panel header h3{font-size:26px;}
  .contact-info-panel .contact-methods small{font-size:15px;}
  .contact-info-panel .contact-address{align-items:start;}
  .contact-info-panel .contact-address p{font-size:13px;}
}
