/* AUTONOMOUS GRID — same behavior as other DF portfolios */
.dfm-social-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  gap:22px;
}
@media(max-width:980px){
  .dfm-social-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
}
@media(max-width:640px){
  .dfm-social-grid{
    grid-template-columns:repeat(1, minmax(0,1fr)) !important;
  }
}

.dfm-social-card{border:1px solid #eee;border-radius:18px;background:#fff;overflow:hidden;padding:16px;text-align:center}
.dfm-social-title{margin:12px 0 8px;font-size:16px}

.dfm-phone{margin:0 auto;max-width:320px;aspect-ratio:9/19;border-radius:34px;background:#111;border:10px solid #111;box-shadow:0 10px 30px rgba(0,0,0,.12);position:relative;overflow:hidden}
.dfm-phone-notch{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:42%;height:20px;border-radius:0 0 14px 14px;background:#0b0b0b;opacity:.9;z-index:2}
.dfm-phone-screen{position:absolute;inset:0;border-radius:26px;background:#000;overflow:hidden}
.dfm-phone-img{width:100%;height:100%;object-fit:cover;display:block}
.dfm-phone-placeholder{display:flex;align-items:center;justify-content:center;height:100%;padding:24px;color:#fff;opacity:.7;font-size:12px;line-height:1.35}

.dfm-social-icons{display:flex;justify-content:center;gap:12px;margin-top:10px;flex-wrap:wrap}
.dfm-social-ico{width:38px;height:38px;border-radius:12px;border:1px solid #eee;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.dfm-social-ico svg{width:20px;height:20px;fill:currentColor}
.dfm-social-ico:hover{transform:translateY(-1px)}
