/*!
Theme Name: JAMP Therapy
Theme URI: http://underscores.me/
Author: JAMP Therapy
Author URI: https://www.jamptherapy.com/
Description: A custom WordPress theme using Bootstrap
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: jamptherapy
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

JAMP Therapy is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/* Small menu. */
.menu-toggle, .main-navigation.toggled ul {
  display: block;
}
@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: flex;
  }
}
.site-main .comment-navigation, .site-main .posts-navigation, .site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links, .posts-navigation .nav-links, .post-navigation .nav-links {
  display: flex;
}
.comment-navigation .nav-previous, .posts-navigation .nav-previous, .post-navigation .nav-previous {
  flex: 1 0 50%;
}
.comment-navigation .nav-next, .posts-navigation .nav-next, .post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}
/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}
.updated:not(.published) {
  display: none;
}
/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}
.bypostauthor {
  display: block;
}
/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}
/* Media
--------------------------------------------- */
.page-content .wp-smiley, .entry-content .wp-smiley, .comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}
/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}
/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}
.wp-caption-text {
  text-align: center;
}
/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}
.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}
.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}
.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}
.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}
.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}
.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}
.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}
.gallery-caption {
  display: block;
}
/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation, .infinite-scroll.neverending .site-footer {
  display: none;
}
/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}
/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}
/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}
/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}
.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}
.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}
/* --------------------------------------

jamptherapy custom styles 

--------------------------------------- */
*:root {
  --primary-color: #BBD0D7;
  --primary-darker-color: #498394;
  --primary-dark-color: #294C56;
  --accent-color: #DDB2A1;
  --accent-bright-color: #d25727;
  --accent-dark-color: #B57961;
  --light-gray-color: #ececec;
  --heading-font: 'Playfair Display', serif;
  --body-font: 'Lato', sans-serif;
}
/* --------------------------------------

Global

--------------------------------------- */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 3rem;
}
body {
  font-family: var(--body-font);
  font-size: 18px;
  line-height: 1.6;
  font-weight: 400;
  color: #000000;
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--heading-font);
  font-weight: 400;
  color: #000000;
  line-height: 1.3;
  margin-bottom: 0.5em;
}
h1, .entry-title {
  font-size: 3.438rem;
}
h2 {
  font-size: 2.813rem;
}
h3, .entry-snippet h2 {
  font-size: 2rem;
}
h4 {
  font-size: 1.4rem;
}
p, ul, ol {
  margin-bottom: 1em;
}
ul li, ol li {
  margin-bottom: 0.5em;
}
.lead {
  font-weight: 400;
}
strong {
  font-weight: 900;
}
section {
  padding: 5rem 0 5rem;
}
blockquote {
  font-style: italic;
}
.primarybg-color {
  background-color: var(--primary-color);
}
.primarydarkbg-color {
  background-color: var(--primary-dark-color);
}
.accentbg-color {
  background-color: var(--accent-color);
}
.lightgraybg-color {
  background-color: var(--light-gray-color);
}
/* ----- Link styling ----- */
a:link, a:visited {
  color: var(--primary-dark-color);
  text-decoration: underline;
}
a:hover, a:active, a:focus {
  color: var(--accent-bright-color);
  text-decoration: none;
}
/* ----- Buttons ----- */
.large-btn {
  color: #ffffff;
  font-size: 1.125rem;
  background: var(--primary-dark-color);
  border: 1px solid var(--primary-dark-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
.large-btn:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
.large-btn-light {
  color: var(--primary-dark-color);
  font-size: 1.125rem;
  background: var(--primary-color);
  border: 1px solid var(--primary-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
.large-btn-light:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
a.large-btn, a.small-btn, a.large-btn-light {
  color: #ffffff;
}
a.large-primary-btn {
  color: var(--primary-dark-color);
}
.large-primary-btn {
  color: var(--primary-dark-color) !important;
  font-size: 1.125rem;
  background: var(--primary-color);
  border: 1px solid var(--primary-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
.large-primary-btn:hover {
  color: var(--primary-dark-color);
  background: #fff;
  border: 1px solid #fff;
  text-decoration: none;
}
.small-btn {
  color: #ffffff;
  font-size: 0.938rem;
  background: var(--primary-dark-color);
  border: 1px solid var(--primary-dark-color);
  padding: 0.6em 1.3em 0.6em 1.3em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
  text-align: center;
}
.small-btn:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
/* ----- Responsive videos ----- */
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/* ----- Our websites ----- */
.our-websites {
  background-color: var(--primary-color);
  font-size: 0.9rem;
  padding: 0.4em 0.5em;
  text-align: center;
  margin-bottom: 2em;
}
.our-websites a {
  margin: 0 0.5em;
  text-decoration: none;
}
.our-websites a:hover {
  color: var(--primary-dark-color);
  text-decoration: underline;
  opacity: 0.8;
}
/* --------------------------------------

Navbar

--------------------------------------- */
.navbar {
  padding: 0.8rem 0.8rem;
}
.navbar .nav-link {
  font-family: var(--heading-font);
  font-size: 1.25rem;
  line-height: 1.3;
  color: var(--primary-dark-color);
  font-weight: 400;
  text-decoration: none;
  margin-left: 0.4em;
  margin-right: 0.4em;
}
.navbar .nav-link:hover {
  color: var(--accent-bright-color);
}
.navbar-nav .nav-link.active {
  color: var(--accent-bright-color);
}
.navbar li {
  margin-bottom: 0;
}
.dropdown-menu {
  font-size: 1.1rem;
  border-radius: 0;
}
.dropdown-menu a {
  color: var(--primary-dark-color);
}
a.dropdown-item {
  font-family: var(--heading-font);
  text-decoration: none;
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--primary-dark-color);
  background-color: var(--light-gray-color);
}
/* ----- Navbar toggler icon ----- */
.navbar-toggler {
  color: var(--primary-dark-color);
  border: 2px solid var(--primary-dark-color);
  opacity: 0.9;
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(41, 76, 86, 1)' stroke-width='4' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}
/* --------------------------------------

Header

--------------------------------------- */
.logo {
  text-align: center;
  margin: 1em 0 0.2em;
}
.logo-sm {
  display: none;
}
/* --------------------------------------

Quote at the top of homepage

--------------------------------------- */
.quote {
  padding: 0 0 2.5rem;
}
.quote blockquote p {
  font-size: 1.5rem;
  color: var(--primary-dark-color);
  margin-bottom: 0.4rem;
  line-height: normal;
}
.quote blockquote footer {
  font-family: var(--heading-font);
  font-weight: 400;
  font-size: 1.3rem;
  font-style: normal;
  color: var(--primary-dark-color);
}
/*
.quote blockquote footer::before {
  content: '\2014';
  margin-right: 0.4em;
}
*/
/* --------------------------------------

Homepage

--------------------------------------- */
.underline {
  background: linear-gradient(to bottom, transparent 10%, var(--primary-dark-color) 10%);
  line-height: 1.3;
  display: inline;
  color: #fff;
}
.intro {
  padding-bottom: 5rem;
}
.transparent-bg {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 2.5rem;
}
.transparent-bg p {
  margin-bottom: 0;
}
.founder-name {
  font-size: 1rem;
  position: absolute;
  bottom: 35px;
  margin-left: auto;
  margin-right: auto;
  background-color: var(--primary-dark-color);
  color: #fff;
  padding: 0.2em 0.7em;
  text-align: center;
}
.state {
  position: absolute;
  left: 0;
  top: 0;
  animation: animatedStates 3s infinite;
}
@keyframes animatedStates {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.02);
  }
  100% {
    transform: scale(1);
  }
}
.state-2 {
  animation-delay: 0.5s;
}
.state-3 {
  animation-delay: 1s;
}
.state-4 {
  animation-delay: 1.5s;
}
.meditations-bg {
  background-image: url('images/jamp-meditations-bg.jpg');
  background-size: cover;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 12rem 0 12rem;
}
.meditation-cta h2 {
  color: #fff;
  font-size: 3.438rem;
}
.animated-button {
  animation: animatedButton 3s infinite;
}
@keyframes animatedButton {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.125);
  }
  100% {
    transform: scale(1);
  }
}
/* --------------------------------------

Testimonials

--------------------------------------- */
.testimonials .testimonial-container {
  background-color: var(--primary-color);
  padding: 2.2rem 2.2rem 1.2rem;
  position: relative;
}
.testimonials .testimonial-container:after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  z-index: 1;
  border-style: solid;
  border-width: 40px 38px 0 0;
  border-color: var(--primary-color) transparent transparent transparent;
  bottom: -39px;
  left: 2.7rem;
  margin-left: -12px;
}
.testimonials .testimonial-container p {
  font-family: var(--body-font);
  color: var(--primary-dark-color);
  font-size: 1.2rem;
  line-height: 1.5;
  margin-bottom: 0.5em;
}
.testimonials blockquote footer {
  font-family: var(--heading-font);
  font-weight: 400;
  color: #000000;
  font-style: normal;
  display: block;
  font-size: 1.25rem;
  margin-left: 4rem;
  margin-top: 1.3rem;
}
.testimonials blockquote svg {
  width: 47px;
  height: auto;
  margin-bottom: 0.7rem;
}
/* --------------------------------------

JAMP Practitioners on homepage

--------------------------------------- */
.practitioners h2 {
  color: #fff;
}
.practitioner {
  background-color: #fff;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.practitioner-photo img {
  width: 100%;
}
.practitioner-info {
  padding: 2em 1.5em;
}
.practitioner-info h3 {
  font-size: 1.563rem;
  margin-bottom: 0.3em;
}
.practitioner-info p {
  font-family: var(--heading-font);
  font-weight: 400;
}
/* ----- Splide ----- */
.practitioners .splide__arrow {
  background: transparent;
}
.practitioners .splide__arrow--prev {
  left: -1.7em;
}
.practitioners .splide__arrow--next {
  right: -1.7em;
}
.practitioners .splide__slide {
  display: flex;
}
/* --------------------------------------

JAMP Practitioners page

--------------------------------------- */
.practitioner-bio {
  border-bottom: 10px solid var(--primary-color);
  margin-bottom: 4rem;
  padding-bottom: 4rem;
}
.practitioner-bio:first-child {
  border-top: 10px solid var(--primary-color);
  padding-top: 4rem;
}
.practitioner-bio:last-child {
  border-bottom: 0px solid var(--primary-color);
  margin-bottom: 0;
  padding-bottom: 0;
}
.practitioner-bio h2, .practitioner-bio h3 {
  color: var(--primary-dark-color);
  margin-bottom: 0.7rem;
}
.practitioner-bio h3 {
  font-size: 1.8rem;
  margin-bottom: 1.5rem;
}
.practitioner-bio p {
  font-family: var(--body-font);
  font-weight: 400;
}
.practitioner-bio .social-media svg {
  width: 32px;
  height: auto;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  color: var(--primary-dark-color);
}
.practitioner-bio .social-media svg:hover {
  color: var(--accent-bright-color);
}
.practitioner-bio .social-media a {
  text-decoration: none;
}
.practitioner-bio .contact-btn {
  margin-top: 2rem;
}
/* --------------------------------------

JAMP Meditations page

--------------------------------------- */
.page-template-page-jamp-meditations .meditations-bg {
  padding: 8rem 0 8rem;
}
.meditation-login {
  padding: 0 5rem;
}
/* --------------------------------------

JAMP Meditations Dashboard

--------------------------------------- */
.jamp-meditation {
  background-color: #fff;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  display: flex;
  flex-direction: column;
  height: 100%;
}
.meditation-photo img {
  width: 100%;
}
.meditation-info {
  padding: 2em 1.5em;
}
.meditation-info h3 {
  font-size: 1.375rem;
  margin-bottom: 0.3em;
}
.meditation-info p {
  font-family: var(--heading-font);
  font-weight: 400;
}
/* --------------------------------------

Single JAMP Meditations page

--------------------------------------- */
.meditation-video {
  margin-bottom: 2rem;
}
.back-btn {
  margin-bottom: 2rem;
}
.back-btn svg {
  width: 30px;
  height: auto;
  margin-right: 0.3rem
}
/* --------------------------------------

Footer

--------------------------------------- */
.footer-content {
  padding: 4em 0 4em;
  font-size: 0.938rem;
}
.footer-content small {
  font-size: 0.813rem;
}
.footer-content .social-media {
  margin-top: 2em;
  margin-bottom: 1.5em;
}
.footer-content .social-media svg {
  width: 32px;
  height: auto;
  margin-right: 1em;
  color: var(--primary-dark-color);
}
.footer-content .social-media svg:hover {
  color: var(--accent-bright-color);
}
.footer-content .social-media a {
  text-decoration: none;
}
.contact-form-fields {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  margin-top: 1.5rem;
  margin-bottom: 1rem;
}
.contact-form input[type="text"], .contact-form input[type="email"], .contact-form textarea {
  width: 100%;
  border: 1px solid #707070;
  padding: 12px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* --------------------------------------

Contact form 7

--------------------------------------- */
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 .wpcf7-textarea {
  width: 100%;
  border: 1px solid #707070;
  padding: 12px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.wpcf7-submit {
  color: #ffffff;
  font-size: 1.125rem;
  background: var(--primary-dark-color);
  border: 1px solid var(--primary-dark-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
.wpcf7-submit:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
/* --------------------------------------

MemberPress

--------------------------------------- */
.mepr-submit, #mepr_forgot_password_form input[type="submit"], .login-form #mepr_loginform input[type="submit"] {
  color: #ffffff;
  font-size: 1.125rem;
  background: var(--primary-dark-color);
  border: 1px solid var(--primary-dark-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
.mepr-submit:hover, #mepr_forgot_password_form input[type="submit"]:hover, .login-form #mepr_loginform input[type="submit"]:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
.page-template-page-members #mepr_loginform label, .page-template-page-members .mepr-login-actions a:link, .meditation-login #mepr_loginform label, .meditation-login .mepr-login-actions a {
  color: #fff;
}
.page-template-page-members .mepr-already-logged-in, .page-template-page-members .mepr-already-logged-in a:link, .meditation-login .mepr-already-logged-in, .meditation-login .mepr-already-logged-in a {
  color: #FDBD00;
}
#mepr_loginform .submit {
  text-align: center;
}
.mp_login_form .mp-spacer {
  height: 10px;
}
#mepr_loginform input[type="submit"] {
  color: var(--primary-dark-color);
  font-size: 1.125rem;
  background: var(--primary-color);
  border: 1px solid var(--primary-color);
  padding: 0.6em 1.5em 0.6em 1.5em;
  text-decoration: none !important;
  word-break: break-word;
  cursor: pointer;
  display: inline-block;
  text-transform: uppercase;
}
#mepr_loginform input[type="submit"]:hover {
  color: #ffffff;
  background: var(--primary-darker-color);
  border: 1px solid var(--primary-darker-color);
  text-decoration: none;
}
/* ----- Account page ----- */
.mepr-nav-item {
  padding: 0.3rem 0.8rem;
  border: 1px solid var(--primary-dark-color);
  margin-right: 0.5rem;
}
.mepr-active-nav-tab {
  font-weight: bold;
  color: #fff;
  border: 1px solid var(--primary-dark-color);
  background-color: var(--primary-dark-color);
}
.mepr-active-nav-tab a {
  color: #fff;
}
.mepr-nav-item a:link {
  text-decoration: none;
}
/* ----- Login form ----- */
.login-form {
  padding: 3rem;
}
/* ----- Registration form ----- */
#signup .mepr-product-access-url {
  margin-bottom: 1rem;
}
/* --------------------------------------

App

--------------------------------------- */
body.jamp-app {
  font-size: 1rem;
  background-color: var(--light-gray-color);
}
.app-intro {
  height: 100vh;
}
.app-intro .app-main {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  margin-top: 0;
  margin-bottom: 0;
}
.app-home-buttons {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: center;
  margin-top: 2rem;
}
.app-nav {
  background-color: #fff;
}
.app-nav span {
  font-family: var(--heading-font);
  font-weight: 400;
  color: #000000;
  text-transform: uppercase;
  font-size: 1.2rem;
}
.app-nav .navbar-brand img {
  width: 150px;
  height: auto;
}
.app-nav svg {
  width: auto;
  height: 24px;
}
.app-header {
  margin-top: 4rem;
}
.app-header h1 {
  font-size: 2rem;
}
.app-main {
  margin-top: 2rem;
  margin-bottom: 3rem;
}
.app-main .back-btn {
  margin-bottom: 0;
}
.app-main .jamp-meditation {
  background-color: #fff;
  margin-left: 0;
  margin-right: 0;
  display: flex;
  flex-direction: row;
  height: 100%;
}
.app-main .meditation-photo {
  flex: 0 0 100px;
}
.app-main .meditation-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.app-main .meditation-info {
  padding: 1rem 1rem;
}
.app-main .meditation-info h3 {
  font-size: 1.1rem;
  margin-bottom: 0.2rem;
}
.app-main .small-btn {
  font-size: 0.8rem;
  padding: 0.5em 0.8em 0.5em 0.8em;
}
.jamp-app .modal-backdrop {
  z-index: 0;
}
#contactFormModal .modal-content {
  position: relative;
}
#contactFormModal .btn-close {
  position: absolute;
  top: 0.3rem;
  right: 0.3rem;
  z-index: 1;
}
#contactFormModal .modal-body {
  padding-right: 2.5rem;
}
.app-main .entry-title, .unauthorized-access h1 {
  font-size: 2rem;
}
.app-main h2 .unauthorized-access .login-form h3, .app-main h2 {
  font-size: 1.7rem;
}
.app-main h2 {
  font-size: 1.7rem;
}
.app-main section {
  padding: 4rem 0 4rem;
}
.unauthorized-access .login-form {
  padding: 2rem;
}
.app-footer-content {
  background-color: #fff;
  padding: 0.7rem 0 0.7rem;
  font-size: 0.8rem;
  border-top: 1px solid #ddd;
}
.app-footer-links {
  display: flex;
  justify-content: space-around;
}
.app-footer-links a {
  text-decoration: none;
}
.app-footer-links.app-public {
  display: flex;
  justify-content: space-around;
}
.app-footer-link {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.3rem;
}
.app-footer-link svg {
  width: auto;
  height: 24px;
}
.jamp-app .mepr-account-change-password, .jamp-app .mepr-login-actions {
  display: none !important;
}
div#mepr-account-nav .mepr-nav-item:last-child {
  display: none;
}
body.page-id-340 .mepr-unauthorized-message {
  display: none;
}
/* --------------------------------------

Media queries

--------------------------------------- */
/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {
  a.navbar-brand img {
    width: 300px;
    height: auto;
  }
  .practitioners .splide__arrow--prev {
    left: 0.3em;
  }
  .practitioners .splide__arrow--next {
    right: 0.3em;
  }
}
/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
  .navbar .offcanvas-body .nav-link {
    margin-left: 0;
  }
  .offcanvas-body .navbar-nav li {
    margin-bottom: 1rem;
  }
}
/* `lg` applies to medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {
  a.navbar-brand img {
    width: 250px;
    height: auto;
  }
  h1, .entry-title, .meditation-cta h2 {
    font-size: 2.813rem;
  }
  h2 {
    font-size: 2.25rem;
  }
  h3, .entry-snippet h2 {
    font-size: 1.688rem;
  }
  h4 {
    font-size: 1.2rem;
  }
  .intro {
    padding-bottom: 3rem;
  }
  .meditations-bg {
    padding: 5rem 0 5rem;
  }
  .founder.photo img {
    max-width: 380px;
  }
}
@media only screen and (max-width: 991.98px) and (min-width: 768px) {
  .practitioner-bio .social-media svg {
    width: 24px;
    height: auto;
    margin-left: 0.4rem;
    margin-right: 0.4rem;
  }
}
/* `md` applies to small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
  section {
    padding: 3rem 0 3rem;
  }
  .footer-content .social-media svg {
    margin-left: 0.5em;
    margin-right: 0.5em;
  }
  .practitioner {
    margin-left: auto;
    margin-right: auto;
  }
  .states {
    width: 80%;
    height: auto;
    left: 50%;
    transform: translateX(-50%);
  }
  .practitioner-bio .social-media svg {
    width: 32px;
    margin-left: 0.7rem;
    margin-right: 0.7rem;
  }
  .page-template-page-jamp-meditations .meditations-bg {
    padding: 3rem 0 3rem;
  }
  .meditation-login {
    padding: 0 1.5rem;
  }
  .transparent-bg {
    padding: 1.5rem;
  }
  .login-form {
    padding: 2rem;
  }
  .practitioner-list .practitioner-info {
    padding: 2em 0;
  }
}
/* `sm` applies to x-small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
  a.navbar-brand img {
    width: 210px;
    height: auto;
  }
  h1, .entry-title, .meditation-cta h2 {
    font-size: 2.25rem;
  }
  h2 {
    font-size: 1.813rem;
  }
  h3, .entry-snippet h2, .entry-info h3, .videos h3 {
    font-size: 1.563rem;
  }
  .practitioners .splide__arrow--prev {
    left: 0.5em;
  }
  .practitioners .splide__arrow--next {
    right: 0.5em;
  }
  .founder.photo img {
    max-width: 280px;
  }
  .quote {
    padding: 0 0 2rem;
  }
  .practitioner-bio .social-media svg {
    margin-left: 0.4rem;
    margin-right: 0.4rem;
  }
  .testimonials .testimonial-container {
    padding: 1.8rem 1.5rem 1.2rem;
  }
  .quote blockquote p {
    font-size: 1.3rem;
  }
}
/* For smallest devices (less than 350px) */
@media (max-width: 350px) {
  .logo-all {
    display: none;
  }
  .logo-sm {
    display: block;
  }
  a.navbar-brand img.logo-sm {
    width: 150px;
    height: auto;
  }
}