/* Shakhe public contact v13 — aligned phone/Instagram feature cards */
.contact-grid{align-items:stretch!important}
.contact-grid .contact-card{
  min-width:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:34px 30px!important;
  box-sizing:border-box!important;
}
.contact-grid .contact-card>*{max-width:100%}
.contact-grid .contact-card h2,
.contact-grid .contact-card p,
.contact-grid .contact-card small{
  margin-inline:auto!important;
  text-align:center!important;
  overflow-wrap:anywhere;
}
.contact-grid .contact-card h2{max-width:560px}
.contact-grid .contact-card p{max-width:520px}
.contact-grid .contact-card .contact-icon{margin-inline:auto}
.contact-grid .contact-card .btn,
.contact-grid .contact-card .text-action{margin-inline:auto}

/* Keep the two showcase cards on the exact same top line.
   This selector intentionally outranks the generic centered contact-card rule. */
.contact-grid .phone-feature-card,
.contact-grid .instagram-feature-card{
  position:relative;
  align-self:stretch!important;
  justify-content:flex-start!important;
  height:100%!important;
  padding:16px!important;
  gap:16px!important;
  background:linear-gradient(145deg,#f8fbf8,#eef5ef)!important;
}
.phone-visual-frame,
.instagram-visual-link{
  position:relative;
  display:block;
  flex:0 0 auto;
  width:100%;
  overflow:hidden;
  border-radius:20px;
  box-shadow:0 16px 34px rgba(17,63,45,.14);
  transform:translateZ(0);
}
.phone-visual-frame:after,
.instagram-visual-link:after{
  position:absolute;
  right:16px;
  bottom:16px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(16,63,45,.64);
  color:#fff;
  font-size:9px;
  font-weight:900;
  backdrop-filter:blur(12px);
}
.phone-visual-frame:after{content:"تماس مستقیم"}
.instagram-visual-link:after{content:"باز کردن اینستاگرام";transition:transform .22s ease,background .22s ease}
.phone-visual-frame img,
.instagram-visual-link img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.instagram-visual-link img{transition:transform .45s cubic-bezier(.2,.75,.25,1)}
.instagram-visual-link:hover img{transform:scale(1.025)}
.instagram-visual-link:hover:after{transform:translateY(-2px);background:rgba(16,63,45,.82)}

.phone-card-copy,
.instagram-card-copy{
  width:100%;
  padding:0 10px 10px;
  text-align:center;
  box-sizing:border-box;
}
.phone-card-copy>small,
.instagram-card-copy>small{color:#71837a!important;font-size:9px!important;font-weight:900}
.phone-card-copy>h2,
.instagram-card-copy h2{margin:5px 0 6px!important;font-size:22px!important;color:#173f2e}
.phone-card-copy>p,
.instagram-card-copy p{margin:0 auto!important;color:#617469!important;font-size:10px!important;line-height:1.9!important}

.phone-call-grid{display:grid;gap:9px;width:100%;margin-top:13px}
.phone-call-link{
  min-width:0;
  width:100%;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 22px;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border:1px solid rgba(23,63,46,.1);
  border-radius:14px;
  background:#173f2e;
  color:#fff!important;
  box-shadow:0 9px 22px rgba(23,63,46,.09);
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
  box-sizing:border-box;
}
.phone-call-link:nth-child(2){background:#24583e}
.phone-call-link:hover{transform:translateY(-2px);background:#0f3929;box-shadow:0 14px 28px rgba(23,63,46,.15)}
.phone-call-icon{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  background:rgba(255,255,255,.08);
  font-size:18px;
}
.phone-call-copy{display:grid;min-width:0;text-align:right}
.phone-call-copy strong{
  min-width:0;
  direction:ltr;
  unicode-bidi:embed;
  text-align:right;
  white-space:nowrap;
  font-family:Vazirmatn,Arial,sans-serif;
  font-size:16px;
  line-height:1.2;
  letter-spacing:.2px;
  color:#fff;
}
.phone-call-copy small{margin:3px 0 0!important;text-align:right!important;color:#cfdfd4!important;font-size:8px!important;line-height:1.6}
.phone-call-arrow{display:grid;place-items:center;font-size:15px;color:#dce8df}

.instagram-card-copy .official-instagram{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:12px auto 0!important;
  padding:9px 12px;
  border-radius:12px;
  background:#173f2e;
  color:#fff!important;
  font-size:10px;
  font-weight:900;
  direction:ltr;
}
.instagram-card-copy .official-instagram:after{display:none!important}
.instagram-mini-icon{display:grid;place-items:center;width:22px;height:22px;border:1px solid rgba(255,255,255,.36);border-radius:7px;font-size:15px}

.contact-request-intro,
.contact-request-form{min-width:0}
.contact-request-intro h2,
.contact-request-intro p,
.contact-request-points span,
.contact-request-form-head h2,
.contact-request-form-head p,
.contact-form-grid label,
.contact-submit-row small{overflow-wrap:anywhere}

@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr!important}
  .contact-grid .contact-card{min-height:230px!important}
  .contact-grid .phone-feature-card,
  .contact-grid .instagram-feature-card{height:auto!important;padding:14px!important}
  .phone-call-grid{max-width:560px;margin-inline:auto}
}
@media(max-width:640px){
  .contact-grid .contact-card{padding:26px 20px!important}
  .contact-grid .phone-feature-card,
  .contact-grid .instagram-feature-card{padding:12px!important}
  .phone-visual-frame:after,.instagram-visual-link:after{right:10px;bottom:10px}
  .phone-card-copy,.instagram-card-copy{padding-inline:4px}
  .phone-call-link{grid-template-columns:38px minmax(0,1fr) 18px;padding:10px}
  .phone-call-icon{width:38px;height:38px;border-radius:11px}
  .phone-call-copy strong{font-size:15px}
}
