/*!
 Theme Name:   Moms Do Yoga
 Description:  Moms Do Yoga
 Author:       Frederik Delmotte
 Author URI:   http://frederikdelmotte.com
 Version:      1.2.1
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

/* 
 * variables
 */
/* Default Equations */
/* Penner Equations (approximated) originally created by @robpenner */
/* 
 * mixins
 */
/* 
 * functions
 */
/*
 * keyframe animation
 */
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-moz-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes rotateHeader {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
/* 
 * fonts
*/
@font-face {
  font-family: "AyerDeck-SemiBold";
  src: url("fonts/AyerDeck-SemiBold.woff2") format("woff2");
  font-style: normal;
  font-stretch: normal;
}
@font-face {
  font-family: "Montserrat-Medium";
  src: url("fonts/Montserrat-Medium.woff2") format("woff2");
  font-style: normal;
  font-stretch: normal;
}
/* 
 * global
 */
body {
  color: #000;
}

h1, h2, h3, p, a, ul li, input, figcaption {
  color: inherit;
}

a {
  color: inherit;
  text-decoration: none;
  outline: none;
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  padding: 0;
  margin: 0;
}

img,
video {
  -moz-user-select: -moz- none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  -o-user-select: none;
  user-select: none;
  -moz-user-drag: -moz- none;
  -webkit-user-drag: none;
  user-drag: none;
}

main, section, aside, div {
  position: relative;
}

/* 
 * typography
 */
body {
  font-family: "Montserrat-Medium", Verdana, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "AyerDeck-SemiBold", Garamond, serif;
  font-style: normal;
  font-stretch: normal;
  font-weight: normal;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

blockquote p,
#testimonials nav a {
  font-family: "AyerDeck-SemiBold", Garamond, serif;
}

h1 {
  font-size: 80px;
  line-height: 110%;
  letter-spacing: -0.01em;
}

h2,
blockquote p,
#testimonials nav a {
  font-size: 52px;
  line-height: 50px;
}

h3 {
  font-size: 36px;
  line-height: 36px;
}
h3 small {
  font-family: "Montserrat-Medium", Verdana, sans-serif;
  font-weight: normal;
  font-size: 15px;
  line-height: 27px;
  display: block;
}

p,
a,
ul li,
input,
textarea {
  font-size: 15px;
  line-height: 27px;
}

h2 a, h3 a {
  font-size: inherit;
  line-height: inherit;
}

figcaption {
  font-size: 12px;
  line-height: 15px;
}

button {
  font-size: 13px;
  line-height: 20px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

label {
  color: rgba(0, 0, 0, 0.6);
}

input, button, textarea, select {
  font-family: "Montserrat-Medium", Verdana, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}

input {
  padding: 8px 0;
  border: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  outline: none;
}
input:focus {
  border-bottom: 1px solid rgb(0, 0, 0);
}
input:disabled {
  opacity: 0.4;
  background: none;
}

select {
  border-radius: 16px;
  padding: 12px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  background: none;
  color: #000;
  -webkit-appearance: none;
  outline: none;
}
select::after {
  content: "";
  position: absolute;
  height: 8px;
  width: 8px;
  top: calc(50% - 5px);
  right: 20px;
  border: solid black;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
}
select option {
  color: #000;
}

.button {
  padding: 16px 20px;
  border-radius: 16px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  text-align: center;
}
.button:hover {
  border: 1px solid rgba(0, 0, 0, 0.5);
}

/* subscription plugin

button,
.button,
input[type=submit],
.pms-form-submit{

	background: #000;
	color: #fff;
	border: none;
	border-radius: 16px;
	cursor: pointer;
	padding: 12px 0;

	&:hover{

	}

	&.secondary{

		background: transparent;
		color: #000;
		border: 1px solid rgba( 0, 0, 0, .2 );

		&:hover{
			border: 1px solid rgba( 0, 0, 0, .5 );
		}

	}

}

select{
	border-radius: 16px;
	padding: 12px;
	border: 1px solid rgba( 0, 0, 0, .2 );
}
 */
/* 
 * layout
 */
body {
  position: relative;
}
body header {
  background: #138657;
  padding: 40px 0;
}
body header h3 {
  display: table;
  margin: 0 25px;
}
body > div#loader {
  width: 100vw;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  display: flex;
  justify-content: center;
  overflow-x: clip;
}
body > div#loader div {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
body > div#loader div svg {
  position: absolute;
  top: -50%;
  left: -15%;
  animation: rotateHeader 200s linear infinite;
}
body > div#loader h1 {
  position: sticky;
  top: 40vh;
  height: fit-content;
}
body > div#loader h1 > span {
  overflow: hidden;
  display: inline-flex;
  transition: width 0.7s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: width;
}
body > div#loader h1 > span.w:nth-of-type(1) {
  width: 106px;
}
body > div#loader h1 > span.w:nth-of-type(3) {
  width: 36px;
}
body > div#loader h1 > span.w:nth-of-type(5) {
  width: 80px;
}
body > div#loader h1 > span.l {
  width: 0;
}
body main section {
  padding: 0 25px;
}
body main section h2 {
  margin-bottom: 1em;
}
body footer nav {
  padding: 25px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
body.home main {
  overflow: hidden;
}
body.home main > div#promo {
  text-align: center;
  padding: 25vh 0;
}
body.home main > div#promo a {
  width: 128px;
  display: inline-block;
  padding: 54px 42px;
  border-radius: 96px;
  text-align: center;
}
body.home section:not(#testimonials) {
  margin-bottom: 120px;
}
body.home section#about #teachers {
  width: 100%;
  height: 720px;
  margin: 40px 0;
}
body.home section#about #teachers > div {
  position: absolute;
}
body.home section#about #teachers > div > figure {
  text-align: center;
  display: inline-block;
  width: calc(( ( ( 100vw - ( ( 5 - 1 ) * 25px ) - ( 2 * 25px ) ) / 5 ) * 3 ) + ( ( 3 - 1 ) * 25px ));
  cursor: pointer;
}
body.home section#about #teachers > div > figure img,
body.home section#about #teachers > div > figure video {
  width: 100%;
  aspect-ratio: 1;
  border-radius: 33%;
  object-fit: cover;
}
body.home section#about #teachers > div > figure figcaption {
  display: inline-block;
  transform: translateY(-60px);
  color: #fff;
  /*
  background: rgba( 0, 0, 0, .5 );
  border-radius: 10px;
  padding: 10px;
  */
}
body.home section#about #teachers > div > figure figcaption span {
  display: block;
  opacity: 0.6;
}
body.home section#about #teachers > div:nth-of-type(1) {
  top: 0;
  left: 0;
  z-index: 3;
}
body.home section#about #teachers > div:nth-of-type(1) > figure {
  width: calc(( ( ( 100vw - ( ( 5 - 1 ) * 25px ) - ( 2 * 25px ) ) / 5 ) * 3.3 ) + ( ( 3.3 - 1 ) * 25px ));
}
body.home section#about #teachers > div:nth-of-type(2) {
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: 2;
}
body.home section#about #teachers > div:nth-of-type(3) {
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
body.home section#about #teachers > div aside {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: #fff;
  flex-direction: column;
  gap: 25px;
  overflow-y: auto;
}
body.home section#about #teachers > div aside > a {
  position: absolute;
  width: 20px;
  height: 20px;
  top: 25px;
  right: 25px;
}
body.home section#about #teachers > div aside > a:before, body.home section#about #teachers > div aside > a:after {
  content: "";
  position: absolute;
  height: 1.5px;
  width: 25px;
  background: #000;
  transform-origin: center;
  left: 50%;
  top: 50%;
}
body.home section#about #teachers > div aside > a:before {
  transform: translate3d(-50%, -50%, 0) rotate(45deg);
}
body.home section#about #teachers > div aside > a:after {
  transform: translate3d(-50%, -50%, 0) rotate(-45deg);
}
body.home section#about #teachers > div aside figure {
  width: 100%;
}
body.home section#about #teachers > div aside figure img,
body.home section#about #teachers > div aside figure video {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  display: block;
  margin: 0;
  padding: 0;
}
body.home section#about #teachers > div aside div {
  padding: 25px 25px 50px;
}
body.home section#about #teachers > div aside div h2 {
  margin-bottom: 10px;
}
body.home section#about #teachers > div aside div h3 {
  margin-bottom: 40px;
}
body.home section#about #teachers > div:not(.active):hover {
  z-index: 5;
}
body.home section#about #teachers > div.active {
  z-index: 6;
  transform: initial;
}
body.home section#about #teachers > div.active aside {
  display: flex;
}
body.home section#calendar #calendar-table {
  display: flex;
  flex-direction: column;
  padding: 60px 0;
}
body.home section#calendar #calendar-table .class,
body.home section#calendar #calendar-table .event {
  display: flex;
  gap: 25px;
  padding: 40px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.home section#calendar #calendar-table .class .date,
body.home section#calendar #calendar-table .event .date {
  width: calc(( ( ( 100vw - ( ( 4 - 1 ) * 25px ) - ( 2 * 25px ) ) / 4 ) * 1 ) + ( ( 1 - 1 ) * 25px ));
}
body.home section#calendar #calendar-table .class .wrapper,
body.home section#calendar #calendar-table .class h3,
body.home section#calendar #calendar-table .class .info,
body.home section#calendar #calendar-table .class .meta,
body.home section#calendar #calendar-table .event .wrapper,
body.home section#calendar #calendar-table .event h3,
body.home section#calendar #calendar-table .event .info,
body.home section#calendar #calendar-table .event .meta {
  display: flex;
  flex-direction: column;
}
body.home section#calendar #calendar-table .class .wrapper,
body.home section#calendar #calendar-table .event .wrapper {
  width: calc(( ( ( 100vw - ( ( 4 - 1 ) * 25px ) - ( 2 * 25px ) ) / 4 ) * 3 ) + ( ( 3 - 1 ) * 25px ));
  gap: 40px;
}
body.home section#calendar #calendar-table .class .wrapper h3,
body.home section#calendar #calendar-table .event .wrapper h3 {
  gap: 5px;
}
body.home section#calendar #calendar-table .class .wrapper .info,
body.home section#calendar #calendar-table .event .wrapper .info {
  gap: 20px;
}
body.home section#calendar #calendar-table .class .wrapper .info .meta,
body.home section#calendar #calendar-table .event .wrapper .info .meta {
  gap: 5px;
}
body.home section#calendar #calendar-table .class .wrapper .info figure img,
body.home section#calendar #calendar-table .event .wrapper .info figure img {
  width: 100%;
}
body.home section#calendar #calendar-table .class .wrapper .info a.js-description,
body.home section#calendar #calendar-table .event .wrapper .info a.js-description {
  text-decoration: underline;
}
body.home section#calendar #calendar-table .class .wrapper .info .description,
body.home section#calendar #calendar-table .event .wrapper .info .description {
  display: none;
  flex-direction: column;
  gap: 20px;
}
body.home section#calendar #calendar-table .class .wrapper .info .description p,
body.home section#calendar #calendar-table .event .wrapper .info .description p {
  width: 100%;
}
body.home section#calendar #calendar-table .class .wrapper .info.show .description,
body.home section#calendar #calendar-table .event .wrapper .info.show .description {
  display: flex;
}
body.home section#calendar #calendar-table .momoyoga-section {
  border: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 0;
  padding: 40px 0;
  margin-bottom: 0;
}
body.home section#calendar #calendar-table .momoyoga-section:last-child {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
body.home section#calendar #calendar-table .momoyoga-section div {
  font-family: "Montserrat-Medium", Verdana, sans-serif;
  font-weight: normal;
  font-size: 15px;
  line-height: 27px;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-day {
  display: inline;
  margin-right: 5px;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-date {
  display: inline;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson {
  padding-bottom: 80px;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line {
  display: flex;
  flex-direction: column;
  gap: 40px;
  position: static;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-title {
  font-family: "AyerDeck-SemiBold", Garamond, serif;
  font-size: 36px;
  line-height: 36px;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-teacher {
  display: none;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-action {
  position: absolute;
  right: 0;
  left: 0;
  top: auto;
  bottom: 0;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-action a {
  border-radius: 16px;
  cursor: pointer;
  padding: 12px 0;
  background: transparent;
  color: #000;
  border: 1px solid rgba(0, 0, 0, 0.2);
  width: 100%;
  display: block;
  text-align: center;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-action a:hover {
  border: 1px solid rgba(0, 0, 0, 0.5);
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-details {
  margin: 10px 0;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-details p {
  margin-left: 0;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-details p > strong {
  font-weight: normal;
  display: inline-block;
  width: 90px;
}
body.home section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-details p.momoyoga-lesson-description {
  margin-top: 10px;
}
body.home section#calendar p small {
  opacity: 0.6;
}
body.home section#calendar #calendar-image {
  padding: 60px 0;
}
body.home section#calendar #calendar-image figure {
  width: 100%;
}
body.home section#calendar #calendar-image figure img {
  width: 100%;
  display: block;
}
body.home section#resources {
  z-index: 2;
}
body.home section#resources > a {
  padding: 16px 20px;
  border-radius: 16px;
  background: #000;
  color: #fff;
  margin-top: 40px;
  display: inline-block;
}
body.home section#resources > a:hover {
  background: #333;
}
body.home section#testimonials {
  width: calc(100% - 50px);
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  max-height: 100vh;
  max-height: calc(var(--vh, 1vh) * 100);
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow-x: clip;
  z-index: 1;
}
body.home section#testimonials > div#testimonials-quotes div {
  display: none;
  padding: 40px 0;
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none;
}
body.home section#testimonials > div#testimonials-quotes div.active {
  display: block;
  animation: fadeIn 1.4s cubic-bezier(0, 0, 0.58, 1);
}
body.home section#testimonials > div#testimonials-quotes div blockquote {
  width: 100%;
  text-align: left;
}
body.home section#testimonials > div,
body.home section#testimonials nav {
  z-index: 2;
}
body.home section#testimonials svg {
  position: absolute;
  top: 0;
  left: -15%;
  transform: scale(1.5);
  animation: rotateHeader 200s linear infinite;
  z-index: 1;
}
body.home footer {
  position: absolute;
  z-index: 2;
  width: 100%;
  bottom: 0;
}
body.resources {
  background: #138657;
}
body.resources main, body.resource main {
  padding: 0 0 60px;
  display: flex;
  flex-direction: column;
}
body.resources main nav, body.resource main nav {
  background: #138657;
  padding: 0 0 25px;
}
body.resources main nav h2, body.resource main nav h2 {
  margin: 0 25px 40px;
}
body.resources main nav select, body.resource main nav select {
  margin: 0 25px;
  width: calc(100% - 49px);
}
body.resources main nav div, body.resource main nav div {
  display: none;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
body.resources main nav div a, body.resource main nav div a {
  display: block;
  padding: 16px 0;
}
body.resources main section, body.resource main section {
  display: flex;
  justify-content: start;
  flex-direction: column;
  gap: 60px;
  min-height: calc(100vh - 250px);
  min-height: calc(var(--vh, 1vh) * 100 - 250px);
}
body.resources main section article, body.resource main section article {
  padding-top: 60px;
}
body.resources main section article div.resource-header, body.resource main section article div.resource-header {
  padding-bottom: 20px;
}
body.resources main section article div.resource-content, body.resource main section article div.resource-content {
  display: flex;
  justify-content: start;
  flex-direction: column;
  gap: 60px;
}
body.resources main section article div.list .list-item, body.resource main section article div.list .list-item {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 60px;
}
body.resources main section article div.list .list-item figure, body.resource main section article div.list .list-item figure {
  width: 50%;
}
body.resources main section article div.list .list-item figure img, body.resource main section article div.list .list-item figure img {
  width: 100%;
}
body.resources main section article div.list .list-item div h3 a:hover, body.resource main section article div.list .list-item div h3 a:hover {
  text-decoration: underline;
}
body.resources main section article div.list .list-item div h3, body.resource main section article div.list .list-item div h3 {
  margin-bottom: 0.5em;
}
body.resources main section article div.list .list-item div p, body.resources main section article div.list .list-item div ul, body.resources main section article div.list .list-item div ol, body.resource main section article div.list .list-item div p, body.resource main section article div.list .list-item div ul, body.resource main section article div.list .list-item div ol {
  margin-bottom: 1em;
}
body.resources main section article div.list .list-item div ul li, body.resource main section article div.list .list-item div ul li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  padding: 10px 0;
}
body.resources main section article div.list .list-item div ul li:last-child, body.resource main section article div.list .list-item div ul li:last-child {
  padding: 10px 0 0;
  border-bottom: none;
}
body.resources main section article div.list .list-item div p.sub, body.resource main section article div.list .list-item div p.sub {
  color: rgba(0, 0, 0, 0.6);
}
body.resources main section article div.text p, body.resources main section article div.text ul, body.resources main section article div.text ol, body.resource main section article div.text p, body.resource main section article div.text ul, body.resource main section article div.text ol {
  margin-bottom: 1em;
}
body.resources main section article div.text ul li, body.resource main section article div.text ul li {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  padding: 10px 0;
}
body.resources main section article div.text ul li:last-child, body.resource main section article div.text ul li:last-child {
  padding: 10px 0 0;
  border-bottom: none;
}
body.signup main, body.login main, body.password-reset main, body.account main {
  padding: 60px 0;
}
body.signup main section, body.login main section, body.password-reset main section, body.account main section {
  display: flex;
  justify-content: center;
  min-height: calc(100vh - 250px);
  min-height: calc(var(--vh, 1vh) * 100 - 250px);
}
body.signup main section .pms-form,
body.signup main section .pms-form-fields-wrapper,
body.signup main section .pms-account-section-wrapper, body.login main section .pms-form,
body.login main section .pms-form-fields-wrapper,
body.login main section .pms-account-section-wrapper, body.password-reset main section .pms-form,
body.password-reset main section .pms-form-fields-wrapper,
body.password-reset main section .pms-account-section-wrapper, body.account main section .pms-form,
body.account main section .pms-form-fields-wrapper,
body.account main section .pms-account-section-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}
body.signup main section form label,
body.signup main section form input, body.login main section form label,
body.login main section form input, body.password-reset main section form label,
body.password-reset main section form input, body.account main section form label,
body.account main section form input {
  display: block;
  width: 100%;
}
body.signup main section form .login-remember, body.login main section form .login-remember, body.password-reset main section form .login-remember, body.account main section form .login-remember {
  display: flex;
  gap: 8px;
}
body.signup main section form .login-remember input, body.login main section form .login-remember input, body.password-reset main section form .login-remember input, body.account main section form .login-remember input {
  width: auto;
}
body.signup main section form .login-extra, body.login main section form .login-extra, body.password-reset main section form .login-extra, body.account main section form .login-extra {
  display: flex;
  gap: 8px;
}
body.signup main section form .pms-subscription-plan, body.login main section form .pms-subscription-plan, body.password-reset main section form .pms-subscription-plan, body.account main section form .pms-subscription-plan {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
body.signup main section form .pms-subscription-plan label, body.login main section form .pms-subscription-plan label, body.password-reset main section form .pms-subscription-plan label, body.account main section form .pms-subscription-plan label {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
body.signup main section form .pms-subscription-plan label span.pms-subscription-plan-name, body.login main section form .pms-subscription-plan label span.pms-subscription-plan-name, body.password-reset main section form .pms-subscription-plan label span.pms-subscription-plan-name, body.account main section form .pms-subscription-plan label span.pms-subscription-plan-name {
  font-family: "AyerDeck-SemiBold", Garamond, serif;
  font-size: 36px;
  line-height: 36px;
  color: #000;
}
body.signup main section form .pms-subscription-plan label span.pms-subscription-plan-price .pms-divider:first-child, body.login main section form .pms-subscription-plan label span.pms-subscription-plan-price .pms-divider:first-child, body.password-reset main section form .pms-subscription-plan label span.pms-subscription-plan-price .pms-divider:first-child, body.account main section form .pms-subscription-plan label span.pms-subscription-plan-price .pms-divider:first-child {
  display: none;
}
body.signup main section form .pms-subscription-plan-auto-renew, body.login main section form .pms-subscription-plan-auto-renew, body.password-reset main section form .pms-subscription-plan-auto-renew, body.account main section form .pms-subscription-plan-auto-renew {
  margin-top: 24px;
}
body.signup main section form .pms-subscription-plan-auto-renew label, body.login main section form .pms-subscription-plan-auto-renew label, body.password-reset main section form .pms-subscription-plan-auto-renew label, body.account main section form .pms-subscription-plan-auto-renew label {
  display: flex;
  gap: 8px;
}
body.signup main section form .pms-subscription-plan-auto-renew label input, body.login main section form .pms-subscription-plan-auto-renew label input, body.password-reset main section form .pms-subscription-plan-auto-renew label input, body.account main section form .pms-subscription-plan-auto-renew label input {
  width: 24px;
}
body.signup .pms-credit-card-information h4 {
  display: none;
}
body.login main section, body.password-reset main section {
  height: 100%;
  align-items: center;
}
body.account main section {
  display: flex;
  flex-direction: column;
  gap: 120px;
}
body.account main section #pms_login {
  justify-content: center;
}
body.account main section h4 {
  display: none;
}
body.account main section p.pms-login-error,
body.account main section div.pms_success-messages-wrapper {
  width: 100%;
}
body.account nav a {
  text-transform: initial;
  font-size: 15px;
  line-height: 27px;
  letter-spacing: 0;
  color: rgba(0, 0, 0, 0.6);
}
body.account nav a.pms-account-navigation-link--active {
  color: rgb(0, 0, 0);
}
body.account table th,
body.account table td {
  text-align: left;
}
body.account table th {
  font-weight: normal;
  color: rgba(0, 0, 0, 0.6);
}
body.account table th,
body.account table td {
  padding: 0 0 32px;
}
body.account table.pms-account-subscription-details-table {
  display: block;
  width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 80px );
}
body.account table.pms-account-subscription-details-table td {
  display: block;
  clear: both;
}
body.account table.pms-account-subscription-details-table td:first-child {
  color: rgba(0, 0, 0, 0.6);
  width: 200px;
  padding-bottom: 8px;
}
body.account table.pms-account-subscription-details-table tr.pms-account-subscription-details-table__actions td:first-child {
  display: none;
}
body.account table.pms-account-subscription-details-table tr.pms-account-subscription-details-table__actions td {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 60px;
}
body.account table.pms-account-subscription-details-table tr.pms-account-subscription-details-table__actions td a {
  text-decoration: underline;
}
body.account table#pms-payment-history .pms-payment-id,
body.account table#pms-payment-history .pms-payment-subscription-plan,
body.account table#pms-payment-history .pms-payment-amount {
  display: none;
}
body.loading * {
  cursor: wait;
}
body.min > div#loader h1 > span.w {
  width: 0;
}
body.min > div#loader h1 > span.l {
  width: 40px;
}
body.modal {
  overflow: hidden;
}

/* 
 * media queries
 */
@media screen and (min-width: 1020px) {
  h1 {
    font-size: 192px;
  }
  h2 {
    font-size: 52px;
    line-height: 50px;
  }
  h3 {
    font-size: 36px;
    line-height: 36px;
  }
  body header {
    position: sticky;
    top: 0;
    background: #138657;
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ));
    padding: 40px 0 40px 40px;
  }
  body header h3 {
    margin: 0;
  }
  body > div#loader h1 > span.w:nth-of-type(1) {
    width: 255px;
  }
  body > div#loader h1 > span.w:nth-of-type(3) {
    width: 86px;
  }
  body > div#loader h1 > span.w:nth-of-type(5) {
    width: 192px;
  }
  body main section {
    padding: 0 40px;
  }
  body footer nav {
    padding: 25px 40px;
  }
  body.home main {
    padding: 240px 0 0;
  }
  body.home main > div#promo {
    /*
    position: sticky;
    display: inline-block;
    top: 40px;
    left: calc( 100% - 320px );
    z-index: 2;
    */
    padding: 0;
    position: fixed;
    bottom: 120px;
    right: 90px;
    z-index: 2;
    transform: initial;
  }
  body.home main > div#promo:hover {
    z-index: 7;
  }
  body.home main section h2, body.home main section p {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4 ) + ( ( 4 - 1 ) * 40px ));
  }
  body.home main section:not(#testimonials) {
    margin-left: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ) + 40px );
    margin-bottom: 150px;
  }
  body.home main section#about #teachers {
    height: 840px;
    margin: 120px 0 0;
  }
  body.home main section#about #teachers > div > figure {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2.6 ) + ( ( 2.6 - 1 ) * 40px ));
  }
  body.home main section#about #teachers > div:nth-of-type(1) > figure {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 3 ) + ( ( 3 - 1 ) * 40px ));
  }
  body.home main section#about #teachers > div aside {
    flex-direction: row;
    gap: 40px;
  }
  body.home main section#about #teachers > div aside figure {
    position: sticky;
    top: 0;
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4.5 ) + ( ( 4.5 - 1 ) * 40px ));
  }
  body.home main section#about #teachers > div aside figure img,
  body.home main section#about #teachers > div aside figure video {
    aspect-ratio: unset;
    height: 100%;
    object-fit: cover;
    object-position: top center;
  }
  body.home main section#about #teachers > div aside div {
    padding: 0;
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 3 ) + ( ( 3 - 1 ) * 40px ));
  }
  body.home main section#about #teachers > div aside div h2, body.home main section#about #teachers > div aside div p {
    width: 100%;
  }
  body.home main section#about #teachers > div aside div h2 {
    padding-top: 10vw;
  }
  body.home main section#about #teachers > div aside div p {
    padding-bottom: 10vw;
  }
  body.home main section#calendar #calendar-table {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 5 ) + ( ( 5 - 1 ) * 40px ));
  }
  body.home main section#calendar #calendar-table .class,
  body.home main section#calendar #calendar-table .event {
    gap: 40px;
  }
  body.home main section#calendar #calendar-table .class .date,
  body.home main section#calendar #calendar-table .event .date {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
  }
  body.home main section#calendar #calendar-table .class .wrapper,
  body.home main section#calendar #calendar-table .event .wrapper {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4 ) + ( ( 4 - 1 ) * 40px ));
    flex-direction: row;
  }
  body.home main section#calendar #calendar-table .class .wrapper .info,
  body.home main section#calendar #calendar-table .event .wrapper .info {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 3 ) + ( ( 3 - 1 ) * 40px ));
  }
  body.home main section#calendar #calendar-table .class .wrapper .action,
  body.home main section#calendar #calendar-table .event .wrapper .action {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
  }
  body.home main section#calendar #calendar-table .class .wrapper .action a,
  body.home main section#calendar #calendar-table .event .wrapper .action a {
    display: block;
    width: calc(100% - 2px);
    padding-left: 0;
    padding-right: 0;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-day {
    margin-left: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ) + 40px );
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson {
    padding-bottom: 0;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line {
    flex-direction: row;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-time {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
    position: relative;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-title {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 3 ) + ( ( 3 - 1 ) * 40px ));
    margin: 0;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-action {
    position: relative;
    bottom: auto;
    margin-left: 0;
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-line .momoyoga-lesson-action a {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
  }
  body.home main section#calendar #calendar-table .momoyoga-section .momoyoga-lessons .momoyoga-lesson .momoyoga-lesson-details {
    margin-left: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ) + 40px );
  }
  body.home main section#calendar #calendar-image {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 6 ) + ( ( 6 - 1 ) * 40px ));
  }
  body.home main section#testimonials {
    width: calc(100% - 80px);
    align-items: center;
  }
  body.home main section#testimonials nav {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4 ) + ( ( 4 - 1 ) * 40px ));
  }
  body.resources main, body.resource main {
    padding: 0 40px 0 0;
    flex-direction: row;
    gap: 40px;
  }
  body.resources main nav, body.resource main nav {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ));
    height: calc(100vh - 250px);
    height: calc(var(--vh, 1vh) * 100 - 250px);
    padding: 80px 0 40px 40px;
    position: sticky;
    top: 116px;
  }
  body.resources main nav h2, body.resource main nav h2 {
    margin: 0 0 40px;
  }
  body.resources main nav select, body.resource main nav select {
    display: none;
  }
  body.resources main nav div, body.resource main nav div {
    display: block;
    padding-top: 24px;
  }
  body.resources main section, body.resource main section {
    padding: 80px 0;
  }
  body.resources main section article, body.resource main section article {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 5 ) + ( ( 5 - 1 ) * 40px ));
    padding-top: 0;
  }
  body.resources main section article div.resource-header, body.resource main section article div.resource-header {
    padding-bottom: 40px;
  }
  body.resources main section article div.list .list-item, body.resource main section article div.list .list-item {
    flex-direction: row;
    margin-bottom: 60px;
  }
  body.resources main section article div.list .list-item figure, body.resource main section article div.list .list-item figure {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
  }
  body.resources main section article div.list .list-item > div, body.resource main section article div.list .list-item > div {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4 ) + ( ( 4 - 1 ) * 40px ));
  }
  body.resources main section article div.text, body.resource main section article div.text {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 4 ) + ( ( 4 - 1 ) * 40px ));
  }
  body.resources footer, body.resource footer {
    width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 40px );
    background: #138657;
  }
  body.resources header,
  body.resources main nav,
  body.resources footer {
    border-right: 1px solid rgba(0, 0, 0, 0.15);
  }
  body.resources main section article {
    margin-left: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ) + 40px );
  }
  body.resources main section {
    padding-top: 170px;
  }
  body.resources main section h3 {
    padding-top: 40px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
  }
  body.signup main, body.login main, body.password-reset main, body.account main {
    padding: 120px 0;
  }
  body.signup main section, body.login main section, body.password-reset main section, body.account main section {
    min-height: calc(100vh - 370px);
    min-height: calc(var(--vh, 1vh) * 100 - 370px);
  }
  body.signup main section .pms-form,
  body.signup main section .pms-form-fields-wrapper, body.login main section .pms-form,
  body.login main section .pms-form-fields-wrapper, body.password-reset main section .pms-form,
  body.password-reset main section .pms-form-fields-wrapper, body.account main section .pms-form,
  body.account main section .pms-form-fields-wrapper {
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ));
    min-width: 400px;
  }
  body.signup main section #pms_login, body.login main section #pms_login, body.password-reset main section #pms_login, body.account main section #pms_login {
    margin: 0 auto;
    width: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ));
    min-width: 400px;
  }
  body.signup main section .pms_edit-profile-form, body.login main section .pms_edit-profile-form, body.password-reset main section .pms_edit-profile-form, body.account main section .pms_edit-profile-form {
    width: 100%;
  }
  body.account main section {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: start;
    gap: calc(( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 1 ) + ( ( 1 - 1 ) * 40px ));
  }
  body.account main section nav {
    width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 40px );
  }
  body.account main section table {
    width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 80px );
  }
  body.account main section .pms-form {
    width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 80px );
  }
  body.account main section #pms_edit-profile-form .pms-form-fields-wrapper {
    width: calc( ( ( ( 100vw - ( ( 8 - 1 ) * 40px ) - ( 2 * 40px ) ) / 8 ) * 2 ) + ( ( 2 - 1 ) * 40px ) + 80px );
  }
  body.account main section #pms-retry-payment-subscription-form {
    margin: 0 auto;
  }
  body.min > div#loader h1 > span.w {
    width: 0;
  }
  body.min > div#loader h1 > span.l {
    width: 96px;
  }
}

/*# sourceMappingURL=style.css.map */
