/*--------------// Imports //-------------*/
@import "reset.css";
@import "prism.css";

/*---------// Components //--------*/
@import "layouts/base_layout.css";
@import "layouts/project_layout.css";
@import "project_section.css";

/*--------------// FONTS  //-------------*/
@font-face {
  font-family: 'Poppins';
  font-style: regular;
  font-feature-settings: var(--font-feature);
  font-weight: 400;
  font-display: swap;
  src:
    url("./fonts/Poppins/Poppins-Regular.woff") format('woff'),
    url("./fonts/Poppins/Poppins-Regular.woff2") format('woff2');
}

@font-face {
  font-family: 'Poppins';
  font-style: medium;
  font-feature-settings: var(--font-feature);
  font-weight: 500;
  font-display: swap;
  src:
    url("./fonts/Poppins/Poppins-Medium.woff") format('woff'),
    url("./fonts/Poppins/Poppins-Medium.woff2") format('woff2');
}

@font-face {
  font-family: 'Poppins';
  font-style: semibold;
  font-feature-settings: var(--font-feature);
  font-weight: 600;
  font-display: swap;
  src:
    url("./fonts/Poppins/Poppins-SemiBold.woff") format('woff'),
    url("./fonts/Poppins/Poppins-SemiBold.woff2") format('woff2');
}

@font-face {
  font-family: 'Poppins';
  font-style: bold;
  font-feature-settings: var(--font-feature);
  font-weight: 700;
  font-display: swap;
  src:
    url("./fonts/Poppins/Poppins-Bold.woff") format('woff'),
    url("./fonts/Poppins/Poppins-Bold.woff2") format('woff2');
}

/*--------------// Root //--------------*/
:root {
  --color-content: #000000;
  --font-family: "Poppins", sans-serif;
  --font-feature: 'liga' 1, 'calt' 1; /* fix for Chrome */
  --line-height: 1.4em;
  --margin-bottom: 1rem;
  --accent: #4e75ba;
  --bck-color: #1f2127;
}

/*--------------// BALISE //--------------*/
html {
  height: 100%;
  font-size: 16px;
  font-family: 'Poppins';
}
body {
  height: 100%;
  background-color: #fff;
  color: var(--color-content);
}
h1,h2{
  text-transform: capitalize;
}
h1{
  font-size: 3rem;
  font-weight: 600;
}
h2{
  font-size: 1.5rem;
  font-weight: 400;
}
h3{
  font-size: 1rem;
  font-weight: 400;
}
h2{
  margin: 1rem 0;
}
p,
li,
a {
  position:relative;
  font-family: var(--font-family);
  color: var(--color-content);
  font-size: 1.15rem;
  font-weight: 400;
}
.animation{
  position:relative;
  font-family: var(--font-family);
  color: var(--color-content);
  font-size: 1.15rem;
}
.animation::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 4px;
  background-color: var(--color-content);
  bottom: 0;
  left: 0;
  transform-origin: right;
  transform: scaleX(0);
  transition: transform .3s ease-in-out;
}

a:hover::before {
  transform-origin: left;
  transform: scaleX(1);
}
p {
  line-height: var(--line-height);
}
ul {
  font-family: var(--font-family);
}
li {
  margin-bottom: 0.8rem;
}
label,
input {
  font-family: var(--font-family);
}
button {
  font-family: var(--font-family);
  font-size: 1rem;
  padding: 0.3rem;
}
button a {
  text-decoration: none;
  color: white;
}
mark {
  background-color: var(--color-secondary);
}
small {
  font-family: var(--font-family);
  font-size: 1rem;
  color: var(--color-content);
}
section {
  margin: 0 0 1rem 0;
}
figcaption {
  font-family: var(--font-family);
}
table,th,tr {
  font-family: var(--font-family);
  color: var(--color-content);
}
table{
  border-collapse: collapse;
}
p ~ h2{
  margin: 2rem 0 0.5rem 0;
}
td > a {
    text-decoration:none;
}
th {
  text-align: left;
  color: #000;
  font-size: 1.1rem;
  font-weight: 600;
  padding-right: 1rem;
}
td {
  padding-block: 0.5rem;
  padding-right: 1rem;
}
nav {
  padding-top: 1.5em;
}
nav ul {
  display: flex;
  justify-content: end;
}
nav ul li {
  margin-left:1rem;
  list-style: none;
}
strong {
  color: var(--accent);
}
nav ul li a {
  text-decoration: none;
}
@media only screen and (min-width: 375px) {
}

@media only screen and (min-width: 768px) {
  nav ul {
    justify-content: flex-end;
  }
}

footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-top: 2em;
  padding-bottom: 1em;
}
footer a {
  text-decoration: none;
}


/*--------------// ICON FONT //--------------*/
.icon {
  font-size: 1.5rem;
  color: var(--bck-color); 
}
.icon:hover {
  color: var(--accent); 
}

/*--------------// Prims Syntax Highlight //--------------*/
.token.property, .token.tag, .token.constant, .token.symbol, .token.deleted {
    color: #fd971f !important;
}
:not(pre) > code[class*="language-"], pre[class*="language-"] {
	background: var(--bck-color) !important;
}
/*--------------// Utility class //--------------*/
.negative-mt{
  margin-top: -1rem;
}
.list-item-style {
  margin-left: 2em;
}
.center {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 50%;
}
.round_borders {
  border-radius: 10px;
}
.mt {
  margin-top:1rem;
}
.mb {
  margin-bottom: var(--margin-bottom);
}
.lh {
  line-height: 1em;
}
.heading{
  font-size:2.5rem;
  text-transform: capitalize;
}
.sub-heading-2{
  font-size:2em;
}
.flex-inline{
  display: inline-flex;
}
.unstyle-a{
  text-decoration: none;
}
.unstyle-li{
  list-style: none;
  margin-left: 0rem;
}
/*--------------// Dark mode //--------------*/

@media (prefers-color-scheme: dark) {
  body {
    background-color: #121212;
  }
  :root{
    --color-content: #fff;
  }
  th{
    color: #fff;
  }
  figcaption{
    color: #fff;
  }
}
/*--------------// Positionnement //--------------*/
header {
  grid-area: header;
}
main {
  margin: 2rem 0rem;
  grid-area: main;
}
@media only screen and (max-width: 768px) {
  main {
      margin: 2rem 0.5rem;
  }

footer {
  grid-area: footer;
}
