/* ===== MOBILE FIX (<=767px). Desktop unchanged ===== */
@media (max-width: 767px) {

  /* container */
  #container { width: auto; max-width: 100%; margin: 10px auto 20px; padding: 0 10px; }
  #content   { width: 100%; }

  /* profile header */
  .about { width: auto; margin: 15px 10px 0; float: none; }
  .about .photo-inner { float: none; margin: 0 auto; }
  .about h1, .about h3, .about p { text-align: center; margin-left: 0; }

  /* personal info block */
  .personal-info {
    float: none; width: auto; min-height: 0; background: none;
    margin: 10px 10px 0; padding: 0;
  }
  .personal-info li { display: flex; gap: 8px; justify-content: space-between; }
  .personal-info li span { float: none; margin: 0; text-align: right; max-width: 60%; }

  /* tabs: remove desktop sprites/height; make simple buttons */
  .menu { height: auto; }
  .menu .tabs {
    position: static; height: auto; margin: 8px 0 0; padding: 8px;
    display: flex; flex-wrap: wrap; gap: 8px; background: none; box-shadow: none;
  }
  .tabs li { float: none; height: auto; background: none !important; }
  .tabs li > a {
    display: block; width: auto; height: auto; padding: 10px 12px; line-height: 1.1;
    background: none !important; background-image: none !important; /* kill icon sprites */
    font-size: 15px; color: #555; text-align: left; border: 1px solid #e5e5e5; border-radius: 8px;
  }
  .tabs li.active       { background: none !important; }
  .tabs li.active > a   { border-color: #B77FDA; color: #B77FDA; }

  /* resume/skills one column */
  #resume { padding: 12px; }
  .timeline-section, .skills-section, .contact-info, .contact-form { width: auto; float: none; padding-right: 0; }

  /* portfolio: one column to avoid isotope conflicts on mobile init */
  #portfolio { padding: 0 10px 20px; }
   /* контейнер — обычный поток, без фиксированной высоты */
   #portfolio-list {
  position: static !important;
  height: auto !important;
  width: 100% !important;
  visibility: visible !important;
  display: block !important;   /* гарантируем блочную модель */
  text-align: center;          /* центровка inline-block элементов */
}

#portfolio-list li,
#portfolio-list .isotope-item {
  position: relative !important;
  display: inline-block !important; /* вместо block */
  float: none !important;
  clear: none !important;
  left: auto !important;
  top: auto !important;
  transform: none !important;


  max-width: 400px;              /* ограничение по макс. ширине */
  margin: 0 auto 20px auto !important; /* центрирование */
  height: auto !important;
  opacity: 1 !important;
  vertical-align: top;
}

#portfolio-list img {
  display: block;
  width: 100% !important;
  height: auto !important;
}

}

/* === Contacts: mobile fixes (stack + tidy headings) === */
@media (max-width: 767px) {
  /* Снять флоаты и растянуть блоки на всю ширину */
  #contact .contact-info,
  #contact .contact-form {
    float: none !important;
    clear: both !important;        /* перенос второй колонки ниже первой */
    width: 100% !important;
    padding: 0 15px !important;
    box-sizing: border-box;
  }

  /* Чуть отступа между колонками */
  #contact .contact-form { margin-top: 12px !important; }

  /* Заголовки: не тянуть линию на всю ширину и убрать фоновые украшения */
  #contact .main-heading { 
    background: none !important;
    margin: 10px 0 !important;
  }
  #contact .main-heading span {
    display: inline-block !important;
    border-bottom: 1px solid #d9d9d9 !important;
    padding-bottom: 6px !important;
  }
}

/* Десктоп: аккуратно в две колонки через grid; карта остаётся во всю ширину */
@media (min-width: 900px) {
  #contact {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 32px;
  }
  #contact #map { grid-column: 1 / -1; }
  #contact .contact-info { grid-column: 1; float: none !important; }
  #contact .contact-form { grid-column: 2; float: none !important; }
}
/* Мобила: никаких анимаций/эффектов у портфолио */
@media (max-width: 767px) {
  .isotope, .isotope .isotope-item { width: 100% !important; }
  #portfolio-list li, #portfolio-list img { width: 100% !important; height: auto !important;}

}
