@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;
}

.blog__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;
}
.blog__hero .blog__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;
}
.blog__hero .blog__hero__content p{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 2;
}


.blog{
    padding-top: 5rem;
    padding-bottom: 5rem;
}
.blog .blog__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: 2rem;
}
.blog .blog__container .box {
    background-color: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    overflow: hidden; 
    transition: box-shadow 0.3s;
}
.blog .blog__container .box:hover a {
    text-decoration: underline;
}
  
.blog .blog__container .box .img {
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
  
.blog .blog__container .box .img img {
    width: 100%;
    display: block;
    transition: transform 0.3s ease;
}
  
.blog .blog__container .box .img img:hover {
    transform: scale(1.02);
}
.blog .blog__container .box .contents {
    padding: 1rem;
}
.blog .blog__container .box .contents h2 {
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--mainBlue);
    font-weight: 800;
    text-transform: capitalize;
}
.blog .blog__container .box .contents a {
    display: block;
    font-size: var(--font-size-base);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 600;
    text-transform: capitalize;
}
.blog .blog__container .box .contents a:hover {
    text-decoration: underline;
}
.blog .blog__container .box .contents p {
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 1.5;
    border-bottom: 1px solid var(--color-slate-200);
    padding-bottom: 1rem;
}
.blog .blog__container .box .contents .post__metas{
    margin-top: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: smaller;
    font-weight: 600;
    color: var(--color-slate-600);
    text-transform: capitalize;
}
.load-more__container {
  margin-top: 3rem;
}

#loadMoreBtn {
  background-color: var(--mainBlue);
  color: var(--white);
  border: none;
  padding: var(--space-3) var(--space-5);
  border-radius: var(--radius-md);
  font-size: var(--font-size-base);
  font-weight: 400;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.2s ease;
}

#loadMoreBtn:hover {
  background-color: var(--accent);
  transform: translateY(-2px);
}





.related__posts h2{
    font-size: var(--font-size-2xl);
    margin-bottom: 1.5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
    text-decoration: underline;
}
.related__posts .related__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    align-items: center;
    gap: 1rem;
}
.related__posts .related__container .box {
    background-color: var(--white);
    border-radius: var(--radius-lg);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    overflow: hidden; 
    transition: box-shadow 0.3s;
}
.related__posts .related__container .box:hover a {
    text-decoration: underline;
}
  
.related__posts .related__container .box .img {
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
  
.related__posts .related__container .box .img img {
    width: 100%;
    display: block;
    transition: transform 0.3s ease;
}
  
.related__posts .related__container .box .img img:hover {
    transform: scale(1.02);
}
.related__posts .related__container .box .contents {
    padding: 1rem;
}
.related__posts .related__container .box .contents h2 {
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--mainBlue);
    font-weight: 800;
    text-transform: capitalize;
}
.related__posts .related__container .box .contents a {
    display: block;
    font-size: var(--font-size-base);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 600;
    text-transform: capitalize;
}
.related__posts .related__container .box .contents a:hover {
    text-decoration: underline;
}
.related__posts .related__container .box .contents p {
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 1.5;
    border-bottom: 1px solid var(--color-slate-200);
    padding-bottom: 1rem;
}
.related__posts .related__container .box .contents .post__metas{
    margin-top: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: smaller;
    font-weight: 600;
    color: var(--color-slate-600);
    text-transform: capitalize;
}





.blog__details .blog__tetail{
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}

.blog__details .category{
    display: flex;
    margin-bottom: .5rem;
}
.blog__details .category p{
    font-size: var(--font-size-base);
    color: var(--color-slate-600);
    font-weight: 600;
    text-transform: uppercase;
    margin-right: .5rem;
}
.blog__details .category .categories{
    font-size: var(--font-size-sm);
    font-weight: 400;
    text-transform: capitalize;
}
.blog__details .category .categories a{
    color: var(--color-slate-600);
    text-decoration: underline;
    margin-right: 0.3rem;
}
.blog__details .category .categories a:hover{
    color: var(--accent);
    text-decoration: none;
}
.blog__details .share{
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}
.blog__details .share a{
    background-color: var(--accent);
    padding: .5rem;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    color: var(--white);
}
.blog__details .share a:hover{
    background-color: var(--mainBlue);
}
.blog__details h3{
    font-size: var(--font-size-base);
    color: var(--color-slate-600);
    font-weight: 600;
    text-transform: uppercase;
    margin-right: .5rem;
    margin-bottom: 1.5rem;
}
.blog__details h3 span{
    font-size: var(--font-size-base);
    font-weight: 400;
    text-transform: capitalize;
}
.blog__details .details__container .box .img{
    width: 100%;
    margin-bottom: 1rem;
}
.blog__details .details__container .box .contents p{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 2;
    margin-bottom: .5rem;
}
.blog__details .details__container .box .contents .heading{
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.blog__details .details__container .box .contents .link{
    font-size: var(--font-size-base);
    margin-bottom: .5rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
    text-decoration: underline;
}
.blog__details .details__container .box .contents .link:hover{
    color: var(--accent);
    text-decoration: none;
}
.blog__details .btn__flex{
    margin-top: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.blog__details .btn__flex{
    margin-top: 1.5rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.blog__details .btn__flex .primary{
    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-sm);
    font-weight: 500;
    text-transform: capitalize;
}
.blog__details .btn__flex .secondary{
    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-sm);
    font-weight: 500;
    text-transform: capitalize;
}
.blog__details .btn__flex .primary:hover{
    background-color: var(--accent);
}
.blog__details .btn__flex .secondary:hover{
    background-color: var(--accent);
}





