html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/** Site Toggle - Start */

.site-logo {
    display: block;
    width: clamp(5rem, 10vw, 7rem);
    height: auto;
    max-width: 100%;
}

.site-personal-img {
    display: block;
    width: clamp(7rem, 15vw, 10rem);
    height: auto;
    max-width: 100%;
}

.site-logo-dark {
    display: none;
}

[data-bs-theme="dark"] .site-logo-light {
    display: none;
}

[data-bs-theme="dark"] .site-logo-dark {
    display: block;
}

.theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 2.75rem;
    height: 2.75rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: var(--bs-body-color);
    background-color: transparent;
    font-size: 1.4rem;
    line-height: 1;
    cursor: pointer;
}

.theme-toggle:hover {
    color: var(--bs-emphasis-color);
    background-color: var(--bs-secondary-bg);
}

.theme-toggle:focus-visible {
    outline: 3px solid var(--bs-primary);
    outline-offset: 2px;
}

.theme-icon-dark {
    display: none;
}

[data-bs-theme="dark"] .theme-icon-light {
    display: none;
}

[data-bs-theme="dark"] .theme-icon-dark {
    display: inline-block;
}
/** Site Toggle - End */

#site-footer {
    position: fixed;
}