/* ==============================
   COMMON STYLES
   ============================== */

.neo-premium-post-cards{
  max-width: 1400px;
}

.neo-premium-post-cards a:not(.neo-button) {
  display: block;
  height: 100%;
}

.neo-premium-post-cards .category a {
  display: inline-block;
}

.neo-premium-post-cards .vertical-text a {
  color: var(--neo-color-white);
}

.neo-premium-post-cards .category {
  font-size: 0.7rem;
  opacity: 0.9;
  text-transform: uppercase;
  line-height: 1.2em;
  display: block;
}

.neo-premium-post-cards .neo-button{
  margin-top: 20px;
  margin-bottom: 10px;
}

.neo-premium-post-cards .vertical-line:before {
  background-color: var(--neo-background-color-white);
}

.neo-premium-post-cards .main-post:hover .vertical-line:before ,
.neo-premium-post-cards .post:hover .vertical-line:before {
  height: 0;
}

.neo-premium-post-cards .vertical-line:after {
  background-color: var(--neo-background-color-white);
}

.neo-premium-post-cards .main-post:hover .vertical-line:after ,
.neo-premium-post-cards .post:hover .vertical-line:after {
  height: 50px;
}

.neo-premium-post-cards .standard-image-holder {
  padding: 0;
}

.neo-premium-post-cards .post img,
.neo-premium-post-cards .main-post img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}

.neo-premium-post-cards .main-post:hover img,
.neo-premium-post-cards .post:hover img {
  transform: scale(1.05);
}

.neo-premium-post-cards .button {
  margin-top: 20px;
}

.neo-premium-post-cards .post-content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: var(--neo-padding-elements-inner);
  color: var(--neo-color-white);
  width: 100%;
  background: linear-gradient(to top, var(--neo-background-color-overlay) 15%, transparent 100%);
  z-index: 1;
  padding-bottom: 25px;
}

.neo-premium-post-cards .category a{
  color: var(--neo-color-white);
}

.neo-premium-post-cards .big-text {
  bottom: 0;
  top: unset;
  z-index: 1;
  color: var(--neo-color-big-tex-reversed);
  /*
  transform-origin: left center;
  transform: translateY(0) rotate(-90deg);
  left: 120px;
  bottom:-150px
  */
}

.neo-premium-post-cards .post .big-text {
  font-size: 120px;
  bottom: 10px;
}
.neo-premium-post-cards .right-col .post .big-text{
   bottom: 30px;
}


.neo-premium-post-cards .standard-image-holder,
.neo-premium-post-cards .standard-image {
  height: 100%;
}

.neo-premium-post-cards .article-title {
  margin-top: 10px;
  line-height: 1.3;
  margin-bottom: 0;
}

.neo-premium-post-cards .side-posts .article-title {
  margin-top: 5px;
}

.neo-premium-post-cards .article-title a {
  color: var(--neo-color-reversed);
  display: block;
  padding-left: 12px;
  border-left: 1px solid rgb(from var(--neo-color-white) r g b / 50%);
}

/* ==============================
   STYLE 1
   ============================== */

/* Base wrapper */
.neo-premium-post-cards.style1 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin: 40px auto;
  padding: 0 20px;
}

/* Main post (large left block) */
.neo-premium-post-cards.style1 .main-post {
  position: relative;
  overflow: hidden;
  border-radius: var(--neo-border-radius);
}

/* Side posts grid */
.neo-premium-post-cards.style1 .side-posts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 20px;
  height: 100%;
}

/* Individual side post */
.neo-premium-post-cards.style1 .post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
}

.neo-premium-post-cards.style1 .post .article-title {
  max-width: 100%;
}

.neo-premium-post-cards.style1 .main-post .article-title a {
  font-size: 28px;
}

.neo-premium-post-cards.style1 .post .article-title a {
  font-size: 22px;
  max-width: 230px;
}

/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style1 {
    grid-template-columns: 1fr;
  }

  .neo-premium-post-cards.style1 .side-posts {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style1 .side-posts {
    grid-template-columns: 1fr;
  }

  .neo-premium-post-cards.style1 .main-post h2 {
    font-size: 1.3rem;
  }

  .neo-premium-post-cards.style1 .post h3 {
    font-size: 0.95rem;
  }
}

/* ==============================
   STYLE 2
   ============================== */

/* Flex layout: 3 posts on left, 1 tall on right */
.neo-premium-post-cards.style2 {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  margin: 40px auto;
  padding: 0 20px;
  height: 700px;
  box-sizing: border-box;
}

/* LEFT COLUMN */
.neo-premium-post-cards.style2 .left-col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  height: 100%;
  gap: 20px;
}

/* Top row: 2 small posts */
.neo-premium-post-cards.style2 .left-top {
  display: flex;
  gap: 20px;
  height: calc(65% - 10px);
}

/* Each small top post */
.neo-premium-post-cards.style2 .left-top .post {
  flex: 1;
  height: 100%;
}

/* Bottom post */
.neo-premium-post-cards.style2 .left-bottom {
  height: calc(35% - 10px);
}

/* RIGHT COLUMN */
.neo-premium-post-cards.style2 .right-col {
  flex: 1;
  height: 100%;
}

.neo-premium-post-cards.style2 .right-col .big-text {
  font-size: 300px;
}

.neo-premium-post-cards.style2 .right-col .post {
  height: 100%;
}

/* Individual post */
.neo-premium-post-cards.style2 .post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  width: 100%;
  height: 100%;
  display: block;
}

.neo-premium-post-cards .right-col .post:hover .vertical-line:before {
  height: 0;
}

.neo-premium-post-cards .right-col .post:hover .vertical-line:after {
  height: 50px;
}

.neo-premium-post-cards.style2 .right-col .article-title a {
  font-size: 28px;
}

.neo-premium-post-cards.style2 .left-col .article-title a {
  font-size: 22px;
  max-width: 230px;
}

/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style2 {
    flex-direction: column;
    height: auto;
  }

  .neo-premium-post-cards.style2 .left-top {
    flex-direction: row;
    height: auto;
  }

  .neo-premium-post-cards.style2 .left-bottom,
  .neo-premium-post-cards.style2 .right-col .post {
    height: 400px;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style2 .left-top {
    flex-direction: column;
  }

  .neo-premium-post-cards.style2 {
    gap: 15px;
    padding: 0 10px;
  }
}

/* ==============================
   STYLE 3
   ============================== */

/* 2/3 + 1/3 split */
.neo-premium-post-cards.style3 {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  margin: 40px auto;
  padding: 0 20px;
  height: 700px;
  box-sizing: border-box;
}

/* LEFT COLUMN (big main post, 2/3 width) */
.neo-premium-post-cards.style3 .left-col {
  flex: 2;
  height: 100%;
}

.neo-premium-post-cards.style3 .main-post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  height: 100%;
}

/* RIGHT COLUMN (two stacked posts, 1/3 width) */
.neo-premium-post-cards.style3 .right-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  height: 100%;
}

.neo-premium-post-cards.style3 .right-col .post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  flex: 1;
}

/* Titles */
.neo-premium-post-cards.style3 .main-post .article-title a {
  font-size: 28px;
}

.neo-premium-post-cards.style3 .right-col .article-title a {
  font-size: 22px;
  max-width: 250px;
}

/* Hover Effects */
.neo-premium-post-cards.style3 .post img,
.neo-premium-post-cards.style3 .main-post img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}

.neo-premium-post-cards.style3 .post:hover img,
.neo-premium-post-cards.style3 .main-post:hover img {
  transform: scale(1.05);
}

/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style3 {
    flex-direction: column;
    height: auto;
  }

  .neo-premium-post-cards.style3 .left-col,
  .neo-premium-post-cards.style3 .right-col {
    flex: unset;
    height: auto;
  }

  .neo-premium-post-cards.style3 .right-col {
    flex-direction: row;
  }

  .neo-premium-post-cards.style3 .right-col .post {
    flex: 1;
    height: 300px;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style3 .right-col {
    flex-direction: column;
  }

  .neo-premium-post-cards.style3 {
    gap: 15px;
    padding: 0 10px;
  }

  .neo-premium-post-cards.style3 .post {
    height: auto;
  }
}



/* ==============================
   STYLE 4
   ============================== */

/* Base wrapper */
.neo-premium-post-cards.style4 {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  margin: 40px auto;
  padding: 0 20px;
  height: 550px;
  box-sizing: border-box;
}

/* LEFT COLUMN (one large post) */
.neo-premium-post-cards.style4 .left-col {
  flex: 1;
  height: 100%;
}

.neo-premium-post-cards.style4 .main-post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  height: 100%;
}

/* RIGHT COLUMN (two equal-width posts in one row) */
.neo-premium-post-cards.style4 .right-col {
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px;
  height: 100%;
}

/* Each post fills full height of container */
.neo-premium-post-cards.style4 .right-col .post {
  flex: 1;
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  height: 100%;
}

/* Hover zoom effect */
.neo-premium-post-cards.style4 .post img,
.neo-premium-post-cards.style4 .main-post img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}

.neo-premium-post-cards.style4 .post:hover img,
.neo-premium-post-cards.style4 .main-post:hover img {
  transform: scale(1.05);
}

/* Titles */
.neo-premium-post-cards.style4 .main-post .article-title a {
  font-size: 28px;
}

.neo-premium-post-cards.style4 .right-col .article-title a {
  font-size: 22px;
  max-width: 250px;
}

/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style4 {
    flex-direction: column;
    height: auto;
  }
  
  .neo-premium-post-cards.style4 .right-col .post {
    height: 400px;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style4 {
    gap: 15px;
    padding: 0 10px;
  }

  .neo-premium-post-cards.style4 .right-col {
    flex-direction: column;
  }

  .neo-premium-post-cards.style4 .post {
    height: auto;
  }
}


/* ==============================
   STYLE 5
   ============================== */

.neo-premium-post-cards.style5 {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 20px; /* single, consistent gap */
  margin: 40px auto;
  padding: 0 20px;
  height: 700px;
  box-sizing: border-box;
}

/* Columns */
.neo-premium-post-cards.style5 .col {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  height: 100%;
  padding: 0;
}

/* Column widths */
.neo-premium-post-cards.style5 .left-col,
.neo-premium-post-cards.style5 .right-col {
  flex: 1;
  min-width: 0; /* fixes overflow gaps from image rounding */
}

.neo-premium-post-cards.style5 .center-col {
  flex: 3;
  min-width: 0;
}

/* Post cards */
.neo-premium-post-cards.style5 .post,
.neo-premium-post-cards.style5 .main-post {
  position: relative;
  border-radius: var(--neo-border-radius);
  overflow: hidden;
  flex: 1;
  height: 100%;
  display: flex;
  flex-direction: column;
}

/* Remove any internal margins causing extra gaps */
.neo-premium-post-cards.style5 .post:not(:last-child),
.neo-premium-post-cards.style5 .main-post:not(:last-child) {
  margin-bottom: 0;
}

/* Ensure all posts in stacked columns share equal heights */
.neo-premium-post-cards.style5 .left-col .post,
.neo-premium-post-cards.style5 .right-col .post {
  flex: 1;
}

/* Images */
.neo-premium-post-cards.style5 .post img,
.neo-premium-post-cards.style5 .main-post img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}

/* Hover */
.neo-premium-post-cards.style5 .post:hover img,
.neo-premium-post-cards.style5 .main-post:hover img {
  transform: scale(1.05);
}

/* Titles */
.neo-premium-post-cards.style5 .main-post .article-title a {
  font-size: 28px;
}

.neo-premium-post-cards.style5 .left-col .article-title a,
.neo-premium-post-cards.style5 .right-col .article-title a {
  font-size: 20px;
  max-width: 250px;
}


/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style5 {
    flex-direction: column;
    height: auto;
  }

  .neo-premium-post-cards.style5 .col {
    flex: unset;
    height: auto;
  }

  .neo-premium-post-cards.style5 .center-col {
    order: -1;
  }

  .neo-premium-post-cards.style5 .left-col,
  .neo-premium-post-cards.style5 .right-col {
    flex-direction: row;
  }

  .neo-premium-post-cards.style5 .post {
    flex: 1;
    height: 300px;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style5 {
    gap: 15px;
    padding: 0 10px;
  }

  .neo-premium-post-cards.style5 .left-col,
  .neo-premium-post-cards.style5 .right-col {
    flex-direction: column;
  }

  .neo-premium-post-cards.style5 .post {
    height: auto;
  }
}


/* ==============================
   STYLE 6
   ============================== */

.neo-premium-post-cards.style6 {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 40px auto;
  padding: 0 20px;
  max-width: 1400px;
  box-sizing: border-box;
}

/* Top row (2 x 50%) */
.neo-premium-post-cards.style6 .top-row {
  display: flex;
  gap: 20px;
  height: 400px;
}

.neo-premium-post-cards.style6 .top-row .post {
  flex: 1;
  border-radius: var(--neo-border-radius);
  position: relative;
  overflow: hidden;
}

.neo-premium-post-cards.style6 .top-row .post .big-text{
  bottom: 50px;
  font-size: 200px;
}

/* Bottom row (3 x 33.33%) */
.neo-premium-post-cards.style6 .bottom-row {
  display: flex;
  gap: 20px;
  height: 350px;
}

.neo-premium-post-cards.style6 .bottom-row .post {
  flex: 1;
  border-radius: var(--neo-border-radius);
  position: relative;
  overflow: hidden;
}

.neo-premium-post-cards.style6 .bottom-row .post .article-title {
  max-width: 270px;
}

.neo-premium-post-cards.style6 .post .article-title a {
  font-size: 22px;
}

.neo-premium-post-cards.style6 .post.large .article-title a {
  font-size: 26px;
}

/* Responsive */
@media (max-width: 992px) {
  .neo-premium-post-cards.style6 .top-row,
  .neo-premium-post-cards.style6 .bottom-row {
    flex-direction: column;
    height: auto;
  }

  .neo-premium-post-cards.style6 .post {
    height: 300px;
  }
}

@media (max-width: 600px) {
  .neo-premium-post-cards.style6 {
    gap: 15px;
    padding: 0 10px;
  }

  .neo-premium-post-cards.style6 .top-row,
  .neo-premium-post-cards.style6 .bottom-row {
    gap: 15px;
  }

  .neo-premium-post-cards.style6 .post {
    height: auto;
  }
}