/* ============================================================
   INDUS EXPERTS — RESPONSIVE STYLESHEET
   Breakpoints: 1024px | 768px | 560px | 480px
   Desktop styles are untouched; all rules here are additive.
   ============================================================ */

/* ── NAVBAR ─────────────────────────────────────────────── */
.nav-hamburger {
  display: none;
  background: transparent;
  border: 1px solid #ddd;
  border-radius: 6px;
  padding: 6px 11px;
  cursor: pointer;
  font-size: 20px;
  color: #1a0505;
  line-height: 1;
  margin-left: auto;
}

@media (max-width: 768px) {
  .topbar { display: none !important; }

  nav#indus-mainnav {
    padding: 0 4%;
    height: auto;
    min-height: 60px;
    flex-wrap: wrap;
    gap: 0;
  }

  nav#indus-mainnav > div:last-child { display: none !important; }

  .nav-hamburger { display: block !important; margin-left: auto; }

  .rednav {
    top: 60px;
    flex-direction: column;
    align-items: flex-start;
    overflow: hidden;
    max-height: 0;
    transition: max-height .3s ease;
    z-index: 198;
  }
  .rednav.open { max-height: 600px; }

  .rednav a {
    width: 100%;
    padding: 12px 4%;
    border-top: 1px solid rgba(255,255,255,.1);
    font-size: 13px;
  }

  .dropdown-menu {
    position: static;
    box-shadow: none;
    border: none;
    border-top: none;
    background: rgba(0,0,0,.25);
    min-width: 100%;
  }
  .dropdown:hover .dropdown-menu { display: none; }
  .dropdown.open .dropdown-menu { display: block; }
  .dropdown.open > a { background: rgba(0,0,0,.2); }
}

/* ── FOOTER ─────────────────────────────────────────────── */
@media (max-width: 900px) {
  .footer-grid,
  footer.indus-footer .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px !important; }
}
@media (max-width: 480px) {
  .footer-grid,
  footer.indus-footer .footer-grid { grid-template-columns: 1fr !important; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 4px; }
}

/* ── HERO (about / legal-shield) ────────────────────────── */
@media (max-width: 1024px) {
  .hero-inner { grid-template-columns: 1fr !important; gap: 28px !important; }
  .hero-right  { display: none !important; }
}
@media (max-width: 768px) {
  .hero        { padding: 48px 4% 36px !important; }
  .hero h1     { font-size: 30px !important; }
  .hero-lead   { font-size: 13px !important; }
}
@media (max-width: 480px) {
  .hero h1     { font-size: 26px !important; }
  .hero-pretag { font-size: 10px; }
  .hero-btns,.cta-btns { flex-direction: column; align-items: stretch; }
  .hero-btns .btn,.cta-btns .btn { text-align: center; }
}

/* ── STATS BAR ──────────────────────────────────────────── */
@media (max-width: 768px) {
  .stats { flex-wrap: wrap; }
  .stat  { flex: 0 0 50%; border-right: none; border-bottom: 1px solid rgba(255,255,255,.07); }
  .stat:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.07) !important; }
}
@media (max-width: 400px) {
  .stat { flex: 0 0 100%; border-right: none !important; }
}

/* ── SECTIONS — GENERAL ─────────────────────────────────── */
@media (max-width: 768px) {
  .sec     { padding: 44px 4% !important; }
  section  { padding: 44px 4% !important; }
  .stitle,.sec-title { font-size: 24px !important; }
  .ssub,.sec-sub     { font-size: 13px !important; }
}
@media (max-width: 480px) {
  .sec    { padding: 32px 4% !important; }
  section { padding: 32px 4% !important; }
}

/* ── WHO WE ARE ─────────────────────────────────────────── */
@media (max-width: 1024px) {
  .who-grid { grid-template-columns: 1fr !important; gap: 28px !important; }
}

/* ── MISSION VALUES ─────────────────────────────────────── */
@media (max-width: 1024px) {
  .mvg { grid-template-columns: 1fr !important; gap: 28px !important; }
}

/* ── WHAT WE DO / CORE SERVICES ─────────────────────────── */
@media (max-width: 1024px) {
  .wwd-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .wwd-grid { grid-template-columns: 1fr !important; }
}

/* ── PROFESSIONALS ──────────────────────────────────────── */
@media (max-width: 1024px) {
  .prof-row { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 480px) {
  .prof-row { grid-template-columns: 1fr !important; }
}

/* ── APPROACH ───────────────────────────────────────────── */
@media (max-width: 768px) {
  .approach-grid { grid-template-columns: 1fr !important; }
}

/* ── VISION / GLOBAL ────────────────────────────────────── */
@media (max-width: 1024px) {
  .vision-inner { grid-template-columns: 1fr !important; gap: 28px !important; }
  .vision-wrap  { padding: 28px !important; }
}
@media (max-width: 768px) {
  .global-grid { grid-template-columns: repeat(2,1fr) !important; }
}

/* ── LEGAL SHIELD PLANS ─────────────────────────────────── */
@media (max-width: 1024px) {
  .plans { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .plans { grid-template-columns: 1fr !important; }
}

/* ── HOW IT WORKS (legal-shield) ────────────────────────── */
@media (max-width: 900px) {
  .how-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 480px) {
  .how-grid { grid-template-columns: 1fr !important; }
}

/* ── SERVICES GRID (legal-shield) ───────────────────────── */
@media (max-width: 1024px) {
  .svcs { grid-template-columns: repeat(3,1fr) !important; }
}
@media (max-width: 768px) {
  .svcs { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 480px) {
  .svcs { grid-template-columns: 1fr !important; }
}

/* ── PANEL LAWYERS (partner) ────────────────────────────── */
@media (max-width: 1024px) {
  .lawyers-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .lawyers-grid { grid-template-columns: 1fr !important; }
}

/* ── PROFESSIONALS GRID (partner) ───────────────────────── */
@media (max-width: 1024px) {
  .prof-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 480px) {
  .prof-grid { grid-template-columns: 1fr !important; }
}

/* ── PARTNER TYPES (partner) ────────────────────────────── */
@media (max-width: 768px) {
  .partner-types { grid-template-columns: 1fr !important; }
}

/* ── PARTNER LOGOS (partner) ────────────────────────────── */
@media (max-width: 1024px) {
  .partner-logos { grid-template-columns: repeat(3,1fr) !important; }
}
@media (max-width: 560px) {
  .partner-logos { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 360px) {
  .partner-logos { grid-template-columns: 1fr !important; }
}

/* ── JOIN CARDS (partner) ───────────────────────────────── */
@media (max-width: 768px) {
  .join-cards { grid-template-columns: 1fr !important; max-width: 100% !important; }
}

/* ── TEAM GRID (partner) ────────────────────────────────── */
@media (max-width: 1024px) {
  .team-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .team-grid { grid-template-columns: 1fr !important; }
}

/* ── STEPS (partner) ────────────────────────────────────── */
@media (max-width: 900px) {
  .steps { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .steps { grid-template-columns: 1fr !important; }
}

/* ── PARTNER JOIN SECTION BUTTONS ───────────────────────── */
@media (max-width: 560px) {
  .join-section .btn-white,
  .join-section .btn-out {
    display: block; width: 100%; max-width: 320px;
    margin: 0 auto 12px; text-align: center;
  }
  .join-section .btn-out { margin-left: auto !important; }
}

/* ── JOIN US GRID (partner — 4 cards) ───────────────────── */
@media (max-width: 900px) {
  #cs-join > .sec > div[style*="grid-template-columns:repeat(4"] {
    grid-template-columns: repeat(2,1fr) !important;
  }
}
@media (max-width: 560px) {
  #cs-join > .sec > div[style*="grid-template-columns:repeat(4"] {
    grid-template-columns: 1fr !important;
  }
}

/* ── INDEX — HERO RIGHT CARDS ───────────────────────────── */
@media (max-width: 1024px) {
  .hero-right { display: none !important; }
  .hero-photo { display: none !important; }
}

/* ── INDEX — SERVICES GRID ──────────────────────────────── */
@media (max-width: 1024px) {
  .svc-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 480px) {
  .svc-grid { grid-template-columns: 1fr !important; }
}

/* ── INDEX — BLOGS GRID ─────────────────────────────────── */
@media (max-width: 900px) {
  .blogs-grid { grid-template-columns: repeat(2,1fr) !important; }
}
@media (max-width: 560px) {
  .blogs-grid { grid-template-columns: 1fr !important; }
}

/* ── GENERAL CARD / TEXT OVERFLOW GUARDS ────────────────── */
@media (max-width: 768px) {
  img { max-width: 100%; height: auto; }
  table { display: block; overflow-x: auto; }
  .law-card,.pcard,.pt-card,.wmc,.vcard,.ac,.step { word-break: break-word; }
}

/* ── LEGAL SHIELD HERO ──────────────────────────────────── */
@media (max-width: 768px) {
  .hero-badge { font-size: 11px; padding: 4px 10px; }
  .hero p { font-size: 14px !important; max-width: 100% !important; }
  .hero-stats { gap: 20px; flex-wrap: wrap; justify-content: center; }
  .hero-stat strong { font-size: 22px; }
  .hero-stat span { font-size: 11px; }
  .hero-btns { flex-direction: column; align-items: center; }
  .hero-btns .btn { width: 100%; max-width: 280px; text-align: center; }
}
@media (max-width: 480px) {
  .hero-stats { gap: 12px; }
  .hero-stat { min-width: 70px; }
}

/* ── PARTNER HERO TABS ──────────────────────────────────── */
@media (max-width: 768px) {
  .hero-tabs { gap: 6px; padding: 0 4%; }
  .htab { padding: 8px 14px; font-size: 11px; }
}
@media (max-width: 480px) {
  .htab { padding: 7px 10px; font-size: 10px; border-radius: 18px; }
}

/* ── ABOUT WHO VISUAL CARD ──────────────────────────────── */
@media (max-width: 768px) {
  .who-main-card { padding: 22px 18px; }
  .who-mini-cards { grid-template-columns: 1fr 1fr !important; }
}

/* ── ABOUT / PARTNER SECTION HEADINGS ───────────────────── */
@media (max-width: 480px) {
  .stitle { font-size: 22px !important; }
  .pcard h3 { font-size: 13px; }
  .law-card-top { padding: 20px 16px; }
  .law-card-body { padding: 14px 16px; }
}

/* ── BLOG PAGE ───────────────────────────────────────────── */
@media (max-width: 768px) {
  .site-main { grid-template-columns: 1fr !important; }
  #sidebar { margin-top: 28px; }
  .post-box .entry-title a { font-size: 14px; }
}

/* ── LEGAL SHIELD PLAN CARDS ────────────────────────────── */
@media (max-width: 480px) {
  .plan { padding: 20px 14px; }
  .pprice { font-size: 26px; }
  .how-step { padding: 18px 12px; }
}

/* ── GENERAL PADDING / OVERFLOW FIX ────────────────────── */
@media (max-width: 768px) {
  body { overflow-x: hidden; }
  .sec, section { overflow-x: hidden; }
}
