/* Form Controls */
.form-floating .form-control {
  transition: border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.form-floating .form-control:focus {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* FD Toggle Switch */
.fd-toggle {
  position: relative;
  display: inline-block;
  width: 38px;
  height: 22px;
  cursor: pointer;
}

.fd-toggle input {
  opacity: 0;
  width: 0;
  height: 0;
}

.fd-toggle-slider {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  border-radius: 22px;
  transition: background 0.2s ease;
}

.fd-toggle-slider::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 3px;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  transition: transform 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
}

.fd-toggle input:checked + .fd-toggle-slider {
  background: #ff9800;
}

.fd-toggle input:checked + .fd-toggle-slider::before {
  transform: translateX(16px);
}

/* Button Styles */
.btn-primary {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.btn-primary:not(:disabled):hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.btn-primary:not(:disabled):active {
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Alert Animations */
.alert {
  animation: slideIn 0.3s ease-out;
}

.alert-dismissible {
  animation: slideIn 0.3s ease-out;
}

@keyframes slideIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-10px);
  }
}

/* Password Requirements Guide */
.password-requirements {
  margin: 1rem 0;
}

.requirement-item {
  display: flex;
  align-items: center;
  margin-bottom: 0.5rem;
}

.requirement-item .bi {
  margin-right: 0.5rem;
  color: var(--bs-primary);
  transition: color 0.2s ease;
}

.requirement-item.success .bi {
  color: var(--bs-success);
}

.requirement-item span {
  color: var(--bs-primary);
  transition: color 0.2s ease;
}

.requirement-item.success span {
  color: var(--bs-success);
}

/* Password Toggle Button */
.password-toggle-btn {
  background: none;
  border: none;
  padding: 0.375rem;
  cursor: pointer;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.password-toggle-btn .ph-duotone {
  font-size: 1.35rem;
  transition: transform 0.2s ease;
  color: var(--color-grey-03);
}

.password-toggle-btn:hover .ph-duotone {
  transform: scale(1.1);
  color: var(--color-grey-03);
}

.password-toggle-btn:active .ph-duotone {
  transform: scale(0.95);
}

/* --------------------------------------------------
   Auth validation — clean, no in-field icons
   Alternative to Bootstrap's inside-field check/cross.
   Uses: red border + subtle left accent + footnote
   -------------------------------------------------- */

/* Override Bootstrap's was-validated background images (inside field) */
.fd-auth-page.fd-skin .form-floating.fd-form-field-float > .form-control.is-invalid,
.fd-auth-page.fd-skin .form-floating.fd-form-field-float > .form-control.was-validated:invalid,
.fd-auth-page.fd-skin .form-floating.fd-form-field-float > .form-control:invalid {
  background-image: none !important;
  padding-right: var(--inset-lg) !important;
}

/* Left border accent for invalid fields — subtle red bar */
.fd-auth-page.fd-skin .form-floating.fd-form-field-float.is-invalid {
  position: relative;
}

.fd-auth-page.fd-skin .form-floating.fd-form-field-float.is-invalid::before {
  content: '';
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 4px;
  width: 2.5px;
  background: var(--status-error);
  border-radius: 0 2px 2px 0;
  z-index: 2;
}

/* Auth-specific error footnote — matches form styling */
.fd-auth-page.fd-skin .fd-field-error {
  font-size: var(--font-size-xs);
  margin-top: var(--space-xs);
  padding-inline: var(--form-float-label-inset-x);
}

/* ========================================
   Auth page — Site blueprint + 360 field intel
   (card + form unchanged; scene only)
   ======================================== */

.fd-auth-page {
  min-height: 100vh;
}

.fd-auth-scene {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  --auth-px: 0;
  --auth-py: 0;
}

.fd-auth-shell {
  position: relative;
  z-index: 1;
}

/* Card entrance animation */
@keyframes fd-auth-card-enter {
  0% {
    opacity: 0;
    transform: translateY(24px) scale(0.98);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Light frosted glass card shell — form fields unchanged inside */
.fd-auth-page .fd-auth-shell .fd-form-page-shell-card {
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.75);
  box-shadow:
    0 20px 56px rgba(63, 169, 245, 0.12),
    0 4px 16px rgba(63, 169, 245, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.95);
  opacity: 0;
  animation: fd-auth-card-enter 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .fd-auth-page .fd-auth-shell .fd-form-page-shell-card {
    background: rgba(255, 255, 255, 0.72);
    -webkit-backdrop-filter: blur(18px) saturate(1.12);
    backdrop-filter: blur(18px) saturate(1.12);
  }
}

/* Premium card top-edge ambient light reflection */
.fd-auth-page .fd-auth-shell .fd-form-page-shell-card::before {
  content: '';
  position: absolute;
  top: -1px;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(255, 255, 255, 0.9) 20%,
    rgba(255, 255, 255, 0.95) 50%,
    rgba(255, 255, 255, 0.9) 80%,
    transparent 100%
  );
  border-radius: 2px;
  opacity: 0.85;
  z-index: 2;
}

/* Logo subtle glow */
.fd-auth-page .fd-auth-shell .fd-card-body > a:first-child {
  position: relative;
}

.fd-auth-page .fd-auth-shell .fd-card-body > a:first-child::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 80px;
  transform: translate(-50%, -50%);
  background: radial-gradient(ellipse, rgba(63, 169, 245, 0.10) 0%, transparent 72%);
  pointer-events: none;
  z-index: -1;
}

/* Staggered entrance for form fields */
.fd-auth-page .fd-auth-shell .fd-form-field-stack > * {
  opacity: 0;
  animation: fd-auth-fade-in 0.5s ease-out forwards;
}

.fd-auth-page .fd-auth-shell .fd-form-field-stack > *:nth-child(1) { animation-delay: 0.15s; }
.fd-auth-page .fd-auth-shell .fd-form-field-stack > *:nth-child(2) { animation-delay: 0.25s; }

.fd-auth-page .fd-auth-shell .fd-card-header {
  opacity: 0;
  animation: fd-auth-fade-in 0.5s ease-out 0.08s forwards;
}

.fd-auth-page .fd-auth-shell form > :not(.fd-form-field-stack) {
  opacity: 0;
  animation: fd-auth-fade-in 0.5s ease-out forwards;
}

.fd-auth-page .fd-auth-shell form > :nth-child(2 of :not(.fd-form-field-stack)) { animation-delay: 0.12s; }
.fd-auth-page .fd-auth-shell form > :nth-child(3 of :not(.fd-form-field-stack)) { animation-delay: 0.20s; }
.fd-auth-page .fd-auth-shell form > :nth-child(4 of :not(.fd-form-field-stack)) { animation-delay: 0.28s; }
.fd-auth-page .fd-auth-shell form > :nth-child(5 of :not(.fd-form-field-stack)) { animation-delay: 0.36s; }
.fd-auth-page .fd-auth-shell form > :nth-child(6 of :not(.fd-form-field-stack)) { animation-delay: 0.44s; }

.fd-auth-page .fd-auth-shell hr,
.fd-auth-page .fd-auth-shell .text-center {
  opacity: 0;
  animation: fd-auth-fade-in 0.5s ease-out 0.52s forwards;
}

@keyframes fd-auth-fade-in {
  0% {
    opacity: 0;
    transform: translateY(8px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Logo image entrance (slight scale) */
.fd-auth-page .fd-auth-shell .fd-card-body > a:first-child img {
  opacity: 0;
  transform: scale(0.96);
  animation: fd-auth-logo-enter 0.6s cubic-bezier(0.22, 1, 0.36, 1) 0.06s forwards;
}

@keyframes fd-auth-logo-enter {
  0% {
    opacity: 0;
    transform: scale(0.96);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}

/* Dimmed footer divider */
.fd-auth-page .fd-auth-shell .fd-card-body > hr {
  border: none;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(0, 0, 0, 0.06) 15%,
    rgba(0, 0, 0, 0.06) 85%,
    transparent 100%
  );
  opacity: 1;
}

/* FD View toggle in card header — sits on the right via fd-card-header-actions */
.fd-auth-page .fd-auth-fd-toggle {
  width: 34px;
  height: 20px;
}

.fd-auth-page .fd-auth-fd-toggle .fd-toggle-slider {
  background: rgba(0, 0, 0, 0.12);
}

.fd-auth-page .fd-auth-fd-toggle .fd-toggle-slider::before {
  width: 14px;
  height: 14px;
}

.fd-auth-page .fd-auth-fd-toggle input:checked + .fd-toggle-slider {
  background: #ff9800;
}

.fd-auth-page .fd-auth-fd-toggle input:checked + .fd-toggle-slider::before {
  transform: translateX(14px);
}

.fd-auth-page .fd-auth-fd-label {
  color: #ff9800;
  font-size: var(--font-size-xs);
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.fd-auth-page .fd-card-header .fd-card-header-actions {
  display: flex;
  align-items: center;
  gap: 6px;
}

/* Auth card header — nested inside .fd-card-body (avoid double horizontal inset) */
.fd-auth-page .fd-card-body > .fd-card-header {
  padding: var(--space-md) 0 var(--space-md);
  border-bottom: none;
}

/* Title → form/content rhythm (replaces fd-mt-3 on immediate siblings) */
.fd-auth-page .fd-card-body > .fd-card-header + form,
.fd-auth-page .fd-card-body > .fd-card-header + .alert,
.fd-auth-page .fd-card-body > .fd-card-header + div:not(.d-grid) {
  margin-top: 0;
}

/* Remember me — FD checkbox aligned with helper text under label */
.fd-auth-page .fd-auth-remember-hint {
  margin: var(--space-xs) 0 0 calc(21px + var(--space-xs));
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-light);
  color: var(--color-grey-02);
  letter-spacing: 0.01em;
  line-height: 1.4;
}

/* Light base gradient — soft BPI blue throughout, very pale at top */
.fd-auth-scene__gradient {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 110% 50% at 50% -5%, rgba(63, 169, 245, 0.10) 0%, transparent 58%),
    radial-gradient(ellipse 90% 70% at 50% 42%, var(--color-blue-100, #d5effd) 0%, transparent 62%),
    linear-gradient(
      165deg,
      #edf6fe 0%,
      #e3f2fd 25%,
      var(--color-bpi-softblue) 42%,
      #c8e5f9 68%,
      #bddff7 100%
    );
}

/* Soft aurora washes */
.fd-auth-scene__aurora {
  position: absolute;
  border-radius: 50%;
  filter: blur(72px);
  opacity: 0.55;
  will-change: transform;
}

.fd-auth-scene__aurora--a {
  width: min(52vw, 520px);
  height: min(52vw, 520px);
  top: -12%;
  left: -4%;
  background: radial-gradient(circle, rgba(63, 169, 245, 0.28) 0%, rgba(63, 169, 245, 0) 70%);
  opacity: 0.62;
  animation: fd-auth-aurora-drift-a 28s ease-in-out infinite;
}

.fd-auth-scene__aurora--b {
  width: min(44vw, 440px);
  height: min(44vw, 440px);
  bottom: -10%;
  right: -4%;
  background: radial-gradient(circle, rgba(147, 197, 253, 0.45) 0%, rgba(147, 197, 253, 0) 72%);
  animation: fd-auth-aurora-drift-b 34s ease-in-out infinite;
}

/* Center glow behind card */
.fd-auth-scene__glow {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(70vw, 640px);
  height: min(50vh, 480px);
  transform: translate(-50%, -50%);
  background: radial-gradient(ellipse, rgba(63, 169, 245, 0.11) 0%, transparent 68%);
}

/* Blueprint grid + dimension ticks */
.fd-auth-scene__grid {
  position: absolute;
  inset: 0;
  opacity: 0.35;
  background-image:
    linear-gradient(rgba(63, 169, 245, 0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(63, 169, 245, 0.07) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: radial-gradient(ellipse 75% 65% at 50% 48%, black 20%, transparent 78%);
}

.fd-auth-scene__grid-ticks {
  position: absolute;
  inset: 0;
  opacity: 0.22;
  background-image:
    repeating-linear-gradient(
      90deg,
      rgba(63, 169, 245, 0.18) 0,
      rgba(63, 169, 245, 0.18) 1px,
      transparent 1px,
      transparent 140px
    ),
    repeating-linear-gradient(
      0deg,
      rgba(63, 169, 245, 0.14) 0,
      rgba(63, 169, 245, 0.14) 1px,
      transparent 1px,
      transparent 140px
    );
  mask-image: radial-gradient(ellipse 70% 60% at 48% 46%, black 10%, transparent 75%);
  pointer-events: none;
}

/* Parallax layer wrapper */
.fd-auth-scene__layer {
  position: absolute;
  inset: 0;
  transform: translate(
    calc(var(--auth-px) * var(--auth-parallax, 0.03) * 100vw),
    calc(var(--auth-py) * var(--auth-parallax, 0.03) * 100vh)
  );
  transition: transform 0.35s ease-out;
}

.fd-auth-scene__layer[data-auth-parallax="0.018"] { --auth-parallax: 0.018; }
.fd-auth-scene__layer[data-auth-parallax="0.032"] { --auth-parallax: 0.032; }
.fd-auth-scene__layer[data-auth-parallax="0.048"] { --auth-parallax: 0.048; }

/* Frosted ambient glass panels — kept subtle, not dominant */
.fd-auth-glass {
  position: absolute;
  border-radius: var(--radius-3xl, 1.5rem);
  border: 1px solid rgba(255, 255, 255, 0.38);
  background: rgba(213, 239, 253, 0.18);
  opacity: 0.62;
  box-shadow:
    0 6px 24px rgba(63, 169, 245, 0.04),
    inset 0 1px 0 rgba(255, 255, 255, 0.45);
}

@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .fd-auth-glass {
    background: rgba(213, 239, 253, 0.12);
    -webkit-backdrop-filter: blur(20px) saturate(1.05);
    backdrop-filter: blur(20px) saturate(1.05);
  }
}

.fd-auth-glass--1 {
  width: min(38vw, 320px);
  height: min(28vh, 220px);
  top: 14%;
  right: 10%;
  transform: rotate(-8deg);
  animation: fd-auth-float-a 22s ease-in-out infinite;
}

.fd-auth-glass--2 {
  width: min(32vw, 260px);
  height: min(22vh, 180px);
  bottom: 16%;
  left: 8%;
  transform: rotate(6deg);
  animation: fd-auth-float-b 26s ease-in-out infinite;
}

/* Industry motifs — blueprint, site pin, 360 radar, field network */
.fd-auth-motif {
  position: absolute;
  pointer-events: none;
}

.fd-auth-motif--contours {
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0.45;
  animation: fd-auth-contour-drift 38s ease-in-out infinite;
}

.fd-auth-motif--contours path {
  fill: none;
  stroke: rgba(63, 169, 245, 0.16);
  stroke-width: 1.5;
}

/* Floor-plan footprints */
.fd-auth-motif--floorplan {
  fill: none;
  stroke: rgba(63, 169, 245, 0.28);
  stroke-width: 1.75;
  stroke-linejoin: round;
}

.fd-auth-motif--floorplan .fd-auth-motif__vertex {
  fill: rgba(63, 169, 245, 0.35);
  stroke: rgba(255, 255, 255, 0.8);
  stroke-width: 1;
}

.fd-auth-motif--floorplan-a {
  width: min(26vw, 210px);
  height: auto;
  top: 16%;
  left: 8%;
  animation: fd-auth-float-floorplan-a 24s ease-in-out infinite;
}

.fd-auth-motif--floorplan-b {
  width: min(18vw, 150px);
  height: auto;
  bottom: 20%;
  right: 12%;
  opacity: 0.75;
  animation: fd-auth-float-floorplan-b 28s ease-in-out infinite;
}

/* Inspection site pin + accuracy rings */
.fd-auth-motif--site-pin {
  width: min(22vw, 168px);
  height: min(22vw, 168px);
  top: 54%;
  left: 16%;
}

.fd-auth-motif--site-pin::before,
.fd-auth-motif--site-pin::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(63, 169, 245, 0.2);
}

.fd-auth-motif--site-pin::after {
  inset: 22%;
  border-color: rgba(63, 169, 245, 0.14);
}

.fd-auth-motif__pin-core {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 10px;
  height: 10px;
  margin: -5px 0 0 -5px;
  border-radius: 50%;
  background: rgba(63, 169, 245, 0.45);
  box-shadow:
    0 0 0 6px rgba(63, 169, 245, 0.12),
    0 0 0 14px rgba(63, 169, 245, 0.06),
    0 0 20px rgba(63, 169, 245, 0.25);
  animation: fd-auth-pin-pulse 5s ease-in-out infinite;
}

/* 360 radar sweep */
.fd-auth-motif--radar {
  width: min(34vw, 260px);
  height: min(34vw, 260px);
  top: 7%;
  right: 5%;
}

.fd-auth-motif__radar-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid rgba(63, 169, 245, 0.14);
}

.fd-auth-motif__radar-ring--2 {
  inset: 16%;
  border-color: rgba(63, 169, 245, 0.1);
}

.fd-auth-motif__radar-ring--3 {
  inset: 32%;
  border-color: rgba(63, 169, 245, 0.08);
}

.fd-auth-motif__radar-sweep {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(
    from 0deg,
    transparent 0deg,
    transparent 300deg,
    rgba(63, 169, 245, 0.14) 328deg,
    rgba(63, 169, 245, 0.02) 360deg
  );
  animation: fd-auth-radar-sweep 14s linear infinite;
}

/* Connected sites / jobs network */
.fd-auth-motif--field-network {
  width: min(28vw, 220px);
  height: auto;
  bottom: 14%;
  left: 6%;
  opacity: 0.7;
  animation: fd-auth-float-floorplan-b 30s ease-in-out infinite reverse;
}

.fd-auth-motif--field-network line {
  stroke: rgba(63, 169, 245, 0.18);
  stroke-width: 1.25;
  stroke-dasharray: 5 6;
}

.fd-auth-motif__node {
  fill: rgba(255, 255, 255, 0.85);
  stroke: rgba(63, 169, 245, 0.35);
  stroke-width: 1.5;
}

.fd-auth-motif__node--primary {
  fill: rgba(63, 169, 245, 0.22);
  stroke: rgba(63, 169, 245, 0.45);
}

/* Subtle film grain */
.fd-auth-scene__grain {
  position: absolute;
  inset: 0;
  opacity: 0.04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  mix-blend-mode: multiply;
}

@keyframes fd-auth-aurora-drift-a {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(4%, 6%) scale(1.06); }
}

@keyframes fd-auth-aurora-drift-b {
  0%, 100% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(-5%, -4%) scale(1.05); }
}

@keyframes fd-auth-float-a {
  0%, 100% { transform: rotate(-8deg) translateY(0); }
  50% { transform: rotate(-6deg) translateY(-14px); }
}

@keyframes fd-auth-float-b {
  0%, 100% { transform: rotate(6deg) translateY(0); }
  50% { transform: rotate(8deg) translateY(12px); }
}

@keyframes fd-auth-float-floorplan-a {
  0%, 100% { transform: translateY(0) rotate(-2deg); }
  50% { transform: translateY(-10px) rotate(1deg); }
}

@keyframes fd-auth-float-floorplan-b {
  0%, 100% { transform: translateY(0) rotate(3deg); }
  50% { transform: translateY(8px) rotate(-1deg); }
}

@keyframes fd-auth-contour-drift {
  0%, 100% { transform: translateX(0); opacity: 0.42; }
  50% { transform: translateX(-1.5%); opacity: 0.5; }
}

@keyframes fd-auth-radar-sweep {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes fd-auth-pin-pulse {
  0%, 100% { transform: scale(1); opacity: 0.85; }
  50% { transform: scale(1.12); opacity: 1; }
}

@media (max-width: 768px) {
  .fd-auth-glass--1,
  .fd-auth-glass--2,
  .fd-auth-motif--floorplan-b,
  .fd-auth-motif--field-network {
    opacity: 0.48;
  }

  .fd-auth-motif--floorplan-a {
    width: 160px;
    top: 10%;
    left: -2%;
  }

  .fd-auth-motif--site-pin {
    width: 120px;
    height: 120px;
    left: 4%;
  }

  .fd-auth-motif--radar {
    width: 180px;
    height: 180px;
    right: -2%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .fd-auth-scene__aurora,
  .fd-auth-glass,
  .fd-auth-motif,
  .fd-auth-motif__radar-sweep,
  .fd-auth-motif__pin-core,
  .fd-auth-scene__layer {
    animation: none !important;
    transition: none !important;
  }

  /* Card entrance — skip staggered animation, just show */
  .fd-auth-page .fd-auth-shell .fd-form-page-shell-card,
  .fd-auth-page .fd-auth-shell .fd-card-header,
  .fd-auth-page .fd-auth-shell .fd-form-field-stack > *,
  .fd-auth-page .fd-auth-shell form > :not(.fd-form-field-stack),
  .fd-auth-page .fd-auth-shell hr,
  .fd-auth-page .fd-auth-shell .text-center,
  .fd-auth-page .fd-auth-shell .fd-card-body > a:first-child img {
    opacity: 1 !important;
    animation: none !important;
    transform: none !important;
  }
}
