@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;
}

.template__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;
}
.template__hero .template__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;
}
.template__hero .template__hero__content p{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 2;
}


/* .templates{
    padding-top: 5rem;
    padding-bottom: 5rem;
} */
.templates h2{
    font-size: var(--font-size-2xl);
    text-transform: capitalize;
    font-weight: 600;
    margin-bottom: .5rem;
    color: var(--color-slate-800);
}
.templates h3{
    font-size: var(--font-size-base);
    font-weight: 400;
    color: var(--color-slate-800);
    margin-bottom: 2rem;
}
.templates .templates__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    gap: 2rem;
}
.templates .templates__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;
}
.templates .templates__container .box:hover a {
    text-decoration: underline;
}
  
.templates .templates__container .box .img {
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
  
.templates .templates__container .box .img img {
    width: 100%;
    display: block;
    transition: transform 0.3s ease;
}
  
.templates .templates__container .box .img img:hover {
    transform: scale(1.02);
}
.templates .templates__container .box .contents {
    padding: 1rem;
}
.templates .templates__container .box .contents h2 {
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--mainBlue);
    font-weight: 800;
    text-transform: capitalize;
}
.templates .templates__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;
}
.templates .templates__container .box .contents a:hover {
    text-decoration: underline;
}
.templates .templates__container .box .contents p {
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    line-height: 1.5;
    margin-bottom: 1.5rem;
}
.templates .templates__container .box .contents .flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.templates .templates__container .box .contents .flex .price {
    background-color: var(--color-slate-200);
    padding: var(--space-3) var(--space-5);
    border-radius: var(--radius-md);
    font-size: var(--font-size-base);
    margin-top: 0.6rem;
    color: var(--black);
    font-weight: 500;
}
.templates .templates__container .box .contents .temp__btn {
    display: inline-block;
    text-align: center;
    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;
}
.templates .templates__container .box:hover .temp__btn,
.templates .templates__container .box:hover .temp__btn:hover {
  text-decoration: none !important;
}
.templates .templates__container .box .contents .temp__btn:hover {
    background-color: var(--accent);
}


.tempload-more__container {
  margin-top: 3rem;
}

#tepmloadMoreBtn {
  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;
}

#tepmloadMoreBtn:hover {
  background-color: var(--accent);
  transform: translateY(-2px);
}









.templates__details .templates__tetail{
    font-size: var(--font-size-2xl);
    margin-bottom: 1rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.templates__details .details__container .box .img{
    margin-bottom: 1rem;
    width: 100%;
}
.templates__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;
}
.templates__details .temp__stacks h4{
    font-size: var(--font-size-2xl);
    margin-bottom: 1rem;
    color: var(--color-slate-800);
    font-weight: 800;
    text-transform: capitalize;
}
.templates__details .temp__stacks h5{
    font-size: var(--font-size-base);
    color: var(--color-slate-800);
    font-weight: 400;
    text-transform: capitalize;
}






.related__temps 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__temps .related__temps__container{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    align-items: center;
    gap: 1rem;
}
.related__temps .related__temps__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__temps .related__temps__container .box:hover a {
    text-decoration: underline;
}
  
.related__temps .related__temps__container .box .img {
    display: block;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
  
.related__temps .related__temps__container .box .img img {
    width: 100%;
    display: block;
    transition: transform 0.3s ease;
}
  
.related__temps .related__temps__container .box .img img:hover {
    transform: scale(1.02);
}
.related__temps .related__temps__container .box .contents {
    padding: 1rem;
}
.related__temps .related__temps__container .box .contents h2 {
    font-size: var(--font-size-2xl);
    margin-bottom: .5rem;
    color: var(--mainBlue);
    font-weight: 800;
    text-transform: capitalize;
}
.related__temps .related__temps__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__temps .related__temps__container .box .contents a:hover {
    text-decoration: underline;
}
