.elementor-10444 .elementor-element.elementor-element-2c8106e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10444 .elementor-element.elementor-element-b596713{--display:flex;--min-height:720px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:150px;--padding-bottom:60px;--padding-left:40px;--padding-right:40px;}.elementor-10444 .elementor-element.elementor-element-b596713:not(.elementor-motion-effects-element-type-background), .elementor-10444 .elementor-element.elementor-element-b596713 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#050505;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}body:not(.rtl) .elementor-10444 .elementor-element.elementor-element-cd4e833{left:0px;}body.rtl .elementor-10444 .elementor-element.elementor-element-cd4e833{right:0px;}.elementor-10444 .elementor-element.elementor-element-cd4e833{top:0px;}.elementor-10444 .elementor-element.elementor-element-36fbe3a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-10444 .elementor-element.elementor-element-af188d3 .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:18px;font-weight:400;line-height:30px;color:var( --e-global-color-primary );}.elementor-10444 .elementor-element.elementor-element-1686601 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:clamp(32px, 3.125vw, 60px);font-weight:700;line-height:1.276em;color:var( --e-global-color-accent );}.elementor-10444 .elementor-element.elementor-element-be0eb58{--e-n-carousel-swiper-slides-to-display:1;--e-n-carousel-swiper-slides-gap:0px;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;}.elementor-10444 .elementor-element.elementor-element-3fa37c7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:25px 25px;--row-gap:25px;--column-gap:25px;--padding-top:75px;--padding-bottom:75px;--padding-left:40px;--padding-right:40px;}.elementor-10444 .elementor-element.elementor-element-3fa37c7:not(.elementor-motion-effects-element-type-background), .elementor-10444 .elementor-element.elementor-element-3fa37c7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-10444 .elementor-element.elementor-element-8bc0a4c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:15px 15px;--row-gap:15px;--column-gap:15px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10444 .elementor-element.elementor-element-197e8de{text-align:center;}.elementor-10444 .elementor-element.elementor-element-197e8de .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:18px;font-weight:400;line-height:30px;color:var( --e-global-color-ffeyebrow );}.elementor-10444 .elementor-element.elementor-element-5b3be3b{padding:0px 0px 20px 0px;text-align:center;}.elementor-10444 .elementor-element.elementor-element-5b3be3b .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:clamp(28px, 2.3438vw, 45px);font-weight:700;line-height:1.2em;color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-10444 .elementor-element.elementor-element-e9bb1a7{width:var( --container-widget-width, min(1200px, 100%) );max-width:min(1200px, 100%);--container-widget-width:min(1200px, 100%);--container-widget-flex-grow:0;font-family:"Arial", Sans-serif;font-size:clamp(16px, 1.0417vw, 20px);font-weight:400;line-height:1.4em;color:#050505;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-10444 .elementor-element.elementor-element-b596713{--min-height:620px;--padding-top:110px;--padding-bottom:56px;--padding-left:32px;--padding-right:32px;}.elementor-10444 .elementor-element.elementor-element-af188d3 .elementor-heading-title{font-size:17px;line-height:1.5em;}.elementor-10444 .elementor-element.elementor-element-1686601 .elementor-heading-title{font-size:44px;}.elementor-10444 .elementor-element.elementor-element-be0eb58{--e-n-carousel-swiper-slides-to-display:1;}.elementor-10444 .elementor-element.elementor-element-3fa37c7{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--padding-top:56px;--padding-bottom:56px;--padding-left:32px;--padding-right:32px;}.elementor-10444 .elementor-element.elementor-element-197e8de .elementor-heading-title{font-size:17px;line-height:1.5em;}.elementor-10444 .elementor-element.elementor-element-5b3be3b .elementor-heading-title{font-size:34px;line-height:1.2em;}.elementor-10444 .elementor-element.elementor-element-e9bb1a7{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;font-size:17px;line-height:1.5em;}}@media(max-width:767px){.elementor-10444 .elementor-element.elementor-element-b596713{--min-height:560px;--padding-top:84px;--padding-bottom:48px;--padding-left:20px;--padding-right:20px;}.elementor-10444 .elementor-element.elementor-element-36fbe3a{--width:100%;}.elementor-10444 .elementor-element.elementor-element-af188d3 .elementor-heading-title{font-size:16px;line-height:1.5em;}.elementor-10444 .elementor-element.elementor-element-1686601 .elementor-heading-title{font-size:32px;}.elementor-10444 .elementor-element.elementor-element-be0eb58{--e-n-carousel-swiper-slides-to-display:1;}.elementor-10444 .elementor-element.elementor-element-3fa37c7{--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:44px;--padding-bottom:44px;--padding-left:20px;--padding-right:20px;}.elementor-10444 .elementor-element.elementor-element-197e8de .elementor-heading-title{font-size:16px;line-height:1.5em;}.elementor-10444 .elementor-element.elementor-element-5b3be3b .elementor-heading-title{font-size:27px;line-height:1.2em;}.elementor-10444 .elementor-element.elementor-element-e9bb1a7{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;font-size:16px;line-height:1.5em;}}@media(min-width:768px){.elementor-10444 .elementor-element.elementor-element-36fbe3a{--width:min(1200px, 100%);}.elementor-10444 .elementor-element.elementor-element-3fa37c7{--content-width:1200px;}}@media(max-width:1024px) and (min-width:768px){.elementor-10444 .elementor-element.elementor-element-36fbe3a{--width:100%;}}/* Start custom CSS *//* Impact AI — a light page on a dark site: sections carry their own ink. */
.ff-ia-assist, .ff-ia-why, .ff-ia-insights, .ff-ia-faqs, .ff-ia-subscribe { color: #050505; }
.ff-ia-hero .ff-bgimg img { object-position: center right; }
/* The hero's bar indicators sit near the foot of the slide, as drawn. */
.ff-ia-carousel .swiper-pagination { bottom: 26px; }

/* Module cards: black until hover, when they turn into the inverted card from the design. */
/* Same pacing as the proof cards on the home page: .45s for the card, the copy easing open
   just behind it. The motion layer sets its own transition on every staggered child at three
   classes deep, so the card's hover transition has to match that weight or it never applies —
   and it has to restate the reveal's properties, or the entrance animation loses them. */
.ff-ia-module,
.ff-motion .ff-stagger > .ff-ia-module,
.ff-motion .ff-stagger > .e-con-inner > .ff-ia-module {
  transition: opacity .5s cubic-bezier(.16,1,.3,1), translate .5s cubic-bezier(.16,1,.3,1),
    scale .5s cubic-bezier(.16,1,.3,1), background-color .45s ease, border-color .45s ease,
    transform .45s cubic-bezier(.22,.61,.36,1); }
.ff-ia-module-title .elementor-heading-title { transition: color .35s ease; }
.ff-ia-module-body { display: grid; grid-template-rows: 0fr; opacity: 0; margin-top: -20px;
  transition: grid-template-rows .45s cubic-bezier(.22,.61,.36,1), opacity .3s ease,
    margin-top .45s cubic-bezier(.22,.61,.36,1); }
.ff-ia-module-body > * { overflow: hidden; min-height: 0; }
/* Elementor writes the card's own background with a three-class body.elementor-page-10444, so the hover state has
   to shout to be heard. */
@media (hover: hover) {
  .ff-ia-module:hover { background-color: #FFFFFF !important; border-color: #000000 !important;
    transform: translateY(-4px); }
  .ff-ia-module:hover .ff-ia-module-title .elementor-heading-title { color: #FF3B18 !important; }
  .ff-ia-module:hover .ff-ia-module-body { grid-template-rows: 1fr; opacity: 1; margin-top: 0;
    transition-delay: .06s, .12s, 0s; }
}

/* Why cards: one rounded card each, lifting on hover like the insight cards. */
.ff-ia-why-card { box-shadow: 0 2px 20px rgba(0,0,0,.08);
  transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s ease; }
@media (hover: hover) {
  .ff-ia-why-card:hover { transform: translateY(-6px); box-shadow: 0 16px 36px rgba(0,0,0,.14); }
  .ff-ia-why-card:hover .ff-ia-ico { transform: scale(1.06); }
}
.ff-ia-ico { flex: 0 0 auto; transition: transform .3s cubic-bezier(.16,1,.3,1); }
.ff-ia-ico .elementor-widget-image, .ff-ia-ico .elementor-widget-image > div { width: 100%; height: 100%; }
.ff-ia-ico img { width: 100%; height: 100%; object-fit: contain; }

/* Insight cards: white with a hairline rule, thumbnail on top. */
.ff-ia-insight { transition: transform .3s cubic-bezier(.16,1,.3,1), box-shadow .3s ease; }
@media (hover: hover) { .ff-ia-insight:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,.12); } }
.ff-ia-thumb { flex: 0 0 auto; }
.ff-ia-insight-bd .ff-m-readmore { align-self: flex-start; margin-top: auto; }
.ff-ia-badge .elementor-heading-title { letter-spacing: .4px; }

/* FAQs: a blue wash out of the top-left corner, and one rule under each row. */
.ff-ia-faqs::before { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(135deg, rgba(0,69,225,.22) 0%, rgba(255,255,255,0) 42%); }
.ff-ia-faqs > .e-con-inner, .ff-ia-subscribe > .e-con-inner { position: relative; z-index: 1; }
.ff-ia-faq .e-n-accordion-item { background: none; border: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.15) !important; border-radius: 0 !important; }
.ff-ia-faq .e-n-accordion-item > .e-con { border: 0 !important; }
.ff-ia-faq .e-n-accordion-item-title { border: 0 !important; padding-block: 12px; cursor: pointer; }
.ff-ia-faq .e-n-accordion-item-title-header { flex: 1 1 auto; margin: 0; }
.ff-ia-faq .e-n-accordion-item-title-text { margin: 0; font-family: "Space Grotesk", sans-serif !important;
  font-weight: 700 !important; color: #050505; font-size: clamp(17px, 1.0417vw, 20px) !important; line-height: 1.2 !important; }
.ff-ia-faq .e-n-accordion-item-title-icon { width: 20px; height: 24px; flex: 0 0 auto; align-self: flex-start; }
.ff-ia-faq .e-n-accordion-item-title-icon svg { width: 20px; height: 24px; fill: none !important; }
.ff-ia-faq .e-n-accordion-item-title-icon svg path { fill: none !important; stroke: #FF1A00 !important; }
@media (hover: hover) { .ff-ia-faq .e-n-accordion-item-title:hover .e-n-accordion-item-title-text { color: #FF1A00; } }

/* Subscribe: the red wash falls from the right edge; the email shows its placeholder only. */
.ff-ia-subscribe::before { content: ""; position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(70% 120% at 100% 108%, rgba(255,26,0,.55) 0%, rgba(255,26,0,.18) 45%, rgba(255,255,255,0) 72%); }
.ff-ia-form .elementor-field-group { margin-bottom: 10px; }
.ff-ia-form .elementor-form-fields-wrapper { align-items: flex-start; }
.ff-ia-form .elementor-field-group-email { order: 1; }
.ff-ia-form .elementor-field-type-submit { order: 2; }
.ff-ia-form .elementor-field-group-interests { order: 3; align-items: center; }
.ff-ia-form .elementor-field-group-consent { order: 4; }
.ff-ia-form .elementor-field-group-email > label { display: none; }
.ff-ia-form .elementor-field-group-interests > label { margin: 0 12px 0 0; }
.ff-ia-form .elementor-field-type-email input { height: 46px; max-width: 330px; border: 1px solid #101010 !important;
  border-radius: 15px !important; padding: 0 18px; background: #FFFFFF !important; color: #050505 !important; font-size: 14px; }
.ff-ia-form .elementor-field-type-email input::placeholder { color: #6B6B6B; opacity: 1; }
.ff-ia-form .elementor-button { height: 46px; border-radius: 999px !important; background-color: #000000 !important;
  border: 1px solid #FFFFFF; color: #FFFFFF !important; font-family: "Instrument Sans", sans-serif;
  font-weight: 600; font-size: 16px; padding: 0 22px; }
.ff-ia-form .elementor-button .elementor-button-content-wrapper { display: inline-flex; align-items: center; gap: 8px; }
.ff-ia-form .elementor-button .elementor-button-text { text-transform: none !important; white-space: nowrap; }
.ff-ia-form .elementor-button .elementor-button-text::after { background-color: #FFFFFF; margin-left: 0; }
@media (hover: hover) { .ff-ia-form .elementor-button:hover { background-color: #FF1A00 !important; border-color: #FF1A00; } }
.ff-ia-form .elementor-field-subgroup { display: flex; flex-wrap: wrap; gap: 6px 18px; }
/* The kit paints form labels white for the dark pages; this one is light. */
.ff-ia-form .elementor-field-subgroup label, .ff-ia-form .elementor-field-type-acceptance label,
.ff-ia-form .elementor-field-label { color: #050505 !important; font-family: Arial, sans-serif;
  font-size: 14px !important; line-height: 18.2px; font-weight: 400 !important; }
.ff-ia-form input[type="checkbox"] { accent-color: #FF1A00; width: 14px; height: 14px; }
.ff-ia-sub-img { position: relative; }
.ff-ia-sub-mark { pointer-events: none; z-index: 2; }

/* Both "View All" and the closing CTA are pills; their arrows take the text colour. */
.ff-ia-viewall .elementor-button-text::after, .ff-ia-cta-btn .elementor-button-text::after { background-color: currentColor; }

@media (max-width: 1024px) {
  .ff-ia-why-card { border-left: 0 !important; }
}/* End custom CSS */