.editable-brand-hero {
  position: relative;
  display: flex;
  min-height: max(100vh, var(--hero-min-height));
  margin: 0;
  overflow: hidden;
  color: rgb(var(--hero-text));
  background: rgb(var(--hero-background));
  border-radius: var(--hero-radius);
  font-family: var(--senro-sans);
  font-weight: 300;
  isolation: isolate;
}

.editable-brand-hero::before {
  position: absolute;
  z-index: -1;
  inset-block-start: 20%;
  inset-inline-start: 50%;
  width: 600px;
  height: 600px;
  content: "";
  background: radial-gradient(circle, rgb(139 115 85 / 6%) 0%, transparent 70%);
  transform: translateX(-50%);
  pointer-events: none;
}

.editable-brand-hero__background,
.editable-brand-hero__overlay {
  position: absolute;
  z-index: -3;
  inset: 0;
}

.editable-brand-hero__background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.editable-brand-hero__background--video,
.editable-brand-hero__background--video > theme-video-media,
.editable-brand-hero__background--video .theme-video-media,
.editable-brand-hero__background--video .theme-video-media__poster,
.editable-brand-hero__background--video .theme-video-media__media {
  width: 100%;
  height: 100%;
}

.editable-brand-hero__background--video {
  pointer-events: none;
}

.editable-brand-hero__background--video .theme-video-media {
  aspect-ratio: auto !important;
  background: rgb(var(--hero-background));
}

.editable-brand-hero__background--video video,
.editable-brand-hero__background--video iframe {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.editable-brand-hero__background--video .theme-video-media__play-button {
  display: none;
}

.editable-brand-hero__overlay {
  z-index: -2;
  background: rgb(var(--hero-background) / var(--hero-overlay));
}

.editable-brand-hero__topbar {
  position: absolute;
  inset-block-start: 0;
  inset-inline: 0;
  display: flex;
  gap: 40px;
  padding: 28px 48px;
  align-items: center;
  justify-content: space-between;
}

.editable-brand-hero a.editable-brand-hero__logo {
  color: rgb(var(--hero-text));
  font-family: var(--senro-serif);
  font-size: 22px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .15em;
  text-decoration: none;
  text-transform: uppercase;
}

.editable-brand-hero__logo-image {
  display: block;
  width: min(var(--hero-logo-image-width), 100%);
  height: auto;
  max-height: 70px;
  object-fit: contain;
}

.editable-brand-hero__navigation {
  display: flex;
  gap: 40px;
  align-items: center;
}

.editable-brand-hero a.editable-brand-hero__nav-link {
  color: rgb(var(--hero-muted));
  font-family: var(--senro-sans);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .08em;
  text-decoration: none;
  text-transform: uppercase;
}

.editable-brand-hero__nav-link--mobile {
  display: none;
}

.editable-brand-hero__content {
  display: flex;
  width: 100%;
  max-width: none;
  padding: var(--hero-padding-top) 48px var(--hero-padding-bottom);
  margin: 0;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.editable-brand-hero__content-inner {
  display: flex;
  width: min(100%, var(--hero-content-width));
  flex-direction: column;
  align-items: center;
}

.editable-brand-hero--left .editable-brand-hero__content {
  justify-content: flex-start;
  text-align: left;
}

.editable-brand-hero--left .editable-brand-hero__content-inner {
  align-items: flex-start;
}

.editable-brand-hero--right .editable-brand-hero__content {
  justify-content: flex-end;
  text-align: right;
}

.editable-brand-hero--right .editable-brand-hero__content-inner {
  align-items: flex-end;
}

.editable-brand-hero__eyebrow {
  margin-block-end: 32px;
  color: rgb(var(--hero-eyebrow));
  font-family: var(--senro-sans);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .25em;
  text-transform: uppercase;
}

.editable-brand-hero__heading {
  max-width: 100%;
  margin: 0 0 24px;
  color: rgb(var(--hero-text));
  font-family: var(--senro-serif);
  font-size: clamp(64px, 14vw, var(--hero-heading-size));
  font-weight: 300;
  line-height: .95;
  letter-spacing: .05em;
  text-transform: uppercase;
  white-space: pre-line;
}

.editable-brand-hero__local-title {
  margin: 0 0 12px;
  color: rgb(var(--hero-muted));
  font-family: var(--senro-serif);
  font-size: clamp(18px, 2.5vw, 28px);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .05em;
}

.editable-brand-hero__italic-subtitle {
  margin: 0 0 32px;
  color: rgb(var(--hero-muted));
  font-family: var(--senro-serif);
  font-size: clamp(20px, 3vw, 32px);
  font-style: italic;
  font-weight: 300;
  line-height: 1.6;
  letter-spacing: .02em;
}

.editable-brand-hero__description {
  max-width: 420px;
  margin: 0 auto 48px;
  color: rgb(var(--hero-muted));
  font-family: var(--senro-sans);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.7;
  letter-spacing: .02em;
}

.editable-brand-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  justify-content: center;
}

.editable-brand-hero__buttons:empty {
  display: none;
}

.editable-brand-hero a.editable-brand-hero__button {
  position: relative;
  display: inline-flex;
  min-width: 0;
  min-height: 0;
  padding: 16px 36px;
  overflow: hidden;
  color: rgb(var(--hero-button-text));
  font-family: var(--senro-sans);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: .15em;
  text-decoration: none;
  text-transform: uppercase;
  background: rgb(var(--hero-button-background));
  border: 1px solid rgb(var(--hero-button-border));
  border-radius: var(--hero-button-radius);
  align-items: center;
  justify-content: center;
  transition: all .4s cubic-bezier(.22, 1, .36, 1);
}

.editable-brand-hero a.editable-brand-hero__button:hover {
  opacity: .82;
}

.editable-brand-hero__scroll-hint {
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: rgb(var(--hero-eyebrow));
  font-family: var(--senro-sans);
  font-size: 11px;
  line-height: 1.6;
  letter-spacing: .2em;
  text-transform: uppercase;
  transform: translateX(-50%);
}

.editable-brand-hero__scroll-hint i {
  width: 1px;
  height: 40px;
  margin-block-start: 12px;
  background: currentcolor;
  opacity: .5;
}

@media (max-width: 768px) {
  .editable-brand-hero {
    min-height: max(100vh, var(--hero-min-height));
  }

  .editable-brand-hero__topbar {
    padding: 20px 24px;
  }

  .editable-brand-hero__navigation {
    display: none;
  }

  .editable-brand-hero__content {
    padding: 100px 24px 60px;
  }

  .editable-brand-hero__eyebrow {
    margin-block-end: 24px;
  }

  .editable-brand-hero__heading {
    font-size: clamp(64px, 14vw, var(--hero-heading-mobile-size));
  }

  .editable-brand-hero__buttons {
    width: 100%;
    max-width: 280px;
    flex-direction: column;
  }

  .editable-brand-hero__button {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .editable-brand-hero__button {
    transition: none;
  }
}
