/**
 * FRECKA final brand asset contract
 *
 * Production paths live directly in the HTML. Logo assets use an object with
 * native fallback content so SVG and text can never be rendered at the same
 * time. Screenshot boxes preserve their dimensions and CSS fallbacks.
 */

:root {
  --asset-logo-header-width: 7.0625rem;
  --asset-logo-footer-width: 9rem;
  --asset-logo-claim-size: 0.78125rem;
}

.c-brand__wordmark {
  width: var(--asset-logo-header-width);
  max-width: 100%;
  height: auto;
  aspect-ratio: 668 / 152;
  position: relative;
  display: block;
  overflow: hidden;
}

.c-brand__logo {
  position: absolute;
  top: -10.526316%;
  left: -4.790419%;
  border: 0;
  display: block;
  width: 164.670659%;
  max-width: none;
  height: auto;
  aspect-ratio: 1100 / 180;
  pointer-events: none;
}

.c-brand .c-brand__claim {
  font-size: var(--asset-logo-claim-size);
}

.c-brand__fallback {
  display: flex;
  width: 100%;
  height: 100%;
  align-items: center;
  color: var(--color-text);
  font: inherit;
  letter-spacing: inherit;
}

.c-brand__wordmark::after {
  content: none;
}

.c-brand--footer .c-brand__wordmark {
  width: var(--asset-logo-footer-width);
}

@media (min-width: 43.75rem) {
  :root {
    --asset-logo-header-width: 7rem;
    --asset-logo-footer-width: 8.875rem;
  }
}

@media (min-width: 64rem) {
  :root {
    --asset-logo-header-width: 6.9375rem;
    --asset-logo-footer-width: 8.625rem;
    --asset-logo-claim-size: 0.75rem;
  }
}

.c-device__screen,
.c-mini-screen,
.c-photo-slot__surface {
  position: relative;
}

.c-asset-image {
  position: absolute;
  z-index: 3;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
}

.c-asset-image--hero,
.c-asset-image--screen {
  object-fit: contain;
  object-position: center;
}

@media (forced-colors: active) {
  .c-asset-image {
    display: none;
  }

  .c-brand__logo {
    display: none;
  }

  .c-brand__wordmark::after {
    content: "FRECKA";
    height: 100%;
    display: flex;
    align-items: center;
  }
}
