/********************** Homepage ********************* *
 *  1. Structural
 *      1.1. Sections
 *  2. Main
        2.1. Single
        2.2. 404
*****************************************************/

/****************** 1. Structural *******************/

/**** 1.1. Sections ****/

/** Hero **/
#hero {
  margin-bottom: 100px;
  gap: 15px;
  background-color: #fff;
}

body.dark #hero {
  background-color: #0D0D0D;
}

body:not(.home) #hero {
  margin-bottom: 80px;
}

#hero > img {
  max-width: 295px;
}

#hero h1,
#hero h2 {
  color: #0D0D0D;
  font-family: Helixa;
  font-size: 53px;
  font-style: normal;
  font-weight: 900;
  line-height: 111.5%; /* 59.095px */  
}

.single-post #hero h1,
.single-post #hero h2 {
  font-size: 25px;
  font-style: normal;
  font-weight: 900;
  line-height: 95%; /* 23.75px */  
}

body.dark #hero h1,
body.dark #hero h2 {
  color: #fff;
}

#hero .hero-logo-wrapper img {
  max-width: 23px;
}

/** Posts grid **/
.posts-grid h2 {
  margin-bottom: 25px;
}

.posts-grid .roboto_small h1 {
  max-width: 280px;
}

@keyframes runOpacity {
  from { opacity: 0; }
  to { opacity: 1; }
}

.posts-grid .post-shown {
  opacity: 0;
}

.posts-grid .post-shown.post-animate {
  opacity: 1;
  animation-name: runOpacity;
  animation-duration: .75s;  
}

.posts-grid .posts-grid-wrapper a {
  text-decoration: none;
}

.posts-grid .posts-grid-wrapper a:hover {
  opacity: 0.85;
}

.posts-grid .uk-card-media-top {
  height: 48vw;
}

.posts-grid .uk-card-media-top img {
  object-fit: cover;
}

.posts-grid .uk-card-bottom {
  padding-top: 12px;
  gap: 10px;
}

.posts-grid .uk-card-bottom > * {
  color: #0D0D0D;
  font-family: Helixa;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 106.4%; /* 17.024px */  
  text-decoration: none;
  text-transform: none;
  border: none;
  margin-bottom: 0;
}

.posts-grid .uk-card-bottom svg {
  visibility: hidden;
  opacity: 0;
  display: none;
}

.posts-grid .cta-btn-wrapper {
  margin-top: 50px;
  margin-bottom: 70px;
}

body:not(.home) .posts-grid .cta-btn-wrapper {
  margin-bottom: 100px;
}

.posts-grid .cta-btn-wrapper .round-btn {
  max-width: none;
  width: auto;
  padding-left: 17px;
  padding-right: 17px;
}

/** Content grid **/
.content-grid {
  padding-bottom: 100px;
}

.content-grid + .content-grid hr {
  display: none;
}

.single .content-grid {
  padding-bottom: 50px;
}

.content-grid.hide-hr hr {
  display: none;
}

.content-grid .set_to_stretch > div > *:only-child,
.content-grid .set_to_bottom > div > *:only-child {
  height: 100%;
}

.content-grid .roboto_small > h1,
.content-grid .roboto_small > h3 {
  margin-bottom: 50px;
}

.content-grid .roboto_small > p {
  margin-bottom: 20px;
}

.content-grid .helixa_large > p {
  margin-bottom: 30px;
}

.content-grid .roboto_small > ul {
  margin-top: 0;
  margin-bottom: 50px;
}

.content-grid .roboto_small > ul > li {
  margin-bottom: 15px;
}

.content-grid .roboto_small > ul > li:last-child,
.content-grid .roboto_small > p:last-child,
.content-grid .helixa_small > p:last-child,
.content-grid .helixa_large > p:last-child,
.content-grid .roboto_small > ul:last-child {
  margin-bottom: 0;
}

body.dark .content-grid .roboto_small > h1,
body.dark .content-grid .roboto_small > h3,
body.dark .content-grid .roboto_small > p,
body.dark .content-grid .helixa_large > p {
  color: #fff;
}

.content-grid img {
  max-width: 44px;
}

.content-grid.has-image .uk-grid > div:last-child {
  margin-top: 25px;
}

.content-grid.remove-title-margin h3 {
  margin-bottom: 0;
}

.content-grid-wrapper {
  transition: height .5s ease-in-out;
  overflow: hidden;
}

.content-grid-wrapper .content-grid:last-child {
  padding-bottom: 0;
}

/** Logo grid **/
.logo-grid {
  padding-bottom: 80px;
}

.logo-grid > .uk-container {
  padding-left: 10px;
  padding-right: 10px;
}

#main .logo-grid img {
  flex: none;
  width: auto;
}

#main .logo-grid img.logo-seaweed {
  max-height: 30%;
}

#main .logo-grid img.logo-stonewall {
  max-height: 20%;
}

#main .logo-grid img.etc-mobile {
  max-height: 55%;
}

/** News grid **/
.news-grid > div {
  margin-bottom: 50px;
}

.news-grid .news-subgrid {
  border-top: 1px solid #fff;
  padding-top: 25px;
  padding-bottom: 25px;  
}

.news-grid > .uk-grid > div:last-child > div {
  border-bottom: 1px solid #fff;
}

.news-grid .news-subgrid .news-title {
  padding-top: 25px;
  padding-bottom: 25px;
}

.news-grid .news-subgrid .helixa_small {
  font-size: 16px;
  line-height: 106.4%; /* 17.024px */
}

.news-grid .cta-btn-wrapper .round-btn {
  display: inline-block;
  max-width: none;
  width: auto;
  padding-left: 17px;
  padding-right: 17px;
  margin-bottom: 100px;
}

/** Gallery **/
.gallery {
  margin-bottom: 80px;
}

.gallery .uk-slider-container {
  overflow: visible;
}

.gallery img {
  object-fit: cover;
}

.gallery .uk-slider-items > div:first-child {
  max-width: 280px;
}

.gallery .uk-grid-medium > *, 
.gallery .uk-grid-column-medium > * {
  padding-left: 20px;
}

/** Featured content **/
.featured-content .meta-content > div {
  margin-bottom: 50px;
}

.featured-content .ft-img {
  margin-bottom: 50px;
}

/** Image content grid **/
.image-content-grid {
  margin-bottom: 50px;
}

.image-content-grid .grid-text {
  max-width: 214px;
}

/******************** 2. Main **********************/



/**** 2.1. Single ****/
.single .more-content > a {
  margin-top: 50px;
  margin-bottom: 100px;
  display: inline-block;
}

.single-work .content-grid hr {
  display: none;
}

/**** 2.2. 404 ****/
.error404 hr {
  margin-top: 50px;
}

.error404 .cta-btn-wrapper {
  margin-bottom: 100px;
}