/* =============================================
   IGS GLOBAL COLOR FIX v2
   ============================================= */

/* --- LIGHT SECTION HEADINGS --- */
/* Only targets sections with light backgrounds */
.elementor-section[data-element_type="section"] 
  .elementor-heading-title {
  color: #1e3a5f;
}

/* --- DARK NAVY SECTION HEADINGS --- */
/* Overrides above for dark navy sections */
/* Background #1e3a5f = rgb(30, 58, 95) */
[style*="background-color: rgb(30, 58, 95)"] 
  .elementor-heading-title,
[style*="background-color:rgb(30, 58, 95)"] 
  .elementor-heading-title,
[style*="background-color: #1e3a5f"] 
  .elementor-heading-title,
[style*="background-color:#1e3a5f"] 
  .elementor-heading-title {
  color: #ffffff !important;
}

/* --- DARKEST SECTION HEADINGS --- */
/* Background #111e2e = rgb(17, 30, 46) */
[style*="background-color: rgb(17, 30, 46)"] 
  .elementor-heading-title,
[style*="background-color:rgb(17, 30, 46)"] 
  .elementor-heading-title,
[style*="background-color: #111e2e"] 
  .elementor-heading-title,
[style*="background-color:#111e2e"] 
  .elementor-heading-title {
  color: #ffffff !important;
}

/* --- HERO SECTION HEADING FIX --- */
/* Light surface hero background #faf7f2 */
[style*="background-color: rgb(250, 247, 242)"] 
  .elementor-heading-title,
[style*="background-color: #faf7f2"] 
  .elementor-heading-title {
  color: #1e3a5f !important;
}

/* --- LIGHT PAGE BACKGROUND HEADINGS --- */
/* Background #f0ede8 = rgb(240, 237, 232) */
[style*="background-color: rgb(240, 237, 232)"] 
  .elementor-heading-title,
[style*="background-color: #f0ede8"] 
  .elementor-heading-title {
  color: #1e3a5f !important;
}

/* --- BODY TEXT ON LIGHT BACKGROUNDS --- */
[style*="background-color: rgb(250, 247, 242)"] p,
[style*="background-color: rgb(240, 237, 232)"] p,
[style*="background-color: #faf7f2"] p,
[style*="background-color: #f0ede8"] p {
  color: #5a5a5a !important;
}

/* --- BODY TEXT ON DARK BACKGROUNDS --- */
[style*="background-color: rgb(30, 58, 95)"] p,
[style*="background-color:#1e3a5f"] p,
[style*="background-color: #1e3a5f"] p {
  color: #9ab0c8 !important;
}

[style*="background-color: rgb(17, 30, 46)"] p,
[style*="background-color:#111e2e"] p,
[style*="background-color: #111e2e"] p {
  color: #6b8fa8 !important;
}

/* --- CTA SECTION ID FIX --- */
#igs-cta-section {
  background-color: #1e3a5f !important;
}

#igs-cta-section .elementor-heading-title {
  color: #ffffff !important;
}

#igs-cta-section p {
  color: #9ab0c8 !important;
}

#igs-cta-section .elementor-button {
  background-color: #E8701A !important;
  color: #ffffff !important;
  border-color: #E8701A !important;
  border-radius: 8px !important;
}

#igs-cta-section .elementor-button:hover {
  background-color: #cf6015 !important;
}

/* --- DARK CARD HEADINGS --- */
/* Fixes Pro AIOS Engine card and other dark cards */
[style*="background: rgb(30, 58, 95)"] 
  .elementor-heading-title,
[style*="background:#1e3a5f"] 
  .elementor-heading-title,
[style*="background: #1e3a5f"] 
  .elementor-heading-title {
  color: #ffffff !important;
}

/* --- ORANGE SECTION LABELS --- */
.elementor-widget-text-editor 
  [style*="color: rgb(232, 112, 26)"],
.elementor-widget-text-editor 
  [style*="color:#E8701A"],
.elementor-widget-text-editor 
  [style*="color: #E8701A"] {
  color: #E8701A !important;
}

/* --- GLOBAL BUTTON FIX --- */
.elementor-button.elementor-size-lg,
.elementor-button.elementor-size-xl,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-sm {
  background-color: #E8701A !important;
  color: #ffffff !important;
  border-color: #E8701A !important;
}

.elementor-button.elementor-size-lg:hover,
.elementor-button.elementor-size-xl:hover,
.elementor-button.elementor-size-md:hover {
  background-color: #cf6015 !important;
  border-color: #cf6015 !important;
}

/* =============================================
   END IGS GLOBAL COLOR FIX v2
   ============================================= */



/* === IGS REDESIGN — ADDITIONAL CSS === */

/* Smooth scroll */

html { scroll-behavior: smooth; }

/* Sharper typography */

h1, h2, h3, h4, h5 {

  letter-spacing: -0.02em !important;

  line-height: 1.15 !important;

}

h1 { font-weight: 800 !important; }

h2 { font-weight: 700 !important; }

/* Hero background animated glow */

.elementor-location-header ~ * .elementor-section:first-of-type,

.elementor-section:first-of-type {

  position: relative;

  overflow: hidden;

}

/* Terminal block upgrade */

.elementor-text-editor pre,

pre {

  background: #0b1120 !important;

  border: 1px solid rgba(255, 100, 0, 0.4) !important;

  border-radius: 12px !important;

  box-shadow: 0 0 30px rgba(255, 100, 0, 0.15), 0 2px 8px rgba(0,0,0,0.4) !important;

  font-family: 'JetBrains Mono', 'Fira Code', 'Courier New', monospace !important;

  padding: 28px 32px !important;

  position: relative !important;

}

/* Blinking cursor after terminal */

.elementor-text-editor pre::after {

  content: '▌';

  color: #ff6400;

  animation: igss-blink 1s step-end infinite;

}

@keyframes igss-blink {

  0%, 100% { opacity: 1; }

  50% { opacity: 0; }

}

/* Button hover lift */

.elementor-button {

  transition: transform 0.25s ease, box-shadow 0.25s ease !important;

}

.elementor-button:hover {

  transform: translateY(-3px) !important;

  box-shadow: 0 10px 28px rgba(255, 100, 0, 0.4) !important;

}

/* Table polish */

table {

  border-radius: 12px !important;

  overflow: hidden !important;

  box-shadow: 0 4px 32px rgba(0,0,0,0.2) !important;

  border-collapse: separate !important;

}

table tbody tr {

  transition: background 0.2s ease;

}

table tbody tr:hover {

  background: rgba(255, 100, 0, 0.06) !important;

}

/* Scroll reveal base — elements start invisible */

.igss-hidden {

  opacity: 0;

  transform: translateY(28px);

  transition: opacity 0.6s ease, transform 0.6s ease;

}

.igss-hidden.igss-visible {

  opacity: 1;

  transform: translateY(0);

}

/* Section divider label styling */

.elementor-heading-title {

  letter-spacing: 0.01em;

}

/* Footer top border accent */

.elementor-location-footer {

  border-top: 1px solid rgba(255, 100, 0, 0.25) !important;

}

/* Card hover lift on feature columns */

.elementor-column {

  transition: transform 0.3s ease !important;

}

.elementor-column:hover {

  transform: translateY(-4px) !important;

}

/* Hide page title "Home" on homepage */
.page-id-1129 .entry-title,
.page-id-1129 .page-header,
.home .entry-header,
.home .page-header {
	  display: none !important;
}
}
@media only screen and (max-width: 768px) {

  /* Force all heading sizes on mobile */
  .elementor-widget-heading .elementor-heading-title,
  .elementor-widget-heading h1,
  .elementor-widget-heading h2,
  .elementor-widget-heading h1.elementor-heading-title,
  .elementor-widget-heading h2.elementor-heading-title,
  h1.elementor-heading-title,
  h2.elementor-heading-title {
    font-size: 18px !important;
    line-height: 1.2 !important;
  }

  .elementor-widget-text-editor p {
    font-size: 15px !important;
    line-height: 1.65 !important;
  }

  .elementor-section {
    padding-top: 50px !important;
    padding-bottom: 50px !important;
  }

  .elementor-button {
    font-size: 15px !important;
    padding: 14px 24px !important;
  }

  .elementor-widget-table, table {
    display: block !important;
    overflow-x: auto !important;
    font-size: 13px !important;
  }

}

/* ── IGS Header: uniform layout at all widths ── */

/* Parent row: never wrap, always vertically centered */
.elementor-element-64a436a {
  flex-wrap: nowrap !important;
  align-items: center !important;
}

/* Logo column: shrink to logo size only */
.elementor-element-90bd333 {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 60px;
}

/* Nav column: take all remaining space, center the links */
.elementor-element-87cab4c {
  flex: 1 1 auto !important;
  width: auto !important;
  text-align: center;
}

/* Nav links: never wrap to a second line */
.elementor-element-87cab4c .elementor-widget-container {
  white-space: nowrap;
  text-align: center;
  display: flex;
  justify-content: center;
}

/* Button column: shrink to button width only */
.elementor-element-449f32a {
  flex: 0 0 auto !important;
  width: auto !important;
}

/* Tablet (<=1024px): smaller nav font so it stays one line */
@media (max-width: 1024px) {
  .elementor-element-87cab4c .elementor-widget-container,
  .elementor-element-87cab4c .elementor-widget-container a {
    font-size: 13px;
    letter-spacing: 0;
  }
}

/* Mobile (<=767px): stack vertically, center everything */
@media (max-width: 767px) {
  .elementor-element-64a436a {
    flex-wrap: wrap !important;
  }
  .elementor-element-90bd333,
  .elementor-element-87cab4c,
  .elementor-element-449f32a {
    flex: 1 1 100% !important;
    width: 100% !important;
    justify-content: center;
  }
  .elementor-element-87cab4c .elementor-widget-container {
    white-space: normal;
    justify-content: center;
  }
}

/* ── IGS Header: How It Works page (old-section layout) ── */
/* Inner section row: vertically center the 3 columns */
.elementor-element-a7148a0 > .elementor-container {
  align-items: center !important;
}
/* Logo column: fixed-width, don't grow */
.elementor-element-4f6debe {
  flex: 0 0 auto !important;
  width: auto !important;
}
/* Nav column: expand to fill center space */
.elementor-element-0a3c1b2 {
  flex: 1 1 auto !important;
  text-align: center !important;
}
.elementor-element-0a3c1b2 .elementor-widget-container {
  display: flex !important;
  justify-content: center !important;
  white-space: nowrap;
}
/* Button column: fixed-width, don't grow */
.elementor-element-f054a52 {
  flex: 0 0 auto !important;
  width: auto !important;
}
/* Mobile: stack vertically */
@media (max-width: 767px) {
  .elementor-element-a7148a0 > .elementor-container {
    flex-wrap: wrap !important;
  }
  .elementor-element-4f6debe,
  .elementor-element-0a3c1b2,
  .elementor-element-f054a52 {
    flex: 1 1 100% !important;
    width: 100% !important;
    justify-content: center;
    text-align: center !important;
  }
}

@media(max-width:767px){
	.elementor-element-5e4db87 .elementor-heading-title {
		    font-size: 36px !important;
	}
}
	}
}