
@layer lmvz-ds.reset, lmvz-ds.theme, lmvz-ds.components, lmvz-ds.overrides;
/**
 * This defines the order of our lmvz-ds' CSS layers. See readme.md for details.
 * Important: Always import this file _before_ layering your own styles!
 */
@layer lmvz-ds.theme {
@font-face {
  font-family: Router;
  src:
    local('Router-Book'),
    url('/assets/fonts/Router-Book.woff') format('woff'),
    local('Router');
  font-weight: 400 normal;
}

@font-face {
  font-family: Router;
  src:
    local('Router-Medium'),
    url('/assets/fonts/Router-Medium.woff') format('woff'),
    local('Router');
  font-weight: 500;
}

@font-face {
  font-family: Router;
  src:
    local('Router-Bold'),
    url('/assets/fonts/Router-Bold.woff') format('woff'),
    local('Router');
  font-weight: 700 bold;
}

}
@layer lmvz-ds.reset {
body {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

}
:host {
  /** component dependencies */
  /* * the (invalid nested) import will be handled by postcss */
  /* stylelint-disable no-invalid-position-at-import-rule */
  button {
  --lmvz-button-color: var(--lmvz-component-color, var(--lmvz-semantic-color-int-on-primary, #ffffff));
  --lmvz-button-padding-inline: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-x, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
  --lmvz-button-padding-block: var(--lmvz-button-padding, var(--lmvz-component-input-md-padding-y, clamp(0.75rem, 0.69rem + 0.26vw, 1rem)));
  --lmvz-button-gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4
    Router);
  --lmvz-button-radius: var(--lmvz-component-input-radius-default, 999px);
  --lmvz-button-border-width: 0;
  --lmvz-button-border-color: transparent;
  --lmvz-button-background: var(--lmvz-semantic-color-int-primary, #000000);

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--lmvz-button-gap);
  padding-block: var(--lmvz-button-padding-block);
  padding-inline: var(--lmvz-button-padding-inline);
  border-radius: var(--lmvz-button-radius);
  border: var(--lmvz-button-border-width) solid var(--lmvz-button-border-color);
  background-color: var(--lmvz-button-background);
  color: var(--lmvz-button-color);
  cursor: pointer;
  font: var(--lmvz-button-font);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  transition:
    background-color 0.15s ease,
    color 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease;
}

button > * {
  font: inherit;
  color: inherit;
}

button:focus-visible {
  /* outline: var(--lmvz-semantic-border-width-default) solid var(--lmvz-semantic-color-status-active-950); */
  outline: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-status-selected, #f1f9fe);
  outline-offset: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));
}

button:is([disabled], .disabled) {
  cursor: not-allowed;
  pointer-events: none;
  /* } */

  /* button:is(:is([disabled], .disabled):not(.secondary):not(.tertiary), .primary:is([disabled], .disabled)) { */
  /* button:is([disabled], .disabled) { */
  /* --lmvz-button-background: var(--lmvz-global-color-neutral-500); */
  /* --lmvz-button-color: var(--lmvz-global-color-neutral-white); */
  opacity: var(--lmvz-component-input-disabled-opacity, 40%);
}

button:not([disabled]):hover {
  --lmvz-button-background: var(--lmvz-semantic-color-int-primary-hover, #2e2e2e);
}

button:not([disabled]):active {
  --lmvz-button-background: var(--lmvz-semantic-color-int-primary-active, #545454);
}

button.secondary {
  --lmvz-button-background: var(--lmvz-semantic-color-int-secondary, #f0f0f0);
  --lmvz-button-color: var(--lmvz-semantic-color-int-on-secondary, #000000);
  --lmvz-button-border-width: var(--lmvz-semantic-border-width-default, 1px);
  --lmvz-button-border-color: var(--lmvz-semantic-color-border-default, #e0e0e0);
}

button.secondary:not([disabled], .disabled):hover {
  --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-hover, #e0e0e0);
  --lmvz-button-border-color: var(--lmvz-semantic-color-border-hover, #c7c7c7);
}

button.secondary:not([disabled], .disabled):active {
  --lmvz-button-background: var(--lmvz-semantic-color-int-secondary-active, #d4d4d4);
  --lmvz-button-border-color: var(--lmvz-semantic-color-border-active, #d4d4d4);
}

/* button.secondary:is([disabled], .disabled) {
  --lmvz-button-background: var(--lmvz-global-color-neutral-200);
  --lmvz-button-border-color: var(--lmvz-global-color-neutral-400);
  --lmvz-button-color: var(--lmvz-global-color-neutral-700);
} */

button.tertiary {
  --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary, #ffffff);
  --lmvz-button-color: var(--lmvz-semantic-color-int-on-tertiary, #545454);
}

button.tertiary:not([disabled], .disabled):hover {
  --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-hover, #f0f0f0);
}

button.tertiary:not([disabled], .disabled):active {
  --lmvz-button-background: var(--lmvz-semantic-color-int-tertiary-active, #e0e0e0);
}

/* button.tertiary:is([disabled], .disabled) {
  --lmvz-button-background: var(--lmvz-global-color-neutral-100);
  --lmvz-button-color: var(--lmvz-global-color-neutral-600);
} */

button.small {
  --lmvz-button-padding-inline: var(--lmvz-component-input-sm-padding-x, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));
  --lmvz-button-padding-block: var(--lmvz-component-input-sm-padding-y, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));
  --lmvz-button-gap: var(--lmvz-component-input-sm-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  --lmvz-button-font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4
    Router);
}

button.large {
  --lmvz-button-padding-inline: var(--lmvz-component-input-lg-padding-x, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem));
  --lmvz-button-padding-block: var(--lmvz-component-input-lg-padding-y, clamp(0.88rem, 0.78rem + 0.39vw, 1.25rem));
  --lmvz-button-gap: var(--lmvz-component-input-lg-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  --lmvz-button-font: var(--lmvz-typography-body-lg, 400 clamp(1rem, 0.97rem + 0.13vw, 1.13rem) / 1.4
    Router);
}


  display: flex;
  min-width: var(--lmvz-other-component-card-minwidth, 20.4375rem);
  max-width: var(--lmvz-other-component-card-maxwidth, 21.6875rem);
  flex-direction: column;
  align-items: flex-start;

  border-radius: var(--lmvz-semantic-border-radius-lg, 14px);
  border: var(--lmvz-semantic-border-width-default, 1px) solid var(--lmvz-semantic-color-border-default, #e0e0e0);
  background: var(--lmvz-semantic-color-surface-primary, #ffffff);
}
* {
  color: var(--lmvz-semantic-color-on-surface-primary, #000000);
  font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4
    Router);
}
.top {
  display: flex;
  padding: var(--lmvz-dimension-8-12, clamp(0.5rem, 0.44rem + 0.26vw, 0.75rem));
  flex-direction: column;
  justify-content: center;
  align-items: center;
  align-self: stretch;
}
.bottom {
  display: flex;
  min-width: 150px;
  padding: var(--lmvz-dimension-4-6, clamp(0.25rem, 0.22rem + 0.13vw, 0.38rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem)) var(--lmvz-dimension-10-14, clamp(0.63rem, 0.56rem + 0.26vw, 0.88rem));
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
}
.title {
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: stretch;

  padding-bottom: var(--lmvz-global-s4, 4px);
  overflow-wrap: break-word;
  font: var(--lmvz-typography-heading-2xl, 500 clamp(2rem, 1.94rem + 0.26vw, 2.25rem) / 1.2
    Router);
}
.description {
  display: flex;
  margin: 0;
  padding-bottom: var(--lmvz-component-body-sm-padding-bottom, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  align-items: flex-start;
  align-self: stretch;
  white-space: pre-line;
  font: var(--lmvz-typography-body-md, 400 clamp(0.88rem, 0.84rem + 0.13vw, 1rem) / 1.4
    Router);
}
.image-wrapper {
  aspect-ratio: 4 / 3;
  width: 100%;
  background-size: cover;
  background-position: center;
  flex: 1 0 0;
  align-self: stretch;
  border-radius: var(--lmvz-semantic-border-radius-md, 6px);
}
.actions {
  margin-top: var(--lmvz-component-form-wrapper-gap-y, clamp(1.13rem, 0.97rem + 0.65vw, 1.75rem));
  display: flex;
  align-items: center;
  gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  align-self: stretch;
}
button.primary,
lmvz-button.primary {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--lmvz-component-input-md-gap-x, clamp(0.25rem, 0.16rem + 0.39vw, 0.63rem));
  flex: 1 0 0;
}
/* .overflow-button {
  anchor-name: --overflow-button;
} */
/* menu {
  position: fixed;
  position-anchor: --overflow-button;

  inset-block-start: anchor(end);
  inset-inline-end: anchor(self-end);
  margin: 5px 0 0 5px;
} */
