.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.text-input {
  padding: 0.7rem 1rem;
  display: block;
  width: 100%;
  border-radius: 5px;
  border: 1px solid #e0e0e0;
  outline: none;
  color: #444;
  line-height: 1.5rem;
  font-size: 1.2em;
  /* font-family: "Lora", serif; */
}

.hero_section{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding:2em 2em;
  margin-top:-70px;
  width:100%;
  height:75dvh;
  /* background-color: red; */
  position: relative;
  text-align: center;
  background: url("../images/blogHeroImage.jpg");
  background-size: cover;
  background-position: center center;
}

.hero_section h1{
  font-size: 3rem;
}

.hero_section p {
  margin-top: 1em;
}

.scrollIcon{
  margin-top: 2em;
}

.msg {
  width: 100%;
  margin: 5px auto;
  padding: 8px;
  border-radius: 5px;
  list-style: none;
}

.success {
  color: #3a6e3a;
  border: 1px solid #3a6e3a;
  background: #bcf5bc;
}

.error {
  color: #884b4b;
  border: 1px solid #884b4b;
  background: #f5bcbc;
}

/* NAVBAR */

*, ::before, ::after {
  box-sizing: border-box;
}

html {
  line-height: normal;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: hidden;
  overflow-y: visible;
  position: relative;
  background-color: white;
}

body p{
  font-family: Roboto Regular, sans-serif;
}

body h4{
  font-family: Raleway SemiBold, sans-serif;
}

.cursor {
  width: 20px;
  height: 20px;
  border: 1px solid white;
  border-radius: 50%;
  position: absolute;
  z-index: 99999;
  transition-duration: 200ms;
  transition-timing-function: ease-out;
  animation: cursorAnim 0.5s infinite alternate;
  pointer-events: none;
}

.cursor::after {
  content: "";
  width: 20px;
  height: 20px;
  position: absolute;
  border: 8px solid gray;
  border-radius: 50%;
  opacity: 0.5;
  top: -1px;
  left: -1px;
  animation: cursorAnim2 0.5s infinite alternate;
}

@keyframes cursorAnim {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0.7);
  }
}
@keyframes cursorAnim2 {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0.4);
  }
}
@keyframes cursorAnim3 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(3);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
.expand {
  animation: cursorAnim3 0.5s forwards;
  border: 1px solid red;
}

@media screen and (max-width: 1024px) {
  .cursor {
    display: none;
  }
}
:root {
  --clr-primary-100:#C71920;
  --clr-primary-200:#141616;
  --clr-primary-300:#EC1C24;
  --clr-primary-400:#000000;
  --clr-primary-500:#FFFFFF;
  --clr-secondary-100:#DFDFDF;
  --clr-secondary-200:rgb(185, 185, 185);
  --clr-secondary-300:#000000;
  --clr-secondary-400:#302f2f;
  --clr-secondary-500:#0E0F0F;
  --fs-50: 0.7rem;
  --fs-100: 0.8rem;
  --fs-200: 0.9rem;
  --fs-300: 1rem;
  --fs-400: 1.125rem;
  --fs-500: 1.563rem;
  --fs-600: 1.953rem;
  --fs-700: 2.441rem;
  --fs-800: 3.052rem;
}

/*
 ================================
  HEADER, NAVIGATION AND LOADING
 ================================
*/
/* POST SLIDER */

.post-slider {
  position: relative;
  max-width: 1200px;
  margin-inline: auto;
}

.post-slider hr{
  width:285px;
  height:1.5px;
  background-color: #354F69;
  margin-bottom: 3em;
  margin-right: auto;
  margin-left:3.5em;
}

.post-slider .slider-title {
  text-align: left;
  margin: 30px auto;
  font-family: "Inter", sans-serif;
}

.post-slider .slider-title{
  margin:.5em auto;
  margin-top: 3em;
  margin-left:1.5em;
  color:#354F69;
  font-weight: 500;
}

.post-slider .next {
  position: absolute;
  top: 50%;
  right: 30px;
  font-size: 2em;
  color: #EC1C24;
  cursor: pointer;
}

.post-slider .prev {
  position: absolute;
  top: 50%;
  left: 30px;
  font-size: 2em;
  color: #EC1C24;
  cursor: pointer;
}

.post-slider .post-wrapper {
  width: 84%;
  height: 400px;
  margin: 1em auto;
  overflow: hidden;
  padding: 10px 0px 10px 0px;
}

.post-slider .post-wrapper .post {
  width: 310px;
  height: 310px;
  margin: 0px 10px;
  /* margin-left: -.1em; */
  display: inline-block;
  background: white;
  border-radius: 5px;
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.103);
  overflow: hidden;
  position: relative;
}

.post-slider .post-wrapper .post h1{
  display: none;
}

.post-slider .post-wrapper .post p{
  color:rgb(168, 168, 168);
  font-weight: 300;
  text-align: left;
  font-size: .9rem;
  line-height: 1.5;
}

.post-slider .post-wrapper .post .underline{
  color:#354F69;
  text-decoration: underline;
  position: absolute;
  bottom:1em;
}

.post-info h4{
  color:#354F69;
  font-weight: 400;
  font-size: 1.5rem;
  margin-top:1em;
  margin-bottom: .5em;
  line-height: 1.3;
}

/* .post-info h1:not(:first-of-type),.post-info h2, .post-info h3, .post-info h4, .post-info h5 {
  display: none;
} */

.post-slider .post-wrapper .post i{
  color:#354F69;
  /* font-family: "Inter", sans-serif; */
  font-weight: 300;
  margin-top: 1em;
  font-size: .8rem;
}

.post-slider .post-wrapper .post a{
  width:300px;
  display: block;
}

.post-slider .post-wrapper .post .post-info {
  height: 130px;
  padding: 0px 1em;
}

.post-slider .post-wrapper .post .slider-image {
  position: absolute;
  object-fit: cover;
  /* top:0; */
  /* bottom: 0; */
  object-position: center center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.post-slider .post-wrapper .post .img_div {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 200px; 
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

/* CONTENT */

.content {
  width: 90%;
  max-width: 1200px;
  margin-inline: auto;
  margin: 30px auto 30px;
}

.content .main-content {
  width: 65%;
  float: left;
  display: flex;
  gap:2em;
  flex-wrap: wrap;
  margin-right: 2em;
  background-color: #d9d9d925;
  padding:4em 2em; 
}

/* .content .main-content.single {
  background: white;
  padding: 20px 50px;
  font-size: 1.1em;
  border-radius: 5px;
} */

.content .main-content.single {
  display:block;
  background-color:white !important;
  padding: 50px 50px;
  color:black;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: left;
  border-radius: .2em;
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.055);
}

.content .main-content.single p{
  text-align: left;
  color:black;
}

.content .main-content.single h1{
  font-family: Raleway SemiBold, sans-serif;

}

.content .main-content.single .post-title {
  text-align: center;
  margin-bottom: 20px;
  color:black;
  font-family: 'Inter', 'sans-serif';
  text-align: left;
}

.content .main-content.single h2{
  color:black;
  font-weight: 500;
  font-family: 'Inter', 'sans-serif';
}

.content .main-content .post {
  width: 310px;
  height: 310px;
  border-radius: 5px;
  background-color: white;
  position: relative;
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.466), 0, 0;
}

.content .popular .post {
  border-top: 1px solid #e0e0e0;
  margin-top: 10px;
  padding-top: 10px;
}

.content .popular h2{
  font-family: Raleway SemiBold, sans-serif;
  font-weight: 500;
  color:#354F69;
}

.content .popular h4{
  color:rgb(48, 48, 48);
}

.content .popular a {
  text-decoration: none;
}

.content .main-content .post .post-preview i {
  color: #757575;
  font-size: 0.8em;
  margin-top: 1em;
}

.content .main-content .post .post-preview h2 a {
  color:#354F69;
  text-decoration: none;
}

.content .main-content .post .post-preview{
  padding:2em;
}

.content .main-content .post .post-preview h1{
  display: none;
}

.content .main-content .post .post-preview i img{
  width:13px;
}

/* .content .main-content .post .post-preview img{
  display: none;
} */



.post_img_wrap{
  align-self: left;
  width: 100%;
  position: relative;
  height:300px;
  object-fit: cover;
}

.post_img_wrap img{
  width:100%;
  position: absolute;
  object-fit: cover;
  height: 100%;
}

.content hr {
  max-width: 300px;
  height: 2px;
  background-color: #354F69;
  margin-left:0em;
}
.content .main-content .post .post-preview p img{
  display: none;
}

.content .main-content .post .post-preview p{
  font-weight: 300 !important;
  color:#B5B5B5;
}

.content .main-content .post .preview-text {
  line-height: 1.5em;
  font-size: 1.03em;
  color: #444;
  text-align: left;
  margin-bottom: 1em;
  font-weight: 300 !important;
  /* padding:1em; */
}

.content .main-content .post p{
  text-align: left;
}

.content .main-content .post h2 a{
  color:white;
  font-weight: 400;
  font-size: 1.5rem;
  font-family: Raleway SemiBold, sans-serif;
}

.content .main-content .post h2 {
  margin-top: 0;
}

.content .main-content .post .read-more {
  position: absolute;
  bottom: 10px;
  right: 10px;
  border: 1px solid #354F69;
  background: transparent;
  border-radius: 0px;
  color: #354F69 !important;
  padding:.5em 2em;
  margin-top: 2em;
  border-radius: .2em;
  text-decoration: none;
}

.content .main-content .post .read-more:hover {
  background: #354F69;
  color: white !important;
  transition: 0.25s;
}

.description{
  max-width: 55ch;
  margin-inline: auto;
}

.content .main-content .post .img_div {
  position: relative;
  width: 40%;
  height: 100%;
  float: left;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  overflow: hidden;
}

.content .main-content .post .post-image{
  position: absolute;
  object-fit:cover;
  width:100%;
  height:100%;
  object-position: center center;
}

.content .main-content .post .post-preview {
  width: 100%;
  padding: 1.5em;
  float: right;
}

.content .main-content .recent-post-title {
  margin: 20px;
}

.recent-post-title{
  font-family: Raleway SemiBold, sans-serif;
  color:#354F69;
  font-weight: 500;
  font-size: 1.4rem;
  margin-top: 3em;
}

.content .sidebar {
  width: 30%;
  float: left;
}

.content .sidebar.single {
  padding: 0px 10px;
}

.content .sidebar .section {
  background: white;
  padding: 20px;
  border-radius: .2em;
  margin-bottom: 20px;
}

.content .sidebar .section .section-title {
  margin: 10px 0px 10px 0px;
  font-family: 'Inter', sans-serif;
}

.content .sidebar .section.search {
  margin-top: 1.25em;
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.075);
}

.content .sidebar .section.search input{
  background-color: transparent;
  border: 1px solid a5a5a5;
  margin-top: 1em;
  color:#354F69;
  font-weight: 400;
}

.content .sidebar .section.topics ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}

.content .sidebar .section.topics{
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.048);
  margin-top: 2em;
  padding-bottom: 4em;
}

.content .sidebar .section.topics h2{
  margin-bottom: 1em;
  text-align: center;
  color:#354F69;
  font-family: Raleway SemiBold, sans-serif;
  font-weight: 500;
}

.content .sidebar .section.topics ul li a {
  display: block;
  width:80%;
  margin-inline: auto;
  padding: 15px 0px 15px 0px;
  border-bottom: 1px solid #a5a5a571;
  transition: all 0.3s;
  text-align: center;
  text-decoration: none;
  color:#354F69;
  font-size: 1.2rem;
}

.content .sidebar .section.topics ul li a:hover {
  padding-left: 10px;
  transition: all 0.3s;
  color:#EC1C24;
}

/* AUTH PAGES */

.auth-content {
  width: 40%;
  margin: 50px auto;
  padding: 20px;
  background: transparent;
  background-color: white;
  box-shadow: 0em 0em .5em rgba(0, 0, 0, 0.075);
  padding:2em;
  border-radius: 5px;
}

.auth-content label{
  color:#354F69;
  margin-top: 2em;
  font-family: 'Inter', sans-serif;
}

.auth-content button{
  background-color:#354F69;
  color:white;
  border:2px solid #354F69;
  font-weight: 600;
  padding: .5em 2em;
  margin-top: 2em;
}

.auth-content .form-title {
  text-align: center;
  color:#354F69;
  font-family: 'Inter', sans-serif;
  font-weight: 500;
}

.auth-content form div {
  margin-bottom: 10px;
}

.auth-content form p {
  text-align: center;
}

.auth-content form p a {
  text-decoration: underline;
}
/* MEDIA QUERIES */

@media only screen and (max-width: 934px) {
  .content {
    width: 100%;
  }

  .post-slider hr{
    text-align: center;
    margin-right: auto;
  }

  .auth-content {
    width: 50%;
  }

  .content .main-content {
    width: 100%;
    padding: 10px;
  }

  .content .sidebar {
    width: 100%;
    padding: 10px;
  }

  .content .sidebar .section.search {
    margin-top: 30px;
  }

  .recent-post-title{
    margin-left: 2em;
  }

  .content hr {
    margin-left:3em;
  }
}

@media only screen and (max-width: 770px) {
  /* header {
    position: relative;
  } */

  .post-slider .slider-title{
    text-align: center;
    margin-left:auto;
    margin-right: auto;
  }

  .auth-content {
    width: 60%;
  }

  .main-content-wrapper {
    padding: 10px;
  }

  .hero_section{
    background: url("../images/blogHeroImageMobile.jpg");
    background-size: cover;
    background-position: center center;
  }

  /* header ul {
    width: 100%;
    background: #0e94a0;
    max-height: 0px;
    overflow: hidden;
  } */

  .showing {
    max-height: 100em;
  }

  /* header ul li {
    width: 100%;
  }

  header ul li ul {
    position: static;
    display: block;
    width: 100%;
  }

  header ul li ul li a {
    padding: 10px;
    background: #0e94a0;
    color: white;
    padding-left: 50px;
  }

  header ul li ul li a:hover {
    background: #006669;
  }

  header ul li ul li a.logout {
    color: red;
  }

  header .menu-toggle {
    display: block;
    position: absolute;
    right: 20px;
    top: 20px;
    font-size: 1.9em;
  }

  header .logo {
    margin-left: 0.5em;
  } */
}

@media only screen and (max-width: 600px) {
  .content .main-content .post {
    height: auto;
  }

  .recent-post-title{
    text-align: center;
    font-size: 1.6rem;
    margin-left: 0em;
  }

  .content hr {
    width:300px;
    margin-inline: auto;
  }

  /* .content .main-content .post img{
    height:400px;
  } */

  .auth-content {
    width: 90%;
  }

  .content .main-content {
    padding:4em 2em;
  }

  .content .main-content.single {
    padding: 10px 20px;
  }

  .content .main-content .post .img_div{
    width:100%;
  }

  .content .main-content .post .post-image {
    position: relative;
    width: 100%;
    height: 250px;
  }

  .content .main-content .post .post-preview {
    width: 100%;
  }

  .content .main-content .post .read-more {
    position: static;
    display: block;
    width: 100%;
    text-align: center;
  }

  .post-slider .slider-title{
    text-align: center;
    margin-left: auto;
  }

  .post-slider hr{
    margin-left: auto;
  }

  .post-slider .next {
    right: 10px;
  }

  .post-slider .prev {
    left: 10px;
  }
}
