:root {
  --color-monero-orange: #ff6b00;
  --color-monero-grey: #4c4c4c;
  --background-color: #fffefe;
  --text-color: #1d1d1b;

  --mode-background-color: #adadad;
  --moon-color: #fffefe;

  --headline-font: "Raleway", sans-serif;
  --text-font: "Poppins", sans-serif;
  --font-size-h1: 1.75em;
  --font-size-h2: 1.5em;
  --font-size-h3: 1.25em;
  --font-size-title: 1.2em;
  --font-size-text: 1.2em;
  --font-size-footer: 1em;
  --font-weight-headline: 800;
  --font-weight-strong: 500;
  --font-weight-text: 200;

  --line-height-headline: 1.2;
  --line-height-text: 1.6;

  --margin-padding-unit: 1em;
  --toggle-height: 16em;
  --toggle-width: 30em;
  --toggle-button-radius: 10em;
  --max-width: 640px;
}

:root .dark-mode {
  --background-color: #1d1d1b;
  --text-color: #fffefe;
  --mode-background-color: #4c4c4c;
}

html,
body {
  height: 100%;
  margin: 0;
}

body {
  background-color: var(--background-color);
  color: var(--text-color);
  font-family: "Poppins", sans-serif;
  font-weight: var(--font-weight-text);
  font-style: normal;
  font-size: var(--font-size-text);
  line-height: var(--line-height-text);
  padding: 0 1rem;
  max-width: 640px;
  margin: 0 auto;
}

header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--margin-padding-unit) 0;
}

footer {
  padding: var(--margin-padding-unit);
  text-align: center;
  font-size: var(--font-size-footer);
}

select {
  background: 0 none;
  border: 0 none;
  color: var(--text-color);
  font-size: var(--font-size-text);
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: normal;
}

option {
  font-size: 2rem;
  font-family: "Poppins", sans-serif;
  font-weight: 100;
  font-style: normal;
}

/* mode switcher */
.mode-switcher {
  cursor: pointer;
  margin: 0 auto;
  /*change size of toggle with font-size*/
  font-size: 10%;
  position: relative;
  height: var(--toggle-height);
  width: var(--toggle-width);
  border-radius: var(--toggle-height);
  transition: all 0.5s ease-in-out;
  background: var(--mode-background-color);
}

.moon {
  position: absolute;
  display: block;
  border-radius: 50%;
  transition: all 0.4s ease-in-out;

  top: 3em;
  left: 3em;
  transform: rotate(-75deg);
  width: var(--toggle-button-radius);
  height: var(--toggle-button-radius);
  background: var(--theme-color-dark);
  box-shadow: 3em 2.5em 0 0em var(--moon-color) inset,
    rgba(255, 255, 255, 0.1) 0em -7em 0 -4.5em,
    rgba(255, 255, 255, 0.1) 3em 7em 0 -4.5em,
    rgba(255, 255, 255, 0.1) 2em 13em 0 -4em,
    rgba(255, 255, 255, 0.1) 6em 2em 0 -4.1em,
    rgba(255, 255, 255, 0.1) 8em 8em 0 -4.5em,
    rgba(255, 255, 255, 0.1) 6em 13em 0 -4.5em,
    rgba(255, 255, 255, 0.1) -4em 7em 0 -4.5em,
    rgba(255, 255, 255, 0.1) -1em 10em 0 -4.5em;
}

.sun {
  top: 4.5em;
  left: 18em;
  transform: rotate(0deg);
  width: 7em;
  height: 7em;
  background: #fff;
  box-shadow: 3em 3em 0 5em #fff inset, 0 -5em 0 -2.7em #fff,
    3.5em -3.5em 0 -3em #fff, 5em 0 0 -2.7em #fff, 3.5em 3.5em 0 -3em #fff,
    0 5em 0 -2.7em #fff, -3.5em 3.5em 0 -3em #fff, -5em 0 0 -2.7em #fff,
    -3.5em -3.5em 0 -3em #fff;
}

.day {
  background: var(--mode-background-color);
}

h1,
h2,
h3 {
  font-family: var(--headline-font);
  font-size: var(--font-size-h1);
  font-weight: var(--font-weight-headline);
  line-height: var(--line-height-headline);
  margin: var(--margin-padding-unit) 0;
  text-transform: uppercase;
}

h2 {
  font-size: var(--font-size-h2);
}

h3 {
  font-size: var(--font-size-h3);
}

strong {
  font-weight: var(--font-weight-strong);
}

a {
  border: 0 none;
  border-bottom: 1px solid var(--color-monero-orange);
  color: var(--color-monero-orange);
  text-decoration: none;
}

a:hover {
  border-color: var(--text-color) !important;
  border-style: dashed;
  color: var(--text-color) !important;
}

a:hover strong {
  color: var(--text-color) !important;
}

.monero-orange {
  color: var(--color-monero-orange);
}

.monero-grey {
  color: var(--color-monero-grey);
}

ul {
  padding-left: 20px;
}

.logo {
  display: block;
  width: 100px;
  height: auto;
  transition: transform 0.3s ease-in-out;
}

.logo:hover {
  transform: scale(1.05);
  transition: transform 0.3s ease-in-out;
}

.fade-in {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}

.preview-images {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.preview-images > div {
  width: 100%;
  height: auto;
}

.preview-images > div:first-child {
  margin-bottom: 1rem;
}

.preview-images img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  transition: transform 0.3s ease-in-out;
}

.preview-images img:hover {
  transform: scale(1.05);
}

@media screen and (min-width: 768px) {
  .preview-images div {
    width: calc(50% - 0.5rem);
  }

  .preview-images > div:first-child {
    margin-bottom: 0;
  }
}

select > option {
  background-color: var(--background-color);
  color: var(--text-color);
}