@font-face {
  font-family: 'big-john';
  src: url("../storage/font/BigJohn.eot");
  /* IE9 Compat Modes */
  src: url("../storage/font/BigJohn.eot?#iefix") format("embedded-opentype"), url("../storage/font/BigJohn.woff") format("woff"), url("../storage/font/BigJohn.ttf") format("truetype"), url("../storage/font/BigJohn.svg") format("svg");
  /* Legacy iOS */
}

@font-face {
  font-family: 'calibre';
  src: url("../storage/font/Calibre-Medium.eot");
  /* IE9 Compat Modes */
  src: url("../storage/font/Calibre-Medium.eot?#iefix") format("embedded-opentype"), url("../storage/font/Calibre-Medium.woff") format("woff"), url("../storage/font/Calibre-Medium.ttf") format("truetype"), url("../storage/font/Calibre-Medium.svg") format("svg");
  /* Legacy iOS */
}

@font-face {
  font-family: 'vivita';
  src: url(../storage/font/VIVITA-Bold.otf) format("truetype");
}

@media (max-width: 1400px) {
  header nav .navigation {
    width: 55% !important;
  }
  .portfolio__list__item__footer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .portfolio__list__item__footer .portfolio__list__item__footer--right {
    margin-bottom: 3vh;
  }
}

@media (max-width: 1300px) {
  main .presentation div .presentation__picture img {
    width: 350px !important;
  }
  .portfolio__list__item__footer__link {
    -webkit-box-pack: start !important;
        -ms-flex-pack: start !important;
            justify-content: flex-start !important;
  }
}

@media (max-width: 1100px) {
  header nav .social {
    min-width: 35% !important;
  }
  header nav .navigation {
    width: 60% !important;
  }
  main .presentation div .presentation__picture img {
    width: 300px !important;
  }
  main .portfolio h2::after {
    display: none;
  }
  .portfolio .portfolio__list > * {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
  }
}

@media (max-width: 930px) {
  header nav .social {
    display: none !important;
  }
  header nav .navigation {
    width: 100% !important;
  }
  main .presentation div .presentation__resume {
    width: 100% !important;
  }
  main .presentation div .presentation__resume h2 {
    margin-top: -1vh !important;
    margin-bottom: 2vh !important;
  }
  main .presentation div .presentation__picture {
    display: none !important;
  }
  main .contact {
    margin: 0.1vh auto 3vh !important;
  }
}

@media (max-width: 800px) {
  main .contact p {
    width: 100% !important;
  }
}

@media (max-width: 700px) {
  header nav .navigation {
    font-size: 1.1rem !important;
  }
  main .portfolio .portfolio__list {
    -webkit-box-orient: vertical !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: column !important;
            flex-direction: column !important;
  }
  main .portfolio .portfolio__list .portfolio__list__item__title {
    font-size: 1.4rem !important;
  }
  main .portfolio .portfolio__list p {
    font-size: 1.2rem !important;
  }
  main .portfolio .portfolio__list > * {
    margin: 1vh 0 !important;
  }
  main .portfolio .portfolio__list .portfolio__list__item {
    padding: 3.5vh 2.5vh 2vh !important;
  }
}

@media (max-width: 680px) {
  main .presentation div .presentation__resume p {
    margin-bottom: 7vh !important;
  }
  main .presentation div .presentation__resume .presentation__resume__button {
    font-size: 1.5rem !important;
  }
}

@media (max-width: 630px) {
  main .presentation div {
    margin-top: -5vh !important;
  }
  main .presentation div .presentation__resume h2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  main .presentation div .presentation__resume h1 {
    padding: 4vh 0 6vh;
  }
  main .presentation div .presentation__resume p {
    margin-bottom: 12vh !important;
  }
  main .presentation div .presentation__picture {
    display: none !important;
  }
  main .contact {
    width: 90% !important;
  }
}

@media (max-width: 400px) {
  header nav .navigation {
    width: 115% !important;
  }
  header nav .navigation .navigation__theme div #moon {
    left: 15% !important;
  }
  header nav .navigation .navigation__theme div #sun {
    left: 16% !important;
  }
  header nav .navigation .navigation__theme .toggleOn .ball {
    left: 15% !important;
  }
  header nav .navigation .navigation__theme .toggleOn #sun {
    left: 16% !important;
  }
  header nav .navigation .navigation__theme .toggleOn #moon {
    cursor: pointer;
    left: 15% !important;
  }
  header nav .navigation .navigation__theme .toggleOff .ball {
    left: 15% !important;
  }
  header nav .navigation .navigation__theme .toggleOff #sun {
    cursor: pointer;
    left: 16% !important;
  }
  header nav .navigation .navigation__theme .toggleOff #moon {
    left: 15% !important;
  }
  header nav .navigation .navigation__theme::after {
    display: none;
  }
  main .presentation div .presentation__resume p {
    margin-bottom: 5vh !important;
  }
  main .presentation div .presentation__resume .presentation__resume__button {
    font-size: 1.3rem !important;
  }
}

.light ::-moz-selection {
  color:  #1F1E1E ;
  color:  var(--theme-light-textDark, #1F1E1E) ;
}

.light ::selection {
  color:  #1F1E1E ;
  color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark ::-moz-selection {
  color:  #FFFFFF ;
  color:  var(--theme-dark-textDark, #FFFFFF) ;
}

.dark ::selection {
  color:  #FFFFFF ;
  color:  var(--theme-dark-textDark, #FFFFFF) ;
}

.light ::-moz-selection {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.light ::selection {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark ::-moz-selection {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

.dark ::selection {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

html {
  --theme-light-color: #E76639;
  --theme-dark-color: #D16D4A;
  --theme-light-grayColor: #FFFFFF;
  --theme-dark-grayColor: #434343;
  --theme-light-textDark: #1F1E1E;
  --theme-dark-textDark: #FFFFFF;
  --theme-light-textLight: #7c7c7c;
  --theme-dark-textLight: #868686;
  --theme-light-backgroundDark: #F8F8F8;
  --theme-dark-backgroundDark: #1F1E1E;
  --theme-light-backgroundLight: #DDDDDD;
  --theme-dark-backgroundLight: #262626;
  height: 100%;
  scroll-behavior: smooth;
}

html {
  font-size: 14px;
}

@media screen and (min-width: 300px) {
  html {
    font-size: calc(14px + 6 * ((100vw - 300px) / 900));
  }
}

@media screen and (min-width: 1200px) {
  html {
    font-size: 20px;
  }
}

body {
  font-family: calibre, sans-serif;
}

.light body {
  color:  #1F1E1E ;
  color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark body {
  color:  #FFFFFF ;
  color:  var(--theme-dark-textDark, #FFFFFF) ;
}

.light body {
  background-color:  #F8F8F8 ;
  background-color:  var(--theme-light-backgroundDark, #F8F8F8) ;
}

.dark body {
  background-color:  #1F1E1E ;
  background-color:  var(--theme-dark-backgroundDark, #1F1E1E) ;
}

header nav {
  top: 0;
  position: fixed;
  width: 100%;
  height: 10vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 99999;
}

.light header nav {
  background-color:  #F8F8F8 ;
  background-color:  var(--theme-light-backgroundDark, #F8F8F8) ;
}

.dark header nav {
  background-color:  #1F1E1E ;
  background-color:  var(--theme-dark-backgroundDark, #1F1E1E) ;
}

header nav .social {
  min-width: 33%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

header nav .social a svg {
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
  height: 1.8rem;
}

.light header nav .social a svg {
  fill:  #1F1E1E ;
  fill:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark header nav .social a svg {
  fill:  #FFFFFF ;
  fill:  var(--theme-dark-textDark, #FFFFFF) ;
}

header nav .social a:hover svg {
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light header nav .social a:hover svg {
  fill:  #E76639 ;
  fill:  var(--theme-light-color, #E76639) ;
}

.dark header nav .social a:hover svg {
  fill:  #D16D4A ;
  fill:  var(--theme-dark-color, #D16D4A) ;
}

header nav .navigation {
  width: 45%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  font-family: big-john, sans-serif;
  font-size: 1.1rem;
  font-weight: bold;
}

.light header nav .navigation .active {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark header nav .navigation .active {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

header nav .navigation .active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.7rem;
  width: 100%;
  height: 1.5px;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light header nav .navigation .active::after {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark header nav .navigation .active::after {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

header nav .navigation li {
  position: relative;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

header nav .navigation li:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.7rem;
  width: 0%;
  height: 1.5px;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light header nav .navigation li:not(:last-child)::after {
  background-color:  #1F1E1E ;
  background-color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark header nav .navigation li:not(:last-child)::after {
  background-color:  #FFFFFF ;
  background-color:  var(--theme-dark-textDark, #FFFFFF) ;
}

header nav .navigation li:not(:last-child):hover {
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light header nav .navigation li:not(:last-child):hover {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark header nav .navigation li:not(:last-child):hover {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

header nav .navigation li:not(:last-child):hover::after {
  width: 100%;
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}

.light header nav .navigation li:not(:last-child):hover::after {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark header nav .navigation li:not(:last-child):hover::after {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

header nav .navigation .navigation__theme {
  position: relative;
}

header nav .navigation .navigation__theme div {
  position: relative;
  width: 70px;
}

header nav .navigation .navigation__theme div .ball {
  position: absolute;
  -webkit-transform: translateY(-14%);
          transform: translateY(-14%);
  border-radius: 100%;
  height: 33px;
  width: 33px;
  z-index: -2;
  -webkit-transition: left 0.6s;
  transition: left 0.6s;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
}

.light header nav .navigation .navigation__theme div .ball {
  background-color:  #1F1E1E ;
  background-color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark header nav .navigation .navigation__theme div .ball {
  background-color:  #FFFFFF ;
  background-color:  var(--theme-dark-textDark, #FFFFFF) ;
}

header nav .navigation .navigation__theme div .fa-moon, header nav .navigation .navigation__theme div .fa-sun {
  position: absolute;
  top: 0;
  -webkit-transition: left 0.6s;
  transition: left 0.6s;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
}

header nav .navigation .navigation__theme div .fa-moon {
  left: 0;
}

header nav .navigation .navigation__theme div .fa-sun {
  left: 53%;
}

header nav .navigation .navigation__theme div svg {
  height: 23px !important;
  width: 23px !important;
  padding: 0 0.3rem;
}

.light header nav .navigation .navigation__theme div svg {
  color:  #F8F8F8 ;
  color:  var(--theme-light-backgroundDark, #F8F8F8) ;
}

.dark header nav .navigation .navigation__theme div svg {
  color:  #1F1E1E ;
  color:  var(--theme-dark-backgroundDark, #1F1E1E) ;
}

header nav .navigation .navigation__theme .toggleOn .ball {
  left: 1%;
}

header nav .navigation .navigation__theme .toggleOn .fa-sun {
  left: 0%;
}

header nav .navigation .navigation__theme .toggleOn .fa-moon {
  cursor: pointer;
  left: 0%;
}

header nav .navigation .navigation__theme .toggleOff .ball {
  left: 53%;
}

header nav .navigation .navigation__theme .toggleOff .fa-sun {
  cursor: pointer;
  left: 53%;
}

header nav .navigation .navigation__theme .toggleOff .fa-moon {
  left: 53%;
}

header nav .navigation .navigation__theme::after {
  content: "";
  height: 22px;
  width: 80%;
  border-radius: 70px;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  border: 2px solid #1F1E1E;
  z-index: -3;
}

.light header nav .navigation .navigation__theme::after {
  background-color:  #FFFFFF ;
  background-color:  var(--theme-light-grayColor, #FFFFFF) ;
}

.dark header nav .navigation .navigation__theme::after {
  background-color:  #434343 ;
  background-color:  var(--theme-dark-grayColor, #434343) ;
}

main h2 {
  font-size: 1.35rem;
}

.light main h2 {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark main h2 {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

main .presentation {
  padding: 17.5vh 0;
  margin: 0 auto;
  width: 70%;
  font-size: 1.2rem;
  min-height: 78vh;
}

main .presentation div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

main .presentation .presentation__resume {
  padding-top: 6vh;
  width: 55%;
}

main .presentation .presentation__resume h2 {
  font-size: 6.5rem;
}

main .presentation .presentation__resume h1 {
  padding: 2vh 0 4vh;
  font-size: 2.5rem;
  line-height: 1.20;
  font-family: big-john, sans-serif;
}

.light main .presentation .presentation__resume h1 span {
  color:  #7c7c7c ;
  color:  var(--theme-light-textLight, #7c7c7c) ;
}

.dark main .presentation .presentation__resume h1 span {
  color:  #868686 ;
  color:  var(--theme-dark-textLight, #868686) ;
}

main .presentation .presentation__resume p {
  width: 90%;
  letter-spacing: 0.05rem;
  word-spacing: 0.1rem;
  margin: 1.7vh 0 6vh;
}

.light main .presentation .presentation__resume p {
  color:  #7c7c7c ;
  color:  var(--theme-light-textLight, #7c7c7c) ;
}

.dark main .presentation .presentation__resume p {
  color:  #868686 ;
  color:  var(--theme-dark-textLight, #868686) ;
}

main .presentation .presentation__resume .presentation__resume__button {
  padding: 0.8rem 1.2rem 0.5rem;
  font-size: 1.05rem;
  border-radius: 5px;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light main .presentation .presentation__resume .presentation__resume__button {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark main .presentation .presentation__resume .presentation__resume__button {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

.light main .presentation .presentation__resume .presentation__resume__button {
  outline: 2px solid #E76639 ;
  outline: 2px solid var(--theme-light-color, #E76639) ;
}

.dark main .presentation .presentation__resume .presentation__resume__button {
  outline: 2px solid #D16D4A ;
  outline: 2px solid var(--theme-dark-color, #D16D4A) ;
}

main .presentation .presentation__resume .presentation__resume__button:hover {
  color: white;
  outline-offset: 4px;
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}

.light main .presentation .presentation__resume .presentation__resume__button:hover {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark main .presentation .presentation__resume .presentation__resume__button:hover {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

main .presentation .presentation__picture {
  width: 45%;
  position: relative;
}

main .presentation .presentation__picture img {
  position: absolute;
  top: 52%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  height: auto;
  width: 400px;
}

main .portfolio {
  padding-bottom: 10vh;
  margin: 0 auto 0;
  width: 70%;
  font-size: 1.2rem;
}

main .portfolio h2 {
  font-size: 1.1rem;
  padding-top: 15vh !important;
  position: relative;
}

main .portfolio .portfolio__subtitle {
  margin: 2vh 0 5vh;
  font-size: 3rem;
}

main .portfolio .portfolio__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

main .portfolio .portfolio__list > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 30%;
          flex: 1 1 30%;
  --gap: 2vh;
  margin: var(--gap) var(--gap) 0 0;
  -webkit-box-shadow: 0px 0px 15px -12px rgba(0, 0, 0, 0.5), inset 0px 0px 15px -12px rgba(0, 0, 0, 0.5);
          box-shadow: 0px 0px 15px -12px rgba(0, 0, 0, 0.5), inset 0px 0px 15px -12px rgba(0, 0, 0, 0.5);
  border-radius: 4px;
}

.light main .portfolio .portfolio__list > * {
  background-color:  #DDDDDD ;
  background-color:  var(--theme-light-backgroundLight, #DDDDDD) ;
}

.dark main .portfolio .portfolio__list > * {
  background-color:  #262626 ;
  background-color:  var(--theme-dark-backgroundLight, #262626) ;
}

main .portfolio .portfolio__list .portfolio__list__item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
  -ms-grid-rows: auto;
      grid-template-rows: auto;
  padding: 4vh 2rem;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__title {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1 / span 2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1 / 2;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__title a {
  font-size: 2.1rem;
  padding-bottom: 2.5vh;
}

.light main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__title a {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__title a {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__content {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1 / span 2;
  -ms-grid-row: 2;
  -ms-grid-row-span: 1;
  grid-row: 2 / 3;
  margin-bottom: 4vh;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1 / span 2;
  -ms-grid-row: 3;
  -ms-grid-row-span: 1;
  grid-row: 3 / 4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer h4 {
  opacity: 0.5;
  margin-bottom: 1.5vh;
}

.light main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer h4 {
  color:  #1F1E1E ;
  color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer h4 {
  color:  #FFFFFF ;
  color:  var(--theme-dark-textDark, #FFFFFF) ;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer--right, main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer--left {
  width: 50%;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__tag {
  margin-top: 2vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  line-height: 1.5rem;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__tag li {
  padding: 0.1vh 0.5vh;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__link svg {
  padding: 0.1vh 0.3vh;
  height: 5vh;
  width: auto;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__link svg {
  fill:  #E76639 ;
  fill:  var(--theme-light-color, #E76639) ;
}

.dark main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__link svg {
  fill:  #D16D4A ;
  fill:  var(--theme-dark-color, #D16D4A) ;
}

main .portfolio .portfolio__list .portfolio__list__item .portfolio__list__item__footer__link svg:hover {
  fill: #7c4926;
  opacity: 0.8;
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}

main .contact {
  padding: 18vh 0 8vh;
  margin: 0 auto;
  width: 70%;
  text-align: center;
}

main .contact h2 {
  font-size: 0.95rem;
}

main .contact h3 {
  font-size: 2.5rem;
  font-family: big-john, sans-serif;
  padding: 5vh 0 8vh;
}

main .contact p {
  margin: 0 auto 12vh;
  width: 56%;
}

.light main .contact p {
  color:  #7c7c7c ;
  color:  var(--theme-light-textLight, #7c7c7c) ;
}

.dark main .contact p {
  color:  #868686 ;
  color:  var(--theme-dark-textLight, #868686) ;
}

main .contact a {
  padding: 2.5vh 2.7vh 2vh 2.7vh;
  border-radius: 4px;
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}

.light main .contact a {
  outline: 2px solid #E76639 ;
  outline: 2px solid var(--theme-light-color, #E76639) ;
}

.dark main .contact a {
  outline: 2px solid #D16D4A ;
  outline: 2px solid var(--theme-dark-color, #D16D4A) ;
}

.light main .contact a {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark main .contact a {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

main .contact a:hover {
  color: white;
  outline-offset: 4px;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light main .contact a:hover {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark main .contact a:hover {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}

footer {
  margin: 14vh auto 0;
  padding-bottom: 7vh;
  width: 40%;
  text-align: center;
}

footer hr {
  position: relative;
  width: 50%;
  margin-bottom: 4vh;
}

footer hr::after {
  content: "";
  position: absolute;
}

footer a {
  padding: 0 0.3rem;
  position: relative;
}

.light footer a {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark footer a {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

footer a::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 0;
  width: 0%;
  height: 1.5px;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light footer a::after {
  background-color:  #1F1E1E ;
  background-color:  var(--theme-light-textDark, #1F1E1E) ;
}

.dark footer a::after {
  background-color:  #FFFFFF ;
  background-color:  var(--theme-dark-textDark, #FFFFFF) ;
}

footer a:hover {
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
}

.light footer a:hover {
  color:  #E76639 ;
  color:  var(--theme-light-color, #E76639) ;
}

.dark footer a:hover {
  color:  #D16D4A ;
  color:  var(--theme-dark-color, #D16D4A) ;
}

footer a:hover::after {
  width: 100%;
  -webkit-transition-duration: 0.6s;
          transition-duration: 0.6s;
}

.light footer a:hover::after {
  background-color:  #E76639 ;
  background-color:  var(--theme-light-color, #E76639) ;
}

.dark footer a:hover::after {
  background-color:  #D16D4A ;
  background-color:  var(--theme-dark-color, #D16D4A) ;
}
/*# sourceMappingURL=style.css.map */