/* Explicit Core Principles layout, after legacy Elementor rules. */
body.inner-reference-theme .elementor.elementor-21 .elementor-element.elementor-element-139553e{padding-top:18px!important;--padding-top:18px!important;margin-top:-19px!important;--margin-top:-19px!important;min-height:0!important}
body.inner-reference-theme .elementor.elementor-21 .elementor-element.elementor-element-139553e>.e-con-inner{gap:8px!important;--gap:8px!important;--row-gap:8px!important}
body.inner-reference-theme .elementor.elementor-21 .elementor-element.elementor-element-139553e .elementor-element.elementor-element-c9fffa1{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:60px!important;column-gap:60px!important;--gap:60px!important;--column-gap:60px!important;--row-gap:24px!important;width:100%!important;max-width:none!important;margin-top:12px!important;padding-top:0!important}
body.inner-reference-theme .elementor.elementor-21 .elementor-element.elementor-element-c9fffa1>.flow-navy-card{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
@media(max-width:800px){body.inner-reference-theme .elementor.elementor-21 .elementor-element.elementor-element-139553e .elementor-element.elementor-element-c9fffa1{grid-template-columns:1fr!important;gap:28px!important}}

/* About page cards overlap as each reaches its sticky position. */
@media (prefers-reduced-motion: no-preference) {
  /* Keep horizontal clipping without creating a sticky scroll container. */
  html:has(body .elementor-21),
  body:has(.elementor-21) {
    overflow-x: clip !important;
    overflow-y: visible !important;
  }
  body.inner-reference-theme #main .elementor.elementor-21 .elementor-element:is(.elementor-element-1416552, .elementor-element-139553e),
  body.inner-reference-theme #main .elementor.elementor-21 .elementor-element:is(.elementor-element-1416552, .elementor-element-139553e) > .e-con-inner {
    overflow: visible !important;
  }
  body.inner-reference-theme #main .elementor.elementor-21 .elementor-element .elementor-element-c9fffa1.elementor-element {
    display: block !important;
    max-width: 760px !important;
    margin-inline: auto !important;
    padding-bottom: 110px !important;
    overflow: visible !important;
    isolation: isolate;
  }
  body.inner-reference-theme #main .elementor.elementor-21 .elementor-element .elementor-element-c9fffa1 > .flow-navy-card.elementor-element:nth-child(n) {
    position: sticky !important;
    top: calc(clamp(80px, 10vw, 125px) + var(--about-stack-offset, 0px)) !important;
    z-index: var(--about-stack-layer, 1);
    min-height: 235px !important;
    height: auto !important;
    margin: 0 0 64px !important;
  }
  .elementor-21 .elementor-element-c9fffa1 > .flow-navy-card:nth-child(2) {
    --about-stack-offset: 13px;
    --about-stack-layer: 2;
  }
  .elementor-21 .elementor-element-c9fffa1 > .flow-navy-card:nth-child(3) {
    --about-stack-offset: 26px;
    --about-stack-layer: 3;
  }
}

/* Open Mission and Vision from an overlapping pair into two columns. */
body.inner-reference-theme #main .elementor-21 .mission-vision-reveal {
  --reveal-distance: 427px;
  display: block !important;
}
.mission-vision-reveal::after {
  content: "";
  display: block;
  height: calc(var(--reveal-distance) + 40px);
}
body.inner-reference-theme #main .elementor.elementor-21 .mission-vision-reveal > .elementor-element-1b64aee {
  position: sticky;
  top: var(--mission-vision-top, 125px);
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  isolation: isolate;
}
body.inner-reference-theme #main .elementor.elementor-21 .mission-vision-reveal .flow-navy-card:nth-child(n) {
  transform: translate(var(--mission-vision-x, 0px), var(--mission-vision-y, 0px)) rotate(var(--mission-vision-angle, 0deg)) !important;
  transition-property: background-color, border-color, box-shadow !important;
}
