/* Industries overview: isolated to the page template. */
.page-template-page-industries { --ind-red:var(--c-brand); --ind-navy:#111a2a; --ind-ink:#131c2b; --ind-muted:#697487; --ind-line:#e1e7ed; --ind-pale:#f4f7fa; }
.page-template-page-industries .industries-overview { overflow:hidden; color:var(--ind-ink); background:#fff; }
.page-template-page-industries .industries-shell { width:min(calc(100% - 40px), 1680px); margin-inline:auto; }
.page-template-page-industries .industries-breadcrumb { border-bottom:1px solid #edf0f3; background:#fff; }
.page-template-page-industries .industries-breadcrumb ol { display:flex; gap:10px; margin:0; padding:17px 0; list-style:none; color:#9ba4b0; font-size:var(--font-size-caption); }
.page-template-page-industries .industries-breadcrumb li+li::before { content:'›'; margin-right:10px; color:#c0c7cf; }
.page-template-page-industries .industries-breadcrumb a:hover { color:var(--ind-red); }
.page-template-page-industries .industries-hero { position:relative; padding:70px 0 112px; background:#f3f7fa; isolation:isolate; }
.page-template-page-industries .industries-hero__orb { position:absolute; z-index:-1; top:-155px; right:-120px; width:560px; aspect-ratio:1; border-radius:50%; background:#fff0f2; }
.page-template-page-industries .industries-hero__grid { display:grid; grid-template-columns:minmax(0, .98fr) minmax(0, 1.02fr); align-items:center; gap:clamp(48px,6vw,110px); }
.page-template-page-industries .industries-kicker { display:flex; align-items:center; gap:11px; margin:0 0 26px; color:var(--ind-red); font-size:var(--font-size-caption); font-weight:var(--font-weight-heading); line-height:var(--line-height-heading); letter-spacing:.015em; text-transform:uppercase; }
.page-template-page-industries .industries-kicker::before { content:''; width:27px; height:3px; background:currentColor; }
.page-template-page-industries .industries-hero h1 { max-width:790px; margin:0; color:var(--ind-ink); font-size: var(--font-size-display); font-weight:var(--font-weight-heading); line-height:var(--line-height-display); letter-spacing:-.052em; }
.page-template-page-industries .industries-hero__intro { max-width:700px; margin:20px 0 0; color:var(--ind-muted); font-size: var(--font-size-h4); line-height:var(--line-height-base); }
.page-template-page-industries .industries-hero__actions { display:flex; flex-wrap:wrap; gap:16px; margin-top:54px; }
.page-template-page-industries .industries-button { display:inline-flex; min-height:54px; align-items:center; justify-content:center; gap:9px; padding:13px 34px; border:1px solid transparent; border-radius:7px; font-size:var(--font-size-caption); font-weight:var(--font-weight-heading); line-height:var(--line-height-display); transition:color .2s,background .2s,border-color .2s,transform .2s; }
.page-template-page-industries .industries-button svg { transition:transform .2s; }
.page-template-page-industries .industries-button:hover svg { transform:translateX(3px); }
.page-template-page-industries .industries-button:focus-visible,.page-template-page-industries .industry-card__link:focus-visible,.page-template-page-industries .challenge-card:focus-visible { outline:3px solid rgba(242,29,47,.3); outline-offset:3px; }
.page-template-page-industries .industries-button--primary { color:#fff; background:var(--ind-red); }
.page-template-page-industries .industries-button--primary:hover { color:#fff; background:var(--c-brand); transform:translateY(-2px); }
.page-template-page-industries .industries-button--outline { color:var(--ind-red); background:#fff; border-color:var(--ind-red); }
.page-template-page-industries .industries-button--outline:hover { color:#fff; background:var(--ind-red); }
.page-template-page-industries .industries-hero__media { margin:0; overflow:hidden; border-radius:11px; background:#e9edf1; box-shadow:0 18px 38px rgba(23,35,53,.08); }
.page-template-page-industries .industries-hero__image { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.page-template-page-industries .industries-stats-wrap { position:relative; z-index:2; margin-top:-56px; }
.page-template-page-industries .industries-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); margin:0; padding:22px 0; border:1px solid var(--ind-line); border-radius:9px; background:#fff; box-shadow:0 8px 22px rgba(23,35,53,.03); }
.page-template-page-industries .industries-stat { display:flex; align-items:center; gap:16px; min-height:76px; padding:10px 30px; border-left:1px solid #e4e9ee; }
.page-template-page-industries .industries-stat:first-child { border-left:0; }
.page-template-page-industries .industries-stat > span:first-child { display:grid; width:40px; height:40px; flex:0 0 40px; place-items:center; color:var(--ind-red); border-radius:10px; background:#fff0f2; }
.page-template-page-industries .industries-stat > span:first-child svg { width:18px; height:18px; }
.page-template-page-industries .industries-stat > span:first-child,
.page-template-page-industries .industries-stat > span:last-child { margin-top:0; }
.page-template-page-industries .industries-stat > span:last-child { display:flex; min-width:0; flex-direction:column; }
.page-template-page-industries .industries-stat dd { margin:0 0 9px; color:var(--ind-red); font-size:var(--font-size-h2); font-weight:var(--font-weight-heading); line-height:var(--line-height-display); }
.page-template-page-industries .industries-stat dt { color:#687487; font-size:var(--font-size-micro); font-weight:var(--font-weight-heading); letter-spacing:.02em; text-transform:uppercase; }
.page-template-page-industries .industries-stat span { display:block; margin-top:4px; color:#9aa2ae; font-size:var(--font-size-caption); }
.page-template-page-industries .industries-section { padding:90px 0; }
.page-template-page-industries #industry-directory { scroll-margin-top:96px; }
.page-template-page-industries .industries-section__header { margin-bottom:43px; }
.page-template-page-industries .industries-section__header .industries-kicker { margin-bottom:20px; }
.page-template-page-industries .industries-section__header h2 { max-width:1100px; margin:0; color:var(--ind-ink); font-size: var(--font-size-h1); font-weight:var(--font-weight-heading); line-height:var(--line-height-display); letter-spacing:-.045em; }
.page-template-page-industries .industries-section__header > p:last-child:not(.industries-kicker) { max-width:840px; margin:13px 0 0; color:var(--ind-muted); font-size:var(--font-size-body); line-height:var(--line-height-relaxed); }
.page-template-page-industries .industries-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px; }
.page-template-page-industries .industry-card { min-width:0; }
.page-template-page-industries .industry-card__link { display:flex; height:100%; overflow:hidden; flex-direction:column; color:inherit; border:1px solid var(--ind-line); border-radius:9px; background:#fff; box-shadow:2px 3px 0 #edf1f4; transition:transform .22s,border-color .22s,box-shadow .22s; }
.page-template-page-industries .industry-card__link:hover { color:inherit; border-color:rgba(242,29,47,.5); box-shadow:0 10px 28px rgba(22,33,49,.09); transform:translateY(-3px); }
.page-template-page-industries .industry-card__media { margin:0; overflow:hidden; background:#eef2f5; }
.page-template-page-industries .industry-card__image { display:block; width:100%; aspect-ratio:16/9; object-fit:cover; transition:transform .22s; }
.page-template-page-industries .industry-card__link:hover .industry-card__image { transform:scale(1.025); }
.page-template-page-industries .industry-card__body { display:flex; min-height:220px; flex:1; flex-direction:column; align-items:flex-start; padding:22px 24px 21px; }
.page-template-page-industries .industry-card__count { margin-bottom:16px; padding:7px 12px; color:var(--ind-red); border-radius:999px; background:#fff0f2; font-size:var(--font-size-micro); font-weight:var(--font-weight-heading); }
.page-template-page-industries .industry-card__title { margin:0; font-size:var(--font-size-h4); font-weight:var(--font-weight-heading); letter-spacing:-.025em; }
.page-template-page-industries .industry-card__description { margin:12px 0 20px; color:var(--ind-muted); font-size:var(--font-size-caption); line-height:var(--line-height-copy); }
.page-template-page-industries .industry-card__action { display:inline-flex; align-items:center; gap:6px; margin-top:auto; color:var(--ind-red); font-size:var(--font-size-caption); font-weight:var(--font-weight-heading); }
.page-template-page-industries .industry-card__action svg { width:13px; transition:transform .2s; }
.page-template-page-industries .industry-card__link:hover .industry-card__action svg { transform:translateX(3px); }
.page-template-page-industries .industries-empty { padding:35px; border:1px solid var(--ind-line); background:var(--ind-pale); color:var(--ind-muted); }
.page-template-page-industries .industries-challenges { padding-top:25px; }
.page-template-page-industries .challenge-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:17px 22px; }
.page-template-page-industries .challenge-card { display:block; min-height:162px; padding:22px 24px; color:inherit; border:1px solid var(--ind-line); border-radius:9px; background:#fff; box-shadow:2px 3px 0 #edf1f4; transition:border-color .2s,transform .2s; }
.page-template-page-industries a.challenge-card:hover { color:inherit; border-color:var(--ind-red); transform:translateY(-2px); }
.page-template-page-industries .challenge-card__number { display:inline-grid; width:42px; height:42px; place-items:center; color:var(--ind-red); border-radius:10px; background:#fff0f2; font-size:var(--font-size-caption); font-weight:var(--font-weight-heading); }
.page-template-page-industries .challenge-card h3 { margin:17px 0 7px; font-size:var(--font-size-body); font-weight:var(--font-weight-heading); }
.page-template-page-industries .challenge-card p { margin:0; color:#7a8493; font-size:var(--font-size-caption); line-height:var(--line-height-copy); }
.page-template-page-industries .industries-priorities { padding-top:18px; }
.page-template-page-industries .priorities-grid { display:grid; grid-template-columns:minmax(0,.46fr) minmax(0,.54fr); gap:32px; }
.page-template-page-industries .priorities-card { display:flex; min-height:450px; flex-direction:column; justify-content:center; padding:52px 45px; color:#fff; border-radius:10px; background:#081725; }
.page-template-page-industries .priorities-card h2 { margin:0 0 33px; color:#fff; font-size:var(--font-size-h2); font-weight:var(--font-weight-bold); letter-spacing:-.025em; }
.page-template-page-industries .priorities-list { display:grid; gap:24px; margin:0; padding:0; list-style:none; }
.page-template-page-industries .priorities-list li { display:flex; align-items:center; gap:16px; color:#b6c0cd; font-size:var(--font-size-caption); line-height:var(--line-height-copy); }
.page-template-page-industries .priorities-list__icon { display:grid; width:42px; height:42px; flex:0 0 42px; place-items:center; color:var(--ind-red); border-radius:9px; background:#fff3f4; }
.page-template-page-industries .priorities-list__icon svg { width:18px; height:18px; }
.page-template-page-industries .priorities-list__text { display:block; flex:1; min-width:0; }
.page-template-page-industries .priorities-media { min-height:450px; margin:0; overflow:hidden; border-radius:10px; background:#edf1f4; }
.page-template-page-industries .priorities-image { display:block; width:100%; height:100%; min-height:450px; object-fit:cover; }
.page-template-page-industries .industries-cta { padding:40px 0 68px; }
/* Reference footer treatment while retaining the shared footer markup and data. */
.page-template-page-industries .site-footer.site-footer { padding-top:58px; color:#7e8b9e; background:#071523; border-top:0; }
.page-template-page-industries .site-footer.site-footer .footer-brand p,.page-template-page-industries .site-footer.site-footer .footer-column>a,.page-template-page-industries .site-footer.site-footer .footer-menu a,.page-template-page-industries .site-footer.site-footer .footer-contact>a,.page-template-page-industries .site-footer.site-footer .footer-contact>span { color:#7e8b9e; }
.page-template-page-industries .site-footer.site-footer .footer-grid h2 { color:#fff; }
.page-template-page-industries .site-footer.site-footer .footer-brand img { filter:none; }
.page-template-page-industries .site-footer.site-footer .footer-contact { color:#7e8b9e; border-color:#25313c; background:#0b1927; }
.page-template-page-industries .site-footer.site-footer .footer-bottom { color:#647184; border-top-color:#23303c; }
.page-template-page-industries .site-footer.site-footer .footer-legal-menu a { color:#647184; }

@media (max-width:1199px) {
  .page-template-page-industries .industries-grid,.page-template-page-industries .challenge-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .page-template-page-industries .industries-hero__grid { gap:45px; }
}

/* Final shared desktop Banner Contract. Keep this block after every legacy
 * reference override so the overview and taxonomy banners stay identical. */
@media (min-width: 1025px) {
  body.page-template-page-industries .industries-hero {
    height: 650px;
    min-height: 650px;
    padding: 0;
  }

  body.page-template-page-industries .industries-hero__grid {
    height: 650px;
    min-height: 650px;
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
    gap: 72px;
    align-items: center;
    padding-top: 0;
  }

  body.page-template-page-industries .industries-hero__copy {
    align-self: center;
    padding-top: 0;
  }

  body.page-template-page-industries .industries-kicker {
    margin-bottom: 20px;
    font-size: var(--font-size-caption);
    line-height: var(--line-height-tight);
  }

  body.page-template-page-industries .industries-hero h1 {
    max-width: 760px;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-display);
  }

  body.page-template-page-industries .industries-hero__intro {
    max-width: 680px;
    margin-top: 16px;
    font-size: var(--font-size-small);
    line-height: var(--line-height-copy);
  }

  body.page-template-page-industries .industries-hero__actions {
    gap: 14px;
    margin-top: 42px;
  }

  body.page-template-page-industries .industries-button {
    width: auto;
    min-width: 190px;
    height: 50px;
    min-height: 50px;
    padding: 0 20px;
    border-radius: 4px;
    font-size: var(--font-size-caption);
    line-height: var(--line-height-tight);
  }

  body.page-template-page-industries .industries-hero__media {
    width: min(100%, 806px);
    aspect-ratio: 16 / 10;
    justify-self: end;
  }
}

/* Shared Industries banner contract (overview + detail use the same scale). */
@media (min-width: 1025px) {
  body.page-template-page-industries .industries-hero__grid {
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
    gap: 72px;
    align-items: center;
  }
  body.page-template-page-industries .industries-kicker {
    margin-bottom: 20px;
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-tight);
  }
  body.page-template-page-industries .industries-hero h1 {
    max-width: 760px;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-display);
    letter-spacing: -.05em;
  }
  body.page-template-page-industries .industries-hero__intro {
    max-width: 680px;
    margin-top: 16px;
    font-size: var(--font-size-small);
    line-height: var(--line-height-copy);
  }
  body.page-template-page-industries .industries-hero__actions {
    gap: 14px;
    margin-top: 42px;
  }
  body.page-template-page-industries .industries-button {
    width: auto;
    min-width: 190px;
    min-height: 50px;
    padding: 0 20px;
    border-radius: 4px;
    font-size: var(--font-size-caption);
    line-height: var(--line-height-tight);
  }
}
@media (max-width:899px) {
  body.page-template-page-industries .priorities-list li { font-size:var(--font-size-body); line-height:var(--line-height-copy); }
  body.page-template-page-industries .priorities-list__icon svg { width:20px; height:20px; }
  .page-template-page-industries .industries-hero { padding:54px 0 92px; }
  .page-template-page-industries .industries-hero__grid,.page-template-page-industries .priorities-grid { grid-template-columns:1fr; }
  .page-template-page-industries .industries-hero__copy { max-width:720px; }
  .page-template-page-industries .industries-hero__actions { margin-top:34px; }
  .page-template-page-industries .industries-hero__media { margin-top:8px; }
  .page-template-page-industries .industries-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-template-page-industries .industries-stat:nth-child(odd) { border-left:0; }
  .page-template-page-industries .industries-stat:nth-child(n+3) { border-top:1px solid var(--ind-line); }
  .page-template-page-industries .industries-grid,.page-template-page-industries .challenge-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .page-template-page-industries .priorities-card,.page-template-page-industries .priorities-media,.page-template-page-industries .priorities-image { min-height:0; }
  .page-template-page-industries .priorities-image { aspect-ratio:16/10; }
}
@media (max-width:599px) {
  .page-template-page-industries .industries-shell { width:min(calc(100% - 30px),1680px); }
  .page-template-page-industries .industries-breadcrumb ol { padding:12px 0; font-size:var(--font-size-caption); }
  .page-template-page-industries .industries-hero { padding:44px 0 72px; }
  .page-template-page-industries .industries-hero__orb { display:none; }
  .page-template-page-industries .industries-kicker { margin-bottom:18px; font-size:var(--font-size-caption); }
  .page-template-page-industries .industries-hero h1 { max-width:100%; font-size: var(--font-size-h1); overflow-wrap:anywhere; }
  .page-template-page-industries .industries-hero__intro { max-width:100%; overflow-wrap:anywhere; }
  .page-template-page-industries .industries-hero__intro { font-size:var(--font-size-body); }
  .page-template-page-industries .industries-hero__actions { display:grid; }
  .page-template-page-industries .industries-button { width:100%; min-height:50px; }
  .page-template-page-industries .industries-stats-wrap { margin-top:-35px; }
  .page-template-page-industries .industries-stats { padding:0; }
  .page-template-page-industries .industries-stat { min-height:85px; padding:20px; }
  .page-template-page-industries .industries-stat dd { font-size:var(--font-size-h3); }
  .page-template-page-industries .industries-section { padding:68px 0; }
  .page-template-page-industries .industries-section__header { margin-bottom:30px; }
  .page-template-page-industries .industries-section__header h2 { font-size:var(--font-size-h2); }
  .page-template-page-industries .industries-grid,.page-template-page-industries .challenge-grid { grid-template-columns:1fr; }
  .page-template-page-industries .industry-card__body { min-height:205px; }
  .page-template-page-industries .industries-challenges { padding-top:10px; }
  .page-template-page-industries .challenge-card { min-height:150px; height:auto; }
  .page-template-page-industries .priorities-card { padding:38px 25px; }
  .page-template-page-industries .priorities-card h2 { font-size:var(--font-size-h3); }
  .page-template-page-industries .industries-cta { padding-top:25px; }
}
@media (prefers-reduced-motion:reduce) {
  .page-template-page-industries * { scroll-behavior:auto; transition-duration:.01ms; animation-duration:.01ms; animation-iteration-count:1; }
}
/* SEO content and FAQ components. */
.page-template-page-industries .industries-introduction { padding-bottom:72px; }
.page-template-page-industries .industries-introduction__grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(45px,7vw,120px); align-items:start; }
.page-template-page-industries .industries-introduction h2 { margin:0; font-size: var(--font-size-h1); line-height:var(--line-height-display); letter-spacing:-.04em; }
.page-template-page-industries .industries-prose { color:var(--ind-muted); font-size:var(--font-size-body); line-height:var(--line-height-relaxed); }
.page-template-page-industries .industries-prose p { margin:0 0 1.15em; }
.page-template-page-industries .industries-prose a { color:var(--ind-red); text-decoration:underline; text-underline-offset:3px; }
.page-template-page-industries .industries-faq { background:#f6f8fa; }
.page-template-page-industries .industries-faq__grid { display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); gap:clamp(40px,7vw,110px); align-items:start; }
.page-template-page-industries .industries-faq .industries-section__header { position:sticky; top:100px; margin:0; }
.page-template-page-industries .industries-faq__items { border-top:1px solid var(--ind-line); }
.page-template-page-industries .industries-faq__item { border-bottom:1px solid var(--ind-line); }
.page-template-page-industries .industries-faq__item summary { display:flex; min-height:76px; align-items:center; justify-content:space-between; gap:24px; padding:20px 4px; cursor:pointer; color:var(--ind-ink); font-size:var(--font-size-lead); font-weight:var(--font-weight-heading); list-style:none; }
.page-template-page-industries .industries-faq__item summary::-webkit-details-marker { display:none; }
.page-template-page-industries .industries-faq__item summary span { color:var(--ind-red); font-size:var(--font-size-h3); font-weight:var(--font-weight-regular); transition:transform .2s; }
.page-template-page-industries .industries-faq__item[open] summary span { transform:rotate(45deg); }
.page-template-page-industries .industries-faq__answer { padding:0 42px 24px 4px; color:var(--ind-muted); font-size:var(--font-size-small); line-height:var(--line-height-relaxed); }
.page-template-page-industries .industries-faq__answer > :first-child { margin-top:0; }
.page-template-page-industries .industries-faq__answer > :last-child { margin-bottom:0; }
@media(max-width:899px){.page-template-page-industries .industries-introduction__grid,.page-template-page-industries .industries-faq__grid{grid-template-columns:1fr}.page-template-page-industries .industries-faq .industries-section__header{position:static}}

/* Reference parity: 03-industries-overview.png */
@media (min-width: 900px) {
  body.page-template-page-industries {
    /* Match the homepage content rail so cross-page sections share the same
     * left/right alignment at every desktop viewport. */
    --ind-shell: 1720px;
    --ind-gutter: clamp(22px, 3.2vw, 72px);
  }

  body.page-template-page-industries .industries-shell,
  body.page-template-page-industries .site-breadcrumbs__inner.shell,
  body.page-template-page-industries .site-footer.site-footer .shell {
    width: min(calc(100% - var(--ind-gutter) * 2), var(--ind-shell));
    max-width: var(--ind-shell);
    margin-inline: auto;
  }

  body.page-template-page-industries .site-breadcrumbs {
    height: 58px;
    min-height: 58px;
    border-top: 1px solid #edf0f3;
    border-bottom: 1px solid #e6eaee;
  }

  body.page-template-page-industries .site-breadcrumbs__inner.shell {
    height: 56px;
    min-height: 56px;
    padding-inline: 0;
  }

  body.page-template-page-industries .industries-hero {
    position: relative;
    height: var(--ui-banner-overview-height);
    min-height: var(--ui-banner-overview-height);
    padding: 0;
    overflow: hidden;
    background: #f3f7fa;
  }

  /* Keep the banner edge as the shared alignment datum for the metrics strip.
   * The strip overlaps the hero by half its fixed height, so this edge runs
   * through the strip's visual centre at every desktop banner size. */
  body.page-template-page-industries .industries-hero::after {
    content: '';
    position: absolute;
    z-index: 2;
    right: max(var(--ind-gutter), calc((100% - var(--ind-shell)) / 2));
    bottom: 0;
    left: max(var(--ind-gutter), calc((100% - var(--ind-shell)) / 2));
    height: 1px;
    background: #e4e9ef;
    pointer-events: none;
  }

  body.page-template-page-industries .industries-hero__orb {
    z-index: 0;
    top: -164px;
    right: -118px;
    width: 590px;
    background: #fff0f2;
  }

  body.page-template-page-industries .industries-hero__grid {
    position: relative;
    z-index: 1;
    height: var(--ui-banner-overview-height);
    min-height: var(--ui-banner-overview-height);
    grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
    gap: 72px;
    align-items: center;
  }

  body.page-template-page-industries .industries-hero__copy {
    align-self: center;
    padding-top: 5px;
  }

  body.page-template-page-industries .industries-kicker {
    gap: 10px;
    margin-bottom: 25px;
    color: var(--c-brand);
    font-size: var(--font-size-caption);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: .018em;
  }

  body.page-template-page-industries .industries-kicker::before {
    width: 28px;
    height: 2px;
  }

  body.page-template-page-industries .industries-hero h1 {
    max-width: 760px;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-display);
    letter-spacing: -.055em;
  }

  body.page-template-page-industries .industries-hero__intro {
    max-width: 680px;
    margin-top: 3px;
    color: #748093;
    font-size: var(--font-size-body);
    line-height: var(--line-height-tight);
  }

  body.page-template-page-industries .industries-hero__actions {
    gap: 18px;
    margin-top: 74px;
  }

  body.page-template-page-industries .industries-button {
    min-width: 252px;
    min-height: 66px;
    padding: 14px 24px;
    border-radius: 5px;
    font-size: var(--font-size-caption);
  }

  body.page-template-page-industries .industries-hero__media {
    width: 806px;
    max-width: 100%;
    justify-self: end;
    overflow: hidden;
    border-radius: 10px;
    box-shadow: none;
  }

  body.page-template-page-industries .industries-hero__image {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 10;
    object-fit: cover;
  }

  body.page-template-page-industries .industries-stats-wrap {
    position: relative;
    z-index: 3;
    height: 132px;
    margin-top: -66px;
  }

  body.page-template-page-industries .industries-stats {
    height: 132px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: 0;
    overflow: hidden;
    border: 1px solid #e4e9ef;
    border-radius: 8px;
    box-shadow: 0 7px 22px rgba(15, 23, 42, .035);
  }

  body.page-template-page-industries .industries-stat {
    min-height: 130px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 20px 32px;
    border-left: 1px solid #e8edf2;
  }

  body.page-template-page-industries .industries-stat:first-child {
    border-left: 0;
  }

  body.page-template-page-industries .industries-stat dd {
    margin: 0 0 10px;
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    letter-spacing: -.035em;
  }

  body.page-template-page-industries .industries-stat > span:first-child {
    width: 44px;
    height: 44px;
    flex-basis: 44px;
    border-radius: 10px;
  }

  body.page-template-page-industries .industries-stat > span:first-child svg {
    width: 20px;
    height: 20px;
  }

  body.page-template-page-industries .industries-stat dt {
    color: #718096;
    font-size: var(--font-size-micro);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-heading);
    letter-spacing: .04em;
    text-transform: uppercase;
  }

  body.page-template-page-industries .industries-stat span {
    display: none;
  }

  body.page-template-page-industries .industries-section {
    padding-block: 66px;
  }

  body.page-template-page-industries .industries-directory {
    padding-top: 72px;
    padding-bottom: 60px;
  }

  body.page-template-page-industries .industries-section__header {
    margin-bottom: 46px;
  }

  body.page-template-page-industries .industries-section__header .industries-kicker {
    margin-bottom: 22px;
  }

  body.page-template-page-industries .industries-section__header h2 {
    max-width: 1140px;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-display);
    letter-spacing: -.05em;
  }

  body.page-template-page-industries .industries-section__header > p:last-child:not(.industries-kicker) {
    max-width: 820px;
    margin-top: 7px;
    color: #718096;
    font-size: var(--font-size-small);
    line-height: var(--line-height-copy);
  }

  body.page-template-page-industries .industries-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
  }

  body.page-template-page-industries .industry-card__link {
    border-radius: 8px;
    box-shadow: 3px 4px 0 #edf1f4;
  }

  body.page-template-page-industries .industry-card__image {
    aspect-ratio: 16 / 7.7;
  }

  body.page-template-page-industries .industry-card__body {
    min-height: 226px;
    padding: 26px 26px 24px;
  }

  body.page-template-page-industries .industry-card__count {
    margin-bottom: 18px;
    padding: 7px 12px;
    font-size: var(--font-size-micro);
  }

  body.page-template-page-industries .industry-card__title {
    font-size: var(--font-size-lead);
    letter-spacing: -.02em;
  }

  body.page-template-page-industries .industry-card__description {
    margin-top: 13px;
    color: #718096;
    font-size: var(--font-size-caption);
    line-height: var(--line-height-copy);
  }

  body.page-template-page-industries .industry-card__action {
    font-size: var(--font-size-caption);
  }

  body.page-template-page-industries .industries-challenges {
    padding-top: 38px;
    padding-bottom: 50px;
  }

  body.page-template-page-industries .challenge-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px 24px;
    align-items: start;
    grid-auto-rows: max-content;
  }

  body.page-template-page-industries .challenge-card {
    min-height: 0 !important;
    height: fit-content !important;
    padding: 19px 26px;
    border-radius: 8px;
    box-shadow: 3px 4px 0 #edf1f4;
  }

  body.page-template-page-industries .challenge-card__number {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    font-size: var(--font-size-small);
  }

  body.page-template-page-industries .challenge-card h3 {
    margin-top: 13px;
    margin-bottom: 7px;
    font-size: var(--font-size-body);
  }

  body.page-template-page-industries .challenge-card p {
    max-width: 300px;
    color: #718096;
    font-size: var(--font-size-caption);
    line-height: var(--line-height-copy);
  }

  body.page-template-page-industries .industries-priorities {
    padding-top: 32px;
    padding-bottom: 40px;
  }

  body.page-template-page-industries .priorities-grid {
    grid-template-columns: minmax(0, .465fr) minmax(0, .535fr);
    gap: 40px;
  }

  body.page-template-page-industries .priorities-card,
  body.page-template-page-industries .priorities-media {
    min-height: 500px;
    border-radius: 10px;
  }

  body.page-template-page-industries .priorities-card {
    justify-content: flex-start;
    padding: 48px 40px;
    background: #071523;
  }

  body.page-template-page-industries .priorities-card h2 {
    margin-bottom: 46px;
    color: #fff !important;
    font-size: clamp(30px, 2.15vw, 38px);
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: -.035em;
  }

  body.page-template-page-industries .priorities-card ul {
    gap: 28px;
  }

  body.page-template-page-industries .priorities-list li {
    gap: 18px;
    color: #aeb8c4;
    font-size: var(--font-size-body);
    line-height: var(--line-height-copy);
    font-weight: var(--font-weight-medium);
  }

  body.page-template-page-industries .priorities-list__icon {
    width: 55px;
    height: 55px;
    flex-basis: 55px;
    border-radius: 10px;
    font-size: var(--font-size-lead);
  }
  body.page-template-page-industries .priorities-list__icon svg { width: 22px; height: 22px; }

  body.page-template-page-industries .priorities-image {
    min-height: 500px;
    object-fit: cover;
  }

  body.page-template-page-industries .industries-cta {
    padding: 48px 0 64px;
  }

  body.page-template-page-industries .site-footer.site-footer {
    min-height: 340px;
    padding-top: 58px;
  }
}

/* Absolute final desktop Banner Contract �� overview. */
@media (min-width: 1025px) {
  body.page-template-page-industries .industries-hero { height:650px; min-height:650px; padding:0; }
  body.page-template-page-industries .industries-hero__grid { height:650px; min-height:650px; grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr); gap:72px; align-items:end; padding-top:0; }
  body.page-template-page-industries .industries-hero__copy { position:relative; top:40px; align-self:end; padding-top:0; padding-bottom:0; }
  body.page-template-page-industries .industries-kicker { margin-bottom:20px; font-size:var(--font-size-caption); line-height:var(--line-height-tight); }
  body.page-template-page-industries .industries-hero h1 { max-width:760px; font-size:var(--font-size-h1); line-height:var(--line-height-display); }
  body.page-template-page-industries .industries-hero__intro { max-width:680px; margin-top:16px; font-size:var(--font-size-small); line-height:var(--line-height-copy); }
  body.page-template-page-industries .industries-hero__actions { gap:14px; margin-top:42px; }
  body.page-template-page-industries .industries-hero__copy { min-width:0; }
  body.page-template-page-industries .industries-hero__media { min-width:0; }
  body.page-template-page-industries .industries-button { width:auto; min-width:190px; height:50px; min-height:50px; padding:0 20px; border-radius:4px; font-size:var(--font-size-caption); line-height:var(--line-height-tight); }
  body.page-template-page-industries .industries-hero__media { width:min(100%,806px); aspect-ratio:16/10; justify-self:end; }
}
@media (min-width: 769px) and (max-width: 1100px) {
  body.page-template-page-industries .industries-hero { height:auto; min-height:0; padding:48px 0 54px; }
  body.page-template-page-industries .industries-hero__grid { height:auto; min-height:0; grid-template-columns:minmax(0,1fr); gap:30px; align-items:start; }
  body.page-template-page-industries .industries-hero__copy { position:static; align-self:start; }
  body.page-template-page-industries .industries-hero__media { width:min(100%,806px); height:auto; aspect-ratio:16/10; justify-self:start; }
}


/* Equal-width desktop Banner actions. */
@media (min-width: 1025px) {
  body.page-template-page-industries .industries-hero__actions .industries-button { width:228px; min-width:228px; }
}

.page-template-page-industries .industry-card__count--placeholder { visibility:visible; }
.page-template-page-industries .industry-card__count[role="link"] { cursor:pointer; transition:background-color .2s, color .2s, transform .2s; }
.page-template-page-industries .industry-card__count[role="link"]:hover,.page-template-page-industries .industry-card__count[role="link"]:focus-visible { color:#fff; background:var(--ind-red); transform:translateY(-1px); }

/* Keep challenge cards content-sized; the shared card system otherwise
 * stretches them to the tallest item in the grid and creates dead space. */
html body.page-template-page-industries main#main-content .challenge-grid { align-items:start; grid-auto-rows:max-content; }
html body.page-template-page-industries main#main-content .challenge-card { height:auto !important; min-height:0 !important; }

/* Final priorities heading treatment: keep the title legible against the
 * navy panel and give it the same visual weight as the section headings. */
html body.page-template-page-industries main#main-content .priorities-card > h2 {
  color: #fff !important;
  font-size: clamp(26px, 1.8vw, 32px) !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  letter-spacing: -.04em;
}


/* Page-specific motion: subtle, purposeful and disabled for reduced motion. */
@media (prefers-reduced-motion: no-preference) {
  body.page-template-page-industries .industries-hero__copy { animation: industries-hero-copy 520ms cubic-bezier(.2,.8,.2,1) both; }
  body.page-template-page-industries .industries-hero__media { animation: industries-hero-media 620ms cubic-bezier(.2,.8,.2,1) 90ms both; }
  body.page-template-page-industries .industries-reveal { opacity: 0; transform: translateY(14px); transition: opacity 360ms ease-out var(--industries-reveal-delay, 0ms), transform 460ms cubic-bezier(.2,.8,.2,1) var(--industries-reveal-delay, 0ms); }
  body.page-template-page-industries .industries-reveal.is-visible { opacity: 1; transform: translateY(0); }
}
@keyframes industries-hero-copy { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes industries-hero-media { from { opacity: 0; transform: translateY(16px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (hover: hover) and (pointer: fine) {
  body.page-template-page-industries .challenge-card:hover { box-shadow: 0 12px 26px rgba(12, 30, 48, .09); }
  body.page-template-page-industries .priorities-card:hover { box-shadow: 0 16px 32px rgba(7, 21, 35, .16); transform: translateY(-2px); transition: box-shadow 220ms ease, transform 220ms ease; }
  body.page-template-page-industries .priorities-media:hover .priorities-image { transform: scale(1.025); transition: transform 420ms cubic-bezier(.2,.8,.2,1); }
}
@media (prefers-reduced-motion: reduce) {
  body.page-template-page-industries .industries-reveal { opacity: 1; transform: none; }
}

/* Keep every section kicker on the Industries page on the same brand-red
 * color, including the decorative rule rendered by ::before. */
html body.page-template-page-industries main#main-content .industries-kicker {
  color: var(--c-brand) !important;
}
html body.page-template-page-industries main#main-content .industries-kicker::before {
  background: currentColor !important;
}

/* Industry-specific facts include words as well as numbers, so compact
 * viewports need a vertical value/label rhythm instead of the numeric strip. */
@media (min-width: 769px) and (max-width: 1024px) {
  html body.page-template-page-industries main#main-content .industries-stats .industries-stat {
    gap: 0 !important;
    padding-inline: 14px !important;
  }

  html body.page-template-page-industries main#main-content .industries-stats .industries-stat dd {
    max-width: 100%;
    margin-bottom: 8px !important;
    font-size: 24px !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    overflow-wrap: anywhere;
  }

  html body.page-template-page-industries main#main-content .industries-stats .industries-stat dt {
    max-width: 100%;
    line-height: 1.25 !important;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 599px) {
  html body.page-template-page-industries main#main-content .industries-stats .industries-stat {
    min-height: 108px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0;
    padding: 16px 18px;
  }

  html body.page-template-page-industries main#main-content .industries-stats .industries-stat dd {
    max-width: 100%;
    margin: 0 0 7px;
    font-size: 20px;
    line-height: 1.1;
    letter-spacing: 0;
    overflow-wrap: anywhere;
  }

  html body.page-template-page-industries main#main-content .industries-stats .industries-stat dt {
    max-width: 100%;
    font-size: 10px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }
}

/* Keep unpublished industry guides visible in the overview without presenting
 * them as navigable destinations. */
.page-template-page-industries .industry-card__surface {
  display: flex;
  height: 100%;
  overflow: hidden;
  flex-direction: column;
  color: inherit;
  border: 1px solid var(--ind-line);
  border-radius: 9px;
  background: #fff;
  box-shadow: 2px 3px 0 #edf1f4;
}

.page-template-page-industries .industry-card--unavailable .industry-card__media {
  background: #f1f3f5;
}

.page-template-page-industries .industry-card--unavailable .industry-card__image {
  opacity: .82;
}

.page-template-page-industries .industry-card__status {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  margin-top: auto;
  color: #697586;
  font-size: var(--font-size-caption);
  font-weight: var(--font-weight-heading);
  line-height: var(--line-height-copy);
}

@media (min-width: 1200px) {
  body.page-template-page-industries .industry-card__surface {
    border-radius: 8px;
    box-shadow: 3px 4px 0 #edf1f4;
  }
}
