/* ─── IAG Global Styles ─────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&display=swap');

:root {
  --iag-primary   : #C8102E;
  --iag-secondary : #1A2B4A;
  --iag-dark      : #0D1B2A;
  --iag-light     : #F5F7FA;
  --iag-white     : #FFFFFF;
  --iag-font      : 'DM Sans', sans-serif;
  --iag-container : 1200px;
  --iag-radius    : 4px;
}

.iag-container { max-width:var(--iag-container); margin:0 auto; padding:0 24px; box-sizing:border-box; }

/* ── Buttons ─────────────────────────────────────────────────────── */
.iag-btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--iag-primary); color:#fff !important;
  font-family:var(--iag-font); font-size:14px; font-weight:600;
  letter-spacing:.5px; padding:12px 28px; border-radius:var(--iag-radius);
  border:none; cursor:pointer; text-decoration:none !important;
  transition:background .2s, transform .2s;
}
.iag-btn-primary:hover { background:#a50d24; transform:translateY(-1px); }

.iag-btn-secondary-dark {
  display:inline-flex; align-items:center;
  font-family:var(--iag-font); font-size:14px; font-weight:600;
  color:var(--iag-secondary) !important; text-decoration:none !important;
  padding:12px 24px; border:2px solid var(--iag-secondary);
  border-radius:var(--iag-radius); transition:all .2s;
}
.iag-btn-secondary-dark:hover { background:var(--iag-secondary); color:#fff !important; }

/* ── Modal ───────────────────────────────────────────────────────── */
.iag-modal-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.6); z-index:99999;
  align-items:center; justify-content:center;
}
.iag-modal-overlay.active { display:flex; }
.iag-modal {
  background:#fff; border-radius:8px; padding:40px;
  width:90%; max-width:520px; position:relative;
  animation:iagModalIn .25s ease;
}
@keyframes iagModalIn { from{opacity:0;transform:scale(.95)} to{opacity:1;transform:scale(1)} }
.iag-modal-close { position:absolute; top:16px; right:16px; background:none; border:none; font-size:24px; cursor:pointer; color:#666; line-height:1; }
.iag-modal h3 { font-family:var(--iag-font); font-size:22px; font-weight:700; color:var(--iag-secondary); margin:0 0 8px; }
.iag-modal > div > p { font-family:var(--iag-font); font-size:14px; color:#666; margin:0 0 24px; }
.iag-form-group { margin-bottom:16px; }
.iag-form-group label { display:block; font-family:var(--iag-font); font-size:13px; font-weight:600; color:var(--iag-secondary); margin-bottom:6px; }
.iag-form-group input,
.iag-form-group select,
.iag-form-group textarea { width:100%; padding:10px 14px; border:1.5px solid #e0e0e0; border-radius:var(--iag-radius); font-family:var(--iag-font); font-size:14px; color:var(--iag-dark); box-sizing:border-box; transition:border .2s; background:#fff; }
.iag-form-group input:focus,
.iag-form-group select:focus,
.iag-form-group textarea:focus { outline:none; border-color:var(--iag-primary); }
.iag-form-group textarea { height:100px; resize:vertical; }
.iag-form-submit { width:100%; padding:13px; background:var(--iag-primary); color:#fff; border:none; border-radius:var(--iag-radius); font-family:var(--iag-font); font-size:15px; font-weight:600; cursor:pointer; transition:background .2s; }
.iag-form-submit:hover { background:#a50d24; }
.iag-form-success { display:none; text-align:center; padding:20px 0; }
.iag-form-success .check { font-size:48px; margin-bottom:12px; display:block; }
.iag-form-success h4 { font-family:var(--iag-font); font-size:20px; font-weight:700; color:var(--iag-secondary); margin:0 0 8px; }
.iag-form-success p { font-family:var(--iag-font); font-size:14px; color:#666; margin:0; }

/* ── Page Hero ───────────────────────────────────────────────────── */
.iag-page-hero {
  position:relative;
  background:linear-gradient(135deg,var(--iag-dark) 0%,var(--iag-secondary) 100%);
  padding:100px 0 60px; overflow:hidden;
}
.iag-page-hero-overlay {
  position:absolute; inset:0;
  background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}
.iag-page-hero .iag-container { position:relative; z-index:1; }
.iag-breadcrumb { display:flex; gap:8px; align-items:center; font-size:12px; color:rgba(255,255,255,.5); margin-bottom:16px; list-style:none; padding:0; }
.iag-breadcrumb a { color:rgba(255,255,255,.5); text-decoration:none; }
.iag-breadcrumb a:hover { color:#fff; }
.iag-page-hero h1 { font-family:var(--iag-font); font-size:clamp(28px,5vw,48px); font-weight:800; color:#fff; margin:0 0 12px; line-height:1.1; }
.iag-page-hero > .iag-container > p { font-family:var(--iag-font); font-size:16px; color:rgba(255,255,255,.65); margin:0; font-style:italic; }

/* ── Shared label pill ───────────────────────────────────────────── */
.iag-label {
  display:block;
  font-size:11px !important; font-weight:700 !important; letter-spacing:3px !important;
  color:var(--iag-primary) !important; text-transform:uppercase !important;
  margin-bottom:12px !important; font-family:var(--iag-font) !important;
}

/* ── Section header (centered) ──────────────────────────────────── */
.iag-section-header { text-align:center; margin-bottom:48px; }
.iag-section-header h2 { font-family:var(--iag-font); font-size:32px; font-weight:800; color:var(--iag-secondary); margin:0 0 12px; line-height:1.2; }
.iag-section-header > p { font-family:var(--iag-font); font-size:15px; color:#666; max-width:560px; margin:0 auto; line-height:1.7; }

/* ════════════════════════════════════════════════════════════════════
   ABOUT STORY
   ════════════════════════════════════════════════════════════════════ */
.iag-about-story { padding:80px 0; background:#fff; }

.iag-about-grid {
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:64px !important;
  align-items:start !important;
}

.iag-about-text h2 {
  font-family:var(--iag-font); font-size:32px; font-weight:800;
  color:var(--iag-secondary); line-height:1.2; margin:0 0 24px;
}
.iag-about-text p {
  font-family:var(--iag-font); font-size:14.5px; color:#555;
  line-height:1.8; margin:0 0 18px;
}
.iag-about-text strong { color:var(--iag-secondary); font-weight:700; }

.iag-about-quote {
  border-left:4px solid var(--iag-primary);
  margin:28px 0; padding:16px 20px;
  background:var(--iag-light);
  border-radius:0 var(--iag-radius) var(--iag-radius) 0;
}
.iag-about-quote,
.iag-about-quote em {
  font-family:var(--iag-font); font-size:15px; color:var(--iag-secondary);
  line-height:1.7; font-style:normal; margin:0; display:block;
}
.iag-about-quote em { color:var(--iag-primary); font-style:italic; font-weight:600; }

.iag-about-btns { display:flex; gap:16px; flex-wrap:wrap; margin-top:28px; }

.iag-about-visual  { position:relative; }
.iag-about-photo   { width:100%; height:420px; object-fit:cover; border-radius:8px; display:block; }
.iag-about-img-placeholder {
  width:100%; height:420px;
  background:linear-gradient(135deg,var(--iag-secondary) 0%,var(--iag-dark) 100%);
  border-radius:8px; display:flex; flex-direction:column;
  align-items:center; justify-content:center; gap:12px;
}
.iag-about-img-placeholder > span { font-size:64px; opacity:.4; display:block; }
.iag-about-img-placeholder > p    { font-family:var(--iag-font); font-size:14px; color:rgba(255,255,255,.35); margin:0; }

.iag-about-stat-badges { display:flex; gap:16px; margin-top:16px; }
.iag-about-badge {
  flex:1; background:#fff; border-radius:8px;
  box-shadow:0 4px 16px rgba(0,0,0,.1); padding:16px 20px; text-align:center;
  border-bottom:3px solid var(--iag-primary);
}
.iag-about-badge-num { display:block; font-family:var(--iag-font); font-size:26px; font-weight:800; color:var(--iag-primary); line-height:1; }
.iag-about-badge-lbl { display:block; font-family:var(--iag-font); font-size:10px; font-weight:700; color:#999; letter-spacing:1.5px; text-transform:uppercase; margin-top:4px; }

/* ════════════════════════════════════════════════════════════════════
   PARTNERS SHOWCASE
   ════════════════════════════════════════════════════════════════════ */
.iag-about-partners { padding:70px 0; background:var(--iag-light); }

.iag-partners-showcase {
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
  gap:16px !important;
  list-style:none !important;
  padding:0 !important;
  margin:0 !important;
}

.iag-partner-card {
  background:#fff !important;
  border-radius:8px !important;
  padding:28px 16px !important;
  text-align:center !important;
  border:1px solid #eaecef !important;
  transition:box-shadow .2s, border-color .2s !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:6px !important;
}
.iag-partner-card:hover {
  box-shadow:0 6px 20px rgba(0,0,0,.08) !important;
  border-color:var(--iag-primary) !important;
}
.iag-partner-card-name {
  display:block !important;
  font-family:var(--iag-font) !important;
  font-size:20px !important;
  font-weight:800 !important;
  color:var(--iag-secondary) !important;
  line-height:1.1 !important;
}
.iag-partner-card-type {
  display:block !important;
  font-family:var(--iag-font) !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  color:#aaa !important;
  letter-spacing:1px !important;
  text-transform:uppercase !important;
  line-height:1.4 !important;
}

/* ════════════════════════════════════════════════════════════════════
   LEADERSHIP
   ════════════════════════════════════════════════════════════════════ */
.iag-leadership { padding:80px 0; background:#fff; }

.iag-leadership-grid {
  display:grid !important;
  grid-template-columns:1.1fr 0.9fr !important;
  gap:64px !important;
  align-items:start !important;
}

.iag-leadership-text > .iag-label { margin-bottom:12px !important; }

.iag-leadership-text h2 {
  font-family:var(--iag-font) !important;
  font-size:32px !important; font-weight:800 !important;
  color:var(--iag-secondary) !important; line-height:1.2 !important;
  margin:0 0 16px !important;
}
.iag-leadership-text > p {
  font-family:var(--iag-font) !important;
  font-size:14.5px !important; color:#555 !important;
  line-height:1.75 !important; margin:0 0 28px !important;
}

/* Leader cards stack */
.iag-leader-cards {
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  margin-bottom:28px !important;
}
.iag-leader-card {
  background:var(--iag-light) !important;
  border-radius:8px !important;
  padding:24px !important;
  border-left:4px solid var(--iag-primary) !important;
  display:block !important;
}
.iag-leader-role-badge {
  display:inline-block !important;
  font-family:var(--iag-font) !important;
  font-size:10px !important; font-weight:700 !important;
  letter-spacing:1.5px !important; text-transform:uppercase !important;
  color:var(--iag-primary) !important;
  border:1px solid rgba(200,16,46,.35) !important;
  border-radius:3px !important; padding:3px 10px !important;
  margin-bottom:10px !important; line-height:1.4 !important;
}
.iag-leader-card h3 {
  font-family:var(--iag-font) !important;
  font-size:18px !important; font-weight:800 !important;
  color:var(--iag-secondary) !important;
  margin:0 0 8px !important; line-height:1.2 !important;
}
.iag-leader-card p {
  font-family:var(--iag-font) !important;
  font-size:13.5px !important; color:#666 !important;
  line-height:1.65 !important; margin:0 !important;
}

/* Founder tribute */
.iag-founder-tribute {
  display:flex !important;
  align-items:flex-start !important;
  gap:14px !important;
  background:var(--iag-dark) !important;
  border-radius:8px !important;
  padding:20px !important;
}
.iag-tribute-icon {
  font-size:16px !important;
  color:rgba(255,255,255,.35) !important;
  flex-shrink:0 !important;
  margin-top:2px !important;
  line-height:1 !important;
}
.iag-founder-tribute strong {
  display:block !important;
  font-family:var(--iag-font) !important;
  font-size:13.5px !important; font-weight:700 !important;
  color:#fff !important; margin-bottom:5px !important;
}
.iag-founder-tribute p {
  font-family:var(--iag-font) !important;
  font-size:12.5px !important;
  color:rgba(255,255,255,.5) !important;
  margin:0 !important; line-height:1.6 !important;
}

/* Leadership visual */
.iag-leadership-visual .iag-about-photo           { height:500px !important; }
.iag-leadership-visual .iag-about-img-placeholder { height:500px !important; }

/* ════════════════════════════════════════════════════════════════════
   WHY IAG
   ════════════════════════════════════════════════════════════════════ */
.iag-why { padding:80px 0; background:var(--iag-light); }
.iag-why-grid {
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:28px !important;
}
.iag-why-item {
  background:#fff !important; border-radius:8px !important; padding:32px !important;
  border-top:3px solid transparent !important;
  transition:border-color .3s, box-shadow .3s !important;
}
.iag-why-item:hover { border-top-color:var(--iag-primary) !important; box-shadow:0 8px 30px rgba(0,0,0,.07) !important; }
.iag-why-icon { font-size:32px !important; margin-bottom:16px !important; display:block !important; }
.iag-why-item h3 { font-family:var(--iag-font) !important; font-size:16px !important; font-weight:700 !important; color:var(--iag-secondary) !important; margin:0 0 10px !important; }
.iag-why-item p  { font-family:var(--iag-font) !important; font-size:13.5px !important; color:#666 !important; line-height:1.65 !important; margin:0 !important; }

/* ════════════════════════════════════════════════════════════════════
   ACCREDITATIONS
   ════════════════════════════════════════════════════════════════════ */
.iag-accreditations { padding:60px 0; background:var(--iag-dark); }
.iag-accreditations .iag-section-header h2 { color:#fff !important; }
.iag-accred-grid {
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:20px !important;
  margin-top:40px !important;
}
.iag-accred-item {
  background:rgba(255,255,255,.05) !important;
  border:1px solid rgba(255,255,255,.1) !important;
  border-radius:8px !important; padding:28px !important; text-align:center !important;
}
.iag-accred-item strong { display:block !important; font-family:var(--iag-font) !important; font-size:18px !important; font-weight:800 !important; color:#fff !important; margin-bottom:6px !important; }
.iag-accred-item span   { font-family:var(--iag-font) !important; font-size:12px !important; color:rgba(255,255,255,.5) !important; letter-spacing:1px !important; text-transform:uppercase !important; }

/* ════════════════════════════════════════════════════════════════════
   CTA BAND
   ════════════════════════════════════════════════════════════════════ */
.iag-services-cta-band { background:var(--iag-secondary); padding:70px 0; text-align:center; }
.iag-services-cta-inner h2 { font-family:var(--iag-font); font-size:32px; font-weight:800; color:#fff; margin:0 0 12px; }
.iag-services-cta-inner > p { font-family:var(--iag-font); font-size:15px; color:rgba(255,255,255,.65); line-height:1.7; max-width:560px; margin:0 auto 28px; }

/* ════════════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════════════ */
@media(max-width:1100px){
  .iag-partners-showcase { grid-template-columns:repeat(3,1fr) !important; }
}
@media(max-width:900px){
  .iag-about-grid          { grid-template-columns:1fr !important; }
  .iag-leadership-grid     { grid-template-columns:1fr !important; }
  .iag-why-grid            { grid-template-columns:repeat(2,1fr) !important; }
  .iag-accred-grid         { grid-template-columns:repeat(2,1fr) !important; }
  .iag-partners-showcase   { grid-template-columns:repeat(2,1fr) !important; }
  .iag-leadership-visual   { order:-1; }
}
@media(max-width:600px){
  .iag-why-grid            { grid-template-columns:1fr !important; }
  .iag-accred-grid         { grid-template-columns:1fr !important; }
  .iag-partners-showcase   { grid-template-columns:1fr !important; }
  .iag-about-stat-badges   { flex-direction:column !important; }
  .iag-about-btns          { flex-direction:column !important; }
}
