/* LA ABLE — LA entity landing (scoped entity-style.css) */

.section.lab-entity-section {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-left: 0;
  padding-right: 0;
}
.section.lab-entity-section > .container,
.section.lab-entity-section .container-fluid {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
.section.lab-entity-section .col-md-12 {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  overflow: visible;
}

.section.lab-entity-section .umb-block-grid,
.section.lab-entity-section .umb-block-grid__area,
.section.lab-entity-section .umb-block-grid__layout-container {
  overflow: visible;
}

/* Block section already full-bleeds; nested 100vw + calc(50% - 50vw) stacks and shifts right on Cloud. */
.section.lab-entity-section .lab-entity-landing .lab-fullbleed,
.section.lab-entity-section .lab-entity-landing .lab-entity-hero,
.section.lab-entity-section .lab-entity-landing .lab-entity-hero.lab-fullbleed {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
}

/* Brand (primary, links, type) comes from lab/migration.css + lab/style.css on :root.
   This block only adds entity-layout aliases — do not reintroduce MiABLE blue/Aktiv here. */
.lab-entity-landing {
  color: var(--la-text);
  font-family: var(--la-font-body);
  font-size: 1.125rem;
  line-height: 1.5;

  /* Mirror lab/migration.css so legacy entity classes match the global LAB site */
  --bs-primary: #01847f;
  --bs-primary-rgb: 1, 132, 127;
  --bs-secondary: #047940;
  --bs-link-color: #006983;
  --bs-link-hover-color: #00566b;
  --bs-body-color: var(--la-text);
  --bs-heading-color: #01847f;

  --bs-deep-black: var(--la-text);
  --bs-medium-gray: var(--la-gray-60);
  --bs-gray: var(--la-gray-05);
  --bs-primary-alternate-blue: var(--la-blue);
  --bs-tertiary-dark: var(--la-blue);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
  --bs-box-shadow-sm: var(--la-shadow-card);
  --bs-box-shadow-xl: var(--la-shadow-card);
}

/*! ========================
    | CMS CUSTOM CSS       |
    ======================== *//* ==========================================================================
   Customize variables here
   ========================================================================== *//* Set custom vars properties */.lab-entity-landing .shadow-sm {
  box-shadow: var(--bs-box-shadow-sm) !important;
}
.lab-entity-landing .shadow-xl {
  box-shadow: var(--bs-box-shadow-xl) !important;
}
.lab-entity-landing .bg-primary {
  background-color: var(--bs-primary) !important;
}
.lab-entity-landing .bg-gray {
  background-color: var(--la-gray-05) !important;
}
.lab-entity-landing .background-gray {
  background-color: var(--bs-light);
}
.lab-entity-landing .text-primary-color {
  color: var(--bs-primary)!important;
}
.lab-entity-landing .text-alternate-blue {
  color:var(--bs-primary-alternate-blue)!important;
}
.lab-entity-landing .text-tertiary-dark { color: var(--bs-tertiary-dark) !important;}
.lab-entity-landing .text-gray { color: var(--bs-medium-gray);}
.lab-entity-landing .text-deep-black { color: var(--bs-deep-black)!important;}
/* ==========================================================================
   Base Styles
   ========================================================================== */
.lab-entity-landing h1,
.lab-entity-landing .h1 {
  font-family: var(--la-font-head);
  color: var(--bs-heading-color);
  font-size: clamp(2.25rem, 1.5rem + 2.6vw, 3rem);
  font-weight: 800;
  line-height: 1.1;
}

.lab-entity-landing h2,
.lab-entity-landing .h2 {
  font-family: var(--la-font-head);
  color: var(--bs-heading-color);
  font-size: clamp(1.75rem, 1.2rem + 1.8vw, 2.25rem);
  font-weight: 800;
  line-height: 1.1;
}

.lab-entity-landing h3,
.lab-entity-landing .h3 {
  font-family: var(--la-font-head);
  color: var(--bs-heading-color);
  font-size: 1.375rem;
  font-weight: 700;
  line-height: 1.1;
}

.lab-entity-landing h4,
.lab-entity-landing .h4,
.lab-entity-landing h5,
.lab-entity-landing h6 {
  font-family: var(--la-font-head);
  color: var(--bs-heading-color);
  line-height: 1.1;
}

.lab-entity-landing p {
  margin-bottom: 1.5rem;
  font-family: var(--la-font-body);
  color: var(--la-text);
}

.lab-entity-landing .eyebrow {
  font-family: var(--la-font-body);
  font-size: .875rem;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--la-text);
  margin-bottom: .5rem;
}

.lab-entity-landing .btn {
  --bs-btn-border-radius: var(--la-radius-btn);
  font-family: var(--la-font-body);
  font-weight: 800;
  letter-spacing: .04em;
  padding: .75rem 1.4rem;
}

.lab-entity-landing .btn-primary {
  --bs-btn-bg: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-bg: var(--la-teal-dark);
  --bs-btn-hover-border-color: var(--la-teal-dark);
  --bs-btn-active-bg: var(--la-teal-dark);
  --bs-btn-active-border-color: var(--la-teal-dark);
  color: #fff;
}

.lab-entity-landing .btn-outline-primary {
  --bs-btn-color: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-bg: var(--bs-primary);
  --bs-btn-hover-border-color: var(--bs-primary);
  --bs-btn-active-bg: var(--la-teal-dark);
  --bs-btn-active-border-color: var(--la-teal-dark);
}

.lab-entity-landing a:not(.btn) {
  color: var(--bs-link-color);
  transition: all 200ms var(--ease-out);
  font-weight: 500;
}
.lab-entity-landing a:not(.btn):hover {
  color: var(--bs-link-hover-color);
}
.lab-entity-landing a:not(.btn):focus-visible {
  color: var(--bs-link-hover-color);
}
/* Custom hover effect for links */.lab-entity-landing .link-action {
  text-decoration: none;
  padding: .5rem .75rem;
  margin: -.5rem -.75rem;
  border-radius: var(--bs-border-radius-pill);
  position: relative;
  z-index: 1;
}
.lab-entity-landing .link-action::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background-color: var(--bs-light);
  border-radius: var(--bs-border-radius-pill);
  box-shadow: 0 0 0 transparent;
  opacity: 0;
  transform: scale(.85);
  transition: all 200ms var(--ease-out);
}
.lab-entity-landing .link-action:hover::after {
  opacity: 1;
  transform: scale(1);
}
.lab-entity-landing .link-action.active::after {
  opacity: 1;
  transform: scale(1);
}
/* Color variants */.lab-entity-landing .link-action-primary::after {
  background-color: var(--bs-primary);
}
.lab-entity-landing .link-action-secondary::after {
  background-color: var(--bs-secondary);
}
.lab-entity-landing .link-action-dark::after {
  background-color: rgba(0, 0, 0, .15);
}
.lab-entity-landing .link-action-light::after {
  background-color: rgba(255, 255, 255, .2);
}
/* Adjust containers padding */.lab-entity-landing .container {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-fluid {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-lg {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-md {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-sm {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-xl {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.lab-entity-landing .container-xxl {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

@media (min-width: 1200px) {
  .lab-entity-landing .container,
  .lab-entity-landing .container-fluid,
  .lab-entity-landing .container-lg,
  .lab-entity-landing .container-md,
  .lab-entity-landing .container-sm,
  .lab-entity-landing .container-xl,
  .lab-entity-landing .container-xxl {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
@media (min-width: 1600px) {
  .lab-entity-landing .container,
  .lab-entity-landing .container-fluid,
  .lab-entity-landing .container-lg,
  .lab-entity-landing .container-md,
  .lab-entity-landing .container-sm,
  .lab-entity-landing .container-xl,
  .lab-entity-landing .container-xxl {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}

.lab-entity-landing .lab-fullbleed {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
/* Hero — full viewport width; laptop flush to right (LA entity landing) */
.lab-entity-landing .lab-entity-hero,
.lab-entity-landing .lab-entity-hero.lab-fullbleed {
  padding-left: clamp(1.5rem, 5vw, 5rem);
  padding-right: 0;
  box-sizing: border-box;
  overflow: visible;
}

@media (min-width: 992px) {
  .lab-entity-landing .lab-entity-hero,
  .lab-entity-landing .lab-entity-hero.lab-fullbleed {
    align-items: center;
  }

  .lab-entity-landing .lab-entity-hero > .col-lg-6:first-child {
    padding-right: 2rem;
  }

  .lab-entity-landing .lab-entity-hero__media {
    padding-right: 0 !important;
    overflow: visible;
    align-items: center;
    justify-content: flex-end;
  }

  /* Same right-edge bleed as LAB split sections (style.css); override .img-fluid */
  .lab-entity-landing .lab-entity-hero__media img {
    width: 50vw;
    max-width: none !important;
    height: auto;
    object-fit: contain;
    object-position: right center;
    display: block;
    margin-left: auto;
    margin-right: 0;
  }

  /* No LA home split-section divider strip under the hero laptop (style.css) */
  .section.lab-entity-section .lab-entity-landing .col-lg-6:last-child:has(> img:only-child)::after,
  .section.lab-entity-section .lab-entity-landing .col-lg-5:last-child:has(> img:only-child)::after {
    content: none;
    display: none;
  }
}
.lab-entity-landing .row > .col,
.lab-entity-landing .row > [class*="col-"] {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.lab-entity-landing .lab-entity-footer-links {
  margin-top: 2rem;
}

.lab-entity-landing .lab-entity-footer-links .col-12 {
  gap: 1rem 1.5rem;
}

.lab-entity-landing .lab-entity-footer-links a {
  color: var(--bs-link-color);
  font-weight: 500;
  white-space: nowrap;
}

.lab-entity-landing .lab-entity-footer-links a:hover {
  color: var(--bs-link-hover-color);
}

/* ---------- Entity layout utilities (legacy MiABLE classes; LA ABLE tokens) ---------- */
.lab-entity-landing .mt-2rem {
  margin-top: 2rem !important;
}

.lab-entity-landing .p-20px {
  padding: 1.25rem !important;
}

.lab-entity-landing .p-40px {
  padding: 2.5rem !important;
}

.lab-entity-landing .pt-40px {
  padding-top: 2.5rem !important;
}

.lab-entity-landing .pb-40px {
  padding-bottom: 2.5rem !important;
}

.lab-entity-landing .ps-40px {
  padding-left: 2.5rem !important;
}

.lab-entity-landing .pe-40px {
  padding-right: 2.5rem !important;
}

.lab-entity-landing .border-gray {
  border-color: var(--la-gray-10) !important;
}

.lab-entity-landing .border-start-6 {
  border-left-width: 6px !important;
  border-left-style: solid !important;
  border-left-color: var(--bs-primary) !important;
}

.lab-entity-landing .rounded-2 {
  border-radius: var(--la-radius-card) !important;
}

/* Top alert callout (e.g. entity dashboard notice) */
.lab-entity-landing .callout {
  background-color: var(--la-gray-05);
  border: 1px solid var(--la-gray-10) !important;
  border-radius: var(--la-radius-card);
  overflow: hidden;
}

.lab-entity-landing .callout.border-start-6 {
  border-left-color: var(--bs-primary) !important;
}

.lab-entity-landing .callout .alert {
  background: transparent;
  border: 0;
  margin: 0;
  color: var(--la-text);
}

.lab-entity-landing .callout p:last-of-type {
  margin-bottom: 0;
}

/* White inset panels (e.g. “Before you register”) — match .feature-card surface */
.lab-entity-landing .p-40px.bg-white.border,
.lab-entity-landing .bg-white.border.border-gray {
  padding: 2.5rem !important;
  background-color: #fff !important;
  border: 1px solid var(--la-gray-10) !important;
  border-radius: var(--la-radius-card) !important;
  box-shadow: var(--la-shadow-card);
}

.lab-entity-landing .p-40px.bg-white.border h4,
.lab-entity-landing .bg-white.border.border-gray h4 {
  font-family: var(--la-font-head);
  color: var(--la-text);
  font-weight: 700;
}

.lab-entity-landing .p-40px.bg-white.border p,
.lab-entity-landing .bg-white.border.border-gray p {
  margin-bottom: 0;
  color: var(--la-text);
}

