/* ============================================================
   COMPANY PAGES — shared CSS. innerbanner, mainsectionheading, mb-100 from style.css.
   ============================================================ */
:root{ --nv:#022b63; --cream:#efede7; --amber:#f9a825; --ink:#111827; --muted:#5b6472; --line:#e7e4dc; --soft:#f7f6f2; --radius:18px; }

/* alternating process steps */
.cmp-step{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.cmp-step.rev{ direction:rtl; } .cmp-step.rev > *{ direction:ltr; }
.cmp-step p{ color:var(--muted); line-height:1.85; font-size:15.5px; margin:0; }
.cmp-stepnum{ display:inline-flex; align-items:center; justify-content:center; width:60px; height:60px; border-radius:16px; background:var(--nv); color:#fff; font-family:"PlusJakartaSans-Medium"; font-size:24px; margin-bottom:20px; transition:.35s; }
.cmp-step:hover .cmp-stepnum{ background:var(--amber); color:var(--nv); }
.cmp-step h3{ font-family:"PlusJakartaSans-Medium"; font-size:26px; color:var(--ink); margin-bottom:14px; }
.cmp-stepvisual{  border-radius:var(--radius);  display:flex; align-items:center; justify-content:center; color:#ffffff40; font-size:64px; box-shadow:0 24px 50px rgba(2,43,99,.16); }

/* cards grid */
.cmp-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:26px; }
.cmp-grid.g4{ grid-template-columns:repeat(4,1fr); }
.cmp-card{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:34px 30px; transition:.35s; position:relative; overflow:hidden; }
.cmp-card::before{ content:''; position:absolute; left:0; top:0; height:3px; width:0; background:linear-gradient(90deg,var(--nv),var(--amber)); transition:width .4s; }
.cmp-card:hover{ transform:translateY(-6px); box-shadow:0 24px 50px rgba(2,43,99,.10); border-color:#cfd6e2; }
.cmp-card:hover::before{ width:100%; }
.cmp-card .ic{ width:58px; height:58px; border-radius:15px; background:var(--cream); color:var(--nv); display:inline-flex; align-items:center; justify-content:center; font-size:27px; margin-bottom:20px; transition:.35s; }
.cmp-card:hover .ic{ background:var(--nv); color:#fff; }
.cmp-card h4{ font-family:'DMSans-SemiBold'; font-size:18px; color:var(--ink); margin-bottom:12px; }
.cmp-card p{ color:var(--muted); font-size:14px; line-height:1.7; margin:0; }

/* support list */
.cmp-support{ display:grid; grid-template-columns:1.2fr .8fr; gap:44px; align-items:start; }
.cmp-support .lead{ color:var(--muted); line-height:1.85; font-size:15.5px; margin-bottom:16px; }
.cmp-suplist{ display:flex; flex-direction:column; gap:16px; margin-top:28px; }
.cmp-supitem{ display:grid; grid-template-columns:52px 1fr; gap:18px; align-items:start; background:var(--soft); border:1px solid var(--line); border-radius:14px; padding:22px 24px; transition:.3s; }
.cmp-supitem:hover{ background:#fff; box-shadow:0 14px 30px rgba(2,43,99,.07); }
.cmp-supitem .ic{ width:52px; height:52px; border-radius:13px; background:#fff; border:1px solid var(--line); color:var(--nv); display:inline-flex; align-items:center; justify-content:center; font-size:24px; }
.cmp-supitem h5{ font-family:'DMSans-SemiBold'; font-size:16px; color:var(--ink); margin:0 0 5px; }
.cmp-supitem p{ color:var(--muted); font-size:14px; line-height:1.6; margin:0; }
.cmp-supitem a{ color:var(--nv); font-family:'DMSans-Medium'; }
.cmp-supaside{ background:linear-gradient(150deg,#f7f6f2,#efede7); border:1px solid var(--line); border-radius:var(--radius); min-height:360px; display:flex; align-items:center; justify-content:center; color:#c3cbd8; font-size:64px; }

/* partnership */
.cmp-two{ display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; }
.cmp-two.rev{ direction:rtl; } .cmp-two.rev > *{ direction:ltr; }
.cmp-two p{ color:var(--muted); line-height:1.85; font-size:15.5px; margin-bottom:14px; }
.cmp-two h3{ font-family:'DMSans-SemiBold'; font-size:20px; color:var(--ink); margin:0 0 12px; }
.cmp-media{ background:linear-gradient(135deg,#f7f6f2,#efede7); border:1px solid var(--line); border-radius:var(--radius); min-height:340px; display:flex; align-items:center; justify-content:center; color:#c3cbd8; font-size:64px; }
.cmp-list{ list-style:none; padding:0; margin:0; }
.cmp-list li{ position:relative; padding:10px 0 10px 34px; color:var(--muted); font-size:15px; line-height:1.6; border-bottom:1px solid var(--line); }
.cmp-list li::before{ content:"\ea41"; font-family:'boxicons'; position:absolute; left:0; top:9px; color:var(--nv); font-size:22px; }

/* partnership dark band */
.cmp-band{ background:var(--nv); border-radius:24px; padding:56px; text-align:center; }
.cmp-band h3{ font-family:"PlusJakartaSans-Medium"; font-size:30px; color:#fff; margin-bottom:14px; }
.cmp-band p{ color:#ffffffcf; font-size:16px; line-height:1.7; max-width:680px; margin:0 auto 26px; }
.cmp-band .primarybtn{ background:#fff; color:var(--nv); border-color:#fff; }
.cmp-band .primarybtn:hover{ background:var(--amber); border-color:var(--amber); }

/* awards grid */
.cmp-awards{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.cmp-award{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:34px 28px; text-align:center; transition:.35s; }
.cmp-award:hover{ transform:translateY(-6px); box-shadow:0 22px 46px rgba(2,43,99,.10); border-color:#cfd6e2; }
.cmp-award .ic{ width:70px; height:70px; border-radius:50%; background:var(--cream); color:var(--amber); display:inline-flex; align-items:center; justify-content:center; font-size:34px; margin-bottom:18px; transition:.35s; }
.cmp-award:hover .ic{ background:var(--nv); }
.cmp-award h6{ font-family:'DMSans-SemiBold'; font-size:16px; color:var(--ink); margin:0 0 6px; }
.cmp-award p{ color:var(--muted); font-size:13.5px; margin:0; line-height:1.5; }

/* CTA */
.cmp-cta{ background:var(--cream); border-radius:24px; padding:56px; text-align:center; }
.cmp-cta h2{ font-family:"PlusJakartaSans-Medium"; font-size:30px; color:var(--nv); margin-bottom:14px; }
.cmp-cta p{ color:var(--muted); font-size:16px; max-width:640px; margin:0 auto 26px; line-height:1.7; }

@media(max-width:991px){
  .cmp-step,.cmp-step.rev,.cmp-two,.cmp-two.rev,.cmp-support{ grid-template-columns:1fr; gap:26px; }
  .cmp-step.rev,.cmp-two.rev{ direction:ltr; }
  .cmp-grid,.cmp-grid.g4{ grid-template-columns:1fr 1fr; }
  .cmp-awards{ grid-template-columns:1fr 1fr; }
  .cmp-band,.cmp-cta{ padding:36px; }
}
@media(max-width:575px){
  .cmp-grid,.cmp-grid.g4,.cmp-awards{ grid-template-columns:1fr; }
  .cmp-supitem,.cmp-step{ grid-template-columns:1fr; }
}
