/** Shopify CDN: Minification failed

Line 73:12 Unexpected "{"
Line 73:21 Expected ":"
Line 380:0 Expected "}" to go with "{"

**/
/* GRID BLOG — DAWN ALIGNED */







/* ============================================================
   FIX: Make entire card a full-height flex column
   ============================================================ */
.grid-blog__item {
  display: flex;
  flex-direction: column;
}

/* ============================================================
   FIX: Make the content fill space and push button down
   ============================================================ */
.grid-blog__body {
  display: flex;
  flex-direction: column;
  flex-grow: 1;              /* body expands to fill remaining space */
  justify-content: flex-start;
}

/* ============================================================
   FIX: Button always stays at the bottom
   ============================================================ */
.grid-blog__btn {
 /* margin-top: auto !important;*/
  align-self: center;        /* keep button centered */
  width: auto;
}

/* ============================================================
   OPTIONAL: Limit excerpt height so it doesn’t stretch cards unevenly
   ============================================================ */
.grid-blog__excerpt {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;     /* max 4 lines (safe for mobile) */
  -webkit-box-orient: vertical;
}


.grid-blog__item,
.grid-blog__body,
.grid-blog__image-wrapper {
  min-width: 0;
}

.grid-blog__title,
.grid-blog__excerpt,
.grid-blog__body {
  max-width: 100%;
  overflow-wrap: break-word;
}

/* Layout wrapper */
.grid-blog {
  width: 100%;
  margin: 0 auto 60px auto;
}

#grid-blog-{{ section.id }} h1.title--primary {
  display: none;
}

/* SORT BAR */
.grid-blog__sort {
  display: flex;
  justify-content: right;
  padding-right: 15%;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
}

.grid-blog__sort label {
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.06em;
}

.grid-blog__sort select {
  padding: 6px 10px;
  border: 0px solid #ccc;
}


/* GRID STRUCTURE */
.grid-blog__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--grid-border, #000);
  border-left: 1px solid var(--grid-border, #000);
}

.grid-blog__item {
  border-right: 1px solid var(--grid-border, #000);
  border-bottom: 1px solid var(--grid-border, #000);
  background: #fff;
  display: flex;
  flex-direction: column;
  min-width: 0;
}


/* IMAGE */
.grid-blog__image-wrapper {
  display: block;
  width: 100%;
  overflow: hidden;
}

.grid-blog__image {
  width: 100%;
  height: var(--img-height, 400px);
  object-fit: cover;
  display: block;
}


/* BODY */
.grid-blog__body {
  padding: 26px 26px 32px;
  text-align: center;
}

.grid-blog__title {
font-family: Poppins;
font-weight: 700;
font-style: Bold;
font-size: 26px;
line-height: 103%;
letter-spacing: 0%;
text-align: center;

}

.grid-blog__title a {
  text-decoration: none;
  color: #000;
}
/*
.grid-blog__sort label {
  font-family: Petrona;
font-weight: 400;
font-style: Regular;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;
}
*//*
select#grid-blog-sort-template--24647733608824__grid_blog_diqaxH {
font-family: Petrona;
font-weight: 400;
font-style: Regular;
font-size: 24px;
line-height: 100%;
letter-spacing: 0%;

}
*/



.grid-blog__date {
  font-size: 11px;
  letter-spacing: 0.12em;
  margin-bottom: 14px;
}

.grid-blog__excerpt {




margin-bottom: 20px;

}


/* BUTTON */
.grid-blog__btn {
  margin-top:1em;
}



/* Detailing */

article.grid-blog__item.scroll-trigger.animate--slide-in a.grid-blog__image-wrapper {
    border-bottom: 1px solid black !important;
}


/* ============================================================
   MOBILE & TABLET FIXES — COLUMN WIDTH + TYPOGRAPHY + IMAGE SIZE
   ============================================================ */

/* Ensure equal-width columns + prevent text squashing */
.grid-blog__item {
  min-width: 0;
}

/* MOBILE & TABLET: force stable 2-column layout */
@media (max-width: 1024px) {
  .grid-blog__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .grid-blog__list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* MOBILE: scale images to approx 230×170 
   We use CSS variables for precise control */
@media (max-width: 700px) {
  .grid-blog__image {
    width: 100%;
    height: 170px !important;
    object-fit: cover;
  }
}

/* ============================================
   MOBILE TYPOGRAPHY — AS REQUESTED
   ============================================ */

@media (max-width: 700px) {


.grid-blog__title {
  display: -webkit-box;
  -webkit-line-clamp: 3;     /* allow 2 lines */
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: calc(1.05em * 2); /* matches your font-size & line-height */
}



  h3.grid-blog__title{
  font-size: 20px !important;
}

  /* Title: Poppins, Bold, 17px, centered */
  .grid-blog__title {


    letter-spacing: 0em !important;
    text-align: center !important;
  }
/*
  /* Body text: Petrona 15px, left aligned, 35% letter spacing */
  .grid-blog__excerpt {


    line-height: 100% !important;
    letter-spacing: 0em !important;
    text-align: left !important;
  }

  /* Ensure date + button align like desktop if desired */
  .grid-blog__body {
    text-align: left !important;
  }

  /* But keep title centered */
  .grid-blog__title {
    text-align: left !important;
  }
}

@media (max-width: 700px) {
/*
  .grid-blog__sort label {
    font-family: Petrona !important;
    font-weight: 400 !important;
    font-style: normal !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
  }
*//*
  .grid-blog__sort select {
    font-family: Petrona !important;
    font-weight: 400 !important;
    font-style: normal !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
  }
}
*/

@media (max-width: 700px) {




  /* BUTTON */
.grid-blog__btn {
  margin-top:1em;
}

  .grid-blog__body {
  padding: 10px 10px 10px 10px;
  text-align: center;
  }

  /* Center the entire filter row */
  .grid-blog__sort {
    justify-content: left !important;
    padding-right: 0 !important;
    width: 100%;
    text-align: center;
    padding-left: 15px;
  }

  /* Label typography *//*
  .grid-blog__sort label {
    font-family: Petrona !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
  }
*//*
  /* Dropdown typography *//**
  .grid-blog__sort select {
    font-family: Petrona !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 100% !important;
    letter-spacing: 0 !important;
  }
}
*/
@media (max-width: 700px) {

  /* Make the card body a flex column */
  .grid-blog__body {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 12px;
    text-align: left !important; /* as you requested earlier */
  }

  /* Push the button to the bottom of the card */
  .grid-blog__btn {
 
    align-self: center; /* or flex-start / flex-end if preferred */
    width: auto;
  }

  /*.grid-blog__excerpt {
    margin-bottom: 1.2em !important;
  }*/
  .grid-blog__body {
    
}
}



