@charset "UTF-8";
/**
 * Theme Name:   RMA 2025
 * Description:  Custom GeneratePress child theme for Running Mums website
 * Author:       Tailored Media
 * Author URI:   https://www.tailoredmedia.com.au
 * Template:     generatepress
 * Version:      0.1
 * Update URI:   false
 */
html {
  scroll-behavior: smooth;
  font-family: Helvetica, sans-serif;
}

body {
  overflow-x: hidden;
}

a {
  transition: 0.2s all;
}

b, strong {
  font-weight: 600;
}

.m0 {
  margin: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.p0 {
  padding: 0;
}
.p0.wp-block-group .wp-block-group__inner-container {
  padding: 0;
}

/**
 * Blog posts
 */
body.blog-archive .content-area .type-post .inside-article {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 1em;
}
body.blog-archive .content-area .type-post .inside-article > div, body.blog-archive .content-area .type-post .inside-article header, body.blog-archive .content-area .type-post .inside-article footer {
  margin: 0;
}
body.blog-archive .content-area .type-post .inside-article .entry-header .entry-title {
  font-size: 1.3em;
}
body.blog-archive .content-area .type-post .inside-article .entry-header .entry-meta .posted-on:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  content: "\f133";
  margin-right: 0.4em;
}
body.blog-archive .content-area .type-post .inside-article .entry-header .entry-meta .byline:not(:first-child) {
  margin-left: 1em;
}
body.blog-archive .content-area .type-post .inside-article .entry-header .entry-meta .byline:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  content: "\f007";
  margin-right: 0.4em;
}
@media (min-width: 768px) {
  body.blog-archive .content-area .type-post .inside-article {
    grid-template-columns: 2fr 3fr;
    grid-template-areas: "image header" "image summary" "image meta";
  }
  body.blog-archive .content-area .type-post .inside-article .entry-header {
    grid-area: header;
  }
  body.blog-archive .content-area .type-post .inside-article .post-image {
    grid-area: image;
  }
  body.blog-archive .content-area .type-post .inside-article .entry-summary {
    grid-area: summary;
  }
  body.blog-archive .content-area .type-post .inside-article .entry-meta {
    grid-area: meta;
  }
}

body.blog-single .entry-header .entry-title {
  font-size: 1.7em;
}
body.blog-single .entry-meta .post-navigation {
  padding-top: 2em;
}

/**
 * Top Bar
 */
.top-bar {
  text-transform: uppercase;
  transition: margin-top 200ms ease-in-out;
}
.top-bar a {
  text-decoration: none;
  color: #eee;
}
.top-bar a:hover, .top-bar a:active {
  color: #fff;
  text-decoration: underline;
}
.top-bar .grid-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 2em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
@media (min-width: 768px) {
  .top-bar .grid-container {
    grid-template-columns: auto auto;
    justify-content: space-between;
    gap: 2vw;
  }
}
.top-bar .grid-container .widget {
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 2em;
}
@media (max-width: 768px) {
  .top-bar .grid-container .widget {
    font-size: 1.3em;
    justify-content: center;
  }
  .top-bar .grid-container .widget .txt {
    display: none;
  }
  .top-bar .grid-container .widget .search-form label {
    display: none;
  }
}
@media (min-width: 768px) {
  .top-bar .grid-container .widget .search-form {
    display: grid;
    grid-template-areas: "button input";
    grid-template-columns: min-content auto;
  }
  .top-bar .grid-container .widget .search-form label {
    grid-area: input;
  }
  .top-bar .grid-container .widget .search-form input.search-field {
    background: none;
    border: 0;
    color: #fff;
    outline: none;
    padding: 5px;
    font-size: 1.3em;
  }
  .top-bar .grid-container .widget .search-form input.search-field::placeholder {
    color: #ddd;
  }
}
.top-bar .grid-container .widget .search-form button.search-submit {
  grid-area: button;
  background: none;
  padding: 0;
}

/**
 * Site Header
 */
.site-header .inside-header {
  display: grid;
  grid-template-areas: "branding mobile-menu" "menu menu";
  grid-template-columns: auto auto;
}
@media (min-width: 768px) {
  .site-header .inside-header {
    grid-template-columns: 220px auto;
    grid-template-areas: "branding menu";
  }
}
.site-header .inside-header .site-logo,
.site-header .inside-header .site-branding {
  grid-area: branding;
}
.site-header .inside-header .mobile-menu-control-wrapper {
  grid-area: mobile-menu;
}
.site-header .inside-header .mobile-menu-control-wrapper .icon-menu-bars {
  font-size: 2em;
}
.site-header .inside-header #site-navigation {
  grid-area: menu;
  margin: 0;
}

.main-navigation .inside-navigation {
  justify-content: end;
}
.main-navigation .main-nav ul.menu li a {
  padding: 0 0.6em;
  text-transform: uppercase;
}
.main-navigation .main-nav ul.menu li .dropdown-menu-toggle {
  padding-left: 5px;
  padding-right: 0;
}
.main-navigation .main-nav ul.menu ul.sub-menu li a {
  padding: 0.6em 0.8em;
}

@keyframes pulse-image {
  10% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  90% {
    transform: scale(1);
  }
}
.instagram-gallery-feed .swiper-button-next,
.instagram-gallery-feed .swiper-button-prev {
  color: #fff;
}
.instagram-gallery-feed .instagram-gallery__actions .instagram-gallery__button {
  cursor: pointer;
  width: auto;
  padding: 1em 3em;
  border: 0;
  border-radius: 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
  white-space: normal;
  text-decoration: none;
  color: #fff;
  background: #d64360;
  transition: 0.4s all;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
  padding: 1em 2em;
}
.instagram-gallery-feed .instagram-gallery__actions .instagram-gallery__button.hovered, .instagram-gallery-feed .instagram-gallery__actions .instagram-gallery__button:hover {
  background: #e23557;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

x.instagram-gallery-feed .swiper-container {
  padding-bottom: 2em;
}
x.instagram-gallery-feed .swiper-container .swiper-button-prev,
x.instagram-gallery-feed .swiper-container .swiper-button-next {
  width: auto;
  height: auto;
}
x.instagram-gallery-feed .swiper-container .swiper-button-prev:before,
x.instagram-gallery-feed .swiper-container .swiper-button-next:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  font-size: 4em;
  color: #ffffff;
  transition: 0.2s all;
  opacity: 0.5;
}
x.instagram-gallery-feed .swiper-container .swiper-button-prev:hover:before,
x.instagram-gallery-feed .swiper-container .swiper-button-next:hover:before {
  color: #ffffff;
  opacity: 1;
}
x.instagram-gallery-feed .swiper-container .swiper-button-prev:after,
x.instagram-gallery-feed .swiper-container .swiper-button-next:after {
  display: none;
}
x.instagram-gallery-feed .swiper-container .swiper-button-prev:before {
  content: "\f0d9";
  left: 0;
}
x.instagram-gallery-feed .swiper-container .swiper-button-next:before {
  content: "\f0da";
  right: 0;
}
x.instagram-gallery-feed .swiper-container .swiper-pagination {
  bottom: 0;
  font-size: 2em;
}

/**
 * Gravity Forms
 */
.gform_wrapper.gravity-theme .gfield label {
  cursor: pointer;
}
.gform_wrapper.gravity-theme .gfield input[type=text],
.gform_wrapper.gravity-theme .gfield input[type=email],
.gform_wrapper.gravity-theme .gfield input[type=tel],
.gform_wrapper.gravity-theme .gfield textarea {
  border-radius: 1rem;
  box-shadow: 0.1rem 0.1rem 0.05rem rgba(0, 0, 0, 0.1);
}
.gform_wrapper.gravity-theme .gfield input[type=text]:focus,
.gform_wrapper.gravity-theme .gfield input[type=email]:focus,
.gform_wrapper.gravity-theme .gfield input[type=tel]:focus,
.gform_wrapper.gravity-theme .gfield textarea:focus {
  box-shadow: 0.1rem 0.1rem 0.15rem rgba(0, 0, 0, 0.3);
}
.gform_wrapper.gravity-theme #field_submit input[type=submit],
.gform_wrapper.gravity-theme .gform_footer input[type=submit] {
  cursor: pointer;
  width: auto;
  padding: 1em 3em;
  border: 0;
  border-radius: 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
  white-space: normal;
  text-decoration: none;
  color: #fff;
  background: #d64360;
  transition: 0.4s all;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
}
.gform_wrapper.gravity-theme #field_submit input[type=submit].hovered, .gform_wrapper.gravity-theme #field_submit input[type=submit]:hover,
.gform_wrapper.gravity-theme .gform_footer input[type=submit].hovered,
.gform_wrapper.gravity-theme .gform_footer input[type=submit]:hover {
  background: #e23557;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

.wp-block-group.has-background .gform_wrapper.gravity-theme .gfield_required {
  color: inherit;
}

/** 
 * GlideJS Base Styling
 */
.glide .glide__track {
  margin: 0 3em;
}
.glide .slide-next,
.glide .slide-prev {
  top: 0;
  position: absolute;
  border: 0;
  padding: 0.5em;
  width: auto;
  height: 100%;
  background: none;
  color: #d64360;
  font-size: 1.4em;
}
.glide .slide-next:hover,
.glide .slide-prev:hover {
  background: none;
  color: #e23557;
}
.glide .slide-next {
  right: 0;
}
.glide .slide-prev {
  left: 0;
}
.glide ul.glide__slides {
  margin: 0;
  padding: 0;
  flex-wrap: nowrap;
  gap: 0;
}
.glide ul.glide__slides li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/**
 * 
 */
/**
 * Covers
 */
/**
 * Groups
 */
.wp-block-group {
  margin-bottom: 1.5em;
}
.wp-block-group:last-child {
  margin-bottom: 0;
}
.wp-block-group.is-style-header {
  background-image: var(--image-hero-pattern1);
  background-position: center right;
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.wp-block-group.is-style-header .wp-block-group__inner-container {
  padding: 2em;
  padding-right: 10em;
}
.wp-block-group.is-style-header .wp-block-heading {
  color: #e71f29;
}

/**
 * Gutenberg Lists (ul, li)
 */
.wp-block-list {
  margin: 0 0 1.5em 2em;
}
.wp-block-list.is-style-ticks {
  list-style: none;
}
.wp-block-list.is-style-ticks li {
  position: relative;
}
.wp-block-list.is-style-ticks li:before {
  font-family: "Font Awesome 6 Free";
  content: "\f00c";
  font-weight: 900;
  position: absolute;
  left: -1.3em;
}
.wp-block-list.is-style-columns-2 {
  column-count: 2;
  column-gap: 2em;
}
.wp-block-list.is-style-columns-3 {
  column-count: 3;
  column-gap: 2em;
}

/**
 * Gutenberg Buttons
 */
.wp-block-buttons {
  margin: 0 0 1.5em 0;
}
.wp-block-buttons:last-child {
  margin-bottom: 0;
}
.wp-block-buttons .wp-block-button .wp-block-button__link {
  cursor: pointer;
  width: auto;
  padding: 1em 3em;
  border: 0;
  border-radius: 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
  white-space: normal;
  text-decoration: none;
  color: #fff;
  background: #d64360;
  transition: 0.4s all;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
}
.wp-block-buttons .wp-block-button .wp-block-button__link.hovered, .wp-block-buttons .wp-block-button .wp-block-button__link:hover {
  background: #e23557;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link {
  color: #d64360;
  border: 1px solid #d64360;
  background: none;
  font-weight: 600;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
}
.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background: none;
  border-color: #e23557;
  color: #e23557;
  text-shadow: 0 0 1px currentColor;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

.wp-block-buttons .wp-block-button.is-style-outline-white .wp-block-button__link {
  color: #d64360;
  border: 1px solid #d64360;
  background: none;
  font-weight: 600;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
  color: #fff;
  border-color: #fff;
  background: rgba(255, 255, 255, 0);
}
.wp-block-buttons .wp-block-button.is-style-outline-white .wp-block-button__link:hover {
  background: none;
  border-color: #e23557;
  color: #e23557;
  text-shadow: 0 0 1px currentColor;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}
.wp-block-buttons .wp-block-button.is-style-outline-white .wp-block-button__link:hover {
  border-color: #fff;
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
}

/**
 * Images
 */
.wp-block-image.is-style-shadow-right img {
  border: 2px solid #e71f29;
  box-shadow: 0.3em 0.3em 0 #e71f29;
}
.wp-block-image.is-style-shadow-left img {
  border: 2px solid #e71f29;
  box-shadow: -0.3em 0.3em 0 #e71f29;
}

/**
 * Media & Text block
 */
.wp-block-media-text.is-style-shadow-right .wp-block-media-text__media img {
  border: 2px solid #e71f29;
  box-shadow: 0.3em 0.3em 0 #e71f29;
}
.wp-block-media-text.is-style-shadow-left .wp-block-media-text__media img {
  border: 2px solid #e71f29;
  box-shadow: -0.3em 0.3em 0 #e71f29;
}
@media (max-width: 800px) {
  .wp-block-media-text.is-stacked-on-mobile {
    grid-template-columns: 100% !important;
    gap: 1em;
  }
  .wp-block-media-text.is-stacked-on-mobile > .wp-block-media-text__media {
    grid-column: 1;
    grid-row: 1;
  }
  .wp-block-media-text.is-stacked-on-mobile > .wp-block-media-text__content {
    grid-column: 1;
    grid-row: 2;
    padding: 0;
  }
}

/**
 * Hero Banner
 */
.hero-banner.v1 {
  background: #e6e6e6 center center no-repeat;
  background-size: cover;
  margin-bottom: 2em;
}
@media (min-width: 800px) {
  .hero-banner.v1 {
    margin-bottom: 10rem;
  }
}
.hero-banner.v1 .wp-block-group__inner-container {
  position: relative;
  text-align: center;
  padding-top: 60px;
  padding-bottom: 60px;
}
.hero-banner.v1 .wp-block-group__inner-container img.foreground {
  width: auto;
  max-height: 250px;
}
.hero-banner.v1 .wp-block-group__inner-container .inside {
  position: relative;
  background: rgba(255, 255, 255, 0.75) right center no-repeat;
  background-size: auto 100%;
  padding: 1rem;
  text-align: left;
}
@media (min-width: 800px) {
  .hero-banner.v1 .wp-block-group__inner-container .inside {
    padding-right: clamp(8rem, 5vw + 6rem, 12rem);
  }
}
@media (max-width: 800px) {
  .hero-banner.v1 .wp-block-group__inner-container {
    padding-left: 10px;
    padding-right: 10px;
  }
  .hero-banner.v1 .wp-block-group__inner-container .inside {
    position: relative;
  }
  .hero-banner.v1 .wp-block-group__inner-container .inside > * {
    position: relative;
    z-index: 2;
  }
  .hero-banner.v1 .wp-block-group__inner-container .inside:before {
    display: block;
    content: " ";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.6);
  }
  .hero-banner.v1 .wp-block-group__inner-container .inside h1, .hero-banner.v1 .wp-block-group__inner-container .inside h2 {
    font-size: 1.5em;
  }
}
@media (min-width: 800px) {
  .hero-banner.v1 .wp-block-group__inner-container {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .hero-banner.v1 .wp-block-group__inner-container img.foreground {
    position: absolute;
    left: 0;
    top: 0;
    width: auto;
    height: auto;
    max-height: calc(100% + 8rem);
    z-index: 2;
    margin-top: -1rem;
  }
  .hero-banner.v1 .wp-block-group__inner-container .inside {
    background: rgba(255, 255, 255, 0.75) right center no-repeat;
    background-size: auto 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 1;
    padding-top: 3em;
    padding-bottom: 3em;
    padding-left: 10rem;
    padding-left: max(250px, 10vw);
    min-height: 15em;
    transition: 0.2s all;
  }
}
@media (min-width: 1100px) {
  .hero-banner.v1 .wp-block-group__inner-container .inside {
    padding-left: max(270px, 12vw);
  }
  .hero-banner.v1 .wp-block-group__inner-container img.foreground {
    max-height: calc(100% + 10rem);
    margin-top: -1rem;
  }
}

/**
 * Brand Partners
 */
.block-brand-partners .wp-block-columns,
.block-event-partners .wp-block-columns {
  border-bottom: 1px dashed #e71f29;
  padding-bottom: 1.75em;
}
.block-brand-partners .wp-block-columns:last-child,
.block-event-partners .wp-block-columns:last-child {
  border-bottom: 0;
}
.block-brand-partners h3,
.block-event-partners h3 {
  font-size: 1.5em;
  margin-bottom: 0.5rem;
}
.block-brand-partners h3 a,
.block-event-partners h3 a {
  color: unset;
  text-decoration: unset;
}

.block-brand-partners-grid,
.block-event-partners-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2em;
  margin-bottom: 2em;
}
.block-brand-partners-grid:last-child,
.block-event-partners-grid:last-child {
  margin-bottom: 0;
}
@media (min-width: 800px) {
  .block-brand-partners-grid,
  .block-event-partners-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 900px) {
  .block-brand-partners-grid,
  .block-event-partners-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 3em;
  }
}
@media (min-width: 1000px) {
  .block-brand-partners-grid,
  .block-event-partners-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 3em;
  }
}
.block-brand-partners-grid .grid-divider,
.block-event-partners-grid .grid-divider {
  height: 1px;
  border-bottom: 1px dashed #e71f29;
  width: 100%;
  grid-column: 1/-1;
}
.block-brand-partners-grid .partner-item,
.block-event-partners-grid .partner-item {
  display: flex;
  flex-direction: column;
}
.block-brand-partners-grid .partner-item .item-controls,
.block-event-partners-grid .partner-item .item-controls {
  margin-top: auto;
}
.block-brand-partners-grid .partner-item img,
.block-event-partners-grid .partner-item img {
  max-width: 100%;
  height: auto;
}
.block-brand-partners-grid .partner-item h3,
.block-event-partners-grid .partner-item h3 {
  color: #e71f29;
  font-size: 1.3em;
}
.block-brand-partners-grid .partner-item .member-code,
.block-event-partners-grid .partner-item .member-code {
  margin-bottom: 1em;
}
.block-brand-partners-grid .partner-item .member-code:last-child,
.block-event-partners-grid .partner-item .member-code:last-child {
  margin-bottom: 0;
}
.block-brand-partners-grid .partner-item .summary,
.block-event-partners-grid .partner-item .summary {
  position: relative;
  overflow: hidden;
  transition: 0.3s all;
  padding: 1px 0;
  flex-grow: 1;
  font-size: 0.85em;
  margin-bottom: 1.5em;
  max-height: 7.3em;
  overflow-y: auto;
  scrollbar-width: thin; /* Firefox */
  scrollbar-color: #bbb #eee; /* Firefox */
  padding-right: 0.5rem;
  word-wrap: break-word; /* Legacy */
  overflow-wrap: anywhere; /* Modern */
  word-break: break-word; /* Not standard, but supported in WebKit */
}
.block-brand-partners-grid .partner-item .summary:last-child,
.block-event-partners-grid .partner-item .summary:last-child {
  margin-bottom: 0;
}
.block-brand-partners-grid .partner-item .summary p,
.block-event-partners-grid .partner-item .summary p {
  margin-bottom: 0.8em;
}
.block-brand-partners-grid .partner-item .summary > :last-child,
.block-event-partners-grid .partner-item .summary > :last-child {
  margin-bottom: 0;
}
/**
 * Brands Carousel
 */
.carousel-brands {
  margin-bottom: 1.5em;
}
.carousel-brands:last-child {
  margin-bottom: 0;
}
.carousel-brands ul {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
}
.carousel-brands ul li {
  list-style: none;
}

/**
 * Query Loop block
 */
.wp-block-query.is-style-podcast ul.is-layout-grid .wp-block-group {
  padding: 0 !important;
}
.wp-block-query.is-style-podcast ul.is-layout-grid .wp-block-group__inner-container {
  padding: 0;
}

/**
 * Coaches - custom grid block
 */
.coach-grid-block {
  margin-bottom: 2em;
}
.coach-grid-block:last-child {
  margin-bottom: 0;
}
.coach-grid-block .wp-block-columns {
  margin-bottom: 2em;
}
.coach-grid-block .wp-block-columns:last-child {
  margin-bottom: 0;
}
.coach-grid-block .wp-block-buttons .wp-block-button__link {
  padding: 0.5em 2em;
}

/**
 * Coaches - single view
 */
.single-coach.coach-template-default .type-coach .inside-article {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1em;
}
.single-coach.coach-template-default .type-coach .inside-article .featured-image {
  margin: 0;
}
.single-coach.coach-template-default .type-coach .inside-article .entry-content {
  margin: 0;
}
@media (min-width: 800px) {
  .single-coach.coach-template-default .type-coach .inside-article {
    grid-template-columns: 1fr 2fr;
    grid-template-areas: "header header" "image content" "enquiry enquiry";
    gap: 2em;
  }
  .single-coach.coach-template-default .type-coach .inside-article .entry-header {
    grid-area: header;
  }
  .single-coach.coach-template-default .type-coach .inside-article .featured-image {
    grid-area: image;
  }
  .single-coach.coach-template-default .type-coach .inside-article .entry-content {
    grid-area: content;
  }
  .single-coach.coach-template-default .type-coach .inside-article .coach-enquiry {
    grid-area: enquiry;
  }
}

.block-event-partners-map svg {
  width: 100%;
  xmax-width: 1000px;
  height: auto;
  display: block;
  margin: auto;
}
.block-event-partners-map svg #features path {
  fill: #d47588;
  stroke: #fff;
  stroke-width: 1;
  transition: fill 0.3s ease;
  cursor: pointer;
}
.block-event-partners-map svg #features path.hovered,
.block-event-partners-map svg #features path:hover {
  fill: #e23557;
}
.block-event-partners-map .wp-block-buttons {
  align-items: flex-start;
}

/**
 * The Details block (can be used for accordions)
 */
.wp-block-details {
  margin-bottom: 1em;
  --radius: 0.4em;
  border: 1px solid var(--accent);
  border-radius: var(--radius);
  overflow: hidden;
  transition: 0.3s all;
  --padding: 0.5em;
  padding: var(--padding);
  padding-bottom: 0;
}
.wp-block-details:last-child {
  margin-bottom: 0;
}
.wp-block-details summary {
  margin: calc(var(--padding) * -1) calc(var(--padding) * -1) 0 calc(var(--padding) * -1);
  background: var(--accent);
  color: #fff;
  padding: 0.4em 0.6em;
  transition: 0.3s all;
  border-radius: var(--radius) var(--radius) 0 0;
}
.wp-block-details[open] {
  border-radius: var(--radius);
}
.wp-block-details p {
  margin-bottom: 1em;
}
.wp-block-details p:last-child {
  margin-bottom: var(--radius);
}

/**
 * Yoast FAQ as accordions (has some JS too)
 */
body:not(.block-editor-page) .wp-block-yoast-faq-block {
  --radius: 0.4em;
  --padding: 0.5em;
  margin-bottom: 2em;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block:last-child {
  margin-bottom: 0;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section {
  border: 1px solid var(--accent);
  border-radius: var(--radius);
  overflow: hidden;
  transition: 0.3s all;
  margin-bottom: 1em;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section:last-child {
  margin-bottom: 0;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section .schema-faq-question {
  display: block;
  cursor: pointer;
  font-weight: inherit;
  background: var(--accent);
  color: #fff;
  padding: 0.4em 0.6em;
  transition: 0.3s all;
  border-radius: var(--radius) var(--radius) 0 0;
  position: relative;
  padding-left: 2em;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section .schema-faq-question:after {
  content: "▸"; /* right-pointing triangle */
  color: #fff;
  position: absolute;
  left: 0.5em;
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section .schema-faq-answer {
  display: none;
  padding: var(--padding);
  margin: 0;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section .schema-faq-answer:last-child {
  margin-bottom: 0;
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section.active .schema-faq-question:after {
  transform: translateY(-50%) rotate(90deg);
}
body:not(.block-editor-page) .wp-block-yoast-faq-block .schema-faq-section.active .schema-faq-answer {
  display: block;
}

body {
  color: #5f5f5f;
}

h1, h2 {
  font-weight: 600;
}

p.is-style-tagline {
  font-weight: 400;
  font-style: normal;
  font-size: 1.5em;
  margin-bottom: 0.6em;
}

/**
 * Content Padding
 * Had 40px padding on .inside-article by default.
 * Want to remove top padding depending on blocks.
 */
body.first-block-align-full .inside-article {
  padding-top: 0;
}

/**
 * Heading styles
 */
.wp-block-heading.is-style-flowers {
  position: relative;
}
.wp-block-heading.is-style-flowers:before {
  content: "";
  display: block;
  width: 112px;
  height: 135px;
  background: var(--heading-flower-image) no-repeat center center;
  background-size: contain;
  margin: 0 0 0.3rem;
}
.wp-block-heading.is-style-flowers.has-text-align-center:before {
  margin-left: auto;
  margin-right: auto;
}
.wp-block-heading + .is-style-tagline {
  margin-top: -1rem;
}
.wp-block-heading.is-style-underline {
  position: relative;
}
.wp-block-heading.is-style-underline:after {
  content: "";
  display: block;
  width: 6em;
  height: 3px;
  border-radius: 3px;
  background-color: #e71f29;
  margin-top: 0.2em;
}
.wp-block-heading.is-style-underline.has-text-align-center::after {
  margin-left: auto;
  margin-right: auto;
}

/**
 * Search Results
 */
.search-results .site-main article .inside-article {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1em;
}
.search-results .site-main article .inside-article .post-image,
.search-results .site-main article .inside-article .entry-summary,
.search-results .site-main article .inside-article footer.entry-meta {
  margin: 0;
}
.search-results .site-main article .inside-article .entry-header .entry-title {
  font-size: 1.5em;
}
@media (min-width: 600px) {
  .search-results .site-main article .inside-article {
    grid-template-columns: 2fr 1fr;
    grid-template-areas: "header image" "entry image" "footer image";
  }
  .search-results .site-main article .inside-article .entry-header {
    grid-area: header;
  }
  .search-results .site-main article .inside-article .post-image {
    grid-area: image;
  }
  .search-results .site-main article .inside-article .entry-summary {
    grid-area: entry;
  }
  .search-results .site-main article .inside-article footer.entry-meta {
    grid-area: footer;
  }
}
@media (min-width: 800px) {
  .search-results .site-main article .inside-article {
    grid-template-columns: 3fr 1fr;
  }
}

.paging-navigation {
  border-top: 2px dashed #e71f29;
  text-align: center;
}
.paging-navigation a {
  text-decoration: none;
}
.paging-navigation .page-numbers {
  display: inline-block;
  padding: 0.2em;
  transition: 0.2s all;
}
.paging-navigation .prev, .paging-navigation .next {
  border: 1px solid #e71f29;
  padding: 0.2em 0.5em;
  background: rgba(231, 31, 41, 0);
}
.paging-navigation .prev:hover, .paging-navigation .next:hover {
  background: rgba(231, 31, 41, 0.1);
}
.paging-navigation .prev {
  margin-right: 1em;
}
.paging-navigation .next {
  margin-left: 1em;
}

/**
 * Store Notice
 */
.woocommerce-store-notice,
p.demo_store {
  background: var(--base-red);
}

/**
 * Sale stickers
 */
.woocommerce span.onsale {
  background-color: var(--accent);
  color: #fff;
  padding: 0.2em 0.6em;
  margin-right: -1.2em;
}

/**
 * Gutenberg Product Collection Block
 */
.wp-block-woocommerce-product-collection ul.wc-block-product-template {
  margin: 0;
  grid-row-gap: 4em;
}
.wp-block-woocommerce-product-collection .wp-block-button .wp-block-button__link {
  cursor: pointer;
  width: auto;
  padding: 1em 3em;
  border: 0;
  border-radius: 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
  white-space: normal;
  text-decoration: none;
  color: #fff;
  background: #d64360;
  transition: 0.4s all;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
}
.wp-block-woocommerce-product-collection .wp-block-button .wp-block-button__link.hovered, .wp-block-woocommerce-product-collection .wp-block-button .wp-block-button__link:hover {
  background: #e23557;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

.woocommerce-toolbar p {
  margin: 0 !important;
}
.woocommerce-toolbar:after {
  content: "";
  clear: both;
  display: table;
}

/**
 * Browse Products/Categories
 */
.woocommerce ul.products {
  display: grid;
  gap: 1.5em;
  row-gap: 3em;
  grid-template-columns: 1fr;
}
.woocommerce ul.products:before, .woocommerce ul.products:after {
  display: none;
}
@media (min-width: 600px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .woocommerce ul.products {
    gap: 2em;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 900px) {
  .woocommerce ul.products.columns-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .woocommerce ul.products.columns-5 {
    grid-template-columns: repeat(5, 1fr);
  }
}
.woocommerce ul.products li.product {
  float: none !important;
  margin: 0 !important;
  width: unset !important;
}
.woocommerce ul.products li.product .woocommerce-loop-category__title .count {
  display: none;
}
.woocommerce ul.products li.product a:hover img {
  animation: pulse-image 0.9s ease-in-out infinite;
}

/**
 * Singular product
 */
.single-product .type-product .product_title {
  font-size: 35px;
  margin-bottom: 20px;
  line-height: 1.2em;
  font-weight: normal;
  text-transform: none;
}
.single-product .type-product h2 {
  font-size: 1.6em;
}
.single-product .type-product .product_meta .sku_wrapper,
.single-product .type-product .product_meta .posted_in,
.single-product .type-product .product_meta .tagged_as {
  display: block;
}
.single-product .type-product .product_meta .sku_wrapper:before,
.single-product .type-product .product_meta .posted_in:before,
.single-product .type-product .product_meta .tagged_as:before {
  display: inline-block;
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  -webkit-font-smoothing: antialiased;
  content: "\f02a";
  min-width: 1.4em;
  margin-right: 0.2em;
}
.single-product .type-product .product_meta .posted_in::before {
  content: "\f07c";
}
.single-product .type-product .product_meta .tagged_as::before {
  content: "\f02b";
}
.single-product .type-product .products.upsells,
.single-product .type-product .products.related {
  margin-top: 1em;
  border-top: 1px solid #cfc8d8;
  padding-top: 1em;
}

/**
 * Button styling
 */
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) a.button.alt,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) input.button.alt,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) button.button.alt {
  background-color: #d64360;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) a.button.alt:focus, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) a.button.alt:active,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) input.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) input.button.alt:focus,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) input.button.alt:active,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) button.button.alt:hover,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) button.button.alt:focus,
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) button.button.alt:active {
  background-color: #e23557;
}

.wc-block-cart__submit {
  text-align: center;
}

.wc-block-components-button:not(.is-link) {
  cursor: pointer;
  width: auto;
  padding: 1em 3em;
  border: 0;
  border-radius: 0.5rem;
  font-size: 0.9em;
  font-weight: 600;
  white-space: normal;
  text-decoration: none;
  color: #fff;
  background: #d64360;
  transition: 0.4s all;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0);
}
.wc-block-components-button:not(.is-link).hovered, .wc-block-components-button:not(.is-link):hover {
  background: #e23557;
  box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.2);
}

/**
 * Cart/Checkout
 */
.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block h1.wp-block-heading,
.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block h2.wp-block-heading {
  font-size: 1.4em;
}
.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block .wc-block-components-product-title {
  font-size: 1em;
  line-height: 1.2;
  font-weight: normal;
}
.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block a {
  text-decoration: inherit;
}

/**
 * Toolbar for Filtering By Tag
 */
.filter-toolbar {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1em;
  margin-bottom: 1.5em;
  background: #fdf9ee;
  border: 1px solid #f4b833;
  border-radius: 1rem;
  padding: 0.5em;
}
@media (min-width: 768px) {
  .filter-toolbar {
    grid-template-areas: "heading tag . search";
    grid-template-columns: min-content auto 1fr;
  }
  .filter-toolbar p.heading {
    grid-area: heading;
  }
  .filter-toolbar p.tag {
    grid-area: tag;
  }
  .filter-toolbar p.search {
    grid-area: search;
    justify-self: end;
  }
}
.filter-toolbar p {
  margin: 0;
}
.filter-toolbar p.heading {
  font-weight: 500;
  padding-top: 0.2em;
  white-space: nowrap;
}
.filter-toolbar select {
  cursor: pointer;
}
.filter-toolbar select,
.filter-toolbar input {
  padding: 0.3em 0.7em;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  line-height: 1;
}
.filter-toolbar select:focus, .filter-toolbar select:hover,
.filter-toolbar input:focus,
.filter-toolbar input:hover {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.site-footer a {
  text-decoration: none;
}
.site-footer a:hover, .site-footer a:active {
  text-decoration: underline;
}
.site-footer .footer-widgets h3,
.site-footer .footer-widgets .wp-block-heading {
  color: var(--accent);
  font-size: 1.3em;
  position: relative;
  font-weight: 400;
  line-height: 1.5;
}
.site-footer .footer-widgets h3:after,
.site-footer .footer-widgets .wp-block-heading:after {
  position: absolute;
  left: 0;
  content: "";
  width: clamp(2em, 6em, 90%);
  height: 2px;
  background: var(--light-blue);
  bottom: -0.3em;
}
.site-footer .footer-widgets ul.social-links li {
  margin-bottom: 1em;
}
.site-footer .footer-widgets ul.social-links li i {
  display: inline-block;
  min-width: 1.5em;
  text-align: center;
  margin-right: 0.25em;
  color: var(--base-red);
}
.site-footer .footer-widgets .widget_nav_menu a:hover, .site-footer .footer-widgets .widget_nav_menu a:active {
  text-decoration: underline;
}

.site-info {
  /*
  .copyright-bar  {
  	span.copyright {
  		display:inline-block;
  	}
  	a.admin {
  		display:inline-block;
  		margin-left:1em;
  	}
  }
  */
}
.site-info p.logo img {
  width: 10em;
  max-width: 100%;
  height: auto;
}
.site-info .grid-container {
  grid-template-columns: 1fr;
  gap: 1em;
  flex-direction: column;
}
@media (min-width: 768px) {
  .site-info .grid-container {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-areas: ". . logo" "links . logo" "copyright . logo" ". . logo";
    gap: 1em;
    text-align: left;
    justify-content: space-between;
  }
  .site-info .grid-container p {
    margin: 0;
  }
  .site-info .grid-container p.logo {
    grid-area: logo;
  }
  .site-info .grid-container p.copyright {
    grid-area: copyright;
  }
  .site-info .grid-container p.links {
    grid-area: links;
  }
}
.site-info p {
  margin: 0;
}