@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* General Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  text-decoration: none;
  list-style: none;
  font-family: "Open Sans", sans-serif; /* Main font */
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  scroll-behavior: smooth;
  transition: all .3s ease;
}

/* Variables */
:root {
  --deepBlue: #05286c;
  --mainBlue: #2575e6;
  --secondary--color: #8729fc;
  --accent: #ff329e;
  --black: #141414;
  --white: #fff;
  --light:#F8FAFC;

  /* Slate Colors */
  --color-slate-50: #f8fafc;
  --color-slate-100: #f1f5f9;
  --color-slate-200: #e2e8f0;
  --color-slate-600: #475569;
  --color-slate-800: #1e293b;

  /* Sky Colors */
  --color-sky-100: #e0f2fe;

  /* Fonts */
  --ff-OpenSans: "Open Sans", sans-serif;
  --ff-inter: "Inter", sans-serif;

  /* Typography */
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem; 
  --font-size-lg: 1.125rem;  
  --font-size-xl: 1.25rem;    
  --font-size-2xl: 1.5rem;    
  --font-size-3xl: 1.875rem;  
  --font-size-4xl: 2.25rem;   
  --font-size-5xl: 3rem;      

  /* Spacing (Tailwind scale translated) */
  --space-3: 0.75rem;   /* 12px */
  --space-5: 1.25rem;   /* 20px */

  /* Border Radius */
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;

  /* Misc */
  --border-radius2: 10px;
  --padding-top: 5rem;
}

.portfolio__hero{
  background: 
      linear-gradient(to right, rgba(37,117,230,0.9), rgba(12,211,204,0.9)),
      url("../assets/images/about.png");
  
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  
    text-align: center;
    height: 80vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.portfolio__hero .portfolio__hero__content h1{
  font-size: var(--font-size-5xl);
  text-transform: capitalize;
  color: var(--color-slate-800);
  font-weight: 900;
  font-family: var(--ff--original);
  margin-bottom: 1rem;
}
.portfolio__hero .portfolio__hero__content p{
  font-size: var(--font-size-base);
  color: var(--color-slate-800);
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}



.portfolio {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
  
  .portfolio .portfolio__container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: 2rem;
  }
  
  .portfolio .portfolio__container .box .img {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-lg);
  }
  
  .portfolio .portfolio__container .box .img img {
    width: 100%;
    display: block;
    transition: transform 0.5s ease, opacity 0.5s ease;
  }
  .portfolio .portfolio__container .box .img .overlay-title {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.45);
    color: var(--white);
    font-weight: 600;
    font-size: var(--font-size-2xl);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    opacity: 1;
    transition: opacity 0.5s ease, transform 0.5s ease;
    font-size: var(--font-size-base);
  }
  
  .portfolio .portfolio__container .box:hover .img img {
    transform: scale(1.05);
  }
  
  .portfolio .portfolio__container .box:hover .img .overlay-title {
    opacity: 0;
    transform: scale(1.05);
  }
  
  .portfolio .portfolio__container .box .contents {
    margin-top: 1rem;
  }
  
  .portfolio .portfolio__container .box .portfolio__title a {
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 700;
    text-transform: capitalize;
    transition: color 0.3s ease, text-decoration 0.3s ease;
  }

  .portfolio .portfolio__container .box:hover .portfolio__title a {
    text-decoration: underline;
  }
  
  .portfolio .portfolio__container .box .btn {
    background-color: var(--white);
    border: 1px solid var(--color-slate-200);
    color: var(--black);
    padding: var(--space-3) var(--space-5);
    font-size: var(--font-size-base);
    font-weight: 500;
    text-transform: capitalize;
    display: inline-block;
    margin-top: 2rem;
  }
  .portfolio .portfolio__container .box .btn:hover{
    background-color: var(--mainBlue);
    color: var(--white);
  }
  
  






  /* @media screen and (max-width:991px) {
      .portfolio .portfolio__container .box .portfolio__title a {
        font-size: var(--font-size-xl);
      }
      .portfolio .portfolio__container .box .btn {
        font-size: var(--font-size-lg);
        margin-top: 1rem;
      }
  }

  @media (min-width: 900px) {
    .portfolio .portfolio__container {
      grid-template-columns: repeat(2, minmax(300px, 1fr));
    }
  } */