/* SAMON's original-size, one-letter logo: S → A → M → O → N. */
.aw-head__logo > a,
.aw-foot__logo,
.aw-intro__logo {
  position: relative;
}

.aw-head__logo > a > svg,
.aw-foot__logo > svg,
.aw-intro__logo > i {
  visibility: hidden !important;
}

.aw-head__logo > a::after,
.aw-foot__logo::after,
.aw-intro__logo::after {
  content: "S";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: currentColor;
  font-family: Arial, Helvetica, sans-serif;
  font-size: var(--samon-logo-size, 58px);
  font-weight: 800;
  font-style: normal;
  line-height: 1;
  letter-spacing: -.065em;
  text-indent: -.065em;
  pointer-events: none;
  animation: samon-logo-letter 4.25s step-end infinite, samon-logo-fade .85s ease-in-out infinite;
}

.aw-intro__logo::after {
  font-size: var(--samon-logo-size, 100px);
}

/* This preview does not load the original owner's analytics. */
.aw-cookie,
.ens-cookie,
.fixed.bottom-2.left-2.right-2.z-50:has(a[href^="/cookies"]) { display: none !important; }
html { --aw-cookie-lift: 0px !important; }
[data-samon-hidden-social],
[data-samon-original-form-content] { display: none !important; }

@keyframes samon-logo-letter {
  0%, 100% { content: "S"; }
  20% { content: "A"; }
  40% { content: "M"; }
  60% { content: "O"; }
  80% { content: "N"; }
}

@keyframes samon-logo-fade {
  0% { opacity: .25; transform: translateY(3%); }
  15%, 78% { opacity: 1; transform: translateY(0); }
  100% { opacity: .25; transform: translateY(-3%); }
}

.samon-form-notice {
  grid-column: 1 / -1;
  margin: 0 0 1rem;
  padding: .7rem 0 .7rem .85rem;
  border-left: 2px solid currentColor;
  color: inherit;
  font-size: .8rem;
  line-height: 1.5;
  opacity: .78;
}

.samon-form-notice[role="alert"] {
  opacity: 1;
}

/* Hide the old lead fields even before hydration finishes. */
form.aw-form__body > :not(.samon-project-contact),
form.ens-form > :not(.samon-project-contact) {
  display: none !important;
}

.samon-project-contact {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
  min-width: 0;
  padding: clamp(.25rem, 2vw, 1rem) 0;
  color: inherit;
}

.samon-project-contact__title {
  margin: 0;
  font-size: clamp(1.6rem, 3.5vw, 2.5rem);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.03em;
}

.samon-project-contact__description {
  margin: 0;
  max-width: 28rem;
  font-size: .95rem;
  line-height: 1.6;
  opacity: .8;
}

.samon-project-contact__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  margin-top: .25rem;
  padding: .7rem 1.5rem;
  border: 1px solid currentColor;
  color: inherit;
  font-size: 1.1rem;
  line-height: 1.25;
  text-decoration: none;
}

.samon-project-contact__privacy {
  color: inherit;
  font-size: .72rem;
  line-height: 1.5;
  text-decoration: underline;
  text-underline-offset: .2em;
  opacity: .68;
}

.samon-project-contact a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

@media (max-width: 480px) {
  .samon-project-contact__link { box-sizing: border-box; width: 100%; }
}

.samon-contact-dialog {
  width: min(28rem, calc(100vw - 2rem));
  margin: auto;
  padding: clamp(1.5rem, 5vw, 2.5rem);
  border: 1px solid #777;
  border-radius: 0;
  background: #151515;
  color: #f3f0eb;
  font: inherit;
  z-index: 2147483647;
}

.samon-contact-dialog::backdrop {
  background: rgba(0, 0, 0, .65);
}

.samon-contact-dialog h2 {
  margin: 0 0 1rem;
  font-size: 1.4rem;
  font-weight: 500;
}

.samon-contact-dialog p {
  margin: 0 0 1.5rem;
  line-height: 1.55;
}

.samon-contact-dialog button {
  border: 1px solid currentColor;
  padding: .65rem 1.25rem;
  background: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
}

.samon-contact-dialog button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

html[data-theme="light"] .samon-contact-dialog {
  background: #f3f0eb;
  color: #151515;
}

@media (prefers-reduced-motion: reduce) {
  .aw-head__logo > a::after,
  .aw-foot__logo::after,
  .aw-intro__logo::after {
    content: "S";
    animation: none;
    opacity: 1;
    transform: none;
  }
}
