@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;
}

.individual__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;
}
.individual__hero .individual__hero__content .title{
    font-size: var(--font-size-5xl);
    text-transform: capitalize;
    color: var(--color-slate-800);
    font-weight: 900;
    font-family: var(--ff--original);
}




.individuals{
    padding-top: 5rem;
    padding-bottom: 5rem;
}
.individuals .individual__container .box{
    display: flex;
    align-items: center;
    gap: 5rem;
}
.individuals .individual__container .box .img{
    width: 90%;
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.individuals .individual__container .box .img img{
    border-radius: var(--radius-lg);
    transition: transform 0.3s ease;
}
.individuals .individual__container .box .img img:hover{
    transform: scale(1.02);
}
.individuals .individual__container .box .contents{
    width: 100%;
}
.individuals .individual__container .box .contents h2{
    font-size: var(--font-size-2xl);
    margin-bottom: 1rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.individuals .individual__container .box .contents p{
    font-size: var(--font-size-base);
    color: var(--color-slate-600);
    font-weight: 400;
    line-height: 2;
}

/* IMPORTANCE SECTION STARTS */
.importance{
    background-color: var(--color-slate-50);
}
.importance h3{
    font-size: var(--font-size-base);
    color: var(--mainBlue);
    font-weight: 900;
    text-transform: capitalize;
    margin-bottom: .5rem;
}
.importance h2{
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.importance h5{
    font-size: var(--font-size-base);
    color: var(--color-slate-600);
    font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 2rem;
}
.importance .importance__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: 1.5rem;
}
.importance .importance__container .box {
  padding: 1rem;
  background-color: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s;
}
.importance .importance__container .box:hover{
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); 
}


.importance .importance__container .box .icon{
    font-size: var(--font-size-5xl);
    margin-top: -.5rem;
    margin-right: 1.5rem;
    color: var(--color-slate-600);
}
.importance .importance__container .box .contents h4{
    font-size: var(--font-size-xl);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.importance .importance__container .box .contents p{
    font-size: var(--font-size-sm);
    color: var(--color-slate-600);
    font-weight: 400;
    line-height: 2;
}




/* ================= UNDERSTANDING WEBSITES ================= */
.understanding__website{
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.understanding__website .understanding__website__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}
.understanding__website .understanding__website__container .box .img{
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.understanding__website .understanding__website__container .box .img img{
    border-radius: var(--radius-lg);
    transition: transform 0.3s ease;
}
.understanding__website .understanding__website__container .box .img img:hover{
    transform: scale(1.02);
}
.understanding__website .understanding__website__container .box h3{
    font-size: var(--font-size-base);
    color: var(--mainBlue);
    font-weight: 900;
    text-transform: capitalize;
    margin-bottom: .5rem;
}
.understanding__website .understanding__website__container .box h2{
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.understanding__website .understanding__website__container .box p{
    font-size: var(--font-size-base);
    color: var(--color-slate-600);
    font-weight: 400;
    line-height: 2;
}



/* ================= PURPOSE SECTION ================= */
.purpose h2{
    font-size: var(--font-size-2xl);
    margin-bottom: 2rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
    text-align: center;
}
.purpose .purpose__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}
.purpose .purpose__container .box{
    background-color: var(--white);
    padding: 2rem;
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s;
}
.purpose .purpose__container .box:hover{
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); 
}
.purpose .purpose__container .box i{
    color: var(--mainBlue);
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem; 
}
.purpose .purpose__container .box h3{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 500;
    text-transform: capitalize;
    margin-bottom: .5rem;
}
.purpose .purpose__container .box p{
    font-size: var(--font-size-sm);
    color: var(--color-slate-600);
    font-weight: 500;
    line-height: 2;
}




/* ================= BENEFITS SECTION ================= */
.benefits{
    background-color: var(--color-slate-50);
    text-align: center;
}
.benefits h3{
    font-size: var(--font-size-base);
    margin-bottom: .5rem;
    color: var(--color-slate-600);
    font-weight: 400;
    text-align: center;
}
.benefits h2{
    font-size: var(--font-size-2xl);
    margin-bottom: 2rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
    text-align: center;
}
.benefits .benefits__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
}
.benefits .benefits__container .box{
    background-color: var(--white);
    padding: 2rem;
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.3s;
}
.benefits .benefits__container .box:hover{
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); 
}
.benefits .benefits__container .box i{
    color: var(--mainBlue);
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem; 
}
.benefits .benefits__container .box h3{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 500;
    text-transform: capitalize;
    margin-bottom: .5rem;
}
.benefits .benefits__container .box p{
    font-size: var(--font-size-sm);
    color: var(--color-slate-600);
    font-weight: 500;
    line-height: 2;
}




/* ================= TECH STACK SECTION ================= */
.tech__stack{
    padding-top: 3rem;
    padding-bottom: 3rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.tech__stack h2{
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--mainBlue);
    font-weight: 800;
    text-transform: capitalize;
}
.tech__stack p{
    font-size: var(--font-size-base);
    margin-bottom: 2rem;
    color: var(--color-slate-800);
    font-weight: 500;
    text-transform: capitalize;
    letter-spacing: 4px;
}
.tech__stack .tech__stack__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(50px, 1fr));
    gap: 2rem;
}
.tech__stack .tech__stack__container .box{
    background-color: var(--white);
    padding: .5rem;
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.tech__stack .tech__stack__container .box img {
    filter: invert(36%) sepia(79%) saturate(2000%) hue-rotate(200deg) brightness(95%) contrast(90%);
}
.tech__stack .tech__stack__container .box svg {
    fill: var(--mainBlue);
}













/* ================= MOBILE ================= */
@media (max-width: 991px) {
    .individuals .individual__container .box{
        flex-direction: column;
        gap: 2rem;
    }
    .individuals .individual__container .box .img{
        width: 100%;
    }



}