/* ------------------- */
/* Custom properties   */
/* ------------------- */

:root {
    /* colors */
    --clr-dark: 230 35% 7%;
    --clr-light: 231 77% 90%;
    --clr-white: 0 0% 100%;
    
    /* font-sizes */
    --fs-900: clamp(5rem, 8vw + 1rem, 9.375rem);
    --fs-800: 3.5rem;
    --fs-700: 1.5rem;
    --fs-600: 1rem;
    --fs-500: 1rem;
    --fs-400: 0.9375rem;
    --fs-300: 1rem;
    --fs-200: 0.875rem;
    
    /* font-families */
    --ff-serif: "Bellefair", serif;
    --ff-sans-cond: "Barlow Condensed", sans-serif;
    --ff-sans-normal: "Barlow", sans-serif;
  }
  
  @media (min-width: 35em) {
    :root {
        --fs-800: 5rem;
        --fs-700: 2.5rem;
        --fs-600: 1.5rem;
        --fs-500: 1.25rem;
        --fs-400: 1rem;
    }
  }
  
  @media (min-width: 45em) {
    :root {
        /* font-sizes */
        --fs-800: 6.25rem;
        --fs-700: 3.5rem;
        --fs-600: 2rem;
        --fs-500: 1.75rem;
        --fs-400: 1.125rem;
    }
  }
  
  
  /* ------------------- */
  /* Reset               */
  /* ------------------- */
  
  /* https://piccalil.li/blog/a-modern-css-reset/ */
  
  /* Box sizing */
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  /* for this site */
  /* Global Styles */
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;        
  }
  
  html {
    font-size: 62.5%;
  }
  
  /* Reset margins */
  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  p,
  figure,
  picture {
    margin: 0; 
  }
  
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p {
    font-weight: 400;
  }
  /* make images easier to work with */
  img,
  picutre {
    max-width: 100%;
    display: block;
  }
  /* make form elements easier to work with */
  input,
  button,
  textarea,
  select {
    font: inherit;
  }
  li,
  button,
  label,
  input,
  a,
  p {
    font-size: 2.5rem;
  }
  
  ul {
    list-style: none;
  }
  
  a {
    text-decoration: none;
    color: #2c2c2c;
  }
  /* debug */
  .debug {
    border: 1px solid red;
  }
  /* set up the body */
  body {
    font-family: var(--ff-sans-normal);
    font-family: "Montserrat", sans-serif;
    font-size: var(--fs-400);
    color: hsl( var(--clr-dark) );
    background-color: hsl( var(--clr-white) );
    line-height: 1.5;
    min-height: 100vh;
    
    display: grid;
    grid-template-rows: min-content 1fr;
    
    overflow-x: hidden;
  }
  
  /* ------------------- */
  /* Utility classes     */
  /* ------------------- */
  
  /* general */
  
  .flex {
    display: flex;
    gap: var(--gap, 1rem);
  }
  
  .grid {
    display: grid;
    gap: var(--gap, 1rem);
  }
  
  
  .active {
    background: #2c2c2c;
    color: white;
    padding: 1rem 3rem;
    border-radius: 2rem;
  }
  
  .main-head {
    width: 95%;
    margin: 0 0 0 auto;
  }
  
  nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row;
    min-height: 10vh;
    width: 60%;
    flex-wrap: wrap;
  }
  
  nav .logo {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
    flex: 1 1 10rem;
  }
  
  nav .logo h1 {
    margin: 2rem;
  }
  
  nav ul {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-direction: row;
    flex: 1 1 40rem;
  }
  
  
  @media screen and (max-width: 1332px) {
    html {
      font-size: 53%;
    }
    
    svg {
      width: 80%;
    }
    nav {
      width: 100%;
    }
  }
  
  @media screen and (max-width: 754px) {
    html {
      font-size: 45%;
    }
    svg {
      height: 60%;
    }
    .main-head {
      width: 100%;
    }
    nav .logo {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    flex: 1 1 20rem;
    margin-top: 2rem;
    }
    nav ul {
    flex: 1 1 60rem;
    margin: 2rem 0rem;
    }

    .elena,
    .travelly {
      flex: 1 1 50rem;
    }
    .elena img,
    .travelly img {
      width: 100%;
      height: 100%;
    }
    
  }
  
  /* footer css */
  footer {
    background: #515151;
    color: white;
    min-height: 10vh;
    padding: 0% 5%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: row;
  }
  
  footer ul  {
    flex: 1 1 40rem;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-direction: row;
  }
  
  footer h4 {
    flex: 1 1 40rem;
    font-size: 2.5rem;
  }
  
  

  .travelly,
  .elena {
    flex: 1 1 40rem;
  }
  
  
  
  
  /*  */
  .card > * {
    font-size: 1.125rem;
    line-height: 1.6;
}


projectdetails {
    display: grid;
    gap: 1rem;
    /* max-width: 90vw; */
    margin-right: auto;
    margin-left: auto;
    padding: 1rem;
    
  }

  .card {
    border: 1px solid hsl(0 0% 80%);
    border-radius: 0.5rem;
    padding: 1rem;
  }
  
  .date {
    font-size: 2rem;
    font-weight: 700;
    opacity: 0.9;
    padding: 1rem;
  }
  
  .tags {
    list-style: none;
    margin: 0;
    padding: 0;
  
    display: flex;
    gap: 0.5rem;
  
    flex-wrap: wrap;
  }
  
  .tag {
    font-size: 2.5rem;
    font-weight: 700;
    background-color: hsl(0 0% 90%);
    color: hsl(0 0% 30%);
    border: 1px solid hsl(0 0% 70%);
    border-radius: 1rem;
    padding: 0.125em 0.75em;
  }

  .title {
      font-size: 5rem;
      font-weight: 900;
  }
  .summary {
      font-size: 4rem;
      font-weight: 700;
  }
  projectdetails .read {
    font-size: 4rem;
    background: white;
    color: black;
    padding: 1.5rem;
    /* border-radius: 2rem;
    border: 1px solid black; */
  }
  projectdetails .read  > a {
    color: black;
    border: 1px solid black;
    padding: 1rem;
    margin: 1rem;
    border-radius: 2rem;
    text-decoration: underline;
    
  }
  

  
  /*  */

  .description > p > a {
    text-decoration: underline;
  }
  .description > h1 {
    font-size: 6rem;
  }
  .description > h2 {
    font-size: 5rem;
  }
  .description > h3 {
    font-size: 4rem;
  }
  .description > p{
    font-size: 3rem;
  }
  .description > pre {
    border: 1px solid black;
    border-radius: 1rem;
  }
  .description > pre > code {
    font-size: 3rem;
    

  }

  @media screen and (max-width: 754px) {
    .card > * {
      font-size: .700rem;
      line-height: .6;
  }
  footer ul {
    display: grid;
  }
  
  
  projectdetails {
      display: grid;
      gap: .5rem;
      /* max-width: 90vw; */
      margin-right: auto;
      margin-left: auto;
      padding: .5rem;
      
    }
  
    .card {
      border: 1px solid hsl(0 0% 80%);
      border-radius: 0.25rem;
      padding: .5rem;
    }
    
    .date {
      font-size: 1rem;
      font-weight: 700;
      opacity: 0.9;
      padding: .5rem;
    }
    
    .tags {
      list-style: none;
      margin: 0;
      padding: 0;
    
      display: flex;
      gap: 0.25rem;
    
      flex-wrap: wrap;
    }
    
    .tag {
      font-size: 1.2rem;
      font-weight: 700;
      background-color: hsl(0 0% 90%);
      color: hsl(0 0% 30%);
      border: 1px solid hsl(0 0% 70%);
      border-radius: 1rem;
      padding: 0.60em 0.60em;
    }
  
    .title {
        font-size: 2.5rem;
        font-weight: 900;
    }
    .summary {
        font-size: 2rem;
        font-weight: 700;
    }
    projectdetails .read {
      font-size: 2rem;
      background: white;
      color: black;
      padding: .7rem;
      /* border-radius: 2rem;
      border: 1px solid black; */
    }
    projectdetails .read  > a {
      color: black;
      border: 1px solid black;
      padding: .5rem;
      margin: .5rem;
      border-radius: .5rem;
      text-decoration: underline;
      
    }
    
  
    
    /*  */
  
    .description > p > a {
      text-decoration: underline;
    }
    .description > h1 {
      font-size: 3rem;
    }
    .description > h2 {
      font-size: 2.5rem;
    }
    .description > h3 {
      font-size: 2rem;
    }
    .description > p{
      font-size: 1.5rem;
    }
    .description > pre {
      border: 1px solid black;
      border-radius: .5rem;
    }
    .description > pre > code {
      font-size: 1.5rem;
      
  
    }
  }