/*
 * Arc Guard local facelift preview
 * Scope: the existing public WordPress/Elementor DOM after facelift.js adds
 * `.agfx-facelift`. This layer never replaces or overlays source media.
 */

body.agfx-facelift {
  --agfx-ink: #11100f;
  --agfx-charcoal: #1d1b19;
  --agfx-steel: #4b4844;
  --agfx-mist: #d8d0c3;
  --agfx-cream: #f4efe5;
  --agfx-cream-deep: #e8dfd0;
  --agfx-paper: #fffaf1;
  --agfx-red: #c51f2b;
  --agfx-red-dark: #981821;
  --agfx-spark: #e36c2f;
  --agfx-max: 1280px;
  --agfx-rule: rgba(17, 16, 15, 0.18);
  --agfx-space-xs: 0.5rem;
  --agfx-space-sm: 0.75rem;
  --agfx-space-md: 1rem;
  --agfx-space-lg: 1.5rem;
  --agfx-space-xl: 2rem;
  --agfx-space-2xl: 3rem;
  --agfx-space-3xl: 4rem;
  --agfx-space-4xl: 6rem;
  background: var(--agfx-ink) !important;
  color: var(--agfx-ink);
  font-family: Montserrat, Arial, sans-serif !important;
  font-style: normal !important;
  line-height: 1.65;
  text-rendering: optimizeLegibility;
}

/* ============================================================
   FINAL CASCADE GUARDS — 2026-08-01
   Keep the audited geometry above Elementor/page-ID overrides.
   ============================================================ */

/* Bottom artwork is a full-width transition, never a padded section. */
body.agfx-facelift.agfx-page-about #content,
body.agfx-facelift.agfx-page-about #primary,
body.agfx-facelift.agfx-page-about .entry-footer {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  background: #000 !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) :where(.elementor-widget-image, .elementor-widget-container) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

/* Restore clear, aligned card wording and suppress generated rule fragments. */
body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"]) {
  position: static !important;
  display: block !important;
  width: 100% !important;
  margin: 1rem 0 0.65rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--agfx-red) !important;
  text-align: center !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"])::before,
body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"])::after {
  display: none !important;
  content: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e img {
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

/* The heading, dash, and body use one reading axis. */
body.agfx-facelift.agfx-page-about .elementor-element-762c5d8,
body.agfx-facelift.agfx-page-about .elementor-element-762c5d8 h3 {
  width: 100% !important;
  margin-inline: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-762c5d8, .elementor-element-adce7d2) h3::after {
  margin-inline: auto !important;
}

/* The Story CTA must not depend on Elementor's origin-specific generated CSS.
   Keep the client-approved red gradient on every review host and viewport. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-44900d0b .elementor-button {
  background-color: #c00000 !important;
  background-image: linear-gradient(rgb(227, 8, 8) 0%, rgb(192, 0, 0) 55%, rgb(122, 2, 2) 100%) !important;
  color: #fff !important;
}

/* ==========================================================================
   FINAL RESPONSIVE REGRESSION GUARDS — 2026-08-06
   ========================================================================== */

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-0301515 .e-15b7209-0a94cf0,
body.agfx-facelift.agfx-page-industries .elementor-556 p.e-15b7209-0a94cf0 {
  align-self: center !important;
  height: auto !important;
  min-height: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: transparent !important;
  background-image: none !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.9), 0 0 8px rgba(0, 0, 0, 0.75) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e > .e-con-inner > .e-con {
  border: 1px solid var(--agfx-rule) !important;
  border-top: 4px solid var(--agfx-red) !important;
}

@media (max-width: 1024px) {
  body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-0301515 .e-15b7209-0a94cf0,
  body.agfx-facelift.agfx-page-industries .elementor-556 p.e-15b7209-0a94cf0 {
    max-width: min(100%, 38rem) !important;
    margin-inline: auto !important;
  }
}

body.agfx-facelift.agfx-page-about .elementor-element-adce7d2 h3 {
  width: min(100%, 54ch) !important;
  margin-inline: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa,
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-253bda3 {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

/* CONTACT — deterministic map preview; the legacy iframe remains in the DOM
   for rollback but never paints a blank black band on the review origin. */
body.agfx-facelift.agfx-page-contact .elementor-element-f9941b5 .elementor-custom-embed {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: clamp(190px, 18vw, 240px) !important;
  min-height: 190px !important;
  overflow: hidden !important;
  background: #d9d6ce !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-source {
  display: none !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  overflow: hidden !important;
  color: #fff !important;
  text-decoration: none !important;
  background: #d9d6ce !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__canvas {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 28%, rgba(115, 154, 112, 0.22) 0 10%, transparent 10.5%),
    radial-gradient(circle at 80% 72%, rgba(115, 154, 112, 0.18) 0 13%, transparent 13.5%),
    linear-gradient(90deg, rgba(255, 255, 255, 0.34) 1px, transparent 1px),
    linear-gradient(rgba(255, 255, 255, 0.34) 1px, transparent 1px),
    #d9dfd4 !important;
  background-size: auto, auto, 38px 38px, 38px 38px, auto !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__road {
  position: absolute !important;
  left: -10% !important;
  display: block !important;
  width: 120% !important;
  height: 7px !important;
  border: 1px solid rgba(164, 159, 147, 0.72) !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.58) !important;
  transform-origin: center !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__road.road-a {
  top: 34% !important;
  transform: rotate(-7deg) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__road.road-b {
  top: 66% !important;
  transform: rotate(11deg) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__road.road-c {
  top: 48% !important;
  height: 4px !important;
  transform: rotate(31deg) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__road.road-d {
  top: 52% !important;
  height: 4px !important;
  transform: rotate(-27deg) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__marker {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 24px !important;
  height: 24px !important;
  border: 3px solid #fff !important;
  border-radius: 50% 50% 50% 0 !important;
  background: var(--agfx-red) !important;
  box-shadow: 0 3px 12px rgba(0, 0, 0, 0.38) !important;
  transform: translate(-50%, -100%) rotate(-45deg) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__label {
  position: absolute !important;
  top: 50% !important;
  left: calc(50% + 1.25rem) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.15rem !important;
  max-width: min(19rem, calc(50vw - 2.5rem)) !important;
  padding: 0.55rem 0.75rem !important;
  border-radius: 2px !important;
  color: #fff !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  background: rgba(17, 16, 15, 0.88) !important;
  transform: translateY(-50%) !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__label small {
  color: #fff !important;
  font-size: 0.68rem !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

body.agfx-facelift.agfx-page-contact .agfx-map-preview__attribution {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  padding: 0.2rem 0.4rem !important;
  color: #24211d !important;
  font-weight: 650 !important;
  font-size: 0.62rem !important;
  line-height: 1.2 !important;
  background: rgba(255, 255, 255, 0.88) !important;
}

@media (max-width: 480px) {
  body.agfx-facelift.agfx-page-contact .agfx-map-preview__label {
    top: auto !important;
    right: 0.75rem !important;
    bottom: 0.75rem !important;
    left: 0.75rem !important;
    max-width: none !important;
    transform: none !important;
  }
}

body.agfx-facelift,
body.agfx-facelift * {
  box-sizing: border-box;
}

body.agfx-facelift :where(p, li, address, label, input, textarea, select, button, a) {
  font-family: Montserrat, Arial, sans-serif;
  font-style: normal;
}

body.agfx-facelift :where(h1, h2, h3, h4, h5, h6) {
  margin-block: 0 0.55em;
  font-family: Montserrat, Arial, sans-serif;
  font-style: normal;
  font-weight: 760;
  letter-spacing: -0.035em;
  line-height: 1.05;
  text-wrap: balance;
}

body.agfx-facelift :where(p, li) {
  font-size: clamp(1rem, 0.35vw + 0.94rem, 1.15rem);
  line-height: 1.72;
}

body.agfx-facelift a {
  text-underline-offset: 0.22em;
  text-decoration-thickness: 1px;
}

body.agfx-facelift :focus-visible {
  outline: 3px solid var(--agfx-spark) !important;
  outline-offset: 4px !important;
}

body.agfx-facelift .site-content,
body.agfx-facelift #content,
body.agfx-facelift .content-area,
body.agfx-facelift .elementor-location-single,
body.agfx-facelift .elementor-location-archive {
  background: var(--agfx-cream);
}

body.agfx-facelift :where(.elementor, .elementor-section, .elementor-container, .e-con, .e-con-inner, .elementor-widget-wrap, .content-area, .site-main) {
  min-width: 0;
  max-width: 100%;
}

/* Existing media stays in normal document flow and above its own surface only. */
body.agfx-facelift :where(img, video, iframe, svg, canvas) {
  display: block;
  max-width: 100%;
}

body.agfx-facelift :where(video, iframe, .elementor-widget-video, .elementor-wrapper, #wp-custom-header) {
  isolation: isolate;
  z-index: auto !important;
}

body.agfx-facelift video {
  width: 100%;
  height: auto;
  background: #000;
}

body.agfx-facelift iframe {
  border: 0;
}

body.agfx-facelift .elementor-widget-image img {
  height: auto !important;
  object-fit: contain;
}

/* Header: preserve the existing logo, nav order, social links and destination. */
body.agfx-facelift :where(.shfb-header.shfb-desktop, .shfb-header.shfb-mobile, #masthead, .site-header) {
  background: #0b0b0b !important;
  border-bottom: 1px solid rgba(244, 239, 229, 0.16);
  box-shadow: none !important;
}

/* Desktop keeps the theme's own logo sizing (the client approves the PC
   rendering). Mobile below overrides the theme's 76px shrink. */

/* Mobile header: the newest Arc Guard logo (same file as the desktop header,
   upper-left on PC) must render at a readable size — it was being shrunk to
   ~76px on phones, making the mark and tagline illegible. */
@media (max-width: 1024px) {
  /* .site-logo is the class on the <img> itself in Sydney's header builder. */
  body.agfx-facelift .shfb-header :is(img.site-logo, .site-logo img) {
    width: clamp(120px, 34vw, 150px) !important;
    max-width: none !important;
    max-height: none !important;
    height: auto !important;
  }

  body.agfx-facelift .shfb-header.shfb-mobile .shfb-main_header_row .shfb-row {
    align-items: center;
  }

  body.agfx-facelift .shfb-header.shfb-mobile .site-branding {
    display: flex;
    justify-content: center;
  }

  /* Always-visible FAQ pill in the mobile header (client's own FAQ PDF). */
  body.agfx-facelift .shfb-header.shfb-mobile .shfb-main_header_row .shfb-column-3 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.55rem;
  }

  body.agfx-facelift .agfx-mobile-faq {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0.42rem 0.85rem;
    border: 1px solid #fff;
    border-radius: 3px;
    background: linear-gradient(rgb(0, 0, 0) 0%, rgb(204, 0, 0) 100%);
    color: #fff !important;
    font-size: 0.78rem;
    font-style: italic;
    font-weight: 620;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
  }
}

body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
  color: var(--agfx-cream) !important;
  font-size: 0.94rem;
  font-style: normal !important;
  font-weight: 620;
  letter-spacing: 0;
}

body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button):hover,
body.agfx-facelift :where(.main-navigation, .shfb-navigation) .current-menu-item > a {
  color: #fff !important;
  text-decoration-color: var(--agfx-red);
  text-decoration-line: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 0.48em;
}

body.agfx-facelift :where(header, .shfb-header) a.button,
body.agfx-facelift :where(header, .shfb-header) .elementor-button {
  min-height: 46px;
  padding: 0.85rem 1.25rem !important;
  border: 1px solid var(--agfx-red) !important;
  border-radius: 4px !important;
  background: var(--agfx-red) !important;
  box-shadow: none !important;
  color: #fff !important;
  font-size: 0.82rem !important;
  font-style: normal !important;
  font-weight: 720;
  letter-spacing: 0.02em;
  line-height: 1.1;
  text-transform: none;
}

body.agfx-facelift :where(header, .shfb-header) a.button:hover,
body.agfx-facelift :where(header, .shfb-header) .elementor-button:hover {
  border-color: var(--agfx-red-dark) !important;
  background: var(--agfx-red-dark) !important;
}

/* Primary button language: the site's original black-to-red gradient with
   white italic uppercase lettering and a thin white keyline — kept per client. */
body.agfx-facelift .agfx-button,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, input[type="submit"], button[type="submit"]) {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 0.9rem 1.6rem !important;
  border: 1px solid #fff !important;
  border-radius: 3px !important;
  background: linear-gradient(180deg, #e30808 0%, #c00000 55%, #7a0202 100%) !important;
  box-shadow: 0 12px 24px -14px rgba(178, 24, 28, 0.65);
  color: #fff !important;
  font-size: 0.88rem !important;
  font-style: italic !important;
  font-weight: 620 !important;
  letter-spacing: 0.09em;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase !important;
  transition: filter 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.agfx-facelift .agfx-button:hover,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, input[type="submit"], button[type="submit"]):hover {
  filter: brightness(1.25);
  color: #fff !important;
}

/* Common Elementor facelift: keep source order and media, improve rhythm. */
body.agfx-facelift .elementor > :where(.e-con, .elementor-section) {
  margin-inline: 0;
}

body.agfx-facelift :where(.elementor-widget-text-editor, .elementor-widget-theme-post-content, .entry-content) p {
  max-width: 68ch;
}

body.agfx-facelift :where(.elementor-widget-text-editor, .elementor-widget-heading) :where(p, li, h1, h2, h3, h4) {
  font-style: normal !important;
}

body.agfx-facelift .elementor-heading-title {
  font-style: normal !important;
}

body.agfx-facelift .elementor-widget-image,
body.agfx-facelift .elementor-widget-video {
  margin-block: 0.75rem;
}

body.agfx-facelift .elementor-widget-image img,
body.agfx-facelift .elementor-widget-video,
body.agfx-facelift .elementor-widget-video .elementor-wrapper,
body.agfx-facelift .wp-video,
body.agfx-facelift .wp-video video {
  border-radius: 4px;
}

body.agfx-facelift .elementor-widget-video .elementor-wrapper {
  overflow: hidden;
  background: #000;
  box-shadow: 0 0 0 1px rgba(17, 16, 15, 0.18);
}

/* Home: all three source video placements remain untouched and unobstructed. */
body.agfx-facelift.agfx-page-home #wp-custom-header,
body.agfx-facelift.agfx-page-home .sydney-hero-area {
  position: relative;
  width: 100%;
  margin: 0;
  overflow: hidden;
  background: #000;
}

body.agfx-facelift.agfx-page-home #wp-custom-header video {
  position: static !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  object-fit: contain !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-home .elementor-14043 > .e-con,
body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-section {
  padding: clamp(4rem, 8vw, 7.5rem) clamp(1.25rem, 6vw, 5rem) !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e,
body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 {
  background-color: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-0067a64 {
  background-color: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-dc6600f, .elementor-element-c4d87b7, .elementor-element-5f03565) {
  background-color: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-dc6600f, .elementor-element-c4d87b7, .elementor-element-5f03565) :where(h2, h3, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 > .e-con-inner,
body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 > .elementor-container {
  gap: clamp(1rem, 2.5vw, 2rem);
}

body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 .elementor-widget-wrap,
body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 .e-con {
  border-top: 2px solid var(--agfx-red);
}

body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-0067a64 :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-ffcb8a8 :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-0067a64 :is(h2, h3, h4, h5, h6),
body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-ffcb8a8 :is(h2, h3, h4, h5, h6) {
  text-align: left !important;
}

body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-ffcb8a8 :is(h2, h3, h4, h5, h6) {
  color: var(--agfx-red-dark) !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-269eae5, .elementor-element-8a75246) {
  width: 100%;
  margin-block: clamp(1.5rem, 4vw, 3rem);
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-2f132f4, .elementor-element-35f70ee) {
  min-height: 0 !important;
  padding-block: 0 !important;
  background-color: var(--agfx-ink) !important;
}

/* Preserve the source carousel, but collapse its dead controls when its loop
   query has no substantive slide. JS removes this state immediately if a real
   article/link/media node is added later. The Prevent banner above is untouched. */
body.agfx-facelift.agfx-page-home .elementor-element-2f132f4.agfx-empty-carousel,
body.agfx-facelift.agfx-page-home .elementor-element-2f132f4.agfx-empty-carousel .elementor-element-35f70ee,
body.agfx-facelift.agfx-page-home .elementor-element-2f132f4.agfx-empty-carousel .swiper {
  block-size: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-2f132f4.agfx-empty-carousel :where(.elementor-swiper-button-prev, .elementor-swiper-button-next, .swiper-pagination) {
  display: none !important;
}

/* Product: cream specification field with a real, unobstructed media rail. */
body.agfx-facelift.agfx-page-product .elementor-401 {
  background: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f7e8936 {
  display: block !important;
  padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 6vw, 5rem) !important;
  background: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f7e8936 > .e-con-inner {
  display: grid !important;
  width: min(100%, var(--agfx-max)) !important;
  max-width: var(--agfx-max) !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(0, 7fr) minmax(280px, 5fr) !important;
  gap: clamp(2rem, 6vw, 6rem) !important;
  align-items: center !important;
}

body.agfx-facelift.agfx-page-product :where(.elementor-element-6b56973, .elementor-element-827191f, .elementor-element-0f4c9b1, .elementor-element-042cedb) {
  width: 100% !important;
  max-width: none !important;
  flex-basis: auto !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f7e8936 :where(h2, h3, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f7e8936 h2 {
  font-size: clamp(2.4rem, 5vw, 5.2rem) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-6b56973 :where(
  .elementor-element-196df33,
  .elementor-element-64a2532,
  .elementor-element-7c4c4e3) {
  width: min(100%, 66ch) !important;
  max-width: 66ch !important;
  margin-inline: 0 !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-196df33 .elementor-heading-title {
  width: min(100%, 36.75rem) !important;
  max-width: 36.75rem !important;
  margin-inline: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-6b56973 :where(.elementor-widget-text-editor, p) {
  max-width: 66ch;
  margin-inline: 0 !important;
  color: var(--agfx-cream) !important;
  text-align: left !important;
}

@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-product .elementor-element-196df33 .elementor-heading-title {
    text-align: left !important;
  }
}

body.agfx-facelift.agfx-page-product .elementor-element-827191f {
  padding: clamp(1.5rem, 4vw, 3.25rem) !important;
  border-left: 4px solid var(--agfx-red);
  background: var(--agfx-paper) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-2f2bff9 img {
  width: min(100%, 470px) !important;
  margin-inline: auto;
}

body.agfx-facelift.agfx-page-product .elementor-element-f0efb4b {
  display: block !important;
  padding: clamp(4.5rem, 9vw, 9rem) clamp(1.25rem, 6vw, 5rem) !important;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f0efb4b > .e-con-inner {
  display: grid !important;
  width: min(100%, var(--agfx-max)) !important;
  max-width: var(--agfx-max) !important;
  margin-inline: auto !important;
  grid-template-columns: minmax(0, 7fr) minmax(320px, 5fr) !important;
  gap: clamp(2.5rem, 6vw, 6rem) !important;
  align-items: start !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-f0efb4b :where(h2, h3, h4, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-product .elementor-401 .elementor-element-f0efb4b .elementor-element-0f4c9b1 :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-0f4c9b1 > .elementor-widget-heading:not(:first-child) {
  margin-top: 1.55rem;
  padding-top: 1.55rem;
  border-top: 1px solid var(--agfx-rule);
}

body.agfx-facelift.agfx-page-product .elementor-element-0f4c9b1 h2 {
  font-size: clamp(2.5rem, 5vw, 5.2rem) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-0f4c9b1 h3 {
  color: var(--agfx-red-dark) !important;
  font-size: clamp(1.2rem, 1.6vw, 1.65rem) !important;
  letter-spacing: -0.015em;
}

body.agfx-facelift.agfx-page-product .elementor-401 .elementor-element-f0efb4b .elementor-element-0f4c9b1 h6 {
  color: var(--agfx-red-dark) !important;
  font-size: clamp(1.1rem, 1.4vw, 1.4rem) !important;
  letter-spacing: -0.015em;
}

body.agfx-facelift.agfx-page-product .elementor-element-042cedb {
  position: static !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
  padding: clamp(1rem, 2.5vw, 1.75rem) !important;
  border: 1px solid var(--agfx-rule);
  background: var(--agfx-paper) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-8587a0e img {
  width: min(100%, 265px) !important;
  margin-inline: auto;
  image-rendering: auto;
}

body.agfx-facelift.agfx-page-product .elementor-element-a110975,
body.agfx-facelift.agfx-page-product .elementor-element-a110975 .elementor-wrapper,
body.agfx-facelift.agfx-page-product .elementor-element-a110975 iframe {
  width: 100% !important;
  aspect-ratio: 16 / 9;
}

body.agfx-facelift.agfx-page-product .elementor-element-a110975 {
  align-self: center !important;
  margin-inline: auto !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-a110975 .elementor-wrapper {
  margin-inline: auto !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-a110975 iframe {
  height: 100% !important;
  margin: 0 !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 {
  display: grid !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.75rem !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-a8cbd19,
body.agfx-facelift.agfx-page-product .agfx-document-note {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}

body.agfx-facelift.agfx-page-product :where(.elementor-element-8837c40, .elementor-element-27d67cc) {
  padding-inline: clamp(1.25rem, 6vw, 5rem) !important;
  background: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-8837c40 {
  padding-top: clamp(4rem, 7vw, 7rem) !important;
  padding-bottom: 1rem !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-27d67cc {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: clamp(4rem, 7vw, 7rem) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-27d67cc :where(.e-con-inner, .e-con, .elementor-container) {
  min-height: 0 !important;
}

body.agfx-facelift.agfx-page-product :where(.elementor-element-8837c40, .elementor-element-27d67cc) :where(h2, h3, p) {
  color: inherit !important;
}

/* Preserve the source Prevent banner while collapsing inherited carousel space. */
body.agfx-facelift.agfx-page-product .elementor-element-64cf2ab {
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 0 !important;
  background: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-64cf2ab .elementor-element-a73ea03,
body.agfx-facelift.agfx-page-product .elementor-element-64cf2ab .elementor-widget-container {
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-64cf2ab :where(.swiper, .swiper-wrapper, .swiper-slide) {
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-64cf2ab img[src*="Prevent-Banner"] {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* Industries: preserve hero/background and every downstream field image. */
body.agfx-facelift.agfx-page-industries .elementor-556 {
  width: 100% !important;
  overflow: visible !important;
  background: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-0301515 {
  min-height: clamp(360px, 48vw, 560px);
  padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 6vw, 5rem) !important;
  background-color: var(--agfx-ink) !important;
  background-image: linear-gradient(135deg, #0b0b0b 0%, #1a1816 58%, #11100f 100%) !important;
  background-position: center !important;
  background-size: cover !important;
  color: #fff !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-0301515 :where(h2, h3, p) {
  color: inherit !important;
  text-shadow: 0 2px 22px rgba(0, 0, 0, 0.68);
}

body.agfx-facelift.agfx-page-industries :where(.elementor-element-bd2062a, .elementor-element-86aa59e, .elementor-element-d4e4f07, .elementor-element-748a353, .elementor-element-953feb9) {
  width: 100% !important;
  max-width: none !important;
  padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 6vw, 5rem) !important;
}

body.agfx-facelift.agfx-page-industries :where(.elementor-element-bd2062a, .elementor-element-86aa59e, .elementor-element-748a353) {
  background-color: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e > .e-con-inner > .e-con {
  padding: clamp(1rem, 2vw, 1.5rem) !important;
  border: 1px solid var(--agfx-rule);
  border-top: 4px solid var(--agfx-red);
  background: var(--agfx-paper) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e > .e-con-inner > .e-con :where(.e-con, .elementor-widget) {
  background-color: transparent !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e :where(.elementor-element-753f865, .e-753f865-a6bc878) {
  color: var(--agfx-red-dark) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-86aa59e :is(h2, h3, h4, h5, h6) {
  color: var(--agfx-red-dark) !important;
}

body.agfx-facelift.agfx-page-industries :where(.elementor-element-d4e4f07, .elementor-element-953feb9) {
  background-color: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries :where(.elementor-element-d4e4f07, .elementor-element-953feb9) :where(h2, h3, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e img,
body.agfx-facelift.agfx-page-industries :where(.elementor-element-d4e4f07, .elementor-element-748a353, .elementor-element-953feb9) img {
  width: 100% !important;
  min-height: 240px;
  max-height: 520px;
  object-fit: cover;
}

/* Resources: keep every current post and image instance. */
body.agfx-facelift.agfx-page-resources #content {
  padding: 0 clamp(1.25rem, 5vw, 4.5rem) 0;
  background: var(--agfx-ink);
  flex: 0 0 auto !important;
}

body.agfx-facelift.agfx-page-resources #page {
  min-height: 0 !important;
}

body.agfx-facelift.agfx-page-resources #primary {
  width: min(100%, var(--agfx-max)) !important;
  max-width: var(--agfx-max) !important;
  margin-inline: auto !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap {
  display: block;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.75rem);
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(1rem, 2vw, 1.75rem);
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  flex: none !important;
  grid-column: span 6;
  margin: 0 !important;
  padding: clamp(1.4rem, 3vw, 2.25rem) !important;
  border: 1px solid rgba(244, 239, 229, 0.18);
  border-top: 4px solid var(--agfx-red);
  border-radius: 4px;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
  box-shadow: none !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article:first-child {
  grid-column: span 12;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article :where(.content-inner, .entry-thumb, .post-content, .entry-content, .entry-header) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article :where(h2, h3, p, a, .entry-meta) {
  color: inherit;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article img {
  width: 100%;
  max-height: 330px;
  object-fit: contain;
  background: #fff;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  float: none !important;
  flex: none !important;
  grid-column: span 6;
  margin: 0 !important;
  padding: clamp(1.4rem, 3vw, 2.25rem) !important;
  border: 1px solid rgba(244, 239, 229, 0.18);
  border-top: 4px solid var(--agfx-red);
  border-radius: 4px;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
  box-shadow: none !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article :where(.content-inner, .entry-thumb, .post-content, .entry-content, .entry-header) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article:first-of-type {
  grid-column: span 12;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article :where(h2, h3, p, a, .entry-meta) {
  color: inherit;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article h2 {
  font-size: clamp(1.55rem, 2.3vw, 2.5rem);
}

body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article img {
  width: 100%;
  max-height: 330px;
  object-fit: contain;
  background: #fff;
}

/* The three posts currently reuse one baked-white logo WebP. Keep every image
   node and URL, but give the lead story and secondary stories distinct roles so
   the repeated art reads as deliberate editorial framing, not a page background. */
body.agfx-facelift.agfx-page-resources #main.post-wrap :where(#post-15765, #post-730, #post-731) .entry-thumb {
  display: grid !important;
  width: 100% !important;
  place-items: center;
  margin: 0 0 clamp(1rem, 2vw, 1.5rem) !important;
  padding: clamp(0.75rem, 1.8vw, 1.25rem) !important;
  overflow: hidden;
  border: 1px solid var(--agfx-rule);
  background: var(--agfx-paper) !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap #post-15765 .entry-thumb {
  block-size: clamp(230px, 24vw, 300px);
}

body.agfx-facelift.agfx-page-resources #main.post-wrap :where(#post-730, #post-731) .entry-thumb {
  block-size: clamp(180px, 18vw, 220px);
}

body.agfx-facelift.agfx-page-resources #main.post-wrap #post-15765 .entry-thumb img {
  width: min(100%, 760px) !important;
  max-height: 260px !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap :where(#post-730, #post-731) .entry-thumb img {
  width: min(100%, 360px) !important;
  max-height: 180px !important;
}

body.agfx-facelift.agfx-page-resources #main.post-wrap :where(#post-15765, #post-730, #post-731) .entry-thumb img {
  display: block;
  height: auto !important;
  object-fit: contain;
}

body.agfx-facelift.agfx-page-resources .sidebar-column,
body.agfx-facelift.agfx-page-resources #secondary {
  display: none !important;
}

/* About: existing story, two logos, mission image, CTA and banner remain. */
body.agfx-facelift.agfx-page-about .page-header,
body.agfx-facelift.agfx-page-about .entry-header {
  width: min(100%, var(--agfx-max));
  margin-inline: auto;
  padding: 2rem clamp(1.25rem, 5vw, 4rem);
  background: var(--agfx-cream);
}

body.agfx-facelift.agfx-page-about #content {
  padding-top: 0 !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 > :where(.e-con, .elementor-section) {
  padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 6vw, 5rem) !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-03f299e, .elementor-element-44900d0b) {
  background-color: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 :where(.elementor-element-03f299e, .elementor-element-44900d0b) :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-03f299e :where(.elementor-widget-text-editor, p) {
  max-width: 64ch;
  margin-inline: 0 !important;
  text-align: left !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-2d3ac6a2, .elementor-element-9bcbf9c) {
  background-color: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-2d3ac6a2, .elementor-element-9bcbf9c) :where(h2, h3, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-03f299e, .elementor-element-2d3ac6a2) img {
  max-height: 540px;
  margin-inline: auto;
  object-fit: contain;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-9bcbf9c,
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-9bcbf9c :where(.e-con, .e-con-inner) {
  min-height: 0 !important;
  background: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-9bcbf9c {
  padding-block: 2.5rem !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-9bcbf9c img {
  width: min(100%, 240px) !important;
  margin-inline: auto;
  padding: 1.25rem;
  border-left: 4px solid var(--agfx-red);
  background: var(--agfx-paper);
}

/* Contact: preserve logo, data, socials, map, CTA and banner. */
body.agfx-facelift.agfx-page-contact .elementor-553 {
  background: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-contact :where(.elementor-element-898bff1, .elementor-element-0618a07) {
  padding: clamp(4rem, 8vw, 8rem) clamp(1.25rem, 6vw, 5rem) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 {
  background: var(--agfx-ink) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-898bff1 :where(.e-con, .e-con-inner) {
  background: transparent !important;
}

body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-898bff1 .elementor-widget-image {
  padding: clamp(1.5rem, 4vw, 3rem) !important;
  border-left: 4px solid var(--agfx-red);
  background: var(--agfx-paper) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 :where(h2, h3, p, li) {
  color: inherit !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-0618a07 {
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-0618a07::before {
  content: none !important;
}

body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-0618a07,
body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-0618a07 :where(.e-con, .e-con-inner) {
  background: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-46d116f,
body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-46d116f :where(.e-con, .e-con-inner) {
  background: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-0618a07 :is(h1, h2, h3, h4, h5, h6, p, a, address, span) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5) {
  width: 100% !important;
  min-height: 420px;
  background: var(--agfx-charcoal) !important;
}

body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5) iframe {
  width: 100% !important;
  min-height: 420px !important;
}

/* Footer and preserved Prevent banner. */
body.agfx-facelift #colophon,
body.agfx-facelift .shfb-footer {
  background: #0b0b0b !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift :where(#colophon, .shfb-footer) :where(h2, h3, h4, p, li, a) {
  color: inherit !important;
  font-style: normal !important;
}

body.agfx-facelift img[src*="Prevent-Banner"] {
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
}

/* Restrained progressive reveals; source content remains visible without JS. */
body.agfx-facelift.agfx-motion-ready .agfx-reveal:not(.is-visible) {
  opacity: 1;
  transform: translateY(8px);
}

body.agfx-facelift .agfx-reveal {
  opacity: 1;
  transform: none;
  transition: opacity 480ms ease, transform 580ms cubic-bezier(0.2, 0.75, 0.25, 1);
}

@media (max-width: 1024px) {
  body.agfx-facelift.agfx-page-product .elementor-element-f7e8936 > .e-con-inner,
  body.agfx-facelift.agfx-page-product .elementor-element-f0efb4b > .e-con-inner {
    grid-template-columns: 1fr !important;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-827191f {
    width: 100%;
    border-top: 4px solid var(--agfx-red);
    border-left: 0;
  }

  body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article,
  body.agfx-facelift.agfx-page-resources #main.post-wrap > .row > article:first-of-type,
  body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article,
  body.agfx-facelift.agfx-page-resources #main.post-wrap .posts-layout > .row > article:first-child {
    grid-column: span 12;
  }
}

@media (max-width: 767px) {
  body.agfx-facelift {
    font-size: 16px;
  }

  body.agfx-facelift :where(.elementor, .elementor-section, .elementor-container, .e-con, .e-con-inner, .elementor-widget-wrap, .elementor-widget, .content-area, .site-main) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    inset-inline: auto !important;
  }

  body.agfx-facelift .agfx-actions,
  body.agfx-facelift .agfx-button,
  body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link) {
    width: 100%;
  }

  body.agfx-facelift.agfx-page-home #wp-custom-header video {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 {
    grid-template-columns: 1fr !important;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-8587a0e img {
    width: min(100%, 265px) !important;
  }

  body.agfx-facelift.agfx-page-resources #main.post-wrap #post-15765 .entry-thumb {
    block-size: 210px;
  }

  body.agfx-facelift.agfx-page-resources #main.post-wrap :where(#post-730, #post-731) .entry-thumb {
    block-size: 180px;
  }

  body.agfx-facelift.agfx-page-industries :where(.elementor-element-0301515, .elementor-element-bd2062a, .elementor-element-86aa59e, .elementor-element-d4e4f07, .elementor-element-748a353, .elementor-element-953feb9) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    transform: none !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-556 .e-15b7209-0a94cf0 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    transform: none !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e img,
  body.agfx-facelift.agfx-page-industries :where(.elementor-element-d4e4f07, .elementor-element-748a353, .elementor-element-953feb9) img {
    display: block !important;
    width: 100% !important;
    min-height: 200px;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Keep the live Contact logo and copy, but give each a full-width reading zone. */
  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 > :where(.e-con, .e-con-inner),
  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 :where(.elementor-element-a7bc327, .elementor-element-2ef30fd, .elementor-element-49cdf40) {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 .elementor-element-4bba9d1 {
    width: min(100%, 290px) !important;
    margin-inline: auto !important;
  }

  body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5),
  body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5) iframe {
    min-height: 320px !important;
  }
}

/* ============================================================
   ADVERSARIAL SPACING PASS — 2026-08-01
   One 4pt-based rhythm, no duplicate container padding, and no
   trailing spacer bands. These rules intentionally come last so
   they can neutralize brittle Elementor-generated geometry.
   ============================================================ */

/* HOME — collapse the stacked heading/card padding at every width. */
body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-dc6600f {
  padding: var(--agfx-space-3xl) clamp(1.25rem, 6vw, 5rem) var(--agfx-space-lg) !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-c5e3e5e {
  width: 100% !important;
  max-width: 72rem !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-c4d87b7 {
  padding: var(--agfx-space-md) clamp(1.25rem, 6vw, 5rem) var(--agfx-space-3xl) !important;
}

/* The preserved Prevent banner is content, not a padded section. */
body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-15985c7 {
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  background: #000 !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-15985c7 :where(
  .elementor-widget-image,
  .elementor-widget-container) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-15985c7 img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-385c98b {
  display: none !important;
}

@media (min-width: 768px) {
  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-8b16c9e {
    padding: var(--agfx-space-3xl) clamp(1.25rem, 6vw, 5rem) var(--agfx-space-3xl) !important;
    background: #000 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e > .e-con-inner,
  body.agfx-facelift.agfx-page-home :where(
    .elementor-element-2405bdd,
    .elementor-element-1ffdab6,
    .elementor-element-36b331e) {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e > .e-con-inner,
  body.agfx-facelift.agfx-page-home .elementor-element-2405bdd {
    gap: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-36b331e {
    gap: var(--agfx-space-xl) !important;
  }

  body.agfx-facelift.agfx-page-home :where(
    .elementor-element-4487355,
    .elementor-element-269eae5,
    .elementor-element-156a7ec) {
    margin: 0 !important;
  }
}

@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-dc6600f {
    padding: 2.5rem 1.25rem var(--agfx-space-md) !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-c4d87b7 {
    padding: 0 1.25rem 2.5rem !important;
  }
}

/* PRODUCTS — treat the closing sentence and action as one compact group. */
body.agfx-facelift.agfx-page-product .elementor-element-8837c40 {
  padding-top: var(--agfx-space-2xl) !important;
  padding-bottom: var(--agfx-space-sm) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-8837c40 .e-heading-base {
  width: 100% !important;
  margin: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-27d67cc {
  padding: 0 clamp(1.25rem, 6vw, 5rem) var(--agfx-space-2xl) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-27d67cc > .e-con-inner {
  gap: var(--agfx-space-lg) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-07ed396 .elementor-heading-title {
  font-size: clamp(1.35rem, 2.7vw, 2.25rem) !important;
  line-height: 1.2 !important;
}

@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-product .elementor-element-8837c40 {
    padding-top: var(--agfx-space-xl) !important;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-27d67cc {
    padding-bottom: var(--agfx-space-xl) !important;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-07ed396 .elementor-heading-title {
    max-width: 22ch !important;
    font-size: 1.2rem !important;
    line-height: 1.25 !important;
  }
}

/* INDUSTRIES — restore the coherent original page structure: real hero image,
   three equal application cards, and compact two-column detail rows. */
body.agfx-facelift.agfx-page-industries .elementor-element-0301515 {
  position: relative !important;
  isolation: isolate;
  min-height: 0 !important;
  padding: var(--agfx-space-3xl) clamp(1.25rem, 6vw, 5rem) !important;
  background-color: var(--agfx-ink) !important;
  background-image:
    linear-gradient(90deg, rgba(17, 16, 15, 0.98) 0%, rgba(17, 16, 15, 0.86) 24%, rgba(17, 16, 15, 0.42) 52%, rgba(17, 16, 15, 0.72) 78%, rgba(17, 16, 15, 0.94) 100%),
    linear-gradient(rgba(11, 11, 11, 0.28), rgba(11, 11, 11, 0.56)),
    url("https://i0.wp.com/www.arcguardinc.com/wp-content/uploads/2026/06/welder-background-1-scaled.jpg?fit=1024%2C680&ssl=1") !important;
  background-position: center 24% !important;
  background-size: cover !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-028374e {
  width: min(100%, var(--agfx-max)) !important;
  max-width: var(--agfx-max) !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-536aa93 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: var(--agfx-space-3xl) !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-88a9c53,
body.agfx-facelift.agfx-page-industries .elementor-556 .e-15b7209-0a94cf0 {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-88a9c53 .elementor-heading-title {
  font-size: clamp(2.25rem, 4vw, 3.75rem) !important;
  line-height: 1.02 !important;
  text-align: left !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .e-15b7209-0a94cf0 {
  color: var(--agfx-cream) !important;
  font-size: clamp(1rem, 1.4vw, 1.2rem) !important;
  line-height: 1.55 !important;
  text-align: left !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 100% !important;
  padding: clamp(1.5rem, 3vw, 2.5rem) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.88) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-bd2062a {
  padding: var(--agfx-space-xl) 1.25rem var(--agfx-space-md) !important;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-bd2062a .elementor-heading-title {
  margin: 0 !important;
  color: var(--agfx-ink) !important;
  font-size: clamp(1.75rem, 3vw, 2.4rem) !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e {
  padding: var(--agfx-space-md) clamp(1.25rem, 5vw, 4rem) var(--agfx-space-2xl) !important;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--agfx-space-lg) !important;
  width: min(100%, 74rem) !important;
  max-width: 74rem !important;
  margin: 0 auto !important;
  padding: 0 !important;
  align-items: stretch !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-85d7055,
  .elementor-element-be03783,
  .elementor-element-1a1a459,
  .elementor-element-d8a4806,
  .elementor-element-cb78708) {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-1a1a459,
  .elementor-element-d8a4806,
  .elementor-element-cb78708) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-e3199be,
  .elementor-element-a812304,
  .elementor-element-60810fb) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-e3199be,
  .elementor-element-a812304,
  .elementor-element-60810fb) img {
  width: 100% !important;
  height: auto !important;
  min-height: 220px !important;
  max-height: 220px !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-f8de564,
  .elementor-element-ee45058,
  .elementor-element-4f19efa) {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 190px !important;
  margin: 0 !important;
  padding: var(--agfx-space-lg) !important;
  background: var(--agfx-paper) !important;
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  .elementor-element-f8de564,
  .elementor-element-ee45058,
  .elementor-element-4f19efa) :where(h3, p, span) {
  color: var(--agfx-ink) !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  h4.e-heading-base,
  .elementor-icon-list-items,
  .elementor-icon-list-item) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e h4.e-heading-base {
  margin-top: var(--agfx-space-lg) !important;
  margin-bottom: var(--agfx-space-sm) !important;
  color: var(--agfx-cream) !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  h4.e-heading-base,
  .elementor-icon-list-items,
  .elementor-icon-list-item)::before,
body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
  h4.e-heading-base,
  .elementor-icon-list-items,
  .elementor-icon-list-item)::after {
  content: none !important;
  display: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e .elementor-icon-list-text {
  color: var(--agfx-cream) !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) {
  padding: var(--agfx-space-2xl) clamp(1.25rem, 5vw, 4rem) !important;
  background-color: #575555 !important;
  background-image: linear-gradient(#575555, #575555) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-827e8d2,
  .elementor-element-8d0ad7e,
  .elementor-element-463a97a) .elementor-heading-title {
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) :is(h2, h3, p, li, span) {
  color: var(--agfx-cream) !important;
}

@media (max-width: 900px) {
  body.agfx-facelift.agfx-page-industries .elementor-element-0301515 {
    padding: var(--agfx-space-2xl) 1.25rem !important;
    background-position: center top !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-536aa93 {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--agfx-space-md) !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-88a9c53 .elementor-heading-title,
  body.agfx-facelift.agfx-page-industries .elementor-556 .e-15b7209-0a94cf0 {
    text-align: center !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e > .e-con-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--agfx-space-xl) !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
    .elementor-element-e3199be,
    .elementor-element-a812304,
    .elementor-element-60810fb) img {
    min-height: 0 !important;
    max-height: 300px !important;
  }

  body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :where(
    .elementor-element-f8de564,
    .elementor-element-ee45058,
    .elementor-element-4f19efa) {
    min-height: 0 !important;
  }
}

/* ABOUT — banner → footer is one uninterrupted transition. */
body.agfx-facelift.agfx-page-about #content {
  padding-bottom: 0 !important;
}

body.agfx-facelift.agfx-page-about :where(.entry-footer, #primary) {
  margin-bottom: 0 !important;
}

body.agfx-facelift.agfx-page-about .entry-footer {
  display: none !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa {
  display: block !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  background: #000 !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-23097aa :where(
  .elementor-widget-image,
  .elementor-widget-container) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-23097aa img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

@media (min-width: 768px) {
  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-44900d0b {
    padding-top: var(--agfx-space-2xl) !important;
    padding-bottom: var(--agfx-space-2xl) !important;
  }

  body.agfx-facelift.agfx-page-about .elementor-element-44900d0b > .e-con-inner {
    gap: var(--agfx-space-xl) !important;
  }

  body.agfx-facelift.agfx-page-about .elementor-element-44900d0b :where(
    .elementor-widget-heading,
    .elementor-widget-button) {
    margin: 0 !important;
  }
}

/* CONTACT — keep the consultation CTA optically and geometrically centered. */
body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c,
body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c .elementor-button-wrapper {
  width: 100% !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c .elementor-button {
  margin-inline: auto !important;
}

@media (prefers-reduced-motion: reduce) {
  body.agfx-facelift *,
  body.agfx-facelift *::before,
  body.agfx-facelift *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  body.agfx-facelift .agfx-reveal {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Product media rail: center EVERY child at EVERY width. Elementor's
   per-widget custom margins push the photo/caption/buttons off-center and
   clip the caption past the panel edge; windows resize through all widths,
   so this is unconditional — no breakpoints. */
body.agfx-facelift.agfx-page-product .elementor-element-042cedb,
body.agfx-facelift.agfx-page-product .elementor-element-042cedb > .e-con-inner,
body.agfx-facelift.agfx-page-product .elementor-element-042cedb > .e-con {
  display: flex !important;
  flex-direction: column;
  align-items: center;
}

body.agfx-facelift.agfx-page-product .elementor-element-042cedb .elementor-element {
  width: auto;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}

body.agfx-facelift.agfx-page-product .elementor-element-042cedb .elementor-heading-title {
  text-align: center;
}

/* The product document buttons sit in a column whose width varies with the
   window; side-by-side layouts break at many in-between sizes. Stack and
   center them at every width — no breakpoint edge cases. */
body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 {
  grid-template-columns: 1fr !important;
  justify-items: center;
  row-gap: 0.85rem;
}

body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 .elementor-widget-button {
  width: min(100%, 420px) !important;
  max-width: 420px !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 :where(.elementor-button, .roll-button) {
  display: inline-flex !important;
  width: 100%;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  text-align: center;
  white-space: nowrap;
}

body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 .elementor-button-content-wrapper,
body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 .elementor-button-text {
  display: inline-block !important;
  line-height: 1.2;
  white-space: nowrap;
}

body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 a[href*="ArcGuard_Compliance_Standards"] .elementor-button-text {
  font-size: 0.76em;
}

@media (max-width: 480px) {
  body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 :where(.elementor-button, .roll-button) {
    min-height: 64px;
    white-space: normal;
  }

  body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 .elementor-button-content-wrapper,
  body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 .elementor-button-text {
    white-space: normal;
  }
}

/* Header CTA — stop the two-line wrap and center the label. */
body.agfx-facelift .shfb-component-button .button,
body.agfx-facelift .shfb-component-button2 .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  padding: 0.7rem 1.35rem;
  line-height: 1;
  letter-spacing: 0.04em;
}

/* Footer — the original WordPress footer content only (no injected columns),
   centered and aligned consistently at every width. */
body.agfx-facelift #colophon.agfx-footer {
  border-top: 4px solid var(--agfx-red);
  background: #0d0c0b !important;
}

body.agfx-facelift #colophon.agfx-footer .shfb-main_footer_row .container {
  max-width: 1160px;
  margin: 0 auto;
  padding: clamp(2.25rem, 5vw, 3.25rem) clamp(1.25rem, 4vw, 2rem) clamp(1.5rem, 4vw, 2.25rem);
}

body.agfx-facelift #colophon.agfx-footer .shfb-main_footer_row .shfb-row {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  gap: 0;
  text-align: center;
}

body.agfx-facelift #colophon.agfx-footer .shfb-column:empty,
body.agfx-facelift #colophon.agfx-footer .agfx-footer-col-empty {
  display: none;
}

body.agfx-facelift #colophon.agfx-footer .footer-widget,
body.agfx-facelift #colophon.agfx-footer .footer-widget aside {
  margin: 0;
  padding: 0;
}

body.agfx-facelift #colophon.agfx-footer .widget-title {
  margin: 0 0 1.1rem;
  color: var(--agfx-cream);
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0.16em;
  text-align: center;
  text-transform: uppercase;
}

body.agfx-facelift #colophon.agfx-footer .widget-title::after {
  content: '';
  display: block;
  width: 34px;
  height: 3px;
  margin: 0.6rem auto 0;
  background: var(--agfx-red);
}

body.agfx-facelift #colophon.agfx-footer ul#menu-footer-1 {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.6rem 2.25rem;
}

body.agfx-facelift #colophon.agfx-footer ul#menu-footer-1 li {
  margin: 0;
  padding: 0;
}

body.agfx-facelift #colophon.agfx-footer ul#menu-footer-1 a {
  display: inline-block;
  color: var(--agfx-mist);
  font-size: 0.95rem;
  font-weight: 560;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  transition: color 160ms ease;
}

body.agfx-facelift #colophon.agfx-footer ul#menu-footer-1 a:hover {
  color: var(--agfx-cream);
  text-decoration: underline;
  text-underline-offset: 4px;
  text-decoration-color: var(--agfx-red);
}

body.agfx-facelift #colophon.agfx-footer .shfb-below_footer_row {
  border-top: 1px solid rgba(244, 239, 229, 0.14);
}

body.agfx-facelift #colophon.agfx-footer .shfb-below_footer_row .container {
  max-width: 1160px;
  margin: 0 auto;
  padding: 1.1rem clamp(1.25rem, 4vw, 2rem);
}

body.agfx-facelift #colophon.agfx-footer .shfb-below_footer_row .shfb-row {
  display: flex !important;
  justify-content: center;
}

/* Empty footer widgets (blank paragraph blocks) add phantom height. */
body.agfx-facelift #colophon.agfx-footer .footer-widget aside:not(:has(a, img, li)) {
  display: none;
}

body.agfx-facelift #colophon.agfx-footer .sydney-credits {
  color: rgba(244, 239, 229, 0.55);
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-align: center;
}

@media (max-width: 767px) {
  body.agfx-facelift #colophon.agfx-footer ul#menu-footer-1 {
    flex-direction: column;
    align-items: center;
    gap: 0.9rem;
  }
}

/* About page composition — balanced editorial layouts instead of stacked columns. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-03f299e {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  column-gap: clamp(2.5rem, 5vw, 5rem);
  align-items: center;
}

body.agfx-facelift.agfx-page-about .elementor-element-03f299e > * {
  min-width: 0;
}

body.agfx-facelift.agfx-page-about .elementor-element-762c5d8 h3 {
  font-size: clamp(1.85rem, 3vw, 2.5rem) !important;
  line-height: 1.12;
  margin-bottom: 0.4rem !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-762c5d8 h3::after {
  content: '';
  display: block;
  width: 44px;
  height: 4px;
  margin-top: 0.85rem;
  background: var(--agfx-red);
}

body.agfx-facelift.agfx-page-about .elementor-element-4d5ca29 p {
  font-size: 1.03rem !important;
  line-height: 1.75 !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-afb0a74 img {
  width: min(100%, 420px) !important;
  padding: clamp(1.5rem, 3vw, 2.5rem);
  background: var(--agfx-paper);
  border: 1px solid var(--agfx-rule);
  border-left: 4px solid var(--agfx-red);
  box-shadow: 0 30px 60px -42px rgba(0, 0, 0, 0.45);
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2 {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  column-gap: clamp(2.5rem, 5vw, 5rem);
  align-items: center;
}

body.agfx-facelift.agfx-page-about .elementor-element-2d3ac6a2 > * {
  min-width: 0;
}

body.agfx-facelift.agfx-page-about .elementor-element-174785ce {
  align-items: flex-start !important;
  text-align: left !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-adce7d2 h3 {
  font-size: clamp(1.85rem, 3vw, 2.5rem) !important;
  line-height: 1.12;
  text-align: left !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-adce7d2 h3::after {
  content: '';
  display: block;
  width: 44px;
  height: 4px;
  margin-top: 0.85rem;
  background: var(--agfx-red);
}

body.agfx-facelift.agfx-page-about .elementor-element-5585eab5 p {
  max-width: 54ch;
  font-size: 1.03rem !important;
  line-height: 1.75 !important;
  text-align: left !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-351d0abe {
  display: grid !important;
  gap: 1.5rem;
  justify-items: center;
}

body.agfx-facelift.agfx-page-about .elementor-element-170b8875 img {
  width: min(100%, 480px) !important;
  box-shadow: 0 30px 60px -42px rgba(0, 0, 0, 0.65);
}

body.agfx-facelift.agfx-page-about .elementor-element-0fde769 img {
  width: min(100%, 300px) !important;
  padding: 1.25rem;
  background: var(--agfx-paper);
  border-left: 4px solid var(--agfx-red);
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-44900d0b {
  padding-block: clamp(3.5rem, 7vw, 5.5rem) !important;
  text-align: center;
}

body.agfx-facelift.agfx-page-about .elementor-element-4c9f8f4a h2,
body.agfx-facelift.agfx-page-about .elementor-element-4c9f8f4a h3 {
  max-width: 20ch;
  margin-inline: auto !important;
  font-size: clamp(2rem, 4vw, 3.1rem) !important;
  line-height: 1.08;
}

body.agfx-facelift.agfx-page-about .elementor-element-37179017 {
  margin-top: 1.25rem !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-253bda3 {
  margin-top: clamp(2.5rem, 5vw, 4rem) !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-253bda3 img {
  width: min(100%, 900px) !important;
  margin-inline: auto;
  box-shadow: 0 34px 70px -48px rgba(0, 0, 0, 0.55);
}

@media (max-width: 900px) {
  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-03f299e,
  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2 {
    grid-template-columns: 1fr !important;
    row-gap: 2.25rem;
  }

  body.agfx-facelift.agfx-page-about .elementor-element-afb0a74 img {
    margin-inline: auto;
  }
}

/* Smooth-like-butter pass: gentle lift on primary actions. */
body.agfx-facelift .agfx-button:hover,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link):hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 28px -14px rgba(178, 24, 28, 0.55);
}

body.agfx-facelift .agfx-button:active,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link):active {
  transform: translateY(0);
}

/* Elementor per-widget --width percentages compound inside the grid layout
   and shrink content to slivers — normalize them to full track width. */
body.agfx-facelift.agfx-page-about :where(
  .elementor-element-6bfdeec, .elementor-element-4d5ca29, .elementor-element-762c5d8,
  .elementor-element-ac254c0, .elementor-element-afb0a74,
  .elementor-element-174785ce, .elementor-element-adce7d2, .elementor-element-5585eab5,
  .elementor-element-351d0abe, .elementor-element-170b8875, .elementor-element-0fde769) {
  --width: 100%;
  width: 100% !important;
  max-width: 100% !important;
}

/* About renders in the theme's sidebar layout (col-md-9) but no sidebar
   exists — reclaim the full content width. */
body.agfx-facelift.agfx-page-about .content-area {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100%;
}

/* Specificity-boosted --width normalization (Elementor's generated rule is
   .elementor-14346 .elementor-element.elementor-element-XXX at 3 classes). */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element:where(
  .elementor-element-6bfdeec, .elementor-element-4d5ca29, .elementor-element-762c5d8,
  .elementor-element-ac254c0, .elementor-element-afb0a74,
  .elementor-element-174785ce, .elementor-element-adce7d2, .elementor-element-5585eab5,
  .elementor-element-351d0abe, .elementor-element-170b8875, .elementor-element-0fde769) {
  --width: 100%;
  width: 100% !important;
  max-width: 100% !important;
}

/* Red action buttons must always read white — fixes black-text regression. */
body.agfx-facelift .agfx-button,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link):not(.agfx-button--secondary) {
  color: #fff !important;
}

/* Button label spans inherit ink from section text rules at higher
   specificity — force primary button text white (repeated class = max wins). */
body.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, .agfx-button):not(.agfx-button--secondary),
body.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, .agfx-button):not(.agfx-button--secondary) :where(span, .elementor-button-text, .elementor-button-content-wrapper, i) {
  color: #fff !important;
}

/* Header CTA joins the primary button family: gradient, white italic label,
   magnet hover (class added in JS), brightness lift. */
body.agfx-facelift .shfb-component-button .button,
body.agfx-facelift .shfb-component-button2 .button {
  border: 1px solid #fff !important;
  border-radius: 3px !important;
  background: linear-gradient(180deg, #e30808 0%, #c00000 55%, #7a0202 100%) !important;
  box-shadow: 0 12px 24px -14px rgba(178, 24, 28, 0.65);
  color: #fff !important;
  font-style: italic !important;
  font-weight: 620 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.09em;
  transition: filter 160ms ease, transform 160ms ease, box-shadow 160ms ease;
}

body.agfx-facelift .shfb-component-button .button:hover,
body.agfx-facelift .shfb-component-button2 .button:hover {
  filter: brightness(1.25);
  color: #fff !important;
}

/* Home CTA columns: Elementor atomic columns collapse to 20px and let the
   heading spill over the partner-logos image at mid widths. Give the section
   real flow at every width. */
body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 {
  flex-wrap: wrap !important;
  align-items: flex-start !important;
  gap: 2.5rem;
}

body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 > .e-con {
  flex: 1 1 440px !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-e231a56, .elementor-element-77cb5f6),
body.agfx-facelift.agfx-page-home :where(.elementor-element-e231a56, .elementor-element-77cb5f6) * {
  max-width: 100% !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-e231a56, .elementor-element-77cb5f6) img {
  height: auto !important;
}

/* Live-theme safety: never let fixed-width containers or injected sections
   push past the viewport (the Sydney .container is fixed 1170px and the real
   theme shifts it at some window sizes). */
body.agfx-facelift .content-wrapper.container {
  width: min(1170px, 100%) !important;
  margin-inline: auto !important;
}

body.agfx-facelift {
  overflow-x: clip;
}

/* ===== Full-bleed: kill the boxed 1170px container on facelifted pages so
   dark sections run edge-to-edge. Sections keep their own inner padding. ===== */
body.agfx-facelift .content-wrapper.container {
  width: 100% !important;
  max-width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.agfx-facelift .content-wrapper > .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.agfx-facelift .content-area {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.agfx-facelift #content,
body.agfx-facelift .page-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Keep readable gutters inside the resources post grid now that its
   container is full width. */
body.agfx-facelift.agfx-page-resources #main.post-wrap {
  padding-inline: clamp(1.25rem, 4vw, 3rem);
}

/* ===== Homepage CTA columns: matched image sizes, aligned text and buttons. ===== */
body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 {
  align-items: stretch !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 > .e-con {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}

body.agfx-facelift.agfx-page-home :where(.elementor-element-e231a56, .elementor-element-77cb5f6) img {
  width: 100% !important;
  height: clamp(240px, 22vw, 330px) !important;
  margin-bottom: 1.25rem;
}

body.agfx-facelift.agfx-page-home .elementor-element-e231a56 img {
  object-fit: cover;
  object-position: center;
}

body.agfx-facelift.agfx-page-home .elementor-element-77cb5f6 img {
  object-fit: contain;
  background: #fff;
  padding: 1.25rem;
}

body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 > .e-con > :last-child {
  margin-top: auto;
}

/* Product documents group centered under the assembly demo. */
body.agfx-facelift.agfx-page-product .elementor-element-6d3a201 {
  justify-content: center;
  text-align: center;
  margin-inline: auto !important;
}

/* Full-bleed sections: Elementor boxes top-level containers to 1140px inside
   a full-width cream wrapper — stretch them so dark sections run edge to edge. */
body.agfx-facelift .elementor > .e-con,
body.agfx-facelift .elementor > .elementor-section,
body.agfx-facelift .elementor > .e-con > .e-con-inner,
body.agfx-facelift .elementor > .elementor-section > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
}

/* ===== Mobile fixes (client-reported flaws) ===== */

/* Mobile readability + touch targets: the theme renders blog meta at 12px and
   "Read more" as a small text link on phones. Styling only — no copy changes. */
@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-resources .entry-meta,
  body.agfx-facelift.agfx-page-resources .entry-meta a {
    font-size: 0.85rem !important;
    line-height: 1.5;
  }

  body.agfx-facelift.agfx-page-resources a.read-more {
    display: inline-block;
    padding: 0.6rem 0.25rem;
  }

  body.agfx-facelift.agfx-page-contact :where(.elementor-element-818aab8, .elementor-element-20d4ef8, .elementor-element-35a33ae) .elementor-heading-title {
    font-size: 0.85rem !important;
    letter-spacing: 0.08em;
  }
}

/* Touch devices: reveal/split-text motion can freeze mid-state on iOS —
   force everything fully visible regardless of body motion state. */
@media (hover: none), (pointer: coarse) {
  body.agfx-facelift .agfx-reveal,
  body.agfx-facelift.agfx-motion-ready .agfx-reveal:not(.is-visible) {
    opacity: 1 !important;
    transform: none !important;
    clip-path: none !important;
    filter: none !important;
  }
}

@media (max-width: 767px) {
  /* Home CTA columns: kill stray Elementor offsets, align everything left,
     tighten the rhythm, keep imagery compact. */
  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 {
    gap: 2.25rem;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 :where(.elementor-widget-heading, .elementor-widget-text-editor, h2, h3, p) {
    margin: 0 0 0.85rem !important;
    padding: 0 !important;
    max-width: 100% !important;
    text-align: left !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 img {
    height: 210px !important;
    margin-bottom: 1rem;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-77cb5f6 img {
    padding: 0.85rem;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 .agfx-button,
  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 :where(.elementor-button, .roll-button) {
    width: 100%;
  }

  /* Industries cards: collapse desktop min-heights and loosen-spacing so the
     cards read as one tight block. */
  body.agfx-facelift.agfx-page-industries .e-con,
  body.agfx-facelift.agfx-page-industries .e-con-inner {
    min-height: 0 !important;
  }

  body.agfx-facelift.agfx-page-industries :where(h2, h3, h4) {
    margin-block: 0.6rem !important;
    letter-spacing: 0.02em !important;
  }

  body.agfx-facelift.agfx-page-industries :where(.elementor-widget-heading, .elementor-widget-text-editor) {
    margin-block: 0.4rem !important;
  }
}

@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 .elementor-widget {
    --width: 100%;
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Home CTA on mobile: Elementor atomic paragraphs/headings self-center at
   intrinsic width — stretch and left-align them. */
@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 .e-con > :where(p, h2, h3, .e-paragraph-base, .e-heading-base) {
    width: 100% !important;
    max-width: 100% !important;
    align-self: stretch !important;
    margin: 0 0 0.85rem !important;
    text-align: left !important;
  }
}

/* About (adversarial finding): the theme's sidebar layout pads post-wrap 30px
   on the right at >=992px, leaving a cream strip beside dark sections. */
body.agfx-facelift.agfx-page-about #main.post-wrap,
body.agfx-facelift.agfx-page-about .post-wrap {
  padding: 0 !important;
}

/* About: center the black banner image instead of hugging the left edge. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa {
  justify-content: center !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-23097aa img {
  margin-inline: auto !important;
}

/* ===== Compliance assessment (client-requested restore 2026-07-21: "add back the compliance assessment") ===== */

body.agfx-facelift .agfx-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

body.agfx-facelift .agfx-button--secondary {
  border-color: rgba(244, 239, 229, 0.62) !important;
  background: transparent !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift .agfx-button--secondary:hover {
  border-color: var(--agfx-cream) !important;
  background: var(--agfx-cream) !important;
  color: var(--agfx-ink) !important;
}

/* The scorecard action sits on the same cream surface as the assessment
   panel, so the generic light secondary treatment disappears. Give this
   requested post-completion action the established Arc Guard CTA finish. */
body.agfx-facelift .agfx-assess [data-assess-email] {
  border-color: #fff !important;
  background-color: #b50000 !important;
  background-image: linear-gradient(rgb(0, 0, 0) 0%, rgb(204, 0, 0) 100%) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px -12px rgba(178, 24, 28, 0.9) !important;
}

body.agfx-facelift .agfx-assess [data-assess-email]:hover,
body.agfx-facelift .agfx-assess [data-assess-email]:focus-visible {
  border-color: #fff !important;
  background-color: #8f0000 !important;
  background-image: linear-gradient(rgb(35, 0, 0) 0%, rgb(179, 0, 0) 100%) !important;
  color: #fff !important;
}

body.agfx-facelift .agfx-section-label {
  margin: 0 0 0.9rem;
  color: var(--agfx-red-dark);
  font-size: 0.76rem;
  font-weight: 760;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

@media (max-width: 767px) {
body.agfx-facelift .agfx-actions,
  body.agfx-facelift .agfx-button,
  body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link) {
    width: 100%;
  }

}

body.agfx-facelift .agfx-button,
body.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link):not(.agfx-button--secondary) {
  color: #fff !important;
}

body.agfx-facelift.agfx-assess-open {
  overflow: hidden;
}

body.agfx-facelift .agfx-assess {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: grid;
  place-items: center;
  padding: clamp(0.75rem, 3vw, 2rem);
  background: rgba(13, 12, 11, 0.88);
  backdrop-filter: blur(6px);
  animation: agfx-assess-fade 260ms ease;
}

@keyframes agfx-assess-fade {
  from { opacity: 0; }
  to { opacity: 1; }
}

body.agfx-facelift .agfx-assess__panel {
  position: relative;
  width: min(100%, 640px);
  max-height: min(92vh, 780px);
  overflow-y: auto;
  padding: clamp(1.75rem, 4vw, 3rem);
  background: var(--agfx-cream);
  color: var(--agfx-ink);
  border-top: 5px solid var(--agfx-red);
  box-shadow: 0 40px 90px -30px rgba(0, 0, 0, 0.8);
  animation: agfx-assess-rise 320ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes agfx-assess-rise {
  from { opacity: 0; transform: translateY(26px) scale(0.985); }
  to { opacity: 1; transform: none; }
}

body.agfx-facelift .agfx-assess__close {
  position: absolute;
  top: 0.85rem;
  right: 0.85rem;
  width: 40px;
  height: 40px;
  border: 1px solid var(--agfx-rule);
  background: transparent;
  color: var(--agfx-ink);
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
  transition: background-color 160ms ease, color 160ms ease;
}

body.agfx-facelift .agfx-assess__close:hover {
  background: var(--agfx-ink);
  color: var(--agfx-cream);
}

body.agfx-facelift .agfx-assess h2 {
  margin: 0.4rem 0 0.75rem;
  font-size: clamp(1.6rem, 3.4vw, 2.2rem);
  line-height: 1.12;
}

body.agfx-facelift .agfx-assess__lede {
  max-width: 48ch;
  color: var(--agfx-steel);
  line-height: 1.65;
  margin: 0 0 1.5rem;
}

body.agfx-facelift .agfx-assess__fine {
  margin: 1.25rem 0 0;
  color: var(--agfx-steel);
  font-size: 0.78rem;
  letter-spacing: 0.02em;
}

body.agfx-facelift .agfx-assess__progress {
  height: 5px;
  margin-bottom: 1.5rem;
  background: var(--agfx-rule);
  overflow: hidden;
}

body.agfx-facelift .agfx-assess__progress span {
  display: block;
  height: 100%;
  width: 0;
  background: var(--agfx-red);
  transition: width 420ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.agfx-facelift .agfx-assess__count {
  margin: 0 0 0.25rem;
  color: var(--agfx-steel);
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.agfx-facelift .agfx-assess__cat {
  margin: 0 0 0.4rem;
  color: var(--agfx-red-dark);
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

body.agfx-facelift .agfx-assess__question {
  margin: 0 0 1.4rem;
  font-size: clamp(1.25rem, 2.6vw, 1.6rem);
  line-height: 1.3;
}

body.agfx-facelift .agfx-assess__stage--in .agfx-assess__question,
body.agfx-facelift .agfx-assess__stage--in .agfx-assess__options {
  animation: agfx-assess-rise 300ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.agfx-facelift .agfx-assess__options {
  display: grid;
  gap: 0.7rem;
}

body.agfx-facelift .agfx-assess__option {
  padding: 1rem 1.15rem;
  border: 1.5px solid var(--agfx-rule);
  background: var(--agfx-paper);
  color: var(--agfx-ink);
  font-size: 0.98rem;
  font-weight: 620;
  text-align: left;
  cursor: pointer;
  transition: border-color 150ms ease, background-color 150ms ease, transform 150ms ease;
}

body.agfx-facelift .agfx-assess__option:hover {
  border-color: var(--agfx-red);
  background: #fff;
  transform: translateX(4px);
}

body.agfx-facelift .agfx-assess__form {
  display: grid;
  gap: 0.8rem;
  max-width: 420px;
}

body.agfx-facelift .agfx-assess__form input {
  padding: 0.9rem 1rem;
  border: 1.5px solid var(--agfx-rule);
  background: #fff;
  color: var(--agfx-ink);
  font-size: 0.98rem;
}

body.agfx-facelift .agfx-assess__form input:focus {
  outline: 2px solid var(--agfx-red);
  outline-offset: 1px;
}

body.agfx-facelift .agfx-assess__error {
  margin: 0;
  color: var(--agfx-red-dark);
  font-size: 0.85rem;
  font-weight: 620;
}

body.agfx-facelift .agfx-assess__dialwrap {
  position: relative;
  width: 150px;
  margin: 0.75rem 0 1rem;
}

body.agfx-facelift .agfx-assess__dial {
  width: 150px;
  height: 150px;
  transform: rotate(-90deg);
}

body.agfx-facelift .agfx-assess__dial-track,
body.agfx-facelift .agfx-assess__dial-fill {
  fill: none;
  stroke-width: 10;
  stroke-linecap: round;
}

body.agfx-facelift .agfx-assess__dial-track {
  stroke: var(--agfx-rule);
}

body.agfx-facelift .agfx-assess__dial-fill {
  stroke: var(--agfx-red);
  transition: stroke-dashoffset 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.agfx-facelift .agfx-assess__dial-num {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  text-align: center;
}

body.agfx-facelift .agfx-assess__dial-num strong {
  font-size: 2.1rem;
  line-height: 1;
}

body.agfx-facelift .agfx-assess__dial-num span {
  color: var(--agfx-steel);
  font-size: 0.8rem;
}

body.agfx-facelift .agfx-assess__tier {
  margin: 0 0 0.4rem !important;
}

body.agfx-facelift .agfx-assess__tiernote {
  max-width: 52ch;
  color: var(--agfx-steel);
  line-height: 1.6;
  margin: 0 0 1.4rem;
}

body.agfx-facelift .agfx-assess__cats {
  display: grid;
  gap: 0.7rem;
  margin-bottom: 1.4rem;
}

body.agfx-facelift .agfx-assess__catrow {
  display: grid;
  grid-template-columns: minmax(120px, 170px) 1fr 44px;
  gap: 0.8rem;
  align-items: center;
  font-size: 0.88rem;
  font-weight: 620;
}

body.agfx-facelift .agfx-assess__catrow em {
  font-style: normal;
  color: var(--agfx-steel);
  text-align: right;
}

body.agfx-facelift .agfx-assess__bar {
  height: 9px;
  background: var(--agfx-rule);
  overflow: hidden;
}

body.agfx-facelift .agfx-assess__bar i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--agfx-red-dark), var(--agfx-red));
  transition: width 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.agfx-facelift .agfx-assess__gap {
  margin: 0 0 1.4rem;
  padding: 1.1rem 1.25rem;
  border: 1px solid var(--agfx-rule);
  border-left: 4px solid var(--agfx-red);
  background: var(--agfx-paper);
}

body.agfx-facelift .agfx-assess__gap strong {
  display: block;
  margin-bottom: 0.3rem;
  color: var(--agfx-red-dark);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 0.8rem;
}

body.agfx-facelift .agfx-assess__gap p {
  margin: 0;
  font-size: 0.94rem;
  line-height: 1.6;
}

@media (max-width: 640px) {
body.agfx-facelift .agfx-assess__panel {
    max-height: 96vh;
  }

body.agfx-facelift .agfx-assess__catrow {
    grid-template-columns: 1fr 44px;
  }

body.agfx-facelift .agfx-assess__catrow span {
    grid-column: 1 / -1;
  }

}

@media (prefers-reduced-motion: reduce) {
body.agfx-facelift .agfx-assess,
  body.agfx-facelift .agfx-assess__panel,
  body.agfx-facelift .agfx-assess__stage--in .agfx-assess__question,
  body.agfx-facelift .agfx-assess__stage--in .agfx-assess__options {
    animation: none;
  }

}

body.agfx-facelift .agfx-assess[hidden] {
  display: none;
}

body.agfx-facelift .agfx-assess__panel :where(h2, h3) {
  color: var(--agfx-ink) !important;
}

body.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, .agfx-button):not(.agfx-button--secondary),
body.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift.agfx-facelift :where(.elementor-button, .roll-button, .wp-block-button__link, .agfx-button):not(.agfx-button--secondary) :where(span, .elementor-button-text, .elementor-button-content-wrapper, i) {
  color: #fff !important;
}


/* Client-ordered homepage removals (2026-07-23). */
body.agfx-facelift .agfx-removed {
  display: none !important;
}

/* FAQ red button in the top banner (replaces Schedule a Consult). */
body.agfx-facelift.agfx-faq-cta .shfb-component-button,
body.agfx-facelift.agfx-faq-cta .shfb-component-button2 {
  display: none !important;
}

body.agfx-facelift #primary-menu > li.agfx-nav-faq-btn {
  display: flex;
  align-items: center;
  margin-left: 18px;
}

body.agfx-facelift #primary-menu > li.agfx-nav-faq-btn > a {
  padding: 0.7rem 1.5rem !important;
  border: 1px solid #fff;
  border-radius: 4px;
  background: linear-gradient(rgb(0, 0, 0) 0%, rgb(204, 0, 0) 100%);
  color: #fff !important;
  font-style: italic;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none !important;
}

body.agfx-facelift #primary-menu > li.agfx-nav-faq-btn > a:hover {
  filter: brightness(1.12);
  color: #fff !important;
}

/* ===== Regulatory Compliance section (home) — content verbatim from Arc
   Guard's Compliance Standards Reference Sheet. ===== */
body.agfx-facelift .agfx-compliance {
  padding: clamp(3.25rem, 7vw, 5.5rem) clamp(1.1rem, 5vw, 3rem);
  background: radial-gradient(120% 100% at 50% 0%, #17140f 0%, #0b0a09 70%);
}

body.agfx-facelift .agfx-compliance__inner {
  max-width: 1120px;
  margin: 0 auto;
}

body.agfx-facelift .agfx-compliance__head {
  text-align: center;
  max-width: 760px;
  margin: 0 auto 2.4rem;
}

body.agfx-facelift .agfx-compliance__eyebrow {
  margin: 0 0 0.6rem;
  color: var(--agfx-red);
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

body.agfx-facelift .agfx-compliance__head h2 {
  margin: 0;
  color: #f6f1e7;
  font-size: clamp(1.9rem, 4.2vw, 3rem);
  line-height: 1.05;
}

body.agfx-facelift .agfx-compliance__sub {
  margin: 0.35rem 0 1.1rem;
  color: var(--agfx-red);
  font-size: clamp(1.1rem, 2.4vw, 1.5rem);
  font-weight: 640;
  font-style: italic;
}

body.agfx-facelift .agfx-compliance__intro {
  margin: 0;
  color: rgba(244, 239, 229, 0.82);
  font-size: 1.02rem;
  line-height: 1.6;
}

body.agfx-facelift .agfx-compliance__rail {
  display: flex;
  align-items: stretch;
  gap: 0.6rem;
}

body.agfx-facelift .agfx-compliance__arrow {
  flex: 0 0 auto;
  width: 44px;
  border: 1px solid rgba(244, 239, 229, 0.35);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.04);
  color: #f4efe5;
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}

body.agfx-facelift .agfx-compliance__arrow:hover {
  background: rgba(204, 0, 0, 0.9);
  border-color: var(--agfx-red);
}

body.agfx-facelift .agfx-compliance__track {
  display: flex;
  gap: 0.9rem;
  overflow-x: auto;
  /* Cap the desktop track so the carousel reads as a focused component and the
     active card actually centers (a full-width row can't). */
  max-width: 920px;
  margin-inline: auto;
  padding: 0.4rem 0.2rem 1rem;
  scrollbar-width: thin;
  scroll-behavior: smooth;
}

body.agfx-facelift .agfx-compliance__card {
  flex: 0 0 auto;
  width: clamp(210px, 24vw, 250px);
  scroll-snap-align: center;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  padding: 1.25rem 1.15rem;
  border: 1px solid rgba(244, 239, 229, 0.16);
  border-radius: 10px;
  background: #f7f3ea;
  color: var(--agfx-ink);
  text-align: left;
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

body.agfx-facelift .agfx-compliance__card:hover {
  transform: translateY(-3px);
}

body.agfx-facelift .agfx-compliance__card[aria-selected="true"] {
  border-color: var(--agfx-red);
  box-shadow: 0 0 0 2px var(--agfx-red), 0 18px 40px -22px rgba(0, 0, 0, 0.9);
}

body.agfx-facelift .agfx-compliance__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: linear-gradient(rgb(0, 0, 0) 0%, rgb(204, 0, 0) 100%);
  color: #fff;
  font-weight: 720;
  font-size: 0.92rem;
}

body.agfx-facelift .agfx-compliance__code {
  color: var(--agfx-red);
  font-weight: 740;
  font-size: 0.9rem;
  line-height: 1.25;
}

body.agfx-facelift .agfx-compliance__title {
  color: #2a2a2a;
  font-size: 0.95rem;
  line-height: 1.3;
}

body.agfx-facelift .agfx-compliance__detail {
  margin-top: 1.4rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem 2.25rem;
  padding: 1.75rem clamp(1.25rem, 3vw, 2.25rem);
  border: 1px solid rgba(244, 239, 229, 0.16);
  border-left: 4px solid var(--agfx-red);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.03);
}

body.agfx-facelift .agfx-compliance__detailcode {
  grid-column: 1 / -1;
  color: #f6f1e7;
  font-size: 1.15rem;
  font-weight: 720;
}

body.agfx-facelift .agfx-compliance__block h3 {
  margin: 0 0 0.5rem;
  color: var(--agfx-red);
  font-size: 0.82rem;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.agfx-facelift .agfx-compliance__block p {
  margin: 0;
  color: rgba(244, 239, 229, 0.86);
  font-size: 0.98rem;
  line-height: 1.55;
}

body.agfx-facelift .agfx-compliance__std {
  font-style: italic;
}

body.agfx-facelift .agfx-compliance__cta {
  justify-content: center;
  margin-top: 1.9rem;
}

body.agfx-facelift .agfx-compliance__cta .agfx-button {
  display: inline-block;
}

body.agfx-facelift .agfx-compliance__disclaimer {
  margin: 1.5rem auto 0;
  max-width: 780px;
  text-align: center;
  color: rgba(244, 239, 229, 0.5);
  font-size: 0.82rem;
  line-height: 1.55;
}

@media (max-width: 767px) {
  body.agfx-facelift .agfx-compliance__detail {
    grid-template-columns: 1fr;
  }

  /* Overlay the arrows on the track edges so they don't eat the track width;
     the card then fits with a clean peek and centers after an arrow tap. */
  body.agfx-facelift .agfx-compliance {
    padding-inline: 0.75rem;
  }

  body.agfx-facelift .agfx-compliance__rail {
    position: relative;
  }

  body.agfx-facelift .agfx-compliance__track {
    width: 100%;
  }

  body.agfx-facelift .agfx-compliance__arrow {
    position: absolute;
    top: 38%;
    z-index: 3;
    width: 34px;
    height: 48px;
    font-size: 1.2rem;
    background: rgba(0, 0, 0, 0.55);
  }

  body.agfx-facelift .agfx-compliance__arrow[data-dir="-1"] {
    left: 0;
  }

  body.agfx-facelift .agfx-compliance__arrow[data-dir="1"] {
    right: 0;
  }

  body.agfx-facelift .agfx-compliance__card {
    width: 72vw;
    max-width: 280px;
  }
}

/* ===== Adversarial layout-audit fixes (2026-07-21) ===== */

/* Resources content block was flush-left above 1280px, leaving a black
   gutter down the right side of wide screens. */
body.agfx-facelift.agfx-page-resources .content-area {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  float: none !important;
}

/* Desktop nav wrapped to a second row between 1025-1340px (7 items + CTA).
   Compress type and spacing in exactly that band. */
@media (min-width: 1025px) and (max-width: 1340px) {
  body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
    font-size: 0.78rem;
    letter-spacing: 0;
  }

  body.agfx-facelift .shfb-header #primary-menu > li {
    margin-right: 10px !important;
  }

  body.agfx-facelift #primary-menu > li > a {
    padding-inline: 0.3rem !important;
  }

  body.agfx-facelift .shfb-component-button .button {
    padding: 0.7rem 0.8rem !important;
    font-size: 0.7rem !important;
  }
}

@media (min-width: 1025px) and (max-width: 1120px) {
  body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
    font-size: 0.73rem;
  }

  body.agfx-facelift .shfb-header #primary-menu > li {
    margin-right: 6px !important;
  }

  body.agfx-facelift .shfb-header .site-logo {
    width: 96px !important;
  }
}

/* Home: the paragraph block under the centered presentation video sat
   left-anchored in its wide container — center it under the video. */
body.agfx-facelift.agfx-page-home .elementor-element-156a7ec p,
body.agfx-facelift.agfx-page-home .elementor-element-156a7ec .e-paragraph-base {
  margin-inline: auto !important;
}

/* The sticky header's theme border paints a solid #f2eeee hairline across
   every page; keep the intended subtle rule instead. */
body.agfx-facelift .shfb-row-wrapper.shfb-main_header_row {
  border-bottom-color: rgba(244, 239, 229, 0.16) !important;
}

/* Cream page-background stripes leaked through 1-9px seams between dark
   sections; paint the wrappers behind sections dark (visible surfaces all
   carry their own backgrounds). */
body.agfx-facelift #content,
body.agfx-facelift .content-wrapper {
  background-color: #11100f;
}

/* iPhone: the inset dark intro container under the hero rendered at 343px
   with a stepped notch — full-bleed it like every other dark section. */
@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home .elementor-element-2405bdd {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }
}

/* Mobile offcanvas menu: the header CTA doesn't exist on phones in the
   native theme — surface the same "Schedule a Consult" button at the top of
   the menu. */
body.agfx-facelift .sydney-offcanvas-menu .agfx-offcanvas-consult {
  display: block;
  margin: 0.9rem 1.1rem;
  text-align: center;
}

/* The off-canvas FAQ clone inherits the desktop CTA's 18px left offset.
   Remove it so the button edges align with the menu items above. */
body.agfx-facelift .sydney-offcanvas-menu #primary-menu > li.agfx-nav-faq-btn {
  margin-left: 0 !important;
}

/* Sub-pixel seams between adjacent top-level sections let the page base show
   through as cream hairlines on the dark design; overlap neighbors by 2px. */
body.agfx-facelift .elementor > :where(.e-con, .elementor-section) + :where(.e-con, .elementor-section) {
  margin-top: -2px !important;
}

/* Tap-to-unmute affordance over autoplaying muted videos (touch devices).
   Sits top-center so it never covers the native transport controls. */
body.agfx-facelift .agfx-video-holder {
  position: relative;
}

body.agfx-facelift .agfx-unmute {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 6;
  padding: 0.5rem 0.95rem;
  border: 1px solid rgba(255, 255, 255, 0.9);
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.62);
  color: #fff;
  font-size: 0.82rem;
  font-weight: 640;
  letter-spacing: 0.03em;
  white-space: nowrap;
  cursor: pointer;
}

/* Home, phones/tablets: flat hero-video → black transition. The cream boxed
   section after the hero exposed a margin band and an inset black stack that
   stepped up above its parent ("spike"). */
@media (max-width: 1024px) {
  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e {
    margin-top: 0 !important;
    background-color: #000 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-2405bdd {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
}

/* "For Safety, Operations & Maintenance" on ONE line on phones, with tighter
   word spacing (Corban's annotated screenshot). */
@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home h3[data-id="18ebef7"],
  body.agfx-facelift.agfx-page-home h3[data-id="4ba2310"] {
    max-width: 100%;
    height: auto !important;
    min-height: 0 !important;
    white-space: nowrap;
    font-size: clamp(12px, 3.9vw, 1.9rem) !important;
    line-height: 1.25 !important;
    letter-spacing: -0.01em !important;
    word-spacing: normal !important;
  }
}

/* Client 2026-07-21: "take off one of the how it works" — the generic
   eyebrow duplicates the booklet's own "HOW ARC GUARD™ WORKS" title right
   below it. Hidden here; Corban should delete the widget in WordPress. */
body.agfx-facelift.agfx-page-home .elementor-element-94beee6 {
  display: none !important;
}

/* Industries cards: the icon-box title widgets carry a fixed Elementor
   height, leaving ~100px of dead space above "Hazard(s):" — let them size to
   their content and tighten the rhythm. */
body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-widget-icon-box {
  height: auto !important;
  min-height: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 12px !important;
}

body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-icon-box-description {
  margin-bottom: 0.35rem;
}

/* Injected sections and in-page anchors clear the sticky header on jump. */
body.agfx-facelift .agfx-compliance,
body.agfx-facelift [id] {
  scroll-margin-top: 110px;
}

/* ============================================================
   Round 5 — client change list 2026-07-24 (facelift-scale)
   ============================================================ */

/* HOME — compliance eyebrow box was width-constrained (~611px) and left-
   aligned, shifting it ~74px left of the H2. Force full-width + centered. */
body.agfx-facelift .agfx-compliance__head .agfx-compliance__eyebrow,
body.agfx-facelift .agfx-compliance__head .agfx-compliance__sub {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  text-align: center !important;
}

/* Center any browser-rendered video captions within the frame. */
body.agfx-facelift video::cue {
  text-align: center;
  background: rgba(0, 0, 0, 0.55);
}

/* Reduce homepage spacing (shorten page length without hurting layout). */
body.agfx-facelift .agfx-compliance {
  padding-top: clamp(2.25rem, 4.5vw, 3.5rem);
  padding-bottom: clamp(2.25rem, 4.5vw, 3.5rem);
}
body.agfx-facelift .agfx-compliance__head {
  margin-bottom: 1.6rem;
}

/* Hero paragraphs full-width on phones (2nd paragraph "boxy" fix). */
@media (max-width: 767px) {
  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e p {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
  }
}

/* INDUSTRIES — the three "Who We Serve" cards are equalized in JS
   (equalizeIndustryCards) since they're grid items of uneven natural height;
   this just keeps a soft card surface so equal heights read as intentional. */
body.agfx-facelift.agfx-page-industries :where(
  .elementor-element-1a1a459,
  .elementor-element-d8a4806,
  .elementor-element-cb78708) {
  align-self: stretch !important;
}

/* INDUSTRIES — Construction & Mission Critical detail section to black to
   match Oil & Gas and Industrial & Manufacturing. */
body.agfx-facelift.agfx-page-industries .elementor-element-748a353,
body.agfx-facelift.agfx-page-industries .elementor-element-748a353 .e-con,
body.agfx-facelift.agfx-page-industries .elementor-element-748a353 .e-con-inner,
body.agfx-facelift.agfx-page-industries .elementor-element-748a353 .elementor-widget-wrap {
  background-color: #11100f !important;
}
/* All Construction-section text turns light to match the Oil & Gas / Industrial
   black sections (matching specificity to the cream-section rule above; the
   red-gradient "Schedule a Consult" button keeps its own white via its rules). */
body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-748a353 :is(h1, h2, h3, h4, h5, h6, p, ul, ol, li, strong, span) {
  color: #f4efe5 !important;
}

/* ABOUT — darken the near-invisible cream-on-cream page title; tighten the
   large gap between the page header and "Who We Are". */
body.agfx-facelift.agfx-page-about .page-header .agfx-original-title,
body.agfx-facelift.agfx-page-about .entry-header .agfx-original-title,
body.agfx-facelift.agfx-page-about .page-header :where(h1, h2),
body.agfx-facelift.agfx-page-about .entry-header :where(h1, h2) {
  color: #14110d !important;
}
body.agfx-facelift.agfx-page-about .page-header,
body.agfx-facelift.agfx-page-about .entry-header {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.agfx-facelift.agfx-page-about .elementor-14346 > :where(.e-con, .elementor-section):first-child {
  padding-top: 1.25rem !important;
}

/* CONTACT — remove the empty black band above the logo/headline (native 102px
   top margin on the logo widget) and shrink the tall map. */
body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 {
  padding-top: 1.5rem !important;
}
body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 {
  margin-top: 0 !important;
}
body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5),
body.agfx-facelift.agfx-page-contact :where(.elementor-element-aff048a, .elementor-element-f9941b5) iframe {
  height: clamp(190px, 18vw, 240px) !important;
  min-height: clamp(190px, 18vw, 240px) !important;
  max-height: 240px !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-aff048a {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
  background: #0b0b0b !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-f9941b5,
body.agfx-facelift.agfx-page-contact .elementor-element-f9941b5 .elementor-custom-embed {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  line-height: 0 !important;
  background: #0b0b0b !important;
}

/* ============================================================
   Final client edits — 2026-07-29 (staging only)
   ============================================================ */

/* TOP HEADER — increase every main page-navigation title while preserving a
   single row through the client's minimized-window desktop widths. */
body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
  font-size: 1rem !important;
}

@media (min-width: 1025px) and (max-width: 1340px) {
  body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
    font-size: 0.86rem !important;
  }

  body.agfx-facelift .shfb-header #primary-menu > li {
    margin-right: 6px !important;
  }

  body.agfx-facelift #primary-menu > li.agfx-nav-faq-btn {
    margin-left: 6px;
  }

  body.agfx-facelift #primary-menu > li.agfx-nav-faq-btn > a {
    padding-inline: 1rem !important;
  }
}

@media (min-width: 1025px) and (max-width: 1120px) {
  body.agfx-facelift :where(.main-navigation, .shfb-navigation) a:not(.button) {
    font-size: 0.82rem !important;
  }

  body.agfx-facelift .shfb-header #primary-menu > li {
    margin-right: 3px !important;
  }
}

/* HOME — the centered assessment CTA now sits immediately after
   "See how you stack up." and before the explanatory paragraph/cards. */
body.agfx-facelift .agfx-compliance__head .agfx-compliance__cta {
  margin: 0.85rem auto 1.7rem;
}

body.agfx-facelift .agfx-compliance__head .agfx-compliance__cta .agfx-button {
  display: inline-flex;
  margin-inline: auto;
}

/* INDUSTRIES — shorten the page without touching a word: trim the space
   between "Who We Serve" and its cards, then tighten the three detail bands. */
body.agfx-facelift.agfx-page-industries .elementor-element-bd2062a {
  padding-top: clamp(2.25rem, 4vw, 3.5rem) !important;
  padding-bottom: clamp(1.25rem, 2.5vw, 2rem) !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e {
  padding-top: clamp(1.25rem, 2.5vw, 2rem) !important;
  padding-bottom: clamp(2.5rem, 4.5vw, 4rem) !important;
}

/* Elementor leaves an implicit empty second grid row after the three cards,
   producing hundreds of pixels of cream with no content before Oil & Gas. */
body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e > .e-con-inner {
  grid-template-rows: minmax(0, auto) !important;
  grid-auto-rows: auto !important;
  height: auto !important;
  min-height: 0 !important;
}

body.agfx-facelift.agfx-page-industries :where(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) {
  padding-top: clamp(2.25rem, 3.5vw, 3.25rem) !important;
  padding-bottom: clamp(2.25rem, 3.5vw, 3.25rem) !important;
}

/* 2026-08-01 visual hardening: the three Industries detail sections inherit
   Elementor container variables that can collapse their wrappers to inline
   fragments. Normalize the outer surface and rebuild the existing image/text
   pairs as one predictable responsive grid without changing any copy. */
body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) {
  --padding-top: 0px !important;
  --padding-right: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  --overflow: hidden !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  overflow: hidden !important;
  isolation: isolate;
  background-color: var(--agfx-ink) !important;
  background-image: linear-gradient(var(--agfx-ink), var(--agfx-ink)) !important;
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: clamp(1.5rem, 3vw, 2.5rem) !important;
  width: min(100%, 74rem) !important;
  max-width: 74rem !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-41b8041,
  .elementor-element-bb1e0b9,
  .elementor-element-71e05b3) {
  --margin-top: 0px !important;
  --margin-right: 0px !important;
  --margin-bottom: 0px !important;
  --margin-left: 0px !important;
  --padding-top: 0px !important;
  --padding-right: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: clamp(1.5rem, 3vw, 2.5rem) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-827e8d2,
  .elementor-element-8d0ad7e,
  .elementor-element-463a97a) {
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  transform: none !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-6aab40d,
  .elementor-element-fde2816,
  .elementor-element-b3d7a82) {
  --margin-top: 0px !important;
  --margin-right: 0px !important;
  --margin-bottom: 0px !important;
  --margin-left: 0px !important;
  --padding-top: 0px !important;
  --padding-right: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(2rem, 5vw, 4.5rem) !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-1dce004,
  .elementor-element-62a07a3,
  .elementor-element-768e8f0,
  .elementor-element-8f4ca83,
  .elementor-element-7718538,
  .elementor-element-f30d9b2) {
  --margin-top: 0px !important;
  --margin-right: 0px !important;
  --margin-bottom: 0px !important;
  --margin-left: 0px !important;
  --padding-top: 0px !important;
  --padding-right: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-1dce004,
  .elementor-element-62a07a3,
  .elementor-element-768e8f0) {
  display: block !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-8f4ca83,
  .elementor-element-7718538,
  .elementor-element-f30d9b2) {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: 1.5rem !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-8f4ca83,
  .elementor-element-7718538,
  .elementor-element-f30d9b2) :where(
  .elementor-widget-icon-box,
  .elementor-icon-box-wrapper,
  .elementor-icon-box-content,
  .elementor-widget-container) {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) :is(h2, h3, p, li, span) {
  color: var(--agfx-cream) !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-d4e4f07,
  .elementor-element-748a353,
  .elementor-element-953feb9) img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 250px !important;
  max-height: 430px !important;
  aspect-ratio: 16 / 10;
  object-fit: cover !important;
}

body.agfx-facelift.agfx-page-industries :is(
  .elementor-element-503d1b9,
  .elementor-element-6987896,
  .elementor-element-4bd2220) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

@media (max-width: 900px) {
  body.agfx-facelift.agfx-page-industries :is(
    .elementor-element-6aab40d,
    .elementor-element-fde2816,
    .elementor-element-b3d7a82) {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 1.75rem !important;
  }
}

/* ABOUT — remove the entire standalone logo band directly above "Resonate
   with our Story?" and tighten the remaining call-to-action section. */
body.agfx-facelift.agfx-page-about .elementor-element-9bcbf9c {
  display: none !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2 {
  padding-bottom: clamp(1.75rem, 2.5vw, 2.25rem) !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-44900d0b {
  padding-top: clamp(1.575rem, 2.925vw, 2.475rem) !important;
  padding-bottom: clamp(1.575rem, 2.925vw, 2.475rem) !important;
  margin-top: 0 !important;
}

/* 2026-08-01 visual hardening: Elementor's generated container variables can
   resolve these closing Product CTA nodes to `display: inline`. That makes the
   message paint as narrow fragments at the left edge while the section's
   source cream background shows through. Give the CTA one explicit layout and
   paint surface at every viewport width. */
body.agfx-facelift.agfx-page-product .elementor-element-27d67cc {
  --padding-top: 0px !important;
  --padding-right: 0px !important;
  --padding-bottom: 0px !important;
  --padding-left: 0px !important;
  --overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  isolation: isolate;
  background-color: var(--agfx-ink) !important;
  background-image: linear-gradient(var(--agfx-ink), var(--agfx-ink)) !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-27d67cc > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: clamp(1.5rem, 3vw, 2.5rem) !important;
  width: min(100%, 72rem) !important;
  max-width: 72rem !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-product :where(
  .elementor-element-90975b7,
  .elementor-element-07ed396,
  .elementor-element-731fd5c,
  .elementor-element-5244640) {
  position: static !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  transform: none !important;
  background: transparent !important;
}

body.agfx-facelift.agfx-page-product .elementor-element-07ed396 .elementor-heading-title {
  width: 100% !important;
  max-width: 58ch !important;
  margin: 0 auto !important;
  color: var(--agfx-cream) !important;
  text-align: center !important;
  text-wrap: balance;
}

body.agfx-facelift.agfx-page-product .elementor-element-5244640 .elementor-button {
  margin-inline: auto !important;
}

/* The About Mission container exhibited a Chromium/Elementor paint gap in its
   lower padding corner at large desktop widths. A dedicated inset paint layer
   keeps the entire section dark while preserving the existing content grid. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2 {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate;
  background-color: var(--agfx-ink) !important;
  background-image: linear-gradient(var(--agfx-ink), var(--agfx-ink)) !important;
}

/* The section itself owns the dark paint. A redundant full-cover pseudo-layer
   produced a 56px black corner beyond the Mission seam in mobile Safari. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2::before {
  content: none !important;
  display: none !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-2d3ac6a2 > * {
  position: relative;
  z-index: 1;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-174785ce {
  order: 0 !important;
  grid-column: 1 !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-351d0abe {
  order: 1 !important;
  grid-column: 2 !important;
}

@media (max-width: 900px) {
  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-174785ce,
  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-351d0abe {
    grid-column: 1 !important;
  }

  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-351d0abe {
    order: 0 !important;
  }

  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-174785ce {
    order: 1 !important;
  }
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa {
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-253bda3 {
  margin-top: 0 !important;
}

/* CONTACT — reduced logo plus a wide sentence-case message and centered CTA. */
body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.36fr) minmax(0, 0.64fr);
  gap: clamp(2rem, 5vw, 5rem);
  align-items: center !important;
  padding-top: clamp(2.5rem, 5vw, 4.5rem) !important;
  padding-bottom: clamp(2.5rem, 5vw, 4.5rem) !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 > :where(
  .elementor-element-a7bc327,
  .elementor-element-2ef30fd) {
  --width: 100%;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1,
body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 .elementor-widget-container {
  display: flex;
  justify-content: center;
  width: 100% !important;
  padding: 0 !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 img {
  width: min(100%, 300px) !important;
  max-width: 300px !important;
  height: auto !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-2ef30fd,
body.agfx-facelift.agfx-page-contact .elementor-element-49cdf40 {
  align-items: stretch !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-49cdf40 {
  display: flex !important;
  flex-direction: column !important;
}

body.agfx-facelift.agfx-page-contact :where(
  .elementor-element-578202f,
  .elementor-element-de40947,
  .elementor-element-9edcd5c) {
  --width: 100%;
  flex: 0 0 auto !important;
  align-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-578202f .elementor-heading-title {
  max-width: none;
  color: var(--agfx-cream) !important;
  font-size: clamp(1.75rem, 3vw, 3rem) !important;
  line-height: 1.1;
  text-align: center !important;
  text-transform: none !important;
  text-wrap: balance;
}

body.agfx-facelift.agfx-page-contact .elementor-element-de40947 {
  margin-top: 1.25rem !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-de40947 .elementor-heading-title {
  color: var(--agfx-cream) !important;
  font-size: clamp(1.05rem, 1.6vw, 1.35rem) !important;
  font-weight: 500 !important;
  line-height: 1.55;
  text-align: center !important;
  text-transform: none !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c {
  display: flex !important;
  justify-content: center !important;
  margin-top: 1.75rem !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c .elementor-button {
  display: flex !important;
  width: min(100%, 250px);
  max-width: 100%;
  min-width: 230px;
  margin-inline: auto;
  justify-content: center;
  white-space: nowrap;
}

/* The requested form replaces Justin's visible contact strip. The original
   strip stays in the DOM for instant rollback; the map remains immediately
   below this new panel. */
body.agfx-facelift.agfx-page-contact .agfx-contact-source-hidden {
  display: none !important;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-panel {
  padding: clamp(3.5rem, 7vw, 6rem) clamp(1.25rem, 6vw, 5rem);
  background: var(--agfx-cream);
  color: var(--agfx-ink);
}

body.agfx-facelift.agfx-page-contact .agfx-contact-panel__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, 0.75fr);
  gap: clamp(2.5rem, 6vw, 6rem);
  width: min(100%, 1180px);
  margin-inline: auto;
  align-items: start;
}

body.agfx-facelift.agfx-page-contact :where(
  .agfx-contact-form__eyebrow,
  .agfx-contact-details__eyebrow) {
  margin: 0 0 0.65rem;
  color: var(--agfx-red-dark);
  font-size: 0.78rem;
  font-weight: 760;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form-wrap > h2 {
  margin: 0 0 1.75rem;
  color: var(--agfx-ink);
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.05;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.1rem 1.25rem;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form label {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  color: var(--agfx-ink);
  font-size: 0.82rem;
  font-weight: 720;
  letter-spacing: 0.03em;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form__full {
  grid-column: 1 / -1;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form :where(input, textarea) {
  width: 100%;
  min-height: 50px;
  margin: 0;
  padding: 0.8rem 0.9rem;
  border: 1px solid rgba(17, 16, 15, 0.28);
  border-radius: 3px;
  background: #fff;
  color: var(--agfx-ink);
  font: inherit;
  font-size: 1rem;
  line-height: 1.4;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form textarea {
  min-height: 150px;
  resize: vertical;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form :where(input, textarea):focus {
  border-color: var(--agfx-red);
  outline: 3px solid rgba(178, 24, 28, 0.18);
  outline-offset: 1px;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form__trap {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form__actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 1.5rem;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-form__status {
  margin: 0;
  color: var(--agfx-ink);
  font-size: 0.92rem;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-details {
  display: grid;
  gap: 2.5rem;
  padding: clamp(1.5rem, 3vw, 2.25rem);
  border-top: 4px solid var(--agfx-red);
  background: var(--agfx-paper);
}

body.agfx-facelift.agfx-page-contact .agfx-contact-details address {
  color: var(--agfx-ink);
  font-size: 1.05rem;
  font-style: normal;
  line-height: 1.7;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-social {
  text-align: center;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-social h2 {
  margin: 0 0 1.25rem;
  color: var(--agfx-ink);
  font-size: clamp(1.25rem, 2.4vw, 1.7rem);
  line-height: 1.2;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-social__links {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-social__links a {
  display: inline-flex;
  width: 52px;
  height: 52px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--agfx-red);
  border-radius: 50%;
  background: var(--agfx-ink);
  color: #fff !important;
  font-size: 1.35rem;
  text-decoration: none;
  transition: transform 160ms ease, background-color 160ms ease;
}

body.agfx-facelift.agfx-page-contact .agfx-contact-social__links a:hover {
  transform: translateY(-2px);
  background: var(--agfx-red-dark);
}

@media (max-width: 900px) {
  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1,
  body.agfx-facelift.agfx-page-contact .agfx-contact-panel__inner {
    grid-template-columns: 1fr !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 img {
    width: min(48vw, 175px) !important;
  }

  body.agfx-facelift.agfx-page-contact :where(
    .elementor-element-578202f .elementor-heading-title,
    .elementor-element-de40947 .elementor-heading-title) {
    text-align: center !important;
  }
}

@media (max-width: 600px) {
  body.agfx-facelift.agfx-page-contact .agfx-contact-form__grid {
    grid-template-columns: 1fr;
  }

  body.agfx-facelift.agfx-page-contact .agfx-contact-form__full {
    grid-column: auto;
  }

  body.agfx-facelift.agfx-page-contact .agfx-contact-form__actions {
    align-items: stretch;
    flex-direction: column;
  }

  body.agfx-facelift.agfx-page-contact .agfx-contact-form__actions .agfx-button {
    width: 100%;
  }
}

/* Final phone-only spacing pass from the annotated mobile review.
   Keep tablet/desktop geometry unchanged. */
@media (max-width: 767px) {
  /* HOME — remove inherited Elementor height/padding between the hero video,
     the intro headline, and the problem cards. */
  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e {
    padding: 2rem 1.25rem 2.5rem !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-8b16c9e > .e-con-inner {
    padding: 0 !important;
    gap: 0 !important;
  }

  body.agfx-facelift.agfx-page-home :where(
    .elementor-element-2405bdd,
    .elementor-element-1ffdab6,
    .elementor-element-36b331e) {
    min-height: 0 !important;
    margin: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-2405bdd {
    padding: 0 !important;
    gap: 0 !important;
  }

  body.agfx-facelift.agfx-page-home :where(
    .elementor-element-1ffdab6,
    .elementor-element-36b331e) {
    padding: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-36b331e {
    gap: 1.25rem !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-4487355 {
    margin: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-269eae5 {
    margin: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-156a7ec {
    margin: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-dc6600f {
    padding: 2.5rem 1.25rem 1rem !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 {
    padding: 0 1.25rem 2.5rem !important;
  }

  /* CONTACT — retain the requested logo/copy arrangement with a denser phone
     composition and a centered, non-wrapping CTA. */
  body.agfx-facelift.agfx-page-contact .elementor-element-898bff1 {
    gap: 1.25rem !important;
    padding: 1.75rem 1.25rem 2.25rem !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-a7bc327 {
    padding: 0 !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 {
    width: min(58vw, 220px) !important;
    padding: 1rem !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-4bba9d1 img {
    width: min(42vw, 150px) !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-49cdf40 {
    padding: 0 !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-578202f .elementor-heading-title {
    font-size: clamp(1.85rem, 8.5vw, 2.25rem) !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-de40947 {
    margin-top: 0.9rem !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-de40947 .elementor-heading-title {
    font-size: 1rem !important;
    line-height: 1.45 !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c {
    margin-top: 1.25rem !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-element-9edcd5c .elementor-button {
    width: min(100%, 250px) !important;
    min-width: 0 !important;
  }

  /* ABOUT + shared bottom banners — eliminate padded black bands around the
     banner artwork and the theme's trailing 100px page pad on phones. */
  body.agfx-facelift.agfx-page-about #content {
    padding-bottom: 0 !important;
  }

  body.agfx-facelift.agfx-page-about .entry-footer {
    margin-top: 0 !important;
  }

  body.agfx-facelift :where(
    .elementor-element-15985c7,
    .elementor-element-23097aa,
    .elementor-element-990cc9e,
    .elementor-element-1c2518a) {
    display: block !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    background: #000 !important;
  }

  body.agfx-facelift :where(
    .elementor-element-15985c7,
    .elementor-element-23097aa,
    .elementor-element-990cc9e,
    .elementor-element-1c2518a) .elementor-widget-image,
  body.agfx-facelift :where(
    .elementor-element-15985c7,
    .elementor-element-23097aa,
    .elementor-element-990cc9e,
    .elementor-element-1c2518a) .elementor-widget-container {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  body.agfx-facelift :where(
    .elementor-element-15985c7,
    .elementor-element-23097aa,
    .elementor-element-990cc9e,
    .elementor-element-1c2518a) img {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-element-385c98b {
    display: none !important;
  }

  /* Specificity guards for source rules that include Elementor page IDs. */
  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-8b16c9e {
    padding: 2rem 1.25rem 2.5rem !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-dc6600f {
    padding: 2.5rem 1.25rem 1rem !important;
  }

  body.agfx-facelift.agfx-page-home .elementor-14043 > .elementor-element-c4d87b7 {
    padding: 0 1.25rem 2.5rem !important;
  }

  body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-898bff1 .elementor-element-4bba9d1 {
    width: min(58vw, 220px) !important;
    padding: 1rem !important;
  }

  body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-23097aa,
  body.agfx-facelift.agfx-page-home .elementor-14043 .elementor-element-15985c7,
  body.agfx-facelift.agfx-page-industries .elementor-556 .elementor-element-990cc9e,
  body.agfx-facelift.agfx-page-contact .elementor-553 .elementor-element-1c2518a {
    display: block !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Final audited cascade guards. Keep this block at EOF. */
body.agfx-facelift.agfx-page-about #content,
body.agfx-facelift.agfx-page-about #primary,
body.agfx-facelift.agfx-page-about .entry-footer {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  background: #000 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) :where(.elementor-widget-image, .elementor-widget-container) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

body.agfx-facelift :where(
  .elementor-element-15985c7,
  .elementor-element-23097aa,
  .elementor-element-990cc9e,
  .elementor-element-1c2518a) img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"]) {
  position: static !important;
  display: block !important;
  width: 100% !important;
  margin: 1rem 0 0.65rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--agfx-red) !important;
  text-align: center !important;
  transform: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"])::before,
body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e :is(
  h4[data-interaction-id="753f865"],
  h4[data-interaction-id="56545c3"],
  h4[data-interaction-id="3394f1e"])::after {
  display: none !important;
  content: none !important;
}

body.agfx-facelift.agfx-page-industries .elementor-element-86aa59e img {
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-762c5d8,
body.agfx-facelift.agfx-page-about .elementor-element-762c5d8 h3 {
  width: 100% !important;
  margin-inline: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-about .elementor-element-adce7d2 h3 {
  width: min(100%, 54ch) !important;
  margin-inline: 0 !important;
  text-align: center !important;
}

body.agfx-facelift.agfx-page-about :where(.elementor-element-762c5d8, .elementor-element-adce7d2) h3::after {
  margin-inline: auto !important;
}

/* Host-independent final guard for the client-approved Story CTA. */
body.agfx-facelift.agfx-page-about .elementor-14346 .elementor-element-44900d0b .elementor-button {
  background-color: #c00000 !important;
  background-image: linear-gradient(rgb(227, 8, 8) 0%, rgb(192, 0, 0) 55%, rgb(122, 2, 2) 100%) !important;
  color: #fff !important;
}

/* HOME — "THE PROBLEM" red rule: close the 1px step at the column boundary.
   The right-hand card of the first row (fe2a038) carries a native Elementor
   `margin: -1px` on all four sides. The negative TOP margin lifted it a pixel
   above its sibling, so its half of the shared 2px red border-top drew one row
   higher — reading as a break in the middle of the line, exactly as the client
   reported. Its siblings all use margin 0 and sit flush with no horizontal
   seam, so matching them is the fix; nothing depended on the negative inline
   margins. Measured in real Chrome: tops 114.578 vs 115.578 before, equal after. */
body.agfx-facelift.agfx-page-home .elementor-element-c4d87b7 .elementor-element-fe2a038 {
  margin: 0 !important;
}

/* HOME CTA BAND — kill the staircase in the left column. Native Elementor
   margins left the three elements on three different left edges at >=1280:
   heading 110 (margin-left 20px), paragraph 93 (margin 3px), button 75
   (margin-left -15px) against a column starting at 80 — so the button hung 5px
   OUTSIDE its own column. The right column was already flush at 750/750/750.
   Also zero the stray 8.84px top margin that left the two buttons 5px out of
   vertical alignment. Same stray-native-margin family as the red-rule step. */
body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 .elementor-widget {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 .elementor-widget-button {
  margin-top: 0 !important;
}

@media (max-width: 767px) {
  /* COMPLIANCE CAROUSEL — take the arrows off the cards. They were
     position:absolute over the track with a 55%-black scrim, covering ~69px of
     each adjacent card's code and title. Since the 2026-08-21 reorder this is
     the second thing a phone visitor sees, so the overlap is far more exposed.
     Lay the track full width, then the arrows centred beneath it. 44px also
     brings them up to an accessible tap target. */
  body.agfx-facelift .agfx-compliance__rail {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 0.75rem !important;
  }

  body.agfx-facelift .agfx-compliance__track {
    order: 1 !important;
    flex: 1 0 100% !important;
    width: 100% !important;
  }

  body.agfx-facelift .agfx-compliance__arrow {
    order: 2 !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 44px !important;
    height: 44px !important;
    background: rgba(255, 255, 255, 0.12) !important;
  }
}

/* The staircase above lives on the Elementor ATOMIC elements, not the widget
   wrappers: h3.e-heading-base carries margin-left:20px and p.e-paragraph-base
   carries margin-left:3px, so zeroing .elementor-widget margins alone left the
   column edges at 110/93/90. Flatten the atomics too. */
body.agfx-facelift.agfx-page-home .elementor-element-ffcb8a8 :is(.e-heading-base, .e-paragraph-base) {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
