/* INSTROFINE footer — brand system v1.3 (2 Oct 2026). Xpro footer template; loaded after the brand stylesheet.
   The template's outer container is `if-ftr if-brand`, then `if-inverse` (Graphite), then `if-container if-footer`, so the
   brand components and tokens apply; this file maps Elementor's widgets onto them. Tokens only, no hex values. */
.if-ftr, .if-ftr .e-con { --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; --container-widget-width: 100%; }
.if-ftr.e-con, .if-ftr .e-con:not(.if-container) { padding: 0; gap: 0; min-height: 0; } /* .if-container keeps the brand gutters */
.if-ftr .e-con.if-container { gap: 0; min-height: 0; }
.if-ftr .elementor-element.elementor-widget { margin: 0 !important; width: 100%; max-width: 100% !important; }
.if-ftr .elementor-widget-container { margin: 0; padding: 0; }
.if-ftr { display: block !important; background: var(--if-graphite-900); }
.if-ftr .if-inverse { display: block !important; }
.if-ftr .if-container.if-footer { display: block !important; }

/* Brand row: the white logo at 180 px, the tagline below in Detail. */
.if-ftr .if-ftr__logo { display: inline-block; width: var(--if-logo-w); line-height: 0; color: var(--if-white); }
.if-ftr .if-ftr__logo svg { display: block; width: 100%; height: auto; }
.if-ftr .if-ftr__tagline, .if-ftr .if-ftr__tagline p { margin: 8px 0 0; color: var(--if-text-muted); font: 400 var(--if-fs-detail)/var(--if-lh-detail) var(--if-font-sans); }

/* Columns: 1 / 2 / 4 across (brand footer). */
.if-ftr .e-con.if-footer__cols { display: grid !important; gap: var(--if-space-6) !important; margin-top: var(--if-space-6); }
.if-ftr .if-ftr__col { display: block !important; }
.if-ftr .if-ftr__head .elementor-heading-title { margin: 0 0 var(--if-space-3); color: var(--if-text); font: 600 var(--if-fs-h3)/var(--if-lh-h3) var(--if-font-sans); text-transform: none; letter-spacing: 0; }
.if-ftr .if-ftr__links .elementor-icon-list-items { display: grid; gap: var(--if-space-2); margin: 0; padding: 0; list-style: none; }
.if-ftr .if-ftr__links .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
.if-ftr .if-ftr__links .elementor-icon-list-item::after { display: none !important; }
.if-ftr .if-ftr__links .elementor-icon-list-icon { display: none; }
.if-ftr .if-ftr__links a { display: inline-flex; min-height: 24px; color: var(--if-text-muted); text-decoration: none; font: 400 var(--if-fs-body)/var(--if-lh-body) var(--if-font-sans); }
.if-ftr .if-ftr__links .elementor-icon-list-text { color: inherit !important; padding: 0 !important; }
.if-ftr .if-ftr__links a:hover, .if-ftr .if-ftr__links a:focus-visible { text-decoration: underline; text-underline-offset: .18em; }

/* Bottom row. */
.if-ftr .if-footer__bottom, .if-ftr .if-footer__bottom p { color: var(--if-text-muted); font: 400 var(--if-fs-detail)/var(--if-lh-detail) var(--if-font-sans); }
.if-ftr .if-footer__bottom p { margin: 0; }
.if-ftr .elementor-element.if-footer__bottom { margin-top: var(--if-space-7) !important; padding-top: var(--if-space-4); border-top: 1px solid var(--if-steel-700); }
