:root { --insight-orange:#ff5524; --insight-ink:#070707; --insight-paper:#f7f4ee; --insight-muted:#b7b7b7; }
.elementor-location-header, .elementor-location-footer { position:relative; z-index:20; }
.insight-global-header { background:var(--insight-ink); color:#fff; border-bottom:1px solid rgba(255,255,255,.12); }
.insight-global-header__inner { align-items:center; display:flex; gap:28px; justify-content:space-between; margin:0 auto; max-width:1280px; min-height:84px; padding:16px 32px; }
.insight-global-header__brand { display:block; flex:0 0 auto; line-height:0; width:134px; }
.insight-global-header__brand img { display:block; height:auto; max-width:100%; }
.insight-global-header__nav ul, .insight-global-footer ul { display:flex; gap:24px; list-style:none; margin:0; padding:0; }
.insight-global-header__nav a, .insight-global-footer a { color:inherit; font-size:13px; font-weight:600; letter-spacing:.02em; text-decoration:none; }
.insight-global-header__nav a:hover, .insight-global-footer a:hover { color:var(--insight-orange); }
.insight-global-header__cta { background:var(--insight-orange); color:#111; font-size:13px; font-weight:800; letter-spacing:.03em; padding:13px 19px; text-decoration:none; text-transform:uppercase; }
.insight-global-footer { background:var(--insight-ink); color:#fff; padding:72px 32px 22px; }
.insight-global-footer__inner { display:grid; gap:40px; grid-template-columns:1.4fr .7fr .8fr; margin:0 auto; max-width:1232px; }
.insight-global-footer h2 { font-size:clamp(27px,3.1vw,46px); line-height:1.04; margin:8px 0 0; max-width:570px; }
.insight-global-footer p { color:#bdbdbd; font-size:13px; margin:0 0 14px; text-transform:uppercase; }
.insight-global-footer__eyebrow { color:var(--insight-orange)!important; font-weight:800; letter-spacing:.12em; }
.insight-global-footer__menu ul { flex-direction:column; gap:10px; }
.insight-global-footer__bottom { border-top:1px solid rgba(255,255,255,.14); color:#aaa; display:flex; font-size:12px; justify-content:space-between; margin:56px auto 0; max-width:1232px; padding-top:18px; }
.insight-legacy-nav-placeholder, .insight-legacy-footer-placeholder { display:none!important; }
.insight-section { overflow:hidden; }
.insight-section .elementor-widget-heading h1 { font-size:clamp(48px,7vw,96px); letter-spacing:-.055em; line-height:.96; max-width:1050px; }
.insight-section .elementor-widget-heading h2 { font-size:clamp(34px,4.1vw,62px); letter-spacing:-.045em; line-height:1; }
.insight-section .elementor-widget-heading h3 { font-size:clamp(21px,2.3vw,31px); line-height:1.1; }
.insight-section .elementor-widget-heading, .insight-section .elementor-widget-text-editor, .insight-section h1, .insight-section h2, .insight-section h3, .insight-section p { min-width:0; overflow-wrap:anywhere; }
.insight-section .elementor-widget-text-editor p { margin-bottom:0; }
.insight-button .elementor-button { border-radius:0!important; padding:16px 22px!important; }
.insight-image img { height:auto; max-width:100%; }
.insight-contact-card, .insight-case-card, .insight-form-card { border-radius:0!important; }
.insight-fluent-form .ff-el-group { margin-bottom:16px; }
.insight-fluent-form .ff-el-input--label label { color:#202020; font-size:13px; font-weight:700; }
.insight-fluent-form input, .insight-fluent-form textarea { border:1px solid #d8d5cf!important; border-radius:0!important; box-shadow:none!important; min-height:46px; padding:12px!important; }
.insight-fluent-form textarea { min-height:120px; }
.insight-fluent-form .ff-btn-submit { background:var(--insight-orange)!important; border:0!important; border-radius:0!important; color:#111!important; font-weight:800!important; padding:15px 20px!important; text-transform:uppercase; width:100%; }
.insight-fluent-form .ff-message-success { border:0!important; color:#1d6339!important; font-weight:700; }
@media (max-width: 767px) {
  .insight-global-header__inner { gap:14px; min-height:72px; padding:14px 18px; }
  .insight-global-header__brand { width:96px; }
  .insight-global-header__nav { display:none; }
  .insight-global-header__cta { font-size:11px; padding:11px 12px; }
  .insight-global-footer { padding:52px 24px 18px; }
  .insight-global-footer__inner { grid-template-columns:1fr; gap:30px; }
  .insight-global-footer__bottom { align-items:flex-start; flex-direction:column; gap:8px; margin-top:36px; }
  .insight-section .elementor-widget-heading h1 { font-size:clamp(42px,13vw,61px); }
  .insight-section .e-con, .insight-section .e-con-inner { min-width:0; }
}
