:root{
  --white:#ffffff;
  --dark:#0B3D91;
  --light:#f4f6f8;
  --muted:#6b7280;
  --radius:12px;
  --container:1100px;
}
*{box-sizing:border-box}
body{font-family:'Poppins',system-ui,Segoe UI,Roboto,Arial;line-height:1.5;color:#0b2238;margin:0;background:var(--light)}
img{max-width:100%;height:auto}
.container{max-width:var(--container);margin:0 auto;padding:2rem}
h1,h2,h3,h4{line-height:1.25}
h1{font-size:clamp(1.7rem,3.2vw,2.7rem)}
h2{font-size:clamp(1.35rem,2.4vw,2rem);margin:0 0 1rem}
h3{font-size:clamp(1.08rem,1.8vw,1.4rem)}
.site-header{background:var(--white);box-shadow:0 2px 8px rgba(11,61,145,0.06);position:sticky;top:0;z-index:20}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:1rem 0}
.logo{font-weight:700;color:var(--dark);text-decoration:none;font-size:1.1rem}
.header-logo{max-height:50px;width:auto;display:block}
.footer-logo{max-height:60px;width:auto;display:block;margin-bottom:0.5rem}
.nav{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem .8rem}
.nav-toggle{display:none;border:1px solid #d8e2f0;background:var(--white);color:var(--dark);border-radius:8px;padding:.45rem .75rem;font-weight:600;cursor:pointer}
.nav a{margin-left:1rem;color:var(--muted);text-decoration:none}
.nav a:hover{color:var(--dark)}

.hero{background:linear-gradient(135deg,#0b3d91 0%,#1e90ff 60%);color:var(--white);padding:4rem 0}
.hero-grid{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:center}
.hero h1{font-size:2.5rem;margin:0 0 .5rem;font-weight:700;letter-spacing:1px}
.hero-logo{max-width:100%;height:auto;max-height:200px;margin-bottom:1rem;display:block}
.lead{font-size:1.1rem;opacity:.95}
.hero-card{background:rgba(255,255,255,0.06);padding:1.25rem;border-radius:10px;box-shadow:0 8px 30px rgba(2,6,23,0.25)}
.btn{display:inline-block;padding:.6rem 1rem;border-radius:8px;text-decoration:none}
.btn-primary{background:var(--white);color:var(--dark);font-weight:600}

.company{padding:3rem 0}
.company-grid{display:grid;grid-template-columns:1fr 380px;gap:1.25rem}
.card{background:var(--white);padding:1.25rem;border-radius:var(--radius);box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.card.highlight{background:linear-gradient(90deg,#ffffff,#f7fafc)}

.services{padding:3rem 0}
.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.service-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06);transition:transform .22s ease,box-shadow .22s ease}
.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(11,61,145,0.12)}
.service-card .icon{margin-bottom:.6rem}
.service-card h3{margin:.25rem 0}
.muted{color:var(--muted);font-size:.92rem}

.features{padding:3rem 0}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}
.feature-card{background:linear-gradient(180deg,var(--white),#fafcff);padding:1.1rem;border-radius:12px;text-align:center;box-shadow:0 8px 22px rgba(11,61,145,0.04)}

.stats-section{background:#f7fafc;padding:2rem 0;margin:2rem 0}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}
.stats-section .stat-card h3{font-size:2rem;color:var(--dark)}

.sectors{padding:3rem 0}
.sectors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}
.sector-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06);border-top:4px solid var(--dark);transition:transform .22s ease,box-shadow .22s ease}
.sector-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(11,61,145,0.12)}
.sector-card h3{margin-top:0;color:var(--dark);font-size:1.05rem}

.process{padding:3rem 0}
.process-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;position:relative}
.process .process-step{background:linear-gradient(180deg,var(--white),#fafcff);padding:1.5rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.process .process-step h4{color:var(--dark);margin:.5rem 0;font-size:1rem}
.process .step-number{background:var(--dark);color:var(--white);display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;font-weight:700;font-size:1.1rem;margin-bottom:1rem}

.contact{padding:3rem 0}
.contact-grid{display:grid;grid-template-columns:1fr 420px;gap:1rem}
.contact-info p{margin:.4rem 0}
.contact-form label{display:block;margin-top:.6rem;font-weight:600}
.contact-form input,.contact-form textarea{width:100%;padding:.6rem;border-radius:8px;border:1px solid #e6e9ef;margin-top:.4rem}
.form-actions{margin-top:1rem;text-align:right}

.page-hero{background:linear-gradient(135deg,#0b3d91 0%,#1e90ff 60%);color:var(--white);padding:2rem 0;text-align:center}
.page-hero h1{font-size:2rem;margin:0 0 .5rem;font-weight:700}
.page-hero .lead{font-size:1rem;opacity:.95}

.download-section{padding:2rem 0}
.download-card{background:linear-gradient(135deg,#f7fafc 0%,#e6eef8 100%);padding:2rem;border-radius:12px;border-left:4px solid var(--dark);text-align:center;box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.download-card h3{margin-top:0;color:var(--dark)}
.download-card p{color:var(--muted);margin-bottom:1.5rem}
.download-card .btn{display:inline-block}

.section-intro{margin:0.75rem 0 1.25rem}
.section-intro p{margin:0.75rem 0 0;color:#1f3a5f}
.section-intro-compact p{display:none}
.section-image{width:100%;height:220px;object-fit:cover;border-radius:12px;box-shadow:0 10px 24px rgba(11,61,145,0.1);transition:transform .28s ease,box-shadow .28s ease}
.section-image:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 16px 34px rgba(11,61,145,0.16)}

.manpower-section{padding:1rem 0 3rem}
.manpower-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.manpower-table-wrap{overflow-x:auto}
.manpower-table{width:100%;border-collapse:collapse;min-width:820px;table-layout:fixed}
.manpower-table th,
.manpower-table td{border:1px solid #e6e9ef;padding:1rem;vertical-align:top;text-align:left;line-height:1.65}
.manpower-table th{background:#f3f7fc;color:var(--dark);font-size:.95rem;font-weight:700;letter-spacing:.02em}
.manpower-table td{color:#334155;font-size:.92rem}
.manpower-table tbody tr:nth-child(even){background:#fafcff}
.manpower-table td:nth-child(1){width:18%;font-weight:600;color:#0f172a}
.manpower-table td:nth-child(2){width:52%}
.manpower-table td:nth-child(3),
.manpower-table td:nth-child(4){width:15%;text-align:center;white-space:nowrap;font-weight:600}
.manpower-table th:nth-child(3),
.manpower-table th:nth-child(4){text-align:center}

.content-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.team-card{background:var(--white);padding:1.5rem;border-radius:var(--radius);box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.team-card h3{margin-top:0}

.light-bg{background:#f7fafc;padding:3rem 0}
.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}
.stat-card{background:var(--white);padding:1rem;border-radius:12px;text-align:center;box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.stat-card h3{color:var(--dark);margin:.5rem 0;font-size:1.5rem}
.stat-card p{color:var(--muted);margin:0;font-size:.9rem}

.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.value-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06)}

.guarantee-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.guarantee-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06);border-left:4px solid var(--dark)}

.process-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.process-step{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06);position:relative}
.step-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--dark);color:var(--white);border-radius:50%;font-weight:700;margin-bottom:.5rem}

.contact-info p{margin:.3rem 0}
.contact-info a{color:var(--dark);text-decoration:none;font-weight:500}
.info-item{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #e6e9ef}
.info-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.backend-count{display:inline-block;font-size:1.4rem;font-weight:700;color:var(--dark)}
.form-group{margin-bottom:1rem}
.form-note{font-size:.85rem;color:var(--muted);margin-top:.5rem}
.form-status{min-height:1.2rem;margin-top:.75rem;font-size:.92rem;font-weight:600;color:var(--dark)}

.benefit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}
.benefit-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06)}

.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.faq-card{background:var(--white);padding:1.25rem;border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06)}
.faq-card h4{margin-top:0}

.service-details{margin-top:.8rem;padding-top:.8rem;border-top:1px solid #e6e9ef}
.service-details h4{margin:0 0 .5rem;font-size:.95rem;color:var(--dark)}
.service-details ul{margin:0;padding-left:1.5rem;color:var(--muted);font-size:.9rem}
.service-details li{margin:.3rem 0}

.cta-section{text-align:center;padding:2rem 0;margin:2rem 0}
.cta-light{text-align:center;padding:2rem 0;background:#f7fafc;border-radius:var(--radius)}

.link-btn{color:var(--dark);text-decoration:none;font-weight:600;display:inline-block;margin-top:.5rem}
.link-btn:hover{text-decoration:underline}

.jobs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem}
.job-card{background:var(--white);border-radius:12px;box-shadow:0 6px 18px rgba(11,61,145,0.06);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}
.job-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px rgba(11,61,145,0.12)}
.job-header{background:linear-gradient(135deg,#0b3d91 0%,#1e90ff 60%);color:var(--white);padding:1rem;display:flex;justify-content:space-between;align-items:start}
.job-header h3{margin:0;font-size:1.1rem}
.job-type{background:rgba(255,255,255,0.2);padding:.3rem .6rem;border-radius:4px;font-size:.8rem;font-weight:600;white-space:nowrap}
.job-meta{padding:1rem;background:#f9fafb;border-bottom:1px solid #e6e9ef}
.job-meta p{margin:.4rem 0;font-size:.9rem}
.job-description{padding:1rem}
.job-description h4{margin:.8rem 0 .4rem;font-size:.95rem;color:var(--dark)}
.job-description ul{margin:.4rem 0;padding-left:1.5rem;color:var(--muted);font-size:.9rem}
.job-description li{margin:.2rem 0}
.apply-btn{width:100%;margin-top:1rem}

.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(0,0,0,0.5)}
.modal-content{background-color:var(--white);margin:3% auto;padding:2rem;border-radius:12px;width:90%;max-width:500px;box-shadow:0 20px 60px rgba(0,0,0,0.3)}
.close{color:var(--muted);float:right;font-size:1.5rem;font-weight:700;cursor:pointer}
.close:hover{color:var(--dark)}
.modal h2{margin-top:0;color:var(--dark)}

.btn-secondary{background:#e6e9ef;color:var(--dark);border:none;cursor:pointer;margin-left:.5rem}
.btn-secondary:hover{background:#d1d5e0}

.site-footer{background:#0b1730;color:#cfe0ff;padding:2rem 0;margin-top:2rem}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}
.footer-nav a{display:block;color:#cfe0ff;text-decoration:none;margin:.25rem 0}

main section{scroll-margin-top:86px}
.btn{min-height:42px;line-height:1.2}

@keyframes fadeUp{
  from{opacity:0;transform:translateY(20px)}
  to{opacity:1;transform:translateY(0)}
}

main section{animation:fadeUp .65s ease both}
main section:nth-of-type(2){animation-delay:.06s}
main section:nth-of-type(3){animation-delay:.12s}
main section:nth-of-type(4){animation-delay:.18s}
main section:nth-of-type(5){animation-delay:.24s}
main section:nth-of-type(6){animation-delay:.3s}
main section:nth-of-type(7){animation-delay:.36s}
main section:nth-of-type(8){animation-delay:.42s}

.page-hero,
.download-card,
.manpower-section,
.process-step,
.cta-light{animation:fadeUp .65s ease both}

.manpower-section:nth-of-type(2){animation-delay:.08s}
.manpower-section:nth-of-type(3){animation-delay:.14s}
.manpower-section:nth-of-type(4){animation-delay:.2s}
.manpower-section:nth-of-type(5){animation-delay:.26s}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important}
}

@media (max-width:900px){
  .container{padding:1.5rem}
  .header-inner{flex-wrap:wrap;gap:.8rem}
  .nav{width:100%;justify-content:center}
  .nav a{margin-left:0}
  .hero-grid,.company-grid,.content-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .faq-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
  .hero{padding:2.2rem 0;text-align:center}
  .hero h1{font-size:1.9rem}
  .hero-cta .btn{width:auto}
  .card,.feature-card,.benefit-card,.value-card,.faq-card,.service-card,.team-card{padding:1rem}
  .cta-section,.cta-light{padding:1.5rem 1rem}
  .page-hero h1{font-size:1.8rem}
  .section-image{height:180px}

  /* Responsive fallback for inline two-column blocks used in about page */
  section .section-intro + div[style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr !important}
  section[style*="padding: 3rem"]{padding:1.5rem !important}
}

@media (max-width:520px){
  .container{padding:1rem}
  .header-logo{max-height:42px}
  .lead{font-size:1rem}
  .hero h1{font-size:1.55rem;letter-spacing:.3px}
  .stats-grid,.feature-grid,.sectors-grid,.values-grid,.benefit-grid,.process-grid{grid-template-columns:1fr}
  .jobs-grid{grid-template-columns:1fr;gap:1rem}
  .job-header{flex-direction:column;gap:.5rem;align-items:flex-start}
  .btn,.btn-primary,.btn-secondary{width:100%;text-align:center}
  .form-actions{text-align:left}
  .footer-grid{grid-template-columns:1fr}
  .manpower-table{min-width:640px}
  .manpower-table th,
  .manpower-table td{padding:.7rem;font-size:.86rem;line-height:1.5}
  .modal-content{width:94%;padding:1.2rem}
}

@media (max-width:760px){
  .header-inner{align-items:center;gap:.6rem}
  .nav-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto}
  .nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:.35rem;padding-top:.6rem}
  .nav.open{display:flex}
  .nav a{margin-left:0;font-size:.95rem;background:#f3f7fc;padding:.55rem .7rem;border-radius:8px}
}
