/* Style Reset */
/* 1. Use a more-intuitive box-sizing model */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* 2. Remove default margin */
* {
  margin: 0;
}

/* 3. Enable keyword animations */
@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
    overflow-x: hidden;
  }
}

body {
  /* 4. Add accessible line-height */
  line-height: 1.5;
}

/* 6. Improve media defaults */
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}

/* 7. Inherit fonts for form controls */
input,
button,
textarea,
select {
  font: inherit;
}

/* 8. Avoid text overflows */
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

/* 9. Improve line wrapping */
p {
  text-wrap: pretty;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

/*
  10. Create a root stacking context
*/
#root,
#__next {
  isolation: isolate;
}

/* End Style Reset */

@font-face {
  font-family: 'Amita';
  src: url('fonts/Amita-Regular.woff2') format('woff2'),
    url('fonts/Amita-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Amita';
  src: url('fonts/Amita-Bold.woff2') format('woff2'),
    url('fonts/Amita-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Upright';
  src: url('fonts/CormorantUpright-Bold.woff2') format('woff2'),
    url('fonts/CormorantUpright-Bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Upright';
  src: url('fonts/CormorantUpright-Medium.woff2') format('woff2'),
    url('fonts/CormorantUpright-Medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Upright';
  src: url('fonts/CormorantUpright-SemiBold.woff2') format('woff2'),
    url('fonts/CormorantUpright-SemiBold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Upright';
  src: url('fonts/CormorantUpright-Regular.woff2') format('woff2'),
    url('fonts/CormorantUpright-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Cormorant Upright';
  src: url('fonts/CormorantUpright-Light.woff2') format('woff2'),
    url('fonts/CormorantUpright-Light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}


:root {
  --grey: #1b062c;
  --code: #551d1d;
  --bg: #be9354;
  --primary-text: #EBDFFE;
  --secondary-text: #D4E5F6;
  --accent: #9B111E;
  font-family: "Cormorant Upright", serif;
  font-weight: 600;
  font-size: 20px;
  color: var(--primary-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Amita", serif;
  font-weight: bold;
}

h1 {
  text-align: center;
  padding: .5em 0;
}

p,
ul {
  margin: auto;
}

p,
ul,
label {
  max-width: 28em;
  padding: .2em;
}



ul {
  list-style: none;
}

ul li::before {
  content: '';
  display: inline-block;
  width: 20px;
  height: 20px;
  background-image: url("yellow-gem.png");
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: 0.5em;
  vertical-align: middle;
}


ul li::marker {
  font-size: .8em;
  padding: 0;
}

.q-list {
  list-style: none;
}

.navbar {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding: 1.25rem;
  padding-bottom: 0;
}

.nav-item {
  border: none;
  background-color: var(--secondary-text);
  color: var(--bg) !important;
  padding: 0.25rem 0.5rem;
  border-radius: 0.5rem;
  font-weight: bold;
  box-shadow: 2px 2px 5px var(--accent);
  transition: background-color .3s ease-in-out;
  text-transform: lowercase;
}

.nav-item:hover {
  background-color: var(--accent);
  color: var(--secondary-text) !important;
  text-shadow: 0px 0px 3px var(--secondary-text);
  cursor: pointer;
}

.nav-item>a {
  text-decoration: none;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-shadow: 0px 0px 3px var(--secondary-text);
}

.input {
  margin-bottom: 1em;
  float: right;
}

main {
  padding: 1rem;
  max-width: 800px;
  margin: 1rem auto;
  width: fit-content;
}

body {
  width: 100dvw;
  height: 100dvh;
  background-color: var(--bg);
}

em {
  color: var(--accent);
  font-style: none;
}

form {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 28em;
  justify-content: flex-end;
  gap: 0.5em;
}

form.team-form {
  display: flex;
  flex-direction: column;
}

.team-form>div {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.75rem;
}

input {
  border-radius: 0.5rem;
  padding: .2em 0.5em;
}

.team-form>div>input {
  box-shadow: 1px 1px 5px var(--grey);
}

.submit-button {
  border: none;
  background-color: var(--accent);
  color: var(--grey) !important;
  padding: 0.25rem 0.5rem;
  border-radius: 0.5rem;
  font-weight: bold;
  font-size: 1.1rem;
  width: fit-content;
  margin: 0;
  box-shadow: 1px 1px 5px var(--grey);
  cursor: pointer;
  transition: color .2s ease-in-out;
}

.submit-button:hover {
  background-color: var(--accent);
  color: var(--secondary-text) !important;
  text-shadow: 0px 0px 3px var(--secondary-text);
  cursor: pointer;
}

code {
  background-color: var(--code);
  padding: 0.25ch .5ch;
  font-size: .7em;
}

pre>code {
  display: block;
  padding: 0.5rem;
}

.map {
  position: fixed;
  bottom: 30px;
  left: 20px;
  width: 300px;
  transform: rotate(-5deg);
  opacity: 0.8;
  pointer-events: none;
}

.gems-vertical {
  position: fixed;
  right: 30px;
  top: 60%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 20px;
  pointer-events: none;
}

.gems-vertical img {
  width: 60px;
  height: 60px;
  transform: rotate(-5deg);
}

.button-style {
  background-color: var(--secondary-text);
  border: 2px solid var(--grey);
  border-radius: 30px;
  box-shadow: #355484 4px 4px 0 0;
  color: var(--grey);
  cursor: pointer;
  display: inline-block;
  font-weight: 600;
  font-size: 18px;
  padding: 0 18px;
  line-height: 50px;
  text-align: center;
  text-decoration: none;
  user-select: none;
}

.button-style:hover {
  background-color: #fdf57a;
}

.button-style:active {
  box-shadow: var(--grey) 2px 2px 0 0;
  transform: translate(2px, 2px);
}

@media (min-width: 768px) {
  .button-style {
    min-width: 120px;
    padding: 0 25px;
  }
}
