/* ============================================================
   COVANSYS GROUP — BASE CSS v3
   Logo colors: Navy #1B2B6B | Orange #F47920 | Green #4CAF50 | Sky #29ABE2
   Professional light theme — no dark backgrounds on content
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300;400;500;600;700;800&family=Roboto:wght@300;400;500&display=swap');

:root {
  /* ── Brand palette from logo ── */
  --navy:        #1B2B6B;   /* Covansys text navy */
  --navy-light:  #243580;
  --navy-dark:   #111D4A;
  --orange:      #F47920;   /* Globe orange */
  --orange-light:#FFF3EA;
  --orange-dark: #D4651A;
  --green:       #4CAF50;   /* Logo green band */
  --sky:         #29ABE2;   /* Logo sky blue band */
  --sky-light:   #E8F6FC;

  /* ── UI colors ── */
  --white:       #FFFFFF;
  --off-white:   #F8F9FC;
  --gray-50:     #F5F7FA;
  --gray-100:    #EEF1F6;
  --gray-200:    #DDE2EC;
  --gray-300:    #C4CBDA;
  --gray-400:    #8D96AD;
  --gray-500:    #64718A;
  --gray-600:    #4A5568;
  --gray-700:    #2D3748;
  --gray-800:    #1A202C;
  --text-main:   #1A202C;
  --text-soft:   #4A5568;
  --text-muted:  #8D96AD;

  /* ── Accent = Orange (primary action) ── */
  --accent:      #F47920;
  --accent-rgb:  244,121,32;
  --accent-hover:#D4651A;

  /* ── Company accents ── */
  --tech-color:  #1B6B4A;   /* Covansys Tech — forest green */
  --vortex-color:#0A7AC7;   /* Vortex Edge — strong blue */
  --omni-color:  #6B3FA0;   /* OmniViewAI — purple */
  --wave-color:  #D4651A;   /* WaveSight — burnt orange */

  /* ── Typography ── */
  --font-display: 'Roboto Condensed', sans-serif;
  --font-body:    'Roboto', sans-serif;

  /* ── Sizes ── */
  --header-h: 76px;
  --max-w:    1280px;

  /* ── Radii ── */
  --r-sm:   6px;
  --r-md:   12px;
  --r-lg:   18px;
  --r-xl:   24px;
  --r-full: 9999px;

  /* ── Shadows ── */
  --sh-xs:  0 1px 4px rgba(27,43,107,0.07);
  --sh-sm:  0 2px 12px rgba(27,43,107,0.09);
  --sh-md:  0 6px 24px rgba(27,43,107,0.11);
  --sh-lg:  0 12px 48px rgba(27,43,107,0.14);
  --sh-xl:  0 24px 72px rgba(27,43,107,0.18);

  /* ── Motion ── */
  --ease:     cubic-bezier(.4,0,.2,1);
  --ease-out: cubic-bezier(0,0,.2,1);
  --fast:     180ms;
  --base:     300ms;
  --slow:     500ms;
}

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:1rem;font-weight:400;line-height:1.65;color:var(--text-main);background:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{cursor:pointer;border:none;background:none;font-family:inherit}
input,textarea,select{font-family:inherit}

/* ── Typography scale ── */
.t-hero   {font-family:var(--font-display);font-size:clamp(2.6rem,6vw,5rem);font-weight:800;line-height:1.05;letter-spacing:-0.01em}
.t-h1     {font-family:var(--font-display);font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:1.08}
.t-h2     {font-family:var(--font-display);font-size:clamp(1.6rem,3vw,2.6rem);font-weight:700;line-height:1.12}
.t-h3     {font-family:var(--font-display);font-size:clamp(1.2rem,2vw,1.75rem);font-weight:600;line-height:1.2}
.t-h4     {font-family:var(--font-display);font-size:1.15rem;font-weight:600;line-height:1.3}
.t-lg     {font-size:1.125rem;line-height:1.72;font-weight:400}
.t-base   {font-size:1rem;line-height:1.7}
.t-sm     {font-size:.875rem;line-height:1.65}
.t-xs     {font-size:.78rem;line-height:1.5}
.t-label  {font-family:var(--font-display);font-size:.68rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.t-navy   {color:var(--navy)}
.t-orange {color:var(--orange)}
.t-soft   {color:var(--text-soft)}
.t-muted  {color:var(--text-muted)}
.t-white  {color:var(--white)}
.t-center {text-align:center}

/* ── Layout ── */
.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 4rem}
@media(max-width:1024px){.container{padding:0 2.5rem}}
@media(max-width:768px){.container{padding:0 1.25rem}}
.section    {padding:5.5rem 0}
.section-sm {padding:3.5rem 0}
.section-lg {padding:7rem 0}
.bg-white   {background:var(--white)}
.bg-off     {background:var(--off-white)}
.bg-navy    {background:var(--navy)}
.bg-gray    {background:var(--gray-50)}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.75rem;border-radius:var(--r-full);font-family:var(--font-display);font-size:.9rem;font-weight:700;letter-spacing:.02em;transition:all var(--base) var(--ease);white-space:nowrap;cursor:pointer;border:2px solid transparent}
.btn-primary{background:var(--orange);color:var(--white);border-color:var(--orange);box-shadow:0 4px 16px rgba(var(--accent-rgb),.3)}
.btn-primary:hover{background:var(--orange-dark);border-color:var(--orange-dark);transform:translateY(-2px);box-shadow:0 8px 24px rgba(var(--accent-rgb),.4)}
.btn-secondary{background:var(--navy);color:var(--white);border-color:var(--navy)}
.btn-secondary:hover{background:var(--navy-dark);border-color:var(--navy-dark);transform:translateY(-2px)}
.btn-outline-navy{background:transparent;color:var(--navy);border-color:var(--navy)}
.btn-outline-navy:hover{background:var(--navy);color:var(--white);transform:translateY(-2px)}
.btn-outline-white{background:transparent;color:var(--white);border-color:rgba(255,255,255,.5)}
.btn-outline-white:hover{background:rgba(255,255,255,.12);border-color:var(--white)}
.btn-lg{padding:.9rem 2.2rem;font-size:1rem}
.btn-sm{padding:.5rem 1.2rem;font-size:.8rem}

/* ── Pill label ── */
.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem 1rem;border-radius:var(--r-full);font-family:var(--font-display);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.pill-orange{background:var(--orange-light);color:var(--orange-dark)}
.pill-navy {background:rgba(27,43,107,.08);color:var(--navy)}
.pill-sky  {background:var(--sky-light);color:var(--vortex-color)}
.pill::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor}

/* ── Cards ── */
.card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-sm);border:1px solid var(--gray-100);transition:transform var(--base) var(--ease),box-shadow var(--base) var(--ease)}
.card:hover{transform:translateY(-6px);box-shadow:var(--sh-lg)}

/* ── Divider accent ── */
.accent-bar{width:48px;height:4px;background:var(--orange);border-radius:var(--r-full);margin:1.25rem 0}
.accent-bar-center{margin:1.25rem auto}

/* ── Reveal animations ── */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .65s var(--ease-out),transform .65s var(--ease-out)}
.reveal.in{opacity:1;transform:none}
.reveal-left{opacity:0;transform:translateX(-30px);transition:opacity .65s var(--ease-out),transform .65s var(--ease-out)}
.reveal-left.in{opacity:1;transform:none}
.reveal-right{opacity:0;transform:translateX(30px);transition:opacity .65s var(--ease-out),transform .65s var(--ease-out)}
.reveal-right.in{opacity:1;transform:none}
.reveal-scale{opacity:0;transform:scale(.93);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.reveal-scale.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.18s}.d3{transition-delay:.26s}.d4{transition-delay:.34s}.d5{transition-delay:.42s}.d6{transition-delay:.5s}

/* ── Stat counter ── */
.stat-num{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.25rem);font-weight:800;color:var(--orange);line-height:1;display:block}

/* ── Img helpers ── */
.img-cover{width:100%;height:100%;object-fit:cover;object-position:center}
.img-contain{width:100%;height:100%;object-fit:contain}

/* ── Utility ── */
.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.w-full{width:100%}
