/* Brand guide tokens (scoped to this page's stylesheet, loaded only here). */
.v2-body{
  --bg:#f9f9f7; --card:#f9f9f7; --paper:#f9f9f7;
  --red:#ff3131; --red-soft:rgba(255,49,49,.10);
  --ink:#181819; --text:#181819;
  --font-display:'Saral Devanagari','Mukta',system-ui,sans-serif;
  --font-hero-display:'Saral Devanagari','Mukta',system-ui,sans-serif;
  --font-body:'Canva Sans','Hanken Grotesk',system-ui,sans-serif;
}
.v2-body .eyebrow{font-size:14px}

/* Section headings: match the Referral page hero's heading treatment (color/weight/family
   only — size, spacing etc. stay per-section). Light-background sections only; .emp-why is
   a dark band and keeps its own white heading color for contrast. */
.v2-body h1,
.v2-body h2,
.v2-body h3,
.v2-body h4,
.v2-body h5,
.v2-body .h1,
.v2-body .h2,
.v2-body .h3,
.v2-body .h4{font-family:var(--font-display);font-weight:400;color:var(--ink)}

/* ---- hero: split copy / photo (full-bleed photo, same treatment as Careers' .car-hero) ---- */
.v2-body .emp-hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;padding:0;overflow:hidden;background:var(--bg,#fff)}
.v2-body .emp-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:center;width:100%}
.v2-body .emp-hero-copy{padding:calc(var(--nav-h,80px) + 24px) 56px 48px 0}
.v2-body .emp-hero h1{font-family:var(--font-display);font-weight:400;
  font-size:clamp(44px,7vw,80px);line-height:1.08;letter-spacing:-.03em;
  color:var(--ink);margin:16px 0 0;max-width:11ch}
.v2-body .emp-hero .lead{margin-top:18px;max-width:46ch;color:var(--muted);font-size:18px}
.v2-body .emp-hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px;align-items:center}
.v2-body .emp-mini-stats{display:flex;gap:32px;flex-wrap:wrap;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.v2-body .emp-mini-stat{display:flex;flex-direction:column;gap:4px}
.v2-body .emp-mini-stat strong{font-family:var(--font-display);font-weight:500;font-size:20px;color:var(--text);letter-spacing:-.01em}
.v2-body .emp-mini-stat span{font-size:12.5px;color:var(--muted)}
.v2-body .emp-hero-photo{position:absolute;top:0;bottom:0;left:50%;right:calc(50% - 50vw);margin:0;background:var(--panel)}
.v2-body .emp-hero-photo img{width:100%;height:100%;object-fit:cover;display:block}

/* ---- how we help ---- */
.v2-body .emp-process{padding:96px 0}
.v2-body .emp-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:64px;
  position:relative}
.v2-body .emp-steps::before{content:"";position:absolute;top:38px;left:calc(12.5%);
  width:calc(75%);height:1.5px;background:linear-gradient(90deg,var(--blue) 0%,var(--red) 100%);
  z-index:0}
.v2-body .emp-step{display:flex;flex-direction:column;align-items:center;text-align:center;
  position:relative;z-index:1;padding:0 20px}
.v2-body .emp-step-num{width:76px;height:76px;border-radius:50%;
  background:#fff;border:2px solid var(--blue);
  display:grid;place-items:center;margin:0 auto 28px;
  font-family:var(--font-display);font-weight:500;font-size:28px;
  color:var(--blue);letter-spacing:-.02em;
  box-shadow:0 0 0 6px var(--blue-soft);position:relative}
.v2-body .emp-step-num.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.v2-body .emp-step h4{font-family:var(--font-display);font-weight:400;font-size:19px;
  color:var(--ink);margin:0 0 10px;letter-spacing:-.01em}
.v2-body .emp-step p{font-size:14.5px;color:var(--muted);line-height:1.6;margin:0}

/* ---- engagement models ---- */
.v2-body .eng-models{position:relative;background:var(--panel) center/cover no-repeat}
.v2-body .eng-veil{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(243,243,247,.95) 0%,rgba(243,243,247,.97) 100%)}
.v2-body .eng-models .container{position:relative;z-index:1}
.v2-body .eng-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:56px}
.v2-body .eng-card{background:#fff;border:1.5px solid var(--line,#e8e8ef);
  border-radius:var(--radius,16px);padding:32px;
  transition:border-color .3s,box-shadow .3s,transform .4s cubic-bezier(.22,1,.36,1)}
.v2-body .eng-card:hover{border-color:var(--blue);box-shadow:0 12px 36px -12px rgba(47,75,192,.18);
  transform:translateY(-4px)}
.v2-body .eng-card .ico{margin-bottom:20px}
.v2-body .eng-card h4{font-family:var(--font-display);font-weight:400;font-size:19px;
  color:var(--ink);margin:0 0 8px;letter-spacing:-.01em;line-height:1.25}
.v2-body .eng-card p{font-size:14px;color:var(--muted);margin:0;line-height:1.55}

/* ---- eight functions carousel (reskins the shared .svc-tile home component) ----
   .svc-wrap's base rule (style.css) bleeds it to 100vw for the homepage rail, where it sits
   outside any .container. Here it's nested inside .emp-solutions' own .container, so cancel
   the bleed — otherwise the track overflows past the page's centered content width and the
   tiles spill off the right edge instead of sitting centered, 3-up, inside the container. */
.v2-body .emp-solutions .svc-wrap{width:100%;margin-left:0}
.v2-body .emp-solutions .svc-tile{flex-basis:calc((100% - 44px)/3);background:#fff;border:1.5px solid var(--line);
  padding:30px;min-height:0}
.v2-body .emp-solutions .svc-tile::before,
.v2-body .emp-solutions .svc-tile::after{display:none}
.v2-body .emp-solutions .svc-tile:hover{border-color:var(--blue);box-shadow:0 12px 36px -12px rgba(47,75,192,.18);transform:translateY(-4px)}
.v2-body .sol-tile-top{display:flex;align-items:flex-start;justify-content:space-between;width:100%;margin-bottom:22px}
.v2-body .sol-num{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-2)}
.v2-body .sol-icon{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--blue-soft);color:var(--blue);
  border:1px solid rgba(47,75,192,.15);display:grid;place-items:center;flex:none}
.v2-body .sol-icon svg{width:20px;height:20px;stroke-width:1.7}
.v2-body .emp-solutions .svc-tile h4{font-family:var(--font-display);font-weight:400;font-size:19px;
  color:var(--ink);margin:0 0 8px;letter-spacing:-.01em}
.v2-body .emp-solutions .svc-tile p{color:var(--muted);font-size:14px;line-height:1.55;margin:0 0 18px}
.v2-body .sol-tags{display:flex;flex-wrap:wrap;gap:7px}
.v2-body .sol-tag{padding:4px 10px;border-radius:100px;background:var(--panel,#f3f3f7);font-size:12px;font-weight:600;color:var(--muted)}

/* ---- why arvion (dark) ---- */
.v2-body .emp-why{background:#15103a;padding:96px 0;position:relative;overflow:hidden}
.v2-body .emp-why::before{content:"";position:absolute;right:-100px;top:-100px;width:600px;height:600px;
  border-radius:50%;background:radial-gradient(circle,rgba(47,75,192,.3),transparent 60%)}
.v2-body .emp-why .container{position:relative;z-index:1}
.v2-body .emp-why-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.v2-body .emp-why h2{font-family:var(--font-display);font-weight:400;
  font-size:clamp(30px,3.5vw,48px);color:#fff;letter-spacing:-.025em;line-height:1.1;margin:0}
.v2-body .emp-why .lead{color:rgba(255,255,255,.65);margin-top:16px}
.v2-body .emp-why .eyebrow{color:rgba(255,255,255,.55)}
.v2-body .emp-why .eyebrow::before{background:rgba(255,255,255,.35)}
.v2-body .emp-pillars{display:grid;gap:14px}
.v2-body .emp-pillar{display:flex;align-items:flex-start;gap:16px;padding:22px 24px;border-radius:var(--radius);
  background:rgba(91,88,117,.35);border:1px solid rgba(255,255,255,.12);
  -webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);
  box-shadow:0 14px 34px -18px rgba(0,0,0,.5);
  transition:background .3s,border-color .3s,transform .3s}
.v2-body .emp-pillar:hover{background:rgba(91,88,117,.5);border-color:rgba(255,255,255,.22);transform:translateY(-3px)}
.v2-body .emp-pillar .ico{width:40px;height:40px;flex:none;border-radius:var(--radius-sm);
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#fff;
  display:grid;place-items:center}
.v2-body .emp-pillar .ico svg{width:19px;height:19px;stroke-width:1.7}
.v2-body .emp-pillar-text{flex:1;min-width:0}
.v2-body .emp-pillar h5{font-family:var(--font-display);font-weight:400;font-size:16px;color:#fff;margin:0 0 6px}
.v2-body .emp-pillar p{font-size:14.5px;color:rgba(255,255,255,.6);margin:0;line-height:1.5}

@media(max-width:1099px){
.v2-body .emp-hero{min-height:0}
.v2-body .emp-hero-grid{grid-template-columns:1fr;gap:0}
.v2-body .emp-hero-copy{padding:calc(var(--nav-h,80px) + 24px) 0 0}
.v2-body .emp-hero-photo{order:-1;position:relative;left:auto;right:auto;top:auto;bottom:auto;margin:0 0 28px;aspect-ratio:16/9}
}
@media(max-width:991px){
.v2-body .emp-steps{grid-template-columns:1fr 1fr;gap:40px}
.v2-body .emp-steps::before{display:none}
.v2-body .eng-grid{grid-template-columns:1fr 1fr}
.v2-body .emp-why-grid{grid-template-columns:1fr;gap:48px}
}
@media(max-width:767px){
.v2-body .eng-grid{grid-template-columns:1fr}
.v2-body .emp-steps{grid-template-columns:1fr 1fr}
.v2-body .emp-solutions .svc-tile{flex-basis:82%}
}
@media(max-width:575px){
.v2-body .emp-steps{grid-template-columns:1fr}
.v2-body .emp-mini-stats{gap:24px}
}
