.einbl-how-wrap{
  padding:42px 0 10px;
  background:#ffffff;
}

.einbl-how-container{
  max-width:1320px;
  margin:0 auto;
  padding:0 22px;
}

/* HERO */
.einbl-how-hero{
  border:1px solid #e5e7eb;
  border-radius:22px;
  padding:28px 28px 22px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
  background:#ffffff;
}

.einbl-how-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:12px;
  color:#001938;
  background:rgba(255,215,0,.16);
  border:1px solid rgba(255,215,0,.45);
  padding:8px 12px;
  border-radius:999px;
}

.einbl-how-kicker i{ color:#001938; }

.einbl-how-hero h1{
  margin:14px 0 8px;
  font-size:40px;
  line-height:1.12;
  letter-spacing:-0.4px;
  color:#001938;
  font-weight:950;
}

.einbl-how-hero p{
  margin:0;
  max-width:980px;
  color:#475569;
  font-size:14.5px;
  line-height:1.8;
}

.einbl-how-hero-actions{
  margin-top:16px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.einbl-how-btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 18px;
  border-radius:999px;
  text-decoration:none;
  font-weight:950;
  font-size:14px;
  border:2px solid transparent;
  transition:.25s ease-in-out;
}

.einbl-how-btn-primary{
  background:#FFD700;
  color:#001938;
  border-color:#FFD700;
}

.einbl-how-btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(0,0,0,.10);
}

.einbl-how-btn-outline{
  background:transparent;
  color:#001938;
  border-color:#001938;
}

.einbl-how-btn-outline:hover{
  background:#001938;
  color:#ffffff;
}

/* MINI STATS */
.einbl-how-stats{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}

.einbl-how-stat{
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:14px 14px 12px;
  background:#ffffff;
}

.einbl-how-stat-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:8px;
}

.einbl-how-stat-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:950;
  color:#001938;
  background:rgba(255,215,0,.18);
  border:1px solid rgba(255,215,0,.55);
  padding:6px 10px;
  border-radius:999px;
}

.einbl-how-stat-icon{
  width:36px;height:36px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#001938;
  color:#FFD700;
  font-size:14px;
}

.einbl-how-stat strong{
  display:block;
  color:#0f172a;
  font-weight:950;
  font-size:14px;
}

.einbl-how-stat span{
  display:block;
  color:#64748b;
  font-size:12.8px;
  line-height:1.55;
  margin-top:2px;
}

/* SECTION HEAD */
.einbl-how-section{
  margin-top:26px;
}

.einbl-how-head{
  margin:0 0 12px;
  padding:0 2px;
}

.einbl-how-head h2{
  margin:0 0 6px;
  font-size:22px;
  font-weight:950;
  color:#0f172a;
  letter-spacing:-0.2px;
}

.einbl-how-head p{
  margin:0;
  font-size:14px;
  color:#64748b;
  line-height:1.8;
  max-width:980px;
}

/* STEPS GRID */
.einbl-how-steps{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:14px;
}

.einbl-how-step{
  border:1px solid #e5e7eb;
  border-radius:18px;
  background:#ffffff;
  padding:16px 16px 14px;
  box-shadow:0 12px 24px rgba(0,0,0,.05);
}

.einbl-how-step-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:10px;
}

.einbl-how-step-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;height:30px;
  border-radius:999px;
  font-weight:950;
  font-size:12px;
  color:#001938;
  background:rgba(255,215,0,.18);
  border:1px solid rgba(255,215,0,.55);
}

.einbl-how-step-icon{
  width:38px;height:38px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#001938;
  color:#FFD700;
  font-size:14px;
}

.einbl-how-step h3{
  margin:0 0 6px;
  font-size:15px;
  font-weight:950;
  color:#0f172a;
}

.einbl-how-step p{
  margin:0;
  color:#475569;
  font-size:13.2px;
  line-height:1.7;
}

.einbl-how-splitlist{
  margin-top:10px;
  display:grid;
  gap:8px;
}

.einbl-how-splititem{
  display:flex;
  gap:10px;
  align-items:flex-start;
  font-size:12.8px;
  line-height:1.55;
  color:#475569;
}

.einbl-how-splititem b{
  color:#0f172a;
  font-weight:950;
  white-space:nowrap;
}

.einbl-how-splititem i{
  color:#001938;
  margin-top:2px;
}

/* DELIVERABLES */
.einbl-how-deliverables{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:12px;
}

.einbl-how-deliv{
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:14px;
  background:#ffffff;
  box-shadow:0 10px 22px rgba(0,0,0,.04);
}

.einbl-how-deliv i{
  width:38px;height:38px;
  border-radius:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,215,0,.20);
  border:1px solid rgba(255,215,0,.55);
  color:#001938;
  margin-bottom:10px;
}

.einbl-how-deliv h4{
  margin:0 0 6px;
  font-size:13.6px;
  font-weight:950;
  color:#0f172a;
}

.einbl-how-deliv p{
  margin:0;
  font-size:12.8px;
  line-height:1.65;
  color:#475569;
}

/* TIMELINE */
.einbl-how-timeline{
  border:1px solid #e5e7eb;
  border-radius:22px;
  padding:16px;
  background:#ffffff;
  box-shadow:0 12px 24px rgba(0,0,0,.05);
}

.einbl-how-tline{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:10px;
}

.einbl-how-titem{
  border:1px solid #eef2f7;
  border-radius:18px;
  padding:14px;
  background:#ffffff;
}

.einbl-how-titem .tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:950;
  color:#001938;
  background:rgba(255,215,0,.16);
  border:1px solid rgba(255,215,0,.45);
  padding:6px 10px;
  border-radius:999px;
  margin-bottom:8px;
}

.einbl-how-titem strong{
  display:block;
  color:#0f172a;
  font-weight:950;
  font-size:13.5px;
  margin-bottom:4px;
}

.einbl-how-titem span{
  display:block;
  color:#64748b;
  font-size:12.8px;
  line-height:1.6;
}

/* CONFIDENTIAL STRIP */
.einbl-how-conf{
  margin-top:16px;
  border-radius:18px;
  padding:14px 16px;
  border:1px dashed rgba(0,25,56,.25);
  background:#ffffff;
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
}

.einbl-how-conf .left{
  display:flex;
  gap:10px;
  align-items:flex-start;
  max-width:980px;
}

.einbl-how-conf .left i{
  color:#001938;
  margin-top:2px;
}

.einbl-how-conf strong{
  color:#001938;
  font-weight:950;
}

.einbl-how-conf p{
  margin:2px 0 0;
  color:#475569;
  font-size:13px;
  line-height:1.65;
}

.einbl-how-conf .right{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

/* RESPONSIVE */
@media (max-width: 992px){
  .einbl-how-hero h1{ font-size:32px; }
  .einbl-how-stats{ grid-template-columns:1fr; }
  .einbl-how-steps{ grid-template-columns:1fr; }
  .einbl-how-deliverables{ grid-template-columns:1fr; }
  .einbl-how-tline{ grid-template-columns:1fr; }
  .einbl-how-hero{ padding:20px; }
}
/* =========================================================
   EINBL HOW PAGES – RESPONSIVE FIX
   Mobile-first refinements (NO DESIGN CHANGE)
========================================================= */

/* ---------- Large Tablets (≤1200px) ---------- */
@media (max-width: 1200px){
  .einbl-how-container{
    padding:0 20px;
  }

  .einbl-how-hero h1{
    font-size:36px;
  }

  .einbl-how-stats{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-steps{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-deliverables{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-tline{
    grid-template-columns:repeat(2, 1fr);
  }
}

/* ---------- Tablets & Small Laptops (≤992px) ---------- */
@media (max-width: 992px){
  .einbl-how-wrap{
    padding:32px 0 8px;
  }

  .einbl-how-hero{
    padding:22px;
    border-radius:20px;
  }

  .einbl-how-hero h1{
    font-size:30px;
    line-height:1.2;
  }

  .einbl-how-hero p{
    font-size:14px;
  }

  .einbl-how-stats,
  .einbl-how-steps,
  .einbl-how-deliverables,
  .einbl-how-tline{
    grid-template-columns:1fr;
  }

  .einbl-how-head h2{
    font-size:20px;
  }
}

/* ---------- Mobile (≤768px) ---------- */
@media (max-width: 768px){
  .einbl-how-container{
    padding:0 16px;
  }

  .einbl-how-kicker{
    font-size:11px;
    padding:6px 10px;
  }

  .einbl-how-hero h1{
    font-size:26px;
  }

  .einbl-how-hero-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .einbl-how-btn{
    justify-content:center;
    width:100%;
  }

  .einbl-how-step,
  .einbl-how-stat,
  .einbl-how-deliv,
  .einbl-how-titem{
    border-radius:16px;
  }

  .einbl-how-step h3{
    font-size:14.5px;
  }
}

/* ---------- Small Mobile (≤480px) ---------- */
@media (max-width: 480px){
  .einbl-how-wrap{
    padding:24px 0 6px;
  }

  .einbl-how-hero{
    padding:18px;
  }

  .einbl-how-hero h1{
    font-size:22px;
  }

  .einbl-how-hero p{
    font-size:13.5px;
  }

  .einbl-how-stat-badge,
  .einbl-how-step-num{
    font-size:11px;
  }

  .einbl-how-conf{
    padding:12px;
  }

  .einbl-how-conf .right{
    width:100%;
  }

  .einbl-how-conf .right a{
    width:100%;
    justify-content:center;
  }
}

/* =========================================================
   EINBL HOW PAGES – RESPONSIVE FIX (STABLE)
   Appended overrides only – NO visual change on desktop
========================================================= */

/* ---------- <=1200px (Large tablets / small laptops) ---------- */
@media (max-width: 1200px){

  .einbl-how-hero h1{
    font-size:36px;
  }

  .einbl-how-stats{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-steps{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-deliverables{
    grid-template-columns:repeat(2, 1fr);
  }

  .einbl-how-tline{
    grid-template-columns:repeat(2, 1fr);
  }
}

/* ---------- <=992px (Tablet breakpoint – CRITICAL FIX) ---------- */
@media (max-width: 992px){

  .einbl-how-wrap{
    padding:32px 0 8px;
  }

  .einbl-how-hero{
    padding:22px;
    border-radius:20px;
  }

  .einbl-how-hero h1{
    font-size:30px;
    line-height:1.2;
  }

  /* FORCE single-column grids */
  .einbl-how-stats,
  .einbl-how-steps,
  .einbl-how-deliverables,
  .einbl-how-tline{
    grid-template-columns:1fr;
  }

  .einbl-how-head h2{
    font-size:20px;
  }
}

/* ---------- <=768px (Mobile) ---------- */
@media (max-width: 768px){

  .einbl-how-container{
    padding:0 16px;
  }

  .einbl-how-kicker{
    font-size:11px;
    padding:6px 10px;
  }

  .einbl-how-hero h1{
    font-size:26px;
  }

  .einbl-how-hero p{
    font-size:14px;
  }

  /* Stack CTA buttons */
  .einbl-how-hero-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .einbl-how-btn{
    width:100%;
    justify-content:center;
  }

  /* Card safety */
  .einbl-how-step,
  .einbl-how-stat,
  .einbl-how-deliv,
  .einbl-how-titem{
    border-radius:16px;
  }

  .einbl-how-step h3{
    font-size:14.5px;
  }
}

/* ---------- <=480px (Small mobile) ---------- */
@media (max-width: 480px){

  .einbl-how-wrap{
    padding:24px 0 6px;
  }

  .einbl-how-hero{
    padding:18px;
  }

  .einbl-how-hero h1{
    font-size:22px;
  }

  .einbl-how-hero p{
    font-size:13.5px;
  }

  .einbl-how-stat-badge,
  .einbl-how-step-num{
    font-size:11px;
  }

  /* Confidential strip fix */
  .einbl-how-conf{
    padding:12px;
  }

  .einbl-how-conf .right{
    width:100%;
  }

  .einbl-how-conf .right a{
    width:100%;
    justify-content:center;
  }
}




/* =========================================================
   EINBL BODY SPLIT – MOBILE FLOW FIX (FINAL)
   Fixes image/text order issues on How EIN Helps pages
========================================================= */

@media (max-width: 768px){

  /* Force split blocks to stack cleanly */
  .einbl-body-block.split{
    display:flex;
    flex-direction:column;
    gap:18px;
  }

  /* Reverse variant still stacks normally on mobile */
  .einbl-body-block.split.reverse{
    flex-direction:column;
  }

  /* Ensure text always comes first */
  .einbl-body-block.split .einbl-body-text{
    order:1;
  }

  /* Ensure image always comes after text */
  .einbl-body-block.split .einbl-body-image{
    order:2;
  }

  /* Image sizing safety */
  .einbl-body-image img{
    width:100%;
    height:auto;
    display:block;
  }
}
