@layer overrides {
.auth-dialog.imageai-signin-dialog {
    width: min(25rem, calc(100vw - 1.5rem));
    max-width: 25rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #1c1917;
    opacity: 1;
  }
.auth-dialog.imageai-signin-dialog[open] {
    animation: none;
    opacity: 1;
  }
.auth-dialog.imageai-signin-dialog::backdrop {
    background: color-mix(in srgb, #071711 48%, transparent);
    backdrop-filter: blur(6px);
  }
.imageai-signin-dialog .auth-dialog-frame {
    overflow: hidden;
    border: 1px solid color-mix(in srgb, #0b2b21 12%, transparent);
    border-radius: 1.125rem;
    background: #fffdf8;
    box-shadow:
      0 1px 0 color-mix(in srgb, #fff 70%, transparent) inset,
      0 28px 80px color-mix(in srgb, #071711 24%, transparent);
  }
.imageai-signin-dialog .auth-dialog-close {
    top: 0.85rem;
    right: 0.85rem;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 999px;
    color: #7a746c;
  }
.imageai-signin-dialog .auth-dialog-close:hover {
    background: color-mix(in srgb, #1c1917 6%, transparent);
    color: #1c1917;
  }
.imageai-signin-dialog .auth-dialog-panel {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    padding: 1.65rem 1.65rem 1.35rem;
  }
.imageai-signin-dialog .auth-card-header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1.6rem;
    padding: 0;
    text-align: left;
  }
.imageai-signin-dialog .auth-product-lockup {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding-right: 2.5rem;
  }
.imageai-signin-dialog .auth-logo {
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    min-height: 0;
    border-radius: 0.72rem;
    background: transparent;
  }
.imageai-signin-dialog .auth-logo img {
    width: 100%;
    height: 100%;
  }
.imageai-signin-dialog .auth-product-name {
    display: grid;
    gap: 0.05rem;
    line-height: 1.15;
  }
.imageai-signin-dialog .auth-product-name strong {
    font-size: 0.92rem;
    font-weight: 720;
    letter-spacing: -0.015em;
  }
.imageai-signin-dialog .auth-product-name small {
    color: #777169;
    font-size: 0.7rem;
    letter-spacing: 0.025em;
  }
.imageai-signin-dialog .auth-dialog-copy {
    display: grid;
    gap: 0.55rem;
  }
.imageai-signin-dialog .auth-card-header h2 {
    margin: 0;
    font-size: clamp(1.45rem, 4vw, 1.7rem);
    font-weight: 720;
    letter-spacing: -0.045em;
    line-height: 1.12;
  }
.imageai-signin-dialog .auth-card-header p {
    margin: 0;
    max-width: 20rem;
    color: #6f6a63;
    font-size: 0.9rem;
    line-height: 1.55;
  }
.imageai-signin-dialog .auth-validation {
    margin: 0;
    padding: 0.7rem 0.8rem;
    border-radius: 0.75rem;
    background: color-mix(in srgb, #b42318 8%, #fff);
    color: #8a1f16;
    font-size: 0.84rem;
  }
.imageai-signin-dialog .social-auth {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    margin: 0;
  }
.imageai-signin-dialog .imageai-google-button {
    display: grid;
    grid-template-columns: 1.2rem minmax(0, 1fr) 1.2rem;
    align-items: center;
    gap: 0.7rem;
    width: 100%;
    min-height: 3.25rem;
    padding: 0.72rem 1rem;
    border: 1px solid color-mix(in srgb, #0b2b21 18%, transparent);
    border-radius: 0.75rem;
    background: #fff;
    color: #1c1917;
    font-size: 0.95rem;
    font-weight: 650;
    text-decoration: none;
    cursor: pointer;
    font-family: inherit;
    box-shadow: 0 1px 2px color-mix(in srgb, #071711 5%, transparent);
  }
.imageai-signin-dialog .imageai-google-button:hover {
    border-color: color-mix(in srgb, #0b2b21 34%, transparent);
    background: #fbfaf6;
    box-shadow: 0 5px 14px color-mix(in srgb, #071711 8%, transparent);
  }
.imageai-signin-dialog .imageai-google-button:focus-visible {
    outline: 3px solid color-mix(in srgb, #0b5a44 30%, transparent);
    outline-offset: 2px;
  }
.imageai-signin-dialog .imageai-google-button:active {
    background: #f6f4ee;
    box-shadow: none;
  }
.imageai-signin-dialog .imageai-google-mark {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 auto;
  }
.imageai-signin-dialog .imageai-google-button span {
    grid-column: 2;
    text-align: center;
  }
.imageai-signin-dialog .auth-dialog-consent {
    margin: -0.15rem 0 0;
    padding-top: 1rem;
    border-top: 1px solid color-mix(in srgb, #0b2b21 8%, transparent);
    color: #8a847c;
    font-size: 0.76rem;
    line-height: 1.5;
    text-align: center;
  }
.imageai-signin-dialog .auth-dialog-consent a {
    color: #315f52;
    text-decoration: underline;
    text-underline-offset: 0.12em;
  }
.imageai-login-page-shell {
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(28rem, 34rem);
    align-items: start;
    gap: clamp(2.5rem, 6vw, 7rem);
    width: min(90rem, calc(100% - 5rem));
    min-height: calc(100dvh - 4.5rem);
    margin: 0 auto;
    padding: clamp(3.5rem, 7vh, 5.25rem) 0 4rem;
  }
.imageai-login-page-shell::before {
    position: absolute;
    z-index: -1;
    top: 4%;
    right: 27%;
    width: 13rem;
    height: 27rem;
    border-radius: 100% 0 100% 0;
    background: color-mix(in srgb, #285c4d 2.6%, transparent);
    box-shadow: -9rem 12rem 0 color-mix(in srgb, #ad4f30 1.9%, transparent);
    content: "";
    transform: rotate(28deg);
  }
.imageai-login-page-shell::after {
    position: absolute;
    z-index: -1;
    top: 3.5rem;
    right: -1rem;
    width: 10rem;
    color: color-mix(in srgb, #285c4d 58%, transparent);
    content: "More possibilities\A ahead.";
    font-family: "Segoe Print", "Bradley Hand", cursive;
    font-size: 1.05rem;
    font-style: italic;
    line-height: 1.35;
    text-align: center;
    white-space: pre;
    transform: rotate(-7deg);
  }
.imageai-login-intro {
    position: relative;
    display: grid;
    gap: 1.15rem;
    max-width: 38rem;
  }
.imageai-login-intro :is(h1, p) { margin: 0; }
.imageai-login-intro h1 {
    max-width: 11ch;
    color: #173c32;
    font-size: clamp(3.5rem, 6.2vw, 6rem);
    letter-spacing: -0.065em;
    line-height: 0.98;
  }
.imageai-login-intro .eyebrow {
    color: #ad4f30;
    font-size: 0.72rem;
    font-weight: 720;
    letter-spacing: 0.2em;
  }
.imageai-login-intro > p:not(.eyebrow) {
    max-width: 31rem;
    color: #6f6a63;
    font-size: 1rem;
    line-height: 1.7;
  }
.imageai-login-back {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    width: fit-content;
    margin-top: 0.5rem;
    color: #315f52;
    font-size: 0.9rem;
    font-weight: 650;
    text-decoration: none;
  }
.imageai-login-back:hover { text-decoration: underline; }
.imageai-login-collage {
    position: relative;
    width: min(31rem, 96%);
    height: clamp(16rem, 33vh, 20rem);
    margin-top: 0.4rem;
  }
.imageai-login-collage-art {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 18px 24px color-mix(in srgb, #173c32 12%, transparent));
  }
.imageai-login-note {
    position: absolute;
    right: 0.7rem;
    bottom: 2.6rem;
    display: flex;
    width: 8.4rem;
    min-height: 4.8rem;
    padding: 0.8rem;
    align-items: center;
    color: #7a746c;
    font-size: 0.67rem;
    font-weight: 650;
    letter-spacing: 0.1em;
    line-height: 1.5;
    text-transform: uppercase;
    transform: rotate(-2deg);
  }
.imageai-login-hand-note {
    position: absolute;
    left: -1rem;
    bottom: 3.4rem;
    width: 8rem;
    color: #6f6a63;
    font-family: "Segoe Print", "Bradley Hand", cursive;
    font-size: 1rem;
    font-style: italic;
    line-height: 1.45;
    text-align: center;
    transform: rotate(-7deg);
  }
.imageai-login-hand-note::after {
    display: block;
    width: 3.5rem;
    margin: 0.55rem auto 0;
    border-top: 1px solid currentColor;
    content: "";
    transform: rotate(-8deg);
  }
.imageai-login-botanical {
    position: absolute;
    z-index: -1;
    right: -9rem;
    bottom: 0;
    width: clamp(15rem, 22vw, 21rem);
    height: auto;
    opacity: 0.88;
    filter: drop-shadow(-1rem 1rem 1.8rem color-mix(in srgb, #173c32 10%, transparent));
    pointer-events: none;
  }
.imageai-login-rail { display: grid; gap: 1.35rem; }
.imageai-login-card .auth-dialog-frame {
    border-radius: 1.35rem;
    background: linear-gradient(145deg, #fffdf9, #fbf7ef);
    box-shadow: 0 28px 75px color-mix(in srgb, #071711 15%, transparent);
  }
.imageai-login-card .auth-dialog-panel { min-height: 26rem; justify-content: center; gap: 2rem; padding: 2.8rem 3rem 2.2rem; }
.imageai-login-card .auth-card-header { align-items: center; gap: 2rem; text-align: center; }
.imageai-login-card .auth-product-lockup { padding-right: 0; }
.imageai-login-card .auth-logo { width: 3rem; height: 3rem; }
.imageai-login-card .auth-product-name strong { font-size: 1.05rem; }
.imageai-login-card .auth-card-header h2 { font-size: clamp(1.8rem, 3vw, 2.15rem); }
.imageai-login-card .auth-card-header p {
    max-width: 22rem;
    font-size: 0.98rem;
  }
.imageai-login-card .imageai-google-button { min-height: 3.65rem; font-size: 1rem; }
.imageai-login-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 0;
    padding: 0 0.5rem;
    color: #6f6a63;
    font-size: 0.7rem;
    list-style: none;
  }
.imageai-login-benefits li { display: flex; align-items: center; gap: 0.55rem; }
.imageai-login-benefits .ui-icon { width: 1rem; height: 1rem; color: #285c4d; }
.imageai-login-body .shell-public > main {
    background:
      radial-gradient(circle at 64% 43%, color-mix(in srgb, #285c4d 7%, transparent), transparent 24rem),
      radial-gradient(circle, color-mix(in srgb, #173c32 1.8%, transparent) 0 0.55px, transparent 0.7px) 0 0 / 5px 5px,
      linear-gradient(110deg, #fbf8f0, #fffdf8 58%, #f6f1e7);
  }
.imageai-login-signature {
    position: absolute;
    z-index: 2;
    right: 0;
    bottom: 1rem;
    left: 0;
    display: flex;
    justify-content: space-between;
    color: #8a847c;
    font-size: 0.55rem;
    font-weight: 650;
    letter-spacing: 0.32em;
  }
.imageai-login-signature span {
    display: inline-flex;
    align-items: center;
    gap: 1rem;
  }
.imageai-login-signature span::before,
.imageai-login-signature span::after {
    width: 2rem;
    border-top: 1px solid color-mix(in srgb, #173c32 35%, transparent);
    content: "";
  }
.imageai-login-signature span:first-child::after,
.imageai-login-signature span:last-child::before { display: none; }
.imageai-login-body .site-footer { display: none; }
@media (min-width: 110rem) {
.imageai-login-body .shell-public > main {
      position: relative;
      overflow: hidden;
    }
.imageai-login-body .shell-public > main::after {
      position: absolute;
      z-index: 0;
      right: -1.5rem;
      bottom: -7.5rem;
      width: 21.5rem;
      height: 34rem;
      background: url("/images/login/olive-still-life.webp") right bottom / contain no-repeat;
      content: "";
      pointer-events: none;
    }
.imageai-login-page-shell {
      z-index: 1;
      grid-template-columns: minmax(0, 1fr) minmax(27.5rem, 32.5rem);
      align-items: center;
      gap: clamp(4.5rem, 8vw, 8.25rem);
      width: min(82.5rem, calc(100% - 5rem));
      padding: 3.25rem 0 4rem;
    }
.imageai-login-intro {
      gap: 1.15rem;
      max-width: 38.125rem;
    }
.imageai-login-intro h1 {
      max-width: 11ch;
      font-size: clamp(3.375rem, 6vw, 5.375rem);
      line-height: 0.95;
    }
.imageai-login-intro > p:not(.eyebrow) {
      max-width: 32.5rem;
      font-size: 1rem;
      line-height: 1.75;
    }
.imageai-login-back {
      margin-top: 0.6rem;
      font-size: 0.8125rem;
    }
.imageai-login-collage {
      width: min(33rem, 96%);
      height: clamp(15rem, 31vh, 19rem);
      margin-top: 1.25rem;
      transform: translateX(-0.9375rem);
    }
.imageai-login-note {
      right: 0.7rem;
      bottom: 2.6rem;
      width: 8.4rem;
      font-size: 0.67rem;
    }
.imageai-login-rail {
      width: 32.5rem;
      gap: 1.375rem;
      margin-top: 0;
    }
.imageai-login-card .auth-dialog-panel {
      min-height: 27.5rem;
      gap: 1.5rem;
      justify-content: center;
      padding: 3.5rem 3rem 2.375rem;
    }
.imageai-login-card .auth-card-header {
      gap: 2.125rem;
    }
.imageai-login-card .auth-card-header h2 {
      font-size: 1.9375rem;
    }
.imageai-login-card .auth-card-header p {
      max-width: 22rem;
      font-size: 0.875rem;
    }
.imageai-login-card .imageai-google-button {
      min-height: 3.5rem;
      font-size: 0.875rem;
    }
.imageai-login-card .imageai-google-mark {
      width: 1.15rem;
      height: 1.15rem;
    }
.imageai-login-card .auth-dialog-consent {
      font-size: 0.72rem;
    }
.imageai-login-benefits {
      max-width: 32.5rem;
      margin-inline: auto;
      padding: 0 0.5rem;
      gap: 0.75rem;
      font-size: 0.75rem;
    }
.imageai-login-benefits .ui-icon {
      width: 1rem;
      height: 1rem;
    }
.imageai-login-hand-note {
      display: none;
    }
.imageai-login-page-shell::after {
      top: 3.5rem;
      right: -13rem;
      width: 10rem;
      font-size: 1.05rem;
    }
.imageai-login-botanical {
      display: none;
    }
.imageai-login-intro,
.imageai-login-rail {
      position: relative;
      z-index: 1;
    }
}
.imageai-login-body .imageai-login-card .auth-dialog-frame,
.imageai-login-body .imageai-login-card .auth-dialog-panel {
  width: 100%;
}
@layer overrides {
@media (max-width: 48rem) {
.imageai-login-page-shell,
.imageai-login-intro,
.imageai-login-rail,
.imageai-login-card,
.imageai-login-card .auth-dialog-frame,
.imageai-login-card .auth-dialog-panel,
.imageai-login-card .auth-card-header,
.imageai-login-card .auth-dialog-copy {
      min-width: 0;
      max-width: 100%;
    }
.imageai-login-page-shell {
      width: min(100% - 1rem, 29rem);
      padding-top: 1.75rem;
      overflow: clip;
    }
.imageai-login-intro > p:not(.eyebrow),
.imageai-login-card .auth-card-header p,
.imageai-login-card .auth-dialog-consent {
      max-width: 100%;
      overflow-wrap: anywhere;
    }
.imageai-login-card .auth-dialog-panel {
      padding-inline: 1rem;
    }
.imageai-login-benefits {
      grid-template-columns: minmax(0, 1fr);
      gap: 0.55rem;
      padding-inline: 0.25rem;
      font-size: 0.78rem;
    }
.imageai-login-signature { display: none; }
}
}
@media (max-width: 62rem) {
.imageai-login-collage { display: none; }
.imageai-login-botanical { display: none; }
.imageai-login-page-shell::after { display: none; }
.imageai-login-page-shell { grid-template-columns: minmax(0, 1fr) minmax(24rem, 28rem); width: min(60rem, calc(100% - 3rem)); }
}
@media (min-width: 62.001rem) and (max-width: 109.999rem) {
.imageai-login-botanical { display: none; }
.imageai-login-page-shell::after { display: none; }
}
@media (max-width: 90rem) {
.imageai-login-hand-note { display: none; }
}
@media (max-width: 48rem) {
.imageai-login-page-shell {
      grid-template-columns: 1fr;
      gap: 2rem;
      width: min(29rem, calc(100% - 1.5rem));
      min-height: 0;
      padding: 2.5rem 0 4rem;
    }
.imageai-login-intro { gap: 0.75rem; }
.imageai-login-intro h1 { font-size: clamp(2.25rem, 12vw, 3.5rem); }
.imageai-login-card .auth-dialog-panel {
    padding: 1.7rem 1.35rem 1.3rem;
    min-height: 0;
  }
}
@media (max-width: 30rem) {
.imageai-signin-dialog .auth-dialog-panel {
      gap: 1.25rem;
      padding: 1.35rem 1.2rem 1.15rem;
    }
.imageai-signin-dialog .auth-card-header {
      gap: 1.35rem;
    }
}
}
