/* Custom SVG Icons System */

/* Icon base styling */
.icon {
  display: inline-block;
  vertical-align: middle;
}

/* Inline SVG icons */

/* Social icons styling */
.icon.brands {
  display: inline-block;
}

.icon.brands a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3.5em;
  height: 3.5em;
  box-shadow: inset 0 0 0 1px #ccc;
  border-radius: 100%;
  text-decoration: none;
  transition: all 0.3s ease;
  font-size: 1.5em;
  color: #555;
}

@media (prefers-reduced-motion: reduce) {
  .icon.brands a {
    transition: none;
  }
}

.icon.brands a:hover {
  background-color: #555;
  box-shadow: inset 0 0 0 1px #555;
  color: white;
}

.icon.brands svg {
  width: 1em;
  height: 1em;
  fill: currentColor;
  margin: 0;
}

/* Text label styling for screen readers */
.icon span.label {
  display: none;
}

/* Navigation link icons */
nav .icon svg {
  display: inline;
  vertical-align: -0.15em;
  margin-right: 0.5em;
  width: 1.1em;
  height: 1.1em;
  min-width: 1.1em;
}

/* Fallback for any remaining FA classes */

/* EXIF icon styling */
span.icon-inline {
  display: inline-flex;
  align-items: center;
  margin-right: 0.5em;
}

span.icon-inline svg {
  width: 1.3em;
  height: 1.3em;
  min-width: 1.3em;
}