/**
 * Green Harvest Investments — forest green + lime + gold reskin
 * Flyer palette; domain greenharvest.pro
 */
:root {
  --nw-navy: #1b6b3a;
  --nw-navy-dark: #0f3d24;
  --nw-navy-light: #2e8b57;
  --nw-navy-muted: #3d9a62;
  --nw-gold: #f5b800;
  --nw-gold-dark: #d4a000;
  --nw-gold-light: #ffcf33;
  --nw-gold-pale: #f1f8e9;
  --nw-bg: #ffffff;
  --nw-bg-alt: #f1f8e9;
  --nw-surface: #ffffff;
  --nw-text: #0f3d24;
  --nw-text-muted: #4a6741;
  --nw-border: rgba(139, 195, 74, 0.55);
  --nw-border-soft: rgba(27, 107, 58, 0.14);
  --nw-shadow: 0 8px 32px rgba(15, 61, 36, 0.08);
  --nw-shadow-lg: 0 16px 48px rgba(15, 61, 36, 0.12);

  --as-navy: #1b6b3a;
  --as-navy-dark: #0f3d24;
  --as-navy-light: #2e8b57;
  --as-gold: #f5b800;
  --as-gold-dark: #d4a000;
  --as-gold-light: #ffcf33;
  --as-gold-pale: #f1f8e9;
  --as-purple: #5b2c8a;
  --as-teal: #43a047;

  --gh-green: #1b6b3a;
  --gh-green-dark: #0f3d24;
  --gh-green-light: #2e8b57;
  --gh-lime: #8bc34a;
  --gh-lime-light: #aed581;
  --gh-gold: #f5b800;

  --dt-gold: var(--gh-gold);
  --dt-gold-bright: var(--as-gold-light);
  --dt-gold-deep: var(--as-gold-dark);
  --dt-gold-dark: var(--gh-green-dark);
  --dt-champagne: var(--as-gold-pale);
  --dt-sky: var(--nw-bg);
  --dt-tower: var(--nw-surface);
  --dt-glass: rgba(255, 255, 255, 0.98);
  --dt-border: var(--nw-border);
  --dt-border-soft: var(--nw-border-soft);
  --dt-glow: rgba(139, 195, 74, 0.35);
}

body {
  color: var(--gh-green-dark);
  background-color: var(--nw-bg);
}

::selection {
  background: rgba(139, 195, 74, 0.35);
  color: var(--gh-green-dark);
}

.dt-tower-bg,
.auth-surface {
  background-color: #eef7ee !important;
  background-image:
    radial-gradient(ellipse 90% 55% at 50% -8%, rgba(27, 107, 58, 0.16), transparent 58%),
    radial-gradient(ellipse 55% 42% at 100% 0%, rgba(245, 184, 0, 0.16), transparent 52%),
    linear-gradient(180deg, #e6f2e8 0%, #f1f8e9 45%, #fffdf5 100%) !important;
  color: var(--gh-green-dark);
}

/* Brand — Green Harvest logo image */
.nw-brand--greenharvest.nw-brand--img,
.nw-brand--ascendia.nw-brand--img {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0.2rem !important;
  line-height: 1;
}
.nw-brand--greenharvest .nw-brand__img,
.nw-brand--ascendia .nw-brand__img {
  display: block;
  width: auto;
  height: auto;
  object-fit: contain;
  background: transparent !important;
}
.nw-brand__img--mark {
  width: 44px !important;
  height: 44px !important;
}
.nw-brand__img--full {
  width: auto !important;
  max-width: min(220px, 62vw) !important;
  height: 52px !important;
}
.nw-brand--greenharvest .nw-brand__img {
  background: transparent !important;
  mix-blend-mode: normal;
}

/* Buttons — green + gold */
.nw-btn-primary,
.inv-dash .dash-cta,
.inv-dash .plan-card__cta,
.inv-dash .nw-btn-primary,
.auth-btn-primary,
.auth-card .btn.btn--base,
.inv-stack .btn.btn--base,
.dash-balance-btn--gold,
.profile-cta-navy,
.auth-submit,
.as-wallet__btn--gold,
.as-plan__cta,
.as-ticket__go,
.as-dep__cta,
.as-dep__help-btn {
  border-color: rgba(245, 184, 0, 0.65) !important;
  background:
    linear-gradient(180deg, rgba(245, 184, 0, 0.2) 0%, transparent 40%),
    linear-gradient(165deg, #2e8b57 0%, #1b6b3a 50%, #0f3d24 100%) !important;
  color: #fff !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.18) inset,
    0 8px 22px rgba(15, 61, 36, 0.28) !important;
}

.as-wallet__btn--gold,
.as-ticket__go,
.as-dep__cta,
.as-dep__help-btn,
.as-quick__feature-go {
  color: #0f3d24 !important;
  background: linear-gradient(180deg, #ffcf33 0%, #f5b800 55%, #d4a000 100%) !important;
  box-shadow: 0 8px 20px rgba(245, 184, 0, 0.28) !important;
}

.as-wallet {
  background:
    linear-gradient(145deg, rgba(245, 184, 0, 0.14) 0%, transparent 38%),
    linear-gradient(165deg, #2e8b57 0%, #1b6b3a 48%, #0f3d24 100%) !important;
  border-color: rgba(245, 184, 0, 0.45) !important;
  color: #fff !important;
}
.as-wallet p,
.as-wallet span,
.as-wallet__amount,
.as-wallet__label,
.as-wallet__hello,
.as-wallet__slot-val,
.as-wallet__slot-label {
  color: #fff !important;
}
.as-wallet__btn--gold,
.as-wallet__btn--gold span,
.as-wallet__btn--gold i,
.as-wallet__btn--gold svg {
  color: #0f3d24 !important;
}
.as-wallet__btn--ghost {
  border-color: rgba(245, 184, 0, 0.55) !important;
  color: #fff !important;
}
.as-wallet__dot,
.as-wallet__sym,
.as-wallet__slot--profit .as-wallet__slot-val,
.as-wallet__label {
  color: #ffcf33 !important;
}
.as-wallet__dot {
  background: #f5b800 !important;
  box-shadow: 0 0 0 3px rgba(245, 184, 0, 0.28) !important;
}
.as-wallet__badge {
  background: rgba(245, 184, 0, 0.18) !important;
  border-color: rgba(245, 184, 0, 0.45) !important;
  color: #ffcf33 !important;
}
.as-wallet__bars span {
  background: linear-gradient(180deg, #aed581, #8bc34a) !important;
}

/* Auth cards — keep body text green on light surfaces */
.auth-surface .auth-title {
  color: #0f3d24 !important;
}
.auth-surface .auth-lead,
.auth-surface .auth-foot p,
.auth-surface .auth-hint,
.auth-surface .inv-banner p,
.auth-surface .inv-banner li {
  color: #4a6741 !important;
}
.auth-surface .inv-banner__title {
  color: #1b6b3a !important;
}
.auth-surface .auth-ghost {
  color: #0f3d24 !important;
}
.auth-surface .auth-label,
.auth-surface .auth-label i {
  color: #1b6b3a !important;
}
.auth-card::before {
  background: linear-gradient(90deg, #0f3d24 0%, #f5b800 45%, #8bc34a 70%, #0f3d24 100%) !important;
}
.auth-avatar {
  background:
    linear-gradient(180deg, rgba(245, 184, 0, 0.25) 0%, transparent 42%),
    linear-gradient(165deg, #2e8b57, #1b6b3a 50%, #0f3d24) !important;
}

/* Code verify inputs + verification copy */
.auth-surface .inv-code-input {
  color: #0f3d24 !important;
  border-color: rgba(27, 107, 58, 0.28) !important;
  background: #fff !important;
}
.auth-surface .inv-code-input:focus {
  border-color: #8bc34a !important;
  background: #f1f8e9 !important;
  box-shadow: 0 0 0 3px rgba(139, 195, 74, 0.25) !important;
}
.auth-surface .inv-code-input.filled {
  border-color: #1b6b3a !important;
  background: rgba(139, 195, 74, 0.12) !important;
  color: #0f3d24 !important;
}
.auth-surface .verification-text {
  color: #4a6741 !important;
}
.auth-surface .requirement-met {
  color: #1b6b3a !important;
}
.auth-surface .requirement-met .dot {
  background-color: #8bc34a !important;
}

.as-ticker {
  background:
    radial-gradient(ellipse 70% 120% at 10% 50%, rgba(139, 195, 74, 0.22), transparent 55%),
    linear-gradient(165deg, #2e8b57 0%, #1b6b3a 52%, #0f3d24 100%) !important;
  border-color: rgba(245, 184, 0, 0.4) !important;
}
.as-ticker__fade--left {
  background: linear-gradient(90deg, #1b6b3a, transparent) !important;
}
.as-ticker__fade--right {
  background: linear-gradient(270deg, #0f3d24, transparent) !important;
}
.as-ticker__badge {
  background:
    radial-gradient(circle at 30% 25%, #f1f8e9, transparent 45%),
    linear-gradient(160deg, #aed581, #8bc34a 55%, #689f38) !important;
}
.as-ticker__badge--navy {
  color: #ffcf33 !important;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, 0.25), transparent 45%),
    linear-gradient(160deg, #2e8b57, #0f3d24) !important;
}

.as-quick__icon,
.as-why__icon,
.as-ticket__stub-rate,
.as-dep__card-mark,
.as-dep__balance-icon,
.as-dep__currency,
.as-dep__help-icon,
.as-dep__tip-num,
.as-wa__bubble-icon {
  color: #0f3d24 !important;
  background: linear-gradient(160deg, #aed581, #8bc34a 55%, #f5b800) !important;
}

.as-quick__tile--feature,
.as-dep__balance,
.as-dep__help,
.as-dep__limits,
.as-ticket__stub,
.as-wa__head,
.as-plan__hero-block,
.as-plan__rate {
  background:
    linear-gradient(145deg, rgba(245, 184, 0, 0.16) 0%, transparent 42%),
    linear-gradient(165deg, #2e8b57 0%, #1b6b3a 52%, #0f3d24 100%) !important;
  border-color: rgba(245, 184, 0, 0.4) !important;
}

.as-plans__eyebrow,
.as-quick__eyebrow,
.as-why__eyebrow,
.as-dep__eyebrow,
.as-plans__title,
.as-quick__title,
.as-why__title,
.as-dep__title,
.as-ticket__earn-val,
.as-ticket__node b,
.as-plan__name {
  color: var(--gh-green-dark) !important;
}
.as-plans__eyebrow,
.as-quick__eyebrow,
.as-why__eyebrow,
.as-dep__eyebrow,
.as-why__tag,
.as-ticket__status {
  color: #689f38 !important;
}
.as-ticket__status {
  background: rgba(139, 195, 74, 0.2) !important;
  border-color: rgba(139, 195, 74, 0.45) !important;
}
.as-ticket__go {
  color: #0f3d24 !important;
  background: #f5b800 !important;
}
.as-plans__count {
  color: #fff !important;
  background: #1b6b3a !important;
}
.as-ticket__stub {
  border-right-color: rgba(245, 184, 0, 0.55) !important;
}
.as-ticket__node:last-child b,
.as-plan__metric-val--gold {
  color: #d4a000 !important;
}

.as-why__media {
  background: linear-gradient(165deg, #2e8b57, #1b6b3a 55%, #0f3d24) !important;
}
.as-why__num {
  background: rgba(245, 184, 0, 0.92) !important;
  color: #0f3d24 !important;
}
.as-why__dot.is-active {
  background: #8bc34a !important;
}

.as-wa {
  background: rgba(15, 61, 36, 0.62) !important;
}
.as-wa__logo {
  background: linear-gradient(145deg, #25d366, #128c7e) !important;
}
.as-wa__badge {
  background: #f5b800 !important;
  color: #0f3d24 !important;
}
.as-wa__join {
  background: linear-gradient(145deg, #25d366, #128c7e) !important;
}

.as-dep__back,
.as-dep__hist,
.as-dep__select,
.as-dep__input,
.as-dep__chip {
  border-color: rgba(139, 195, 74, 0.45) !important;
}
.as-dep__select,
.as-dep__input {
  color: var(--gh-green-dark) !important;
}
.as-dep__chip.is-active,
.inv-dash .as-dep__chip.is-active {
  background: linear-gradient(165deg, #2e8b57, #1b6b3a 55%, #0f3d24) !important;
  border-color: rgba(245, 184, 0, 0.55) !important;
}
.as-dep__limits-bar span {
  background: linear-gradient(90deg, #aed581, #f5b800) !important;
}

.app-navbar__dock {
  background: #ffffff !important;
  border-color: rgba(139, 195, 74, 0.4) !important;
}
.app-navbar .nav-item.active .icon,
.app-navbar .nav-item.active .label {
  color: var(--gh-green) !important;
}
.app-navbar .center-button {
  background:
    linear-gradient(180deg, rgba(245, 184, 0, 0.28) 0%, transparent 42%),
    linear-gradient(165deg, #2e8b57, #1b6b3a 50%, #0f3d24) !important;
  border: 3px solid #fff !important;
  box-shadow:
    0 0 0 2px rgba(245, 184, 0, 0.65),
    0 10px 26px rgba(15, 61, 36, 0.3) !important;
}

.auth-tabs .auth-tab-active {
  background:
    linear-gradient(180deg, rgba(245, 184, 0, 0.2) 0%, transparent 40%),
    linear-gradient(165deg, #2e8b57, #1b6b3a 50%, #0f3d24) !important;
  border: 1px solid rgba(245, 184, 0, 0.55) !important;
  color: #fff !important;
}

.inv-dash .from-nova-navy,
.auth-surface .from-nova-navy {
  --tw-gradient-from: #1b6b3a var(--tw-gradient-from-position) !important;
}
.inv-dash .to-nova-navy-dark,
.auth-surface .to-nova-navy-dark {
  --tw-gradient-to: #0f3d24 var(--tw-gradient-to-position) !important;
}
.inv-dash .from-nova-gold {
  --tw-gradient-from: #f5b800 var(--tw-gradient-from-position) !important;
}

:root {
  --nav-primary: #1b6b3a;
  --nav-primary-deep: #0f3d24;
  --nav-gold-soft: #f5b800;
}

/* Green Harvest yield plan cards — new UX (not tickets) */
.gh-plans { margin-top: 0.15rem; }
.gh-plans__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 0.95rem;
}
.gh-plans__eyebrow {
  margin: 0 0 0.2rem;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #689f38;
}
.gh-plans__title {
  margin: 0 0 0.2rem;
  font-size: 1.2rem;
  font-weight: 800;
  color: #0f3d24;
}
.gh-plans__desc {
  margin: 0;
  font-size: 0.78rem;
  line-height: 1.35;
  color: #4a6741;
  max-width: 17rem;
}
.gh-plans__count {
  min-width: 2.3rem;
  height: 2.3rem;
  border-radius: 999px;
  display: grid;
  place-content: center;
  font-size: 0.9rem;
  font-weight: 800;
  color: #fff;
  background: #1b6b3a;
}
.gh-plans__list {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.gh-yield {
  overflow: hidden;
  border-radius: 1.25rem;
  background: #fff;
  border: 1px solid rgba(139, 195, 74, 0.45);
  box-shadow: 0 12px 28px rgba(15, 61, 36, 0.08);
}
.gh-yield__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  padding: 0.9rem 1rem;
  background:
    linear-gradient(145deg, rgba(245, 184, 0, 0.12) 0%, transparent 50%),
    linear-gradient(165deg, #2e8b57 0%, #1b6b3a 55%, #0f3d24 100%);
  color: #fff;
}
.gh-yield__identity {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  min-width: 0;
}
.gh-yield__leaf {
  width: 2.45rem;
  height: 2.45rem;
  border-radius: 0.75rem;
  display: grid;
  place-content: center;
  flex-shrink: 0;
  color: #0f3d24;
  background: linear-gradient(160deg, #aed581, #f5b800);
}
.gh-yield__name {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.15;
}
.gh-yield__sub {
  margin: 0.15rem 0 0;
  font-size: 0.7rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.72);
}
.gh-yield__badges {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.3rem;
  flex-shrink: 0;
}
.gh-yield__rate {
  padding: 0.22rem 0.55rem;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #0f3d24;
  background: #f5b800;
}
.gh-yield__open {
  font-size: 0.6rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 207, 51, 0.95);
}

.gh-yield__hero {
  padding: 1.1rem 1rem 0.85rem;
  text-align: center;
  background: linear-gradient(180deg, #f1f8e9, #fff);
}
.gh-yield__hero-label {
  margin: 0;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #689f38;
}
.gh-yield__hero-val {
  margin: 0.25rem 0 0.15rem;
  font-size: 2.1rem;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #0f3d24;
}
.gh-yield__hero-hint {
  margin: 0 0 0.75rem;
  font-size: 0.72rem;
  font-weight: 600;
  color: #4a6741;
}
.gh-yield__meter {
  height: 7px;
  border-radius: 999px;
  background: rgba(27, 107, 58, 0.1);
  overflow: hidden;
}
.gh-yield__meter span {
  display: block;
  width: 72%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #8bc34a, #f5b800);
}

.gh-yield__journey {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 0.4rem;
  margin: 0.75rem 0.9rem;
  padding: 0.75rem 0.65rem;
  border-radius: 1rem;
  background: #f4faf4;
  border: 1px solid rgba(139, 195, 74, 0.35);
}
.gh-yield__step {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}
.gh-yield__step-ico {
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 0.5rem;
  display: grid;
  place-content: center;
  margin-bottom: 0.15rem;
  color: #0f3d24;
  background: #dcedc8;
}
.gh-yield__step--gold .gh-yield__step-ico {
  background: linear-gradient(160deg, #ffcf33, #f5b800);
}
.gh-yield__step--gain .gh-yield__step-ico {
  color: #fff;
  background: linear-gradient(160deg, #8bc34a, #1b6b3a);
}
.gh-yield__step-k {
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #4a6741;
}
.gh-yield__step strong {
  font-size: 0.9rem;
  font-weight: 800;
  color: #0f3d24;
  word-break: break-word;
}
.gh-yield__step--gold strong {
  color: #d4a000;
}
.gh-yield__step--gain strong {
  color: #1b6b3a;
}
.gh-yield__grow {
  color: #8bc34a;
}

.gh-yield__facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.4rem;
  margin: 0 0.9rem 0.75rem;
}
.gh-yield__facts > div {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
  padding: 0.55rem 0.4rem;
  border-radius: 0.75rem;
  text-align: center;
  background: #fff;
  border: 1px solid rgba(27, 107, 58, 0.1);
}
.gh-yield__fact--return {
  background: linear-gradient(180deg, #f1f8e9, #e8f5e9) !important;
  border-color: rgba(139, 195, 74, 0.55) !important;
}
.gh-yield__facts span {
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: #4a6741;
}
.gh-yield__facts b {
  font-size: 0.78rem;
  font-weight: 800;
  color: #0f3d24;
  word-break: break-word;
}
.gh-yield__fact--return span {
  color: #689f38 !important;
}
.gh-yield__fact--return b {
  color: #1b6b3a !important;
}

.gh-yield__note {
  margin: 0 0.9rem 0.85rem;
  padding: 0.65rem 0.7rem;
  border-radius: 0.75rem;
  font-size: 0.72rem;
  line-height: 1.45;
  color: #4a6741;
  background: rgba(245, 184, 0, 0.1);
  border: 1px solid rgba(245, 184, 0, 0.28);
}
.gh-yield__note strong {
  color: #0f3d24;
  font-weight: 800;
}
.gh-yield__note-gain {
  color: #1b6b3a !important;
}

.gh-yield__form {
  margin: 0;
  padding: 0 0.9rem 0.95rem;
}
.gh-yield__cta {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  padding: 0.85rem 1rem;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: #0f3d24;
  background: linear-gradient(180deg, #ffcf33 0%, #f5b800 55%, #d4a000 100%);
  box-shadow: 0 10px 22px rgba(245, 184, 0, 0.28);
  transition: transform 0.15s ease, filter 0.15s ease;
}
.gh-yield__cta:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
}
.gh-yield__cta span {
  flex: 1;
  text-align: center;
  color: #0f3d24 !important;
}

.gh-yield--empty {
  text-align: center;
  padding: 1.75rem 1rem;
  color: #4a6741;
}
.gh-yield--empty svg {
  margin: 0 auto 0.5rem;
  color: #689f38;
}
.gh-yield--empty p {
  margin: 0;
  font-size: 0.85rem;
}

.inv-dash .gh-yield__hero-val,
.inv-dash .gh-yield__name,
.inv-dash .gh-yield__step strong,
.inv-dash .gh-yield__facts b,
.inv-dash .gh-yield__note strong {
  color: inherit;
}
.inv-dash .gh-yield__hero-val {
  color: #0f3d24 !important;
}
.inv-dash .gh-yield__head .gh-yield__name,
.inv-dash .gh-yield__head p {
  color: #fff !important;
}
.inv-dash .gh-yield__sub {
  color: rgba(255, 255, 255, 0.72) !important;
}
.inv-dash .gh-yield__note,
.inv-dash .gh-yield__hero-hint,
.inv-dash .gh-yield__step-k,
.inv-dash .gh-yield__facts span {
  color: #4a6741 !important;
}
.inv-dash .gh-yield__step--gold strong {
  color: #d4a000 !important;
}
.inv-dash .gh-yield__step--gain strong,
.inv-dash .gh-yield__fact--return b,
.inv-dash .gh-yield__note-gain {
  color: #1b6b3a !important;
}
.inv-dash .gh-yield__fact--return span {
  color: #689f38 !important;
}

/* ═══════════════════════════════════════════
   Auth Gate — split field + form (login/register)
   ═══════════════════════════════════════════ */
.gh-gate {
  --gate-font: 'Outfit', 'Montserrat', system-ui, sans-serif;
  --gate-display: 'Fraunces', Georgia, serif;
  min-height: 100vh;
  min-height: 100dvh;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  margin: 0;
  font-family: var(--gate-font);
  color: #0f3d24;
  background: #f4faf4;
  overflow: hidden;
}

.gh-gate__field {
  position: relative;
  min-height: 100vh;
  min-height: 100dvh;
  display: flex;
  align-items: flex-end;
  padding: 2.5rem 2.75rem 3rem;
  color: #fff;
  overflow: hidden;
}

.gh-gate__field-media {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.gh-gate__field-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: scale(1.08);
  animation: gh-gate-kenburns 22s ease-in-out infinite alternate;
}

.gh-gate__field-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(15, 61, 36, 0.35) 0%, rgba(15, 61, 36, 0.55) 42%, rgba(8, 32, 18, 0.92) 100%),
    linear-gradient(90deg, rgba(15, 61, 36, 0.25), transparent 55%);
}

.gh-gate__leaves {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}
.gh-gate__leaves span {
  position: absolute;
  width: 10px;
  height: 16px;
  border-radius: 0 70% 0 70%;
  background: rgba(174, 213, 129, 0.55);
  filter: blur(0.2px);
  animation: gh-gate-float 14s ease-in-out infinite;
}
.gh-gate__leaves span:nth-child(1) { left: 12%; top: 18%; animation-delay: 0s; }
.gh-gate__leaves span:nth-child(2) { left: 28%; top: 62%; width: 8px; height: 12px; animation-delay: -3s; background: rgba(245, 184, 0, 0.35); }
.gh-gate__leaves span:nth-child(3) { left: 68%; top: 22%; width: 12px; height: 18px; animation-delay: -6s; }
.gh-gate__leaves span:nth-child(4) { left: 82%; top: 58%; animation-delay: -9s; background: rgba(139, 195, 74, 0.5); }
.gh-gate__leaves span:nth-child(5) { left: 48%; top: 40%; width: 7px; height: 11px; animation-delay: -11s; }

.gh-gate__field-copy {
  position: relative;
  z-index: 2;
  max-width: 28rem;
  animation: gh-gate-rise 0.85s ease-out both;
}

.gh-gate__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.5rem;
  padding: 0.65rem 0.95rem;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22);
  text-decoration: none;
}
.gh-gate__brand-img {
  display: block;
  height: 52px;
  width: auto;
  max-width: min(240px, 70vw);
  filter: none;
}
.gh-gate__mobile-brand a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.55rem 0.85rem;
  border-radius: 0.9rem;
  background: #ffffff;
  box-shadow: 0 6px 18px rgba(15, 61, 36, 0.12);
  text-decoration: none;
}

.gh-gate__eyebrow {
  margin: 0 0 0.65rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #aed581;
}

.gh-gate__headline {
  margin: 0 0 0.85rem;
  font-family: var(--gate-display);
  font-size: clamp(1.85rem, 3.2vw, 2.65rem);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: #fff;
}
.gh-gate__headline em {
  font-style: italic;
  color: #f5b800;
  font-weight: 600;
}

.gh-gate__tagline {
  margin: 0 0 1.5rem;
  font-size: 1rem;
  line-height: 1.55;
  color: rgba(255, 255, 255, 0.82);
  max-width: 22rem;
}

.gh-gate__perks {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}
.gh-gate__perks li {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 0.88rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.92);
}
.gh-gate__perks i,
.gh-gate__perks svg {
  color: #aed581;
  flex-shrink: 0;
}

.gh-gate__panel {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem 1.5rem;
  background:
    radial-gradient(ellipse 80% 50% at 100% 0%, rgba(139, 195, 74, 0.14), transparent 55%),
    radial-gradient(ellipse 60% 40% at 0% 100%, rgba(245, 184, 0, 0.1), transparent 50%),
    linear-gradient(165deg, #f7fbf6 0%, #ffffff 48%, #f1f8e9 100%);
  overflow-y: auto;
  max-height: 100vh;
  max-height: 100dvh;
  animation: gh-gate-slide 0.7s ease-out both;
}

.gh-gate__panel-inner {
  width: 100%;
  max-width: 24.5rem;
}

.gh-gate__mobile-brand {
  display: none;
  margin-bottom: 1.25rem;
}
.gh-gate__mobile-brand img {
  height: 44px;
  width: auto;
  max-width: 200px;
}

.gh-gate__switch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.25rem;
  padding: 0.3rem;
  margin-bottom: 1.75rem;
  border-radius: 999px;
  background: rgba(27, 107, 58, 0.08);
  border: 1px solid rgba(27, 107, 58, 0.12);
}
.gh-gate__switch-active,
.gh-gate__switch-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.7rem 1rem;
  border-radius: 999px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, box-shadow 0.2s;
}
.gh-gate__switch-active {
  background: linear-gradient(165deg, #2e8b57, #1b6b3a 55%, #0f3d24);
  color: #fff;
  box-shadow: 0 8px 18px rgba(15, 61, 36, 0.22);
}
.gh-gate__switch-link {
  color: #4a6741;
}
.gh-gate__switch-link:hover {
  color: #0f3d24;
  background: rgba(255, 255, 255, 0.65);
}

.gh-gate__intro {
  margin-bottom: 1.5rem;
}
.gh-gate__title {
  margin: 0 0 0.35rem;
  font-family: var(--gate-display);
  font-size: 1.85rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: #0f3d24;
  line-height: 1.2;
}
.gh-gate__lead {
  margin: 0;
  font-size: 0.92rem;
  color: #4a6741;
  line-height: 1.45;
}

.gh-gate__ref {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  margin-bottom: 1.15rem;
  padding: 0.75rem 0.9rem;
  border-radius: 0.85rem;
  background: linear-gradient(90deg, rgba(245, 184, 0, 0.16), rgba(139, 195, 74, 0.12));
  border: 1px solid rgba(245, 184, 0, 0.35);
  font-size: 0.85rem;
  color: #4a6741;
}
.gh-gate__ref strong {
  color: #0f3d24;
  font-weight: 800;
}
.gh-gate__ref i,
.gh-gate__ref svg {
  color: #d4a000;
}

.gh-gate__form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.gh-gate__row {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin: 0;
}

.gh-gate__label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #1b6b3a;
}

.gh-gate__control {
  display: flex;
  align-items: center;
  gap: 0.55rem;
  padding: 0 0.95rem;
  min-height: 3.15rem;
  border-radius: 0.95rem;
  background: #fff;
  border: 1.5px solid rgba(27, 107, 58, 0.16);
  box-shadow: 0 1px 2px rgba(15, 61, 36, 0.04);
  transition: border-color 0.18s, box-shadow 0.18s, background 0.18s;
}
.gh-gate__control:focus-within {
  border-color: #8bc34a;
  background: #fcfffa;
  box-shadow: 0 0 0 3px rgba(139, 195, 74, 0.22);
}
.gh-gate__control > i,
.gh-gate__control > svg {
  color: #689f38;
  flex-shrink: 0;
}
.gh-gate__control input {
  flex: 1;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 500;
  color: #0f3d24;
  padding: 0.85rem 0;
}
.gh-gate__control input::placeholder {
  color: #8a9e84;
  font-weight: 400;
}

.gh-gate__control--prefix {
  padding-left: 0.75rem;
}
.gh-gate__prefix {
  flex-shrink: 0;
  font-size: 0.88rem;
  font-weight: 800;
  color: #1b6b3a;
  padding-right: 0.55rem;
  border-right: 1px solid rgba(27, 107, 58, 0.18);
  margin-right: 0.15rem;
}

.gh-gate__eye {
  display: grid;
  place-content: center;
  width: 2rem;
  height: 2rem;
  border: 0;
  border-radius: 0.5rem;
  background: transparent;
  color: #4a6741;
  cursor: pointer;
  padding: 0;
}
.gh-gate__eye:hover {
  background: rgba(27, 107, 58, 0.08);
  color: #0f3d24;
}

.gh-gate__hint {
  font-size: 0.75rem;
  color: #689f38;
}
.gh-gate__error {
  display: block;
  font-size: 0.75rem;
  font-weight: 600;
  color: #c62828;
  min-height: 0;
}

.gh-gate__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  flex-wrap: wrap;
}

.gh-gate__check {
  display: inline-flex;
  align-items: flex-start;
  gap: 0.55rem;
  cursor: pointer;
  font-size: 0.85rem;
  color: #4a6741;
  line-height: 1.4;
}
.gh-gate__check input {
  margin-top: 0.15rem;
  accent-color: #1b6b3a;
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}
.gh-gate__check a {
  color: #1b6b3a;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.gh-gate__forgot {
  font-size: 0.85rem;
  font-weight: 700;
  color: #1b6b3a;
  text-decoration: none;
}
.gh-gate__forgot:hover {
  color: #0f3d24;
  text-decoration: underline;
}

.gh-gate__policy {
  margin-top: 0.15rem;
}

.gh-gate__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  width: 100%;
  margin-top: 0.35rem;
  padding: 0.95rem 1.25rem;
  border: 0;
  border-radius: 999px;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.88rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-decoration: none;
  color: #0f3d24 !important;
  background: linear-gradient(180deg, #ffcf33 0%, #f5b800 55%, #d4a000 100%);
  box-shadow: 0 12px 28px rgba(245, 184, 0, 0.32);
  transition: transform 0.15s ease, filter 0.15s ease, box-shadow 0.15s ease;
}
.gh-gate__submit:hover {
  filter: brightness(1.04);
  transform: translateY(-1px);
  box-shadow: 0 16px 32px rgba(245, 184, 0, 0.38);
}
.gh-gate__submit:active {
  transform: translateY(0) scale(0.99);
}
.gh-gate__submit span,
.gh-gate__submit i,
.gh-gate__submit svg {
  color: #0f3d24 !important;
}
.gh-gate__submit--sm {
  width: auto;
  padding: 0.7rem 1.25rem;
  font-size: 0.78rem;
  margin-top: 0;
}

.gh-gate__foot {
  margin: 1.5rem 0 0;
  text-align: center;
  font-size: 0.9rem;
  color: #4a6741;
}
.gh-gate__foot a {
  color: #1b6b3a;
  font-weight: 800;
  text-decoration: none;
  margin-left: 0.25rem;
}
.gh-gate__foot a:hover {
  text-decoration: underline;
}

/* Captcha / form bits inside gate */
.gh-gate .form-group,
.gh-gate .mb-3 {
  margin-bottom: 0 !important;
}
.gh-gate .form--control,
.gh-gate .form-control {
  border-radius: 0.95rem !important;
  border: 1.5px solid rgba(27, 107, 58, 0.16) !important;
  background: #fff !important;
  color: #0f3d24 !important;
}

/* Exist modal */
.gh-gate-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 1050;
  background: rgba(8, 32, 18, 0.55);
  backdrop-filter: blur(4px);
  align-items: center;
  justify-content: center;
  padding: 1rem;
}
.gh-gate-modal.showing {
  display: flex;
}
.gh-gate-modal__dialog {
  width: 100%;
  max-width: 22rem;
}
.gh-gate-modal__card {
  background: #fff;
  border-radius: 1.15rem;
  padding: 1.35rem 1.25rem 1.25rem;
  border: 1px solid rgba(27, 107, 58, 0.14);
  box-shadow: 0 24px 48px rgba(15, 61, 36, 0.22);
}
.gh-gate-modal__head {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 0.75rem;
}
.gh-gate-modal__head h5 {
  margin: 0;
  flex: 1;
  font-family: var(--gate-display, 'Fraunces', Georgia, serif);
  font-size: 1.15rem;
  font-weight: 700;
  color: #0f3d24;
}
.gh-gate-modal__icon {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 0.7rem;
  display: grid;
  place-content: center;
  background: #e8f5e9;
  color: #1b6b3a;
}
.gh-gate-modal__close {
  border: 0;
  background: transparent;
  color: #4a6741;
  cursor: pointer;
  padding: 0.25rem;
  border-radius: 0.4rem;
}
.gh-gate-modal__card > p {
  margin: 0 0 1.15rem;
  font-size: 0.9rem;
  line-height: 1.45;
  color: #4a6741;
}
.gh-gate-modal__actions {
  display: flex;
  gap: 0.65rem;
  justify-content: flex-end;
  align-items: center;
}
.gh-gate-modal__ghost {
  border: 1px solid rgba(27, 107, 58, 0.2);
  background: #fff;
  color: #1b6b3a;
  font-weight: 700;
  font-size: 0.8rem;
  padding: 0.65rem 1rem;
  border-radius: 999px;
  cursor: pointer;
}

@keyframes gh-gate-kenburns {
  0% { transform: scale(1.05) translate3d(0, 0, 0); }
  100% { transform: scale(1.14) translate3d(-2%, 1%, 0); }
}
@keyframes gh-gate-float {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(0deg); opacity: 0.45; }
  50% { transform: translate3d(12px, -28px, 0) rotate(18deg); opacity: 0.9; }
}
@keyframes gh-gate-rise {
  from { opacity: 0; transform: translateY(18px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes gh-gate-slide {
  from { opacity: 0; transform: translateX(22px); }
  to { opacity: 1; transform: translateX(0); }
}

@media (prefers-reduced-motion: reduce) {
  .gh-gate__field-img,
  .gh-gate__leaves span,
  .gh-gate__field-copy,
  .gh-gate__panel {
    animation: none !important;
  }
  .gh-gate__field-img { transform: none; }
}

@media (max-width: 960px) {
  .gh-gate {
    grid-template-columns: 1fr;
    overflow: auto;
  }
  .gh-gate__field {
    min-height: 0;
    padding: 1.5rem 1.25rem 1.75rem;
  }
  .gh-gate__field-media {
    min-height: 220px;
  }
  .gh-gate__field-img {
    min-height: 220px;
    animation: none;
    transform: scale(1.04);
  }
  .gh-gate__headline {
    font-size: 1.55rem;
  }
  .gh-gate__tagline {
    margin-bottom: 1rem;
    font-size: 0.9rem;
  }
  .gh-gate__perks {
    display: none;
  }
  .gh-gate__brand-img {
    height: 40px;
  }
  .gh-gate__panel {
    max-height: none;
    padding: 1.5rem 1.15rem 2.25rem;
    animation: gh-gate-rise 0.7s ease-out both;
  }
  .gh-gate__mobile-brand {
    display: none; /* brand already on field strip */
  }
}

@media (max-width: 480px) {
  .gh-gate__title {
    font-size: 1.55rem;
  }
  .gh-gate__switch {
    margin-bottom: 1.25rem;
  }
}

/* ═══════════════════════════════════════════
   Dashboard — Harvest Vault (balance card)
   ═══════════════════════════════════════════ */
.gh-vault {
  position: relative;
  overflow: hidden;
  border-radius: 1.35rem;
  border: 1px solid rgba(245, 184, 0, 0.4);
  box-shadow:
    0 18px 40px rgba(15, 61, 36, 0.22),
    0 1px 0 rgba(255, 255, 255, 0.12) inset;
  color: #fff;
  isolation: isolate;
}

.gh-vault__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.gh-vault__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 40%;
  transform: scale(1.08);
  animation: gh-vault-pan 18s ease-in-out infinite alternate;
}

.gh-vault__shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(125deg, rgba(8, 32, 18, 0.78) 0%, rgba(15, 61, 36, 0.55) 42%, rgba(8, 32, 18, 0.82) 100%),
    linear-gradient(180deg, rgba(15, 61, 36, 0.35) 0%, rgba(8, 32, 18, 0.88) 100%);
}

.gh-vault__mist {
  position: absolute;
  inset: auto -10% -30% -10%;
  height: 55%;
  background: radial-gradient(ellipse at center, rgba(245, 184, 0, 0.18), transparent 68%);
  filter: blur(8px);
  animation: gh-vault-mist 7s ease-in-out infinite alternate;
}

.gh-vault__body {
  position: relative;
  z-index: 1;
  padding: 1.25rem 1.2rem 1.2rem;
}

.gh-vault__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 1.1rem;
}

.gh-vault__hello {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.82rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.92) !important;
}

.gh-vault__live {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f5b800;
  box-shadow: 0 0 0 0 rgba(245, 184, 0, 0.55);
  animation: gh-vault-pulse 2s ease-out infinite;
  flex-shrink: 0;
}

.gh-vault__chip {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #0f3d24 !important;
  background: linear-gradient(180deg, #ffcf33, #f5b800);
  box-shadow: 0 6px 14px rgba(245, 184, 0, 0.28);
}
.gh-vault__chip i,
.gh-vault__chip svg {
  color: #0f3d24 !important;
}

.gh-vault__label {
  margin: 0 0 0.25rem;
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #aed581 !important;
}

.gh-vault__amount {
  margin: 0 0 1.15rem;
  font-size: clamp(1.85rem, 6vw, 2.35rem);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, 0.35);
}

.gh-vault__sym {
  margin-right: 0.15rem;
  font-size: 0.58em;
  font-weight: 700;
  color: #f5b800 !important;
  vertical-align: 0.12em;
}

.gh-vault__split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
  margin-bottom: 1.05rem;
}

.gh-vault__glass {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 0.75rem 0.8rem;
  border-radius: 0.95rem;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.gh-vault__glass--gain {
  background: rgba(245, 184, 0, 0.14);
  border-color: rgba(245, 184, 0, 0.4);
}

.gh-vault__glass-k {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72) !important;
}
.gh-vault__glass-k i,
.gh-vault__glass-k svg {
  color: #aed581 !important;
}
.gh-vault__glass--gain .gh-vault__glass-k i,
.gh-vault__glass--gain .gh-vault__glass-k svg {
  color: #ffcf33 !important;
}

.gh-vault__glass-v {
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.15;
  color: #fff !important;
  word-break: break-word;
}
.gh-vault__glass--gain .gh-vault__glass-v {
  color: #ffcf33 !important;
}

.gh-vault__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.55rem;
}

.gh-vault__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  padding: 0.85rem 0.75rem;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-decoration: none;
  transition: transform 0.15s ease, filter 0.15s ease, background 0.15s ease;
}

.gh-vault__btn--gold {
  color: #0f3d24 !important;
  background: linear-gradient(180deg, #ffcf33 0%, #f5b800 55%, #d4a000 100%);
  border: 1px solid rgba(255, 255, 255, 0.25);
  box-shadow: 0 10px 22px rgba(245, 184, 0, 0.32);
}
.gh-vault__btn--gold:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
  color: #0f3d24 !important;
}
.gh-vault__btn--gold i,
.gh-vault__btn--gold svg {
  color: #0f3d24 !important;
}

.gh-vault__btn--ghost {
  color: #fff !important;
  background: rgba(255, 255, 255, 0.08);
  border: 1.5px solid rgba(255, 255, 255, 0.35);
  backdrop-filter: blur(6px);
}
.gh-vault__btn--ghost:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: #f5b800;
  transform: translateY(-1px);
  color: #fff !important;
}
.gh-vault__btn--ghost i,
.gh-vault__btn--ghost svg {
  color: #ffcf33 !important;
}

.inv-dash .gh-vault p,
.inv-dash .gh-vault span,
.inv-dash .gh-vault strong {
  color: inherit;
}
.inv-dash .gh-vault__amount {
  color: #fff !important;
}
.inv-dash .gh-vault__label {
  color: #aed581 !important;
}
.inv-dash .gh-vault__sym,
.inv-dash .gh-vault__glass--gain .gh-vault__glass-v {
  color: #ffcf33 !important;
}
.inv-dash .gh-vault__hello,
.inv-dash .gh-vault__glass-v {
  color: #fff !important;
}
.inv-dash .gh-vault__chip {
  color: #0f3d24 !important;
}

@keyframes gh-vault-pan {
  0% { transform: scale(1.06) translate3d(0, 0, 0); }
  100% { transform: scale(1.14) translate3d(-2%, 1.5%, 0); }
}
@keyframes gh-vault-mist {
  from { opacity: 0.55; transform: translateY(0); }
  to { opacity: 0.95; transform: translateY(-8px); }
}
@keyframes gh-vault-pulse {
  0% { box-shadow: 0 0 0 0 rgba(245, 184, 0, 0.55); }
  70% { box-shadow: 0 0 0 8px rgba(245, 184, 0, 0); }
  100% { box-shadow: 0 0 0 0 rgba(245, 184, 0, 0); }
}

@media (prefers-reduced-motion: reduce) {
  .gh-vault__img,
  .gh-vault__mist,
  .gh-vault__live {
    animation: none !important;
  }
  .gh-vault__img { transform: none; }
}

