@font-face {
  font-family: 'norse';
  src: url('./fonts/norse/Norsebold.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

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

/* 2. Remove default margin */
*:not(dialog) {
  margin: 0;
}

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

body {
  /* 4. Increase line-height */
  line-height: 1.5;
  /* 5. Improve text rendering */
  -webkit-font-smoothing: antialiased;
  font-family: Arial, Helvetica, sans-serif;
  background-color: rgb(245, 240, 240);
  width: 100vw;
  height: 100vh;
  display: flex;
}

/* 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;
}

.leftDesign {
  position: relative;
  flex: 1.5;
}

.designImg {
  position: absolute;
  height: 100vh;
  width: 100%;
  z-index: 0;
}

.logoBG {
  position: absolute;
  z-index: 1;
  display: flex;
  gap: 10px;

  top: 25%;
  width: 100%;

  align-items: center;
  justify-content: center;

  background-color: rgba(0, 0, 0, 0.5);
}

.designLogo {
  height: 160px;
  width: auto;
}

.odin {
  font-family: 'norse', sans-serif;
  font-weight: 900;
  font-size: 120px;
  color: white;
}

.designLogo,
.odin {
  color: white;
  z-index: 1;
}

.photoCred {
  position: absolute;
  z-index: 1;
  font-size: 17px;
  color: white;

  bottom: 10px;
  left: 37%;
}

a:link,
a:visited { 
  color: white;
}


.rightDesign {
  flex: 2;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rightHeader {
  margin-left: 70px;
  margin-top: 150px;
}

.rightHeader p {
  font-size: x-large;
  font-weight: 900;
}

.rightForm {
  margin-top: 50px;
  padding-left: 70px;
  background-color: white;
  height: 30%;
  box-shadow: 0px 5px 5px rgba(0,0,0,0.3);
}

#formHeading {
  font-size: x-large;
  margin-top: 15px;
  font-weight: 900;
  margin-bottom: 15px;
}

form {
  display: grid;
  grid-template-columns: 300px 300px;
  row-gap: 10px;
  column-gap: 100px;
}

input {
  width: min(100%, 300px);
  height: 30px;

  border: 1px solid #d6d9de;
  border-radius: 4px;
  padding: 5px 10px;
}

input:invalid:not(:focus) {
    border-color: #dc2626;
}

input:focus {
  border-color: #2563eb;
  outline: none;
  box-shadow: 0 0 4px rgba(37, 99, 235, 0.5);
}



.field {
  display: flex;
  flex-direction: column;
}

.rightFooter {
  margin-left: 70px;
  margin-top: 20px;
}

.rightFooter button {
  padding-left: 35px;
  padding-right: 35px;
  padding-top: 10px;
  padding-bottom: 10px;

  border-radius: 10px;

  background-color: #596D48;

  color: white;
  font-size: x-large;
  font-weight: bold;
}

.rightFooter p {
  margin-top: 15px;
  font-size: large;
  font-weight: 900;
}

#LoginText {
  color: #596D48;
}

