@charset "UTF-8";

html {
  box-sizing: border-box;
  vertical-align: baseline;
  scroll-behavior: smooth;
  position: relative;
  min-height: 100dvh
}

* {
  margin: 0;
  padding: 0;
  outline: none;
  font-family: inherit;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  word-wrap: break-word;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  text-size-adjust: none;
  box-sizing: inherit;
  -webkit-tap-highlight-color: transparent
}

img {
  max-width: 100%;
  display: block
}

ul {
  list-style: none
}

li:empty,
p:empty {
  display: none
}

textarea,
select,
input,
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: inherit;
  background: transparent;
  border: none
}

.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 10px 40px;
  min-width: 160px;
  min-height: 44px;
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A;
  border-radius: 23px;
  text-decoration: none;
  text-align: center;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px;
  line-height: 130%;
  transition: all .3s cubic-bezier(.455, .03, .515, .955);
  cursor: pointer !important
}

.button:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03)
}

.button:active,
.button:focus {
  transform: scale(0.97)
}

.button:disabled {
  opacity: 50%
}

.button-outlined {
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A
}

.button-outlined:hover {
  opacity: 1;
  background: rgba(211, 243, 138, 0.12);
  color: #D3F38A !important;
  transform: scale(1.03)
}

.button-outlined:active,
.button-outlined:focus {
  transform: scale(0.97)
}

.button-small {
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 18px;
  letter-spacing: 1.2px;
  min-height: 36px;
  min-width: 120px;
  padding: 6px 24px
}

.button-small:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03)
}

.button-small:active,
.button-small:focus {
  transform: scale(0.97)
}

.button-small-outlined {
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 18px;
  letter-spacing: 1.2px;
  min-height: 36px;
  min-width: 120px;
  padding: 6px 24px
}

.button.disabled {
  pointer-events: none
}

html {
  font-size: 17px;
  font-family: Inter, sans-serif;
  line-height: 100%
}

h1,
.h1 {
  font: 300 4.706rem/90% Cormorant, serif;
  letter-spacing: -.05em
}

h2,
.h2 {
  font: 300 2.353rem/90% Cormorant, serif;
  letter-spacing: -.05em
}

h2 {
  margin-bottom: 1rem
}

h3,
.h3 {
  font: 600 1rem/130% Inter, sans-serif;
  margin-bottom: .8rem;
  letter-spacing: .1em;
  text-transform: uppercase
}

h4,
.h4 {
  font: 400 1.412rem/130% Cormorant, serif;
  margin-bottom: .8rem;
  letter-spacing: -.05em
}

h5,
.h5 {
  font: 600 .8rem/110% Cormorant, serif;
  margin-bottom: .6rem
}

h6,
.h6 {
  font: 600 .8rem/130% Cormorant, serif;
  margin-bottom: .6rem
}

p {
  font: 400 1rem/130% Inter, sans-serif
}

p:not(:last-child) {
  margin-bottom: 1.2rem
}

.p-small {
  font: 400 .765rem/120% Inter, sans-serif
}

.p-small:not(:last-child) {
  margin-bottom: 1.2rem
}

.small-caps {
  font: 600 .8rem/130% Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: .1rem
}

blockquote {
  border-left: 5px solid #eff6e7;
  margin: 1.5em 10px;
  padding: .5em 10px;
  quotes: "“" "”" "‘" "’"
}

ol {
  padding-left: 15px;
  margin-bottom: 24px
}

ol li {
  line-height: 2em
}

#CybotCookiebotDialogPoweredbyCybot,
#CybotCookiebotDialogPoweredByText,
#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogPoweredbyCybot {
  display: none !important
}

html {
  margin-top: 0 !important;
  overflow-x: hidden;
  height: -webkit-fill-available
}

#wpadminbar {
  opacity: .1
}

#wpadminbar:hover {
  opacity: 1
}

body {
  color: #eff6e7;
  min-height: 100dvh;
  min-height: -webkit-fill-available;
  background: #102016
}

p,
.p-small,
li:not(.menu-item),
blockquote,
td {
  text-align: justify
}

.zodiac-list-block p,
.zodiac-list-block .p-small,
.zodiac-list-block li,
.hero-block p,
.hero-block .p-small,
.above-heading p,
.above-heading .p-small,
.horoscope-player-section p,
.horoscope-player-section .p-small,
.generic-player-block p,
.generic-player-block .p-small,
.sign-up-form-block p,
.sign-up-form-block .p-small,
.payment-confirmation-block p,
.reset-password-message p,
.sign-up-link p,
.signup-process-wrapper p,
.select-birthday-block p,
.select-plan-block p,
.cards-block p,
.cards-block .p-small,
.footer p,
.footer .p-small,
.footer-block p,
.footer-block .p-small,
.meditation-content-card p,
.meditation-content-card .p-small,
.meditation-controls p {
  text-align: center
}

body.no-scroll {
  height: 100dvh;
  overflow-y: hidden
}

body.light-mode {
  background: #d9d9d9
}

body.light-mode a:not(.menu-item a),
body.light-mode p,
body.light-mode span,
body.light-mode .heading,
body.light-mode .above-heading,
body.light-mode .h1,
body.light-mode .h2,
body.light-mode .h3,
body.light-mode .h4,
body.light-mode .h5,
body.light-mode .h6,
body.light-mode li:not(.menu-item),
body.light-mode .small-caps,
body.light-mode .p-small,
body.light-mode svg,
body.light-mode path,
body.light-mode circle,
body.light-mode rect,
body.light-mode polygon,
body.light-mode .block-title {
  color: #2d483c !important
}

body.light-mode .button-block .button {
  color: #D3F38A !important
}

body.light-mode .play-pause-svg .play-triangle path {
  fill: #2d483c !important
}

body.light-mode .play-pause-svg circle {
  stroke: #2d483c !important
}

body.light-mode .play-pause-svg .pause-bars rect {
  fill: #2d483c !important
}

body.light-mode .accordions-block .accordions-list .accordions-item {
  background-image: -webkit-repeating-linear-gradient(left, #2d483c, #2d483c 1px, transparent 1px, transparent 9px);
  background-image: repeating-linear-gradient(90deg, #2d483c, #2d483c 1px, transparent 1px, transparent 9px)
}

body.light-mode .hero-block span,
body.light-mode .hero-block .above-heading,
body.light-mode .hero-block .heading {
  color: #eff6e7 !important
}

.background-overlay {
  position: fixed;
  top: 0;
  left: 0;
  background: #00000080;
  width: 100%;
  height: 100%;
  z-index: -1;
  opacity: 0;
  cursor: pointer
}

.background-overlay.active {
  opacity: 1;
  z-index: 9999
}

.background-overlay.top {
  z-index: 999999
}

.background {
  background: #102016;
  height: 100%;
  inset: 0;
  position: fixed;
  width: 100%;
  z-index: -1;
  min-height: 100dvh;
  min-height: -webkit-fill-available
}

.background .shape {
  position: fixed;
  width: 100%;
  height: 100dvh;
  min-height: -webkit-fill-available;
  opacity: var(--opacity, .5);
  background: -webkit-radial-gradient(var(--x1, 65%) var(--y1, 40%), ellipse 800px 600px, rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, .05) 40%, transparent 70%), -webkit-radial-gradient(var(--x2, 85%) var(--y2, 55%), ellipse 600px 800px, rgba(255, 255, 255, .12) 0%, rgba(255, 255, 255, .03) 50%, transparent 80%), -webkit-radial-gradient(var(--x3, 75%) var(--y3, 35%), ellipse 500px 400px, rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .02) 45%, transparent 70%), -webkit-radial-gradient(var(--x4, 90%) var(--y4, 65%), ellipse 400px 500px, rgba(255, 255, 255, .08) 0%, transparent 60%), -webkit-radial-gradient(var(--x5, 70%) var(--y5, 50%), ellipse 300px 400px, rgba(255, 255, 255, .06) 0%, transparent 65%), -webkit-linear-gradient(left, rgba(255, 255, 255, .01) 0%, rgba(255, 255, 255, .03) 40%, rgba(255, 255, 255, .06) 80%, rgba(255, 255, 255, .08) 100%);
  background: radial-gradient(ellipse 800px 600px at var(--x1, 65%) var(--y1, 40%), rgba(255, 255, 255, .15) 0%, rgba(255, 255, 255, .05) 40%, transparent 70%), radial-gradient(ellipse 600px 800px at var(--x2, 85%) var(--y2, 55%), rgba(255, 255, 255, .12) 0%, rgba(255, 255, 255, .03) 50%, transparent 80%), radial-gradient(ellipse 500px 400px at var(--x3, 75%) var(--y3, 35%), rgba(255, 255, 255, .1) 0%, rgba(255, 255, 255, .02) 45%, transparent 70%), radial-gradient(ellipse 400px 500px at var(--x4, 90%) var(--y4, 65%), rgba(255, 255, 255, .08) 0%, transparent 60%), radial-gradient(ellipse 300px 400px at var(--x5, 70%) var(--y5, 50%), rgba(255, 255, 255, .06) 0%, transparent 65%), linear-gradient(90deg, #ffffff03, #ffffff08, #ffffff0f 80%, #ffffff14);
  mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, .3) 5%, rgba(0, 0, 0, .7) 10%, black 15%, black 85%, rgba(0, 0, 0, .7) 90%, rgba(0, 0, 0, .3) 95%, transparent 100%);
  -webkit-mask-image: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, .3) 5%, rgba(0, 0, 0, .7) 10%, black 15%, black 85%, rgba(0, 0, 0, .7) 90%, rgba(0, 0, 0, .3) 95%, transparent 100%);
  --x1: 65%;
  --y1: 40%;
  --x2: 85%;
  --y2: 55%;
  --x3: 75%;
  --y3: 35%;
  --x4: 90%;
  --y4: 65%;
  --x5: 70%;
  --y5: 50%;
  transition: opacity .3s ease-out, --x1 2s ease-out, --y1 2s ease-out, --x2 2.5s ease-out, --y2 2.5s ease-out, --x3 1.8s ease-out, --y3 1.8s ease-out, --x4 2.2s ease-out, --y4 2.2s ease-out, --x5 2.1s ease-out, --y5 2.1s ease-out
}

img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: inline-block
}

img.alignleft {
  float: left;
  margin: 1.6rem 1.6rem 1.6rem 0
}

img.aligncenter {
  margin: 1.6rem auto
}

img.alignright {
  float: right;
  margin: 1.6rem 0 1.6rem 1.6rem
}

a {
  color: #eff6e7;
  font-size: 1rem;
  line-height: 130%;
  text-decoration: none;
  -webkit-transition: all .3s cubic-bezier(.455, .03, .515, .955);
  transition: all .3s cubic-bezier(.455, .03, .515, .955)
}

a:hover {
  opacity: 75%
}

a:focus,
a:active {
  opacity: 50%
}

a.underlined {
  text-decoration: underline;
  text-underline-offset: 4px
}

a.underlined:hover {
  opacity: 75%
}

a.underlined:focus,
a.underlined:active {
  opacity: 50%
}

p a {
  text-decoration: underline
}

.hidden {
  display: none !important
}

.padding-m {
  padding-top: 33px
}

.padding-l {
  padding-top: 93px
}

.padding-xl {
  padding-top: 130px
}

[data-aos=fade-up],
[data-aos=fade-right],
[data-aos=fade-left] {
  opacity: 0
}

[data-aos=fade-right] {
  -webkit-transform: translateX(-50px);
  transform: translate(-50px)
}

[data-aos=fade-left] {
  -webkit-transform: translateX(50px);
  transform: translate(50px)
}

a:focus-visible,
button:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid #eff6e7;
  outline-offset: 2px
}

*:focus:not(:focus-visible) {
  outline: none
}

button,
input[type=submit],
input[type=button] {
  cursor: pointer
}

input[type=checkbox] {
  position: absolute;
  opacity: 0;
  pointer-events: none
}

input[type=checkbox]:focus-visible+label:before {
  outline: 2px solid #eff6e7;
  outline-offset: 2px;
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px #eff6e7
}

input[type=checkbox]:focus+label:before,
input[type=checkbox]:focus-visible+label:before {
  outline: 2px solid #eff6e7;
  outline-offset: 2px
}

input.readonly-field[readonly] {
  pointer-events: none
}

.edit-action__tooltip:focus-visible {
  outline: 2px solid #eff6e7;
  outline-offset: 2px
}

main {
  min-height: calc(100vh - 208px);
  padding-bottom: 200px
}

main.sign-in-page {
  min-height: calc(100vh - 60px);
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

@media(min-width:1025px) {
  main.sign-in-page {
    min-height: calc(100vh - 104px)
  }

  main.sign-in-page:not(.account-details-page) {
    max-width: 445px;
    margin-left: auto;
    margin-right: auto
  }
}

main.sign-up-page {
  min-height: calc(100vh - 120px)
}

main.sign-up-page .sign-up-form__form {
  padding-bottom: 45px
}

main.sign-up-page .sign-up-form-block {
  min-height: calc(100vh - 120px)
}

.container,
.wp-block-pmpro-billing-page {
  width: 100%;
  padding: 0px !important;
  margin: 0 auto;
  max-width: 100%
}

@media(min-width:1025px) {

  .container,
  .wp-block-pmpro-billing-page {
    max-width: 935px
  }
}

@media(min-width:1025px) {
  .wp-block-pmpro-billing-page {
    max-width: 445px
  }
}

.wp-block-columns {
  gap: 0
}

@media(min-width:1025px) {
  .wp-block-columns {
    max-width: 935px;
    margin: 45px auto;
    gap: 45px
  }
}

@media(min-width:1025px) {
  .wp-block-columns .wp-block-column {
    background: #ffffff0a;
    padding: 45px;
    border-radius: 10px
  }
}

@media(min-width:1025px) {
  .wp-block-columns .wp-block-column .container {
    padding: 0
  }
}

@media(min-width:1025px) {
  .wp-block-columns:has(:not(.wp-block-column:nth-child(2))) {
    -webkit-box-pack: center;
    justify-content: center
  }

  .wp-block-columns:has(:not(.wp-block-column:nth-child(2))):last-child {
    margin-top: 45px
  }
}

.wp-block-columns:last-child {
  margin-top: 0
}

.flex {
  display: -webkit-box;
  display: flex
}

.flex--justify-center {
  -webkit-box-pack: center;
  justify-content: center
}

.flex--justify-between {
  -webkit-box-pack: justify;
  justify-content: space-between
}

.flex--items-center {
  -webkit-box-align: center;
  align-items: center
}

.flex--items-start {
  -webkit-box-align: start;
  align-items: flex-start
}

.flex--flex-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  flex-flow: row wrap
}

.flex--column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

.flex--gap-10 {
  gap: 10px
}

@media(min-width:1025px) {

  .wp-block-pmpro-checkout-page,
  .confirmation-content,
  .edit-account-page,
  #pmpro_billing-2,
  .share-with-a-friend-block {
    max-width: 485px;
    margin-left: auto;
    margin-right: auto
  }
}

@media(min-width:1025px) {
  .account-details-page .user-profile {
    display: -webkit-box;
    display: flex;
    gap: 45px;
    margin-bottom: 45px
  }

  .account-details-page .divider-block:nth-child(1) {
    display: none
  }

  .account-details-page .user-details {
    margin-top: 35px
  }

  .account-details-page .user-profile__left,
  .account-details-page .user-profile__right {
    width: 445px;
    background: #ffffff0a;
    padding: 45px 70px;
    border-radius: 10px
  }
}

html.page-transitioning,
body.page-transitioning {
  background-color: #102016
}

main,
footer {
  -webkit-transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19);
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19)
}

main.page-exit,
footer.page-exit {
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px);
  opacity: 0
}

body {
  -webkit-transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19);
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19);
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19)
}

body.page-exit {
  -webkit-transform: translateY(-50px);
  transform: translateY(-50px);
  opacity: 0
}

body.animating,
body.animating * {
  pointer-events: none
}

body.page-exit {
  -webkit-transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important
}

main.page-exit {
  -webkit-transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19) !important;
  transition: transform .3s cubic-bezier(.55, .055, .675, .19), opacity .3s cubic-bezier(.55, .055, .675, .19), -webkit-transform .3s cubic-bezier(.55, .055, .675, .19) !important
}

@media(prefers-reduced-motion:reduce) {

  body,
  main {
    -webkit-transition: none;
    transition: none
  }

  body.page-exit,
  main.page-exit {
    -webkit-transition: none;
    transition: none;
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
    opacity: 0
  }
}

.header {
  width: 100%;
  background: transparent;
  position: relative;
  z-index: 99999;
  height: 60px
}

.header.nav-open {
  background: #2d483c
}

@media(min-width:1025px) {
  .header {
    position: relative;
    height: 104px;
    z-index: 9998
  }
}

.header .wrapper {
  width: 100%;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-align: center;
  align-items: center;
  height: 60px;
  position: relative;
  z-index: 2
}

@media(min-width:1025px) {
  .header .wrapper {
    height: 104px
  }
}

.header .mobile-toggle {
  height: auto;
  display: block;
  position: relative;
  cursor: pointer
}

.header .mobile-toggle.active span:nth-of-type(1) {
  top: 14px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg)
}

.header .mobile-toggle.active span:nth-of-type(2) {
  width: 0
}

.header .mobile-toggle.active span:nth-of-type(3) {
  bottom: 13px;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg)
}

.header .mobile-toggle .nav-toggle {
  background: none;
  border: none;
  cursor: pointer;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}

.header .mobile-toggle .nav-toggle:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.header .mobile-toggle .nav-toggle .icon-svg {
  width: 28px;
  height: 19px;
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.header .mobile-toggle .nav-toggle .top-line {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  -webkit-transform-origin: center;
  transform-origin: center
}

.header .mobile-toggle .nav-toggle .middle-line-1,
.header .mobile-toggle .nav-toggle .middle-line-2 {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  opacity: 1
}

.header .mobile-toggle .nav-toggle .bottom-line {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  -webkit-transform-origin: center;
  transform-origin: center
}

.header .mobile-toggle .nav-toggle .center-circle {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  opacity: 1;
  -webkit-transform-origin: center;
  transform-origin: center
}

.header .mobile-toggle .nav-toggle .close-circle {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: center;
  transform-origin: center
}

.header .mobile-toggle .nav-toggle.open .icon-svg {
  width: 22px;
  height: 22px
}

.header .mobile-toggle .nav-toggle.open .top-line {
  -webkit-transform: translate(-6px, 6px) rotate(45deg) scaleX(.644);
  transform: translate(-6px, 6px) rotate(45deg) scaleX(.644)
}

.header .mobile-toggle .nav-toggle.open .bottom-line {
  -webkit-transform: translate(-6px, -7px) rotate(-45deg) scaleX(.644);
  transform: translate(-6px, -7px) rotate(-45deg) scaleX(.644)
}

.header .mobile-toggle .nav-toggle.open .middle-line-1,
.header .mobile-toggle .nav-toggle.open .middle-line-2,
.header .mobile-toggle .nav-toggle.open .center-circle {
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0)
}

.header .mobile-toggle .nav-toggle.open .close-circle {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}

.back-button {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: inline-block
}

.back-button:hover {
  opacity: .8
}

.main-nav {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  background: #2d483c;
  position: fixed;
  right: 0;
  top: 0;
  padding-top: 60px;
  z-index: 9999;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out;
  -webkit-transform: translate(100%, 0);
  transform: translate(100%);
  opacity: 0
}

@media(min-width:1025px) {
  .main-nav {
    max-width: 390px;
    z-index: 9999;
    padding-top: 40px
  }
}

.main-nav.active {
  -webkit-transform: translate(0, 0);
  transform: translate(0);
  opacity: 1;
  overflow-y: scroll
}

.main-nav ul {
  padding: 40px 20px 0;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 35px
}

@media(min-width:1025px) {
  .main-nav ul {
    padding-top: 0
  }
}

.main-nav ul li a {
  font: 300 2.353rem/90% Inter, sans-serif;
  letter-spacing: -.05rem;
  width: 100%;
  display: inline-block
}

.main-nav__desktop {
  display: none;
  padding: 18px 20px;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  width: 100%
}

@media(min-width:1025px) {
  .main-nav__desktop {
    display: -webkit-box;
    display: flex
  }
}

.main-nav__close {
  padding: 14px;
  cursor: pointer;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center
}

.user-details {
  padding-left: 20px;
  margin-bottom: 4.118rem;
  margin-top: 4.118rem
}

.user-details .flex {
  gap: 17px
}

.user-details__zodiac {
  border: 1px solid #eff6e7;
  border-radius: 50%;
  padding: 14px
}

.user-details__zodiac img {
  width: 42px
}

.user-details__name {
  display: -webkit-box;
  display: flex;
  gap: 5px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

.user-details__name span {
  font-family: Cormorant, serif;
  font-size: 1.4117647059rem;
  letter-spacing: -.05rem;
  line-height: 90%
}

.user-details__birthday,
.user-details__sign {
  font: 600 .8rem/130% Inter, sans-serif;
  letter-spacing: .1rem;
  font-weight: 600;
  text-transform: uppercase
}

.footer {
  position: relative;
  background: #2d483c;
  padding: 80px 20px 34px
}

@media(min-width:1025px) {
  .footer {
    padding: 133px 40px 34px
  }
}

.footer__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  width: 100%;
  margin: 0 auto
}

.footer__logo {
  margin-bottom: 22px
}

.footer__logo a {
  display: inline-block;
  line-height: 0
}

.footer__logo img {
  width: 220px;
  height: auto
}

@media(min-width:1025px) {
  .footer__logo img {
    width: 280px
  }
}

.footer__tagline {
  font-family: 'Inter', sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: 15px;
  line-height: 22px;
  color: #fff;
  margin: 0 0 60px;
  text-align: center
}

@media(min-width:1025px) {
  .footer__tagline {
    font-size: 17px;
    line-height: 22.1px;
    margin-bottom: 80px
  }
}

.footer__nav {
  width: 100%;
  max-width: 1230px;
  margin-left: auto;
  margin-right: auto
}

.footer__nav-list {
  list-style: none;
  margin: 80px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px 40px
}

@media(min-width:1025px) {
  .footer__nav-list {
    justify-content: space-between;
    gap: 30px
  }
}

.footer__nav-list li {
  list-style: none
}

.footer__nav-list li a {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 22px;
  color: #d3f38a;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.3s ease
}

@media(min-width:1025px) {
  .footer__nav-list li a {
    font-size: 17px;
    line-height: 22.1px
  }
}

.footer__nav-list li a:hover {
  opacity: 0.7
}

.footer .scroll-to-top-fab {
  width: 3.2352941176rem;
  height: 3.2352941176rem;
  position: absolute;
  bottom: 1.1764705882rem;
  right: 1.1764705882rem;
  background-color: #5c725c;
  border: none;
  border-radius: 50%;
  padding: 15px;
  -webkit-transition: opacity .3s ease-in-out;
  transition: opacity .3s ease-in-out;
  cursor: pointer
}

.footer .scroll-to-top-fab svg {
  width: 26px
}

.hero-block {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 200px;
  padding-bottom: 30px;
  position: relative;
  border-radius: 5px;
  min-height: auto;
  margin-top: -90px;
  z-index: 1
}

/* When the hero is placed inside a WP Columns block, break it out to full width */
.wp-block-columns:has(.hero-block),
.wp-block-column:has(.hero-block) {
  overflow: visible
}

.wp-block-column>.hero-block {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  border-radius: 0
}

@media(min-width:1025px) {
  .hero-block {
    padding-top: 280px;
    padding-bottom: 50px;
    margin-top: -220px
  }
}


.hero-block__overlay {
  content: "";
  background: rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  border-radius: 5px
}

/* When the hero has no background image, hide the dark overlay */
.hero-block.no-bg-image .hero-block__overlay {
  display: none
}

.hero-block__content {
  position: relative;
  z-index: 2
}

.hero-block .above-heading {
  margin-bottom: 14px
}

.hero-block .heading span {
  display: inline;
  font-style: italic
}

.hero-block .heading.centered {
  text-align: center
}

.hero-block .hero-details-wrapper.user-profile {
  margin-top: 0
}

.hero-block .hero-details-wrapper .user-details {
  margin-top: 24px;
  margin-bottom: 15px
}

.content-block {
  padding-top: 25px;
  padding-bottom: 25px
}

.content-block.remove-spacing {
  padding-top: 0;
  padding-bottom: 0
}

.content-block h1,
.content-block h2,
.content-block h3,
.content-block h4,
.content-block h5,
.content-block h6 {
  margin-bottom: 25px
}

.content-block p.text-above-heading {
  font-size: 14px;
  line-height: 140%;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 12px;
  margin-top: 0
}

.content-block ul {
  list-style: disc;
  padding-left: 17px
}

.content-block ul li {
  line-height: 1.7
}

.content-block ol {
  padding-left: 20px
}

.content-block ol li {
  line-height: 1.7
}

.generic-player-block {
  padding-bottom: 25px;
  padding-top: 25px
}

.generic-player-block .flex {
  gap: 14px
}

.generic-player-block .file-data__title {
  margin-bottom: 0
}

.generic-player-block .file-data__duration .duration {
  font-size: .7647058824rem;
  line-height: 120%;
  opacity: .5
}

.play-pause-btn {
  background: none;
  border: none;
  cursor: pointer;
  -webkit-transition: -webkit-transform .2s ease;
  transition: -webkit-transform .2s ease;
  transition: transform .2s ease;
  transition: transform .2s ease, -webkit-transform .2s ease
}

.play-pause-btn.paused .play-triangle {
  opacity: 0;
  -webkit-transform: scale(.8) rotate(90deg);
  transform: scale(.8) rotate(90deg)
}

.play-pause-btn.paused .pause-bars {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}

.play-pause-btn:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05)
}

.play-pause-btn:active {
  -webkit-transform: scale(.95);
  transform: scale(.95)
}

.icon-container {
  width: 68px;
  height: 68px;
  position: relative
}

.play-pause-svg {
  width: 100%;
  height: 100%;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}

.circle {
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}

.play-triangle {
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1);
  -webkit-transform-origin: center;
  transform-origin: center
}

.pause-bars {
  opacity: 0;
  -webkit-transition: all .4s cubic-bezier(.4, 0, .2, 1);
  transition: all .4s cubic-bezier(.4, 0, .2, 1)
}

.sticky-player {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 74px;
  background: #1d3827;
  background: -webkit-linear-gradient(left, rgb(29, 56, 39) 0%, rgb(74, 104, 86) 100%);
  background: linear-gradient(90deg, #1d3827, #4a6856);
  z-index: 9999999999;
  -webkit-transition: visibility .2s, opacity .2s linear;
  transition: visibility .2s, opacity .2s linear
}

.sticky-player.active {
  visibility: visible;
  opacity: 1
}

.sticky-player__record {
  padding: 0 20px
}

.sticky-player__record span {
  display: block
}

.sticky-player__record-title {
  text-transform: uppercase;
  font-weight: 600;
  font-size: .8235294118rem;
  line-height: 130%;
  letter-spacing: .1rem
}

.sticky-player__record-author {
  font-size: .7647058824rem;
  color: #e1f7b080;
  line-height: 120%
}

.sticky-player__record-controls {
  gap: 14px
}

.sticky-player .play-pause-btn {
  padding: 0
}

.sticky-player .play-pause-btn .play-triangle {
  -webkit-transform: scale(2.75);
  transform: scale(2.75)
}

.sticky-player .play-pause-btn .pause-bars {
  -webkit-transform: scale(.95);
  transform: scale(.95)
}

.sticky-player .play-pause-btn svg {
  width: 16px
}

.sticky-player .play-pause-btn .circle {
  display: none
}

.sticky-player .close-btn button {
  cursor: pointer
}

.sticky-player__progress {
  width: 100%;
  height: 10px;
  background: #2d483c;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  margin-bottom: 15px
}

.sticky-player__progress:hover .progress-handle {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(1.1);
  transform: translate(-50%, -50%) scale(1.1)
}

.sticky-player__progress .progress-fill {
  height: 100%;
  background: #bfccb0;
  border-radius: 3px;
  width: 0%;
  -webkit-transition: width .1s ease;
  transition: width .1s ease;
  position: relative;
  overflow: hidden
}

.sticky-player__progress .progress-fill:after {
  content: "";
  position: absolute;
  inset: 0;
  background: -webkit-linear-gradient(left, transparent 30%, rgba(255, 255, 255, .4) 50%, transparent 70%);
  background: linear-gradient(90deg, transparent 30%, rgba(255, 255, 255, .4) 50%, transparent 70%);
  -webkit-transform: translateX(-100%);
  transform: translate(-100%);
  -webkit-animation: shimmer 2s infinite;
  animation: shimmer 2s infinite
}

@-webkit-keyframes shimmer {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translate(-100%)
  }

  to {
    -webkit-transform: translateX(100%);
    transform: translate(100%)
  }
}

@keyframes shimmer {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translate(-100%)
  }

  to {
    -webkit-transform: translateX(100%);
    transform: translate(100%)
  }
}

.sticky-player__progress .progress-handle {
  position: absolute;
  top: 50%;
  left: 0%;
  width: 20px;
  height: 10px;
  background: #eff6e7;
  border-radius: 5px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  cursor: pointer;
  opacity: 1;
  -webkit-transition: all .2s ease;
  transition: all .2s ease
}

.sticky-player__progress .progress-handle:hover {
  box-shadow: 0 4px 12px #0000004d
}

.cards-block {
  padding-top: 25px;
  padding-bottom: 25px
}

.cards-block .flex {
  flex-wrap: wrap;
  gap: 20px 10px
}

@media(min-width:1025px) {
  .cards-block .flex {
    gap: 20px
  }
}

.cards-block__item {
  flex-basis: calc(50% - 5px)
}

@media(min-width:1025px) {
  .cards-block__item {
    flex-basis: calc(50% - 10px)
  }
}

.cards-block__item--image {
  border-radius: 5px;
  border: 1px solid #e1f7b0;
  position: relative;
  margin-bottom: 4px
}

.cards-block__item--image img {
  width: 100%;
  height: 120px;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  border-radius: 5px;
  display: block
}

.cards-block__item--image:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: #e1f7b01a;
  width: 100%;
  height: 100%
}

.cards-block__item--link.flex {
  gap: 6px
}

.cards-block__item--link {
  opacity: 50%;
  font-size: .7647058824rem;
  line-height: 120%
}

.cards-block__item--title {
  font-size: 13px
}

.cards-block__item--title.small-caps {
  font-size: 14px
}

.post-card-block {
  padding-top: 25px;
  padding-bottom: 25px
}

.post-card-block__item .flex {
  gap: 25px
}

.post-card-block__item--image img {
  width: 100%;
  height: 210px;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px
}

/* ── Meditation: image-background cards ── */
.post-card-block__item--meditation {
  display: flex;
  flex-direction: column;
  gap: 80px
}

.post-card-block__item--meditation .flex {
  gap: 8px
}

.post-card-block__item--meditation a {
  position: relative;
  justify-content: flex-start;
  border-radius: 10px;
  overflow: hidden;
  min-height: 280px;
  padding: 40px 36px;
  margin-bottom: 60px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  text-decoration: none
}

@media(min-width:1025px) {
  .post-card-block__item--meditation a {
    min-height: 303px;
    padding: 48px 44px
  }
}

.post-card-block__item--meditation a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 1
}

.post-card-block__item--meditation .post-card-block__item--image {
  display: none
}

.post-card-block__item--meditation .post-card-block__item--title {
  position: relative;
  z-index: 2;
  font-family: 'Cormorant', serif !important;
  font-weight: 300 !important;
  font-size: 40px !important;
  line-height: 0.9 !important;
  letter-spacing: -0.05em !important;
  color: #eff6e7 !important;
  margin-bottom: 8px
}

@media(min-width:768px) {
  .post-card-block__item--meditation .post-card-block__item--title {
    font-size: 54px !important
  }
}

@media(min-width:1025px) {
  .post-card-block__item--meditation .post-card-block__item--title {
    font-size: 67px !important
  }
}

.post-card-block__item--meditation .post-card-block__item--title em,
.post-card-block__item--meditation .post-card-block__item--title i {
  font-style: italic;
  font-weight: 300
}

.post-card-block__item--meditation .post-card-block__item--duration {
  display: none
}

.post-card-block__item--meditation .post-card-block__item--excerpt,
.post-card-block__item--meditation .post-card-block__item--label,
.post-card-block__item--meditation .post-card-block__item--eyebrow {
  display: none
}

.post-card-block__item--meditation .post-card-block__item--cta {
  position: absolute;
  bottom: 28px;
  right: 36px;
  z-index: 2;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 130%;
  color: #eff6e7;
  text-decoration: underline;
  text-underline-offset: 3px;
  gap: 6px;
  opacity: 1
}

@media(min-width:1025px) {
  .post-card-block__item--meditation .post-card-block__item--cta {
    bottom: 36px;
    right: 44px
  }
}

.post-card-block__item--meditation .post-card-block__item--cta svg {
  display: inline-block;
  vertical-align: middle
}

.post-card-block__item--meditation a:hover::before {
  background: rgba(0, 0, 0, 0.25);
  transition: background 0.3s ease
}

.post-card-block__item--meditation .divider-block {
  display: none
}

.post-card-block__item--link.flex {
  gap: 6px
}

.post-card-block__item--duration {
  opacity: .5;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  letter-spacing: .1em;
  text-transform: uppercase
}

.post-card-block .divider-block__item {
  margin-bottom: 45px
}

.light-mode .post-card-block__item--link svg path {
  fill: #2d483c
}

.zodiac-list-block {
  padding-top: 25px;
  padding-bottom: 25px
}

.zodiac-list-block__title {
  margin-bottom: 40px
}

.zodiac-list-block__list {
  gap: 40px 8px;
  flex-wrap: wrap
}

.zodiac-list-block__list .flex {
  gap: 3px
}

.zodiac-list-block__list>* {
  flex-basis: calc(33% - 5px);
  text-align: center
}

.zodiac-list-block__list--item .p-small {
  margin-bottom: 0
}

.zodiac-list-block__list--item-icon {
  width: 92px;
  height: 92px;
  padding: 20px;
  margin: 0 auto 6px;
  border-radius: 50%;
  border: 1px solid #e1f7b0
}

.zodiac-list-block__list--item-icon img {
  width: 54px
}

.zodiac-list-block__list--item-date,
.zodiac-list-block__list--item-name {
  color: #eff6e780
}

.tabs-block .tabs-list {
  margin-top: 25px;
  margin-bottom: 25px
}

.tabs-block .tabs-list__item {
  cursor: pointer;
  opacity: 50%;
  -webkit-transition: opacity .25s ease-in-out;
  transition: opacity .25s ease-in-out
}

.tabs-block .tabs-list__item.active {
  opacity: 100%
}

.tabs-block .tabs-list__item--label {
  margin-bottom: 8px
}

.tabs-block .tab-panel {
  display: none;
  height: 0;
  opacity: 0%;
  -webkit-transition: opacity .1s ease-in-out;
  transition: opacity .1s ease-in-out
}

.tabs-block .tab-panel.active {
  display: block;
  opacity: 100%;
  height: auto
}

.accordions-block {
  margin-top: 25px;
  margin-bottom: 25px
}

.accordions-block .block-title {
  margin-bottom: 0
}

.accordions-block .accordions-list .accordions-item {
  background-image: -webkit-repeating-linear-gradient(left, #eff6e7, #eff6e7 1px, transparent 1px, transparent 9px);
  background-image: repeating-linear-gradient(90deg, #eff6e7, #eff6e7 1px, transparent 1px, transparent 9px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 2px;
  -webkit-transition: padding-bottom .4s cubic-bezier(.4, 0, .2, 1);
  transition: padding-bottom .4s cubic-bezier(.4, 0, .2, 1)
}

.accordions-block .accordions-list .accordions-item__header {
  width: 100%;
  padding-top: 27px;
  padding-bottom: 20px;
  cursor: pointer;
  -webkit-transition: padding-bottom .3s ease;
  transition: padding-bottom .3s ease
}

.accordions-block .accordions-list .accordions-item__arrow {
  -webkit-transition: -webkit-transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: -webkit-transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: transform .3s cubic-bezier(.4, 0, .2, 1), -webkit-transform .3s cubic-bezier(.4, 0, .2, 1)
}

.accordions-block .accordions-list .accordions-item__arrow svg {
  -webkit-transition: -webkit-transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: -webkit-transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: transform .3s cubic-bezier(.4, 0, .2, 1);
  transition: transform .3s cubic-bezier(.4, 0, .2, 1), -webkit-transform .3s cubic-bezier(.4, 0, .2, 1)
}

.accordions-block .accordions-list .accordions-item__content {
  cursor: pointer;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: max-height .4s cubic-bezier(.4, 0, .2, 1), opacity .3s ease .1s, padding .3s ease;
  transition: max-height .4s cubic-bezier(.4, 0, .2, 1), opacity .3s ease .1s, padding .3s ease
}

.accordions-block .accordions-list .accordions-item__content a {
  text-decoration: underline;
  text-underline-offset: 4px
}

.accordions-block .accordions-list .accordions-item__content ul {
  list-style-type: disc;
  padding-left: 20px;
  margin-top: 16px;
  margin-bottom: 16px
}

.accordions-block .accordions-list .accordions-item__content ul li {
  margin-bottom: 8px
}

.accordions-block .accordions-list .accordions-item__content ol {
  padding-left: 20px;
  margin-top: 16px;
  margin-bottom: 16px
}

.accordions-block .accordions-list .accordions-item__content ol li {
  margin-bottom: 8px
}

.accordions-block .accordions-list .accordions-item__content blockquote {
  display: inline-block;
  margin-top: 16px;
  margin-bottom: 16px
}

.accordions-block .accordions-list .accordions-item__content blockquote p {
  font-style: italic;
  font-weight: 300
}

.accordions-block .accordions-list .accordions-item__content blockquote p:before {
  content: "“";
  font-size: 2.1176470588rem
}

.accordions-block .accordions-list .accordions-item__content blockquote p:after {
  content: "”";
  font-size: 2.1176470588rem
}

.accordions-block .accordions-list .accordions-item.active {
  padding-bottom: 25px
}

.accordions-block .accordions-list .accordions-item.active .accordions-item__content {
  opacity: 1
}

.accordions-block .accordions-list .accordions-item.active .accordions-item__arrow svg {
  -webkit-transform: rotateX(180deg);
  transform: rotateX(180deg)
}

.spotify-block {
  margin-top: 25px;
  margin-bottom: 25px
}

.spotify-block.hidden iframe,
.spotify-block[aria-hidden=true] iframe {
  pointer-events: none;
  visibility: hidden
}

.skip-spotify-link {
  position: absolute;
  left: -9999px;
  z-index: 999
}

.skip-spotify-link:focus {
  position: static;
  left: auto;
  display: block;
  padding: 10px;
  background: #000;
  color: #fff;
  text-align: center
}

.divider-block__item {
  display: inline-block;
  height: 2px;
  width: 100%;
  background-image: -webkit-repeating-linear-gradient(left, #eff6e7, #eff6e7 1px, transparent 1px, transparent 9px);
  background-image: repeating-linear-gradient(90deg, #eff6e7, #eff6e7 1px, transparent 1px, transparent 9px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 2px;
  margin-top: 25px;
  margin-bottom: 25px
}

.light-mode .divider-block__item {
  background-image: -webkit-repeating-linear-gradient(left, #2d483c, #2d483c 1px, transparent 1px, transparent 9px);
  background-image: repeating-linear-gradient(90deg, #2d483c, #2d483c 1px, transparent 1px, transparent 9px)
}

.astro-block {
  margin-top: 25px;
  margin-bottom: 50px
}

.astro-block__title {
  font-size: 1.5294117647rem;
  line-height: 90%;
  letter-spacing: -.05rem;
  font-style: italic;
  font-family: Cormorant, serif;
  margin-bottom: 20px
}

.astro-block__date {
  gap: 20px
}

.astro-block__date--field {
  flex-basis: calc(33% - 10px);
  margin-bottom: 60px
}

.astro-block__date--field.disabled {
  opacity: 50%
}

.astro-block__date--field label {
  display: block;
  text-transform: uppercase;
  margin-bottom: 12px
}

.astro-block__date--field label.p-small {
  margin-bottom: 12px
}

.astro-block__date--field input,
.astro-block__date--field select {
  width: 100%;
  background: #2a392e;
  border: 1px solid #eff6e7;
  padding: 14px 10px;
  font-size: 1rem
}

.astro-block__date--field input::-webkit-input-placeholder,
.astro-block__date--field select::-webkit-input-placeholder {
  color: #eff6e7
}

.astro-block__date--field input::-moz-placeholder,
.astro-block__date--field select::-moz-placeholder {
  color: #eff6e7
}

.astro-block__date--field input::-ms-input-placeholder,
.astro-block__date--field select::-ms-input-placeholder {
  color: #eff6e7
}

.astro-block__date--field input::placeholder,
.astro-block__date--field select::placeholder {
  color: #eff6e7
}

.astro-block__date--field .p-small {
  font-weight: 600;
  letter-spacing: .1rem
}

.astro-block__date--field.dropdown {
  flex-basis: 100%
}

.astro-block__dropdown {
  background: #2a392e;
  border: 1px solid #eff6e7;
  padding: 14px 10px;
  font-size: 1rem;
  color: #eff6e7;
  display: none;
  cursor: pointer;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 10px
}

.astro-block__results .astro-block__dob-info {
  font-size: 1em;
  line-height: 130%
}

.astro-block__section-title {
  font-size: 14px;
  font-weight: 600;
  line-height: 130%;
  letter-spacing: .1rem;
  text-transform: uppercase;
  margin-bottom: 20px
}

.astro-block__planets-signs {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 8px
}

.astro-block__planets-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 45px 75px 16px 103px auto;
  grid-template-columns: 45px 75px 16px 103px auto
}

@media(min-width:1025px) {
  .astro-block__planets-item {
    -ms-grid-columns: 100px 200px 100px 200px auto;
    grid-template-columns: 100px 200px 100px 200px auto
  }
}

.astro-block__planets-item:nth-child(7) {
  margin-bottom: 32px
}

.astro-block__planets-item span {
  font-size: 17px;
  line-height: 130%;
  font-weight: 400
}

.astro-block__planets-item .planet-icon {
  text-align: center;
  margin-right: 15px
}

.astro-block__planets-item .planet-name {
  text-align: left
}

.astro-block__planets-houses {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  gap: 8px
}

.astro-block__planets-houses .astro-block__planets-item {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 45px 75px 74px;
  grid-template-columns: 45px 75px 74px;
  gap: 19px
}

@media(min-width:1025px) {
  .astro-block__planets-houses .astro-block__planets-item {
    -ms-grid-columns: 100px 200px auto;
    grid-template-columns: 100px 200px auto;
    gap: 0
  }
}

.astro-block__back-wrapper {
  text-align: center;
  margin-top: 65px
}

.astro-block__admin-notice {
  background: #fff3;
  padding: 10px;
  margin-bottom: 20px;
  border-left: 4px solid red
}

.form-steps-block {
  padding-top: 25px;
  padding-bottom: 25px;
  margin-top: 25px
}

.form-steps-block .form-steps {
  gap: 10px
}

.form-steps-block .form-steps__step {
  height: 5px;
  flex-basis: 33%;
  background: #eff6e7;
  border-radius: 50px;
  opacity: .3
}

.form-steps-block .form-steps__step.active {
  opacity: 1
}

.sign-up-form-block {
  min-height: calc(100vh - 60px)
}

@media(min-width:1025px) {
  .sign-up-form-block {
    min-height: calc(100vh - 104px)
  }
}

.sign-up-form-block .share-friend-form__form,
.sign-up-form-block .sign-up-form__form {
  margin-top: 65px
}

.sign-up-form-block .share-friend-form__form label,
.sign-up-form-block .sign-up-form__form label {
  font: 600 .8rem/130% Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: .1rem;
  display: block;
  margin-bottom: 12px;
  flex-basis: 66%
}

.sign-up-form-block .share-friend-form__form input[type=text],
.sign-up-form-block .share-friend-form__form input[type=email],
.sign-up-form-block .share-friend-form__form input[type=tel],
.sign-up-form-block .share-friend-form__form input[type=password],
.sign-up-form-block .share-friend-form__form select,
.sign-up-form-block .sign-up-form__form input[type=text],
.sign-up-form-block .sign-up-form__form input[type=email],
.sign-up-form-block .sign-up-form__form input[type=tel],
.sign-up-form-block .sign-up-form__form input[type=password],
.sign-up-form-block .sign-up-form__form select {
  width: 100%;
  padding: 14px 0;
  font-size: 1rem;
  line-height: 130%;
  border-bottom: 1px solid #eff6e7;
  border-radius: 0
}

.sign-up-form-block .share-friend-form__form input[type=text]::-webkit-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=email]::-webkit-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=tel]::-webkit-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=password]::-webkit-input-placeholder,
.sign-up-form-block .share-friend-form__form select::-webkit-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=text]::-webkit-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=email]::-webkit-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=tel]::-webkit-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=password]::-webkit-input-placeholder,
.sign-up-form-block .sign-up-form__form select::-webkit-input-placeholder {
  color: #eff6e7;
  opacity: .5
}

.sign-up-form-block .share-friend-form__form input[type=text]::-moz-placeholder,
.sign-up-form-block .share-friend-form__form input[type=email]::-moz-placeholder,
.sign-up-form-block .share-friend-form__form input[type=tel]::-moz-placeholder,
.sign-up-form-block .share-friend-form__form input[type=password]::-moz-placeholder,
.sign-up-form-block .share-friend-form__form select::-moz-placeholder,
.sign-up-form-block .sign-up-form__form input[type=text]::-moz-placeholder,
.sign-up-form-block .sign-up-form__form input[type=email]::-moz-placeholder,
.sign-up-form-block .sign-up-form__form input[type=tel]::-moz-placeholder,
.sign-up-form-block .sign-up-form__form input[type=password]::-moz-placeholder,
.sign-up-form-block .sign-up-form__form select::-moz-placeholder {
  color: #eff6e7;
  opacity: .5
}

.sign-up-form-block .share-friend-form__form input[type=text]::-ms-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=email]::-ms-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=tel]::-ms-input-placeholder,
.sign-up-form-block .share-friend-form__form input[type=password]::-ms-input-placeholder,
.sign-up-form-block .share-friend-form__form select::-ms-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=text]::-ms-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=email]::-ms-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=tel]::-ms-input-placeholder,
.sign-up-form-block .sign-up-form__form input[type=password]::-ms-input-placeholder,
.sign-up-form-block .sign-up-form__form select::-ms-input-placeholder {
  color: #eff6e7;
  opacity: .5
}

.sign-up-form-block .share-friend-form__form input[type=text]::placeholder,
.sign-up-form-block .share-friend-form__form input[type=email]::placeholder,
.sign-up-form-block .share-friend-form__form input[type=tel]::placeholder,
.sign-up-form-block .share-friend-form__form input[type=password]::placeholder,
.sign-up-form-block .share-friend-form__form select::placeholder,
.sign-up-form-block .sign-up-form__form input[type=text]::placeholder,
.sign-up-form-block .sign-up-form__form input[type=email]::placeholder,
.sign-up-form-block .sign-up-form__form input[type=tel]::placeholder,
.sign-up-form-block .sign-up-form__form input[type=password]::placeholder,
.sign-up-form-block .sign-up-form__form select::placeholder {
  color: #eff6e7;
  opacity: .5
}

.sign-up-form-block .share-friend-form__form input[type=text]:-webkit-autofill,
.sign-up-form-block .share-friend-form__form input[type=text]:-webkit-autofill:hover,
.sign-up-form-block .share-friend-form__form input[type=text]:-webkit-autofill:focus,
.sign-up-form-block .share-friend-form__form input[type=text]:-webkit-autofill:active,
.sign-up-form-block .share-friend-form__form input[type=email]:-webkit-autofill,
.sign-up-form-block .share-friend-form__form input[type=email]:-webkit-autofill:hover,
.sign-up-form-block .share-friend-form__form input[type=email]:-webkit-autofill:focus,
.sign-up-form-block .share-friend-form__form input[type=email]:-webkit-autofill:active,
.sign-up-form-block .share-friend-form__form input[type=tel]:-webkit-autofill,
.sign-up-form-block .share-friend-form__form input[type=tel]:-webkit-autofill:hover,
.sign-up-form-block .share-friend-form__form input[type=tel]:-webkit-autofill:focus,
.sign-up-form-block .share-friend-form__form input[type=tel]:-webkit-autofill:active,
.sign-up-form-block .share-friend-form__form input[type=password]:-webkit-autofill,
.sign-up-form-block .share-friend-form__form input[type=password]:-webkit-autofill:hover,
.sign-up-form-block .share-friend-form__form input[type=password]:-webkit-autofill:focus,
.sign-up-form-block .share-friend-form__form input[type=password]:-webkit-autofill:active,
.sign-up-form-block .share-friend-form__form select:-webkit-autofill,
.sign-up-form-block .share-friend-form__form select:-webkit-autofill:hover,
.sign-up-form-block .share-friend-form__form select:-webkit-autofill:focus,
.sign-up-form-block .share-friend-form__form select:-webkit-autofill:active,
.sign-up-form-block .sign-up-form__form input[type=text]:-webkit-autofill,
.sign-up-form-block .sign-up-form__form input[type=text]:-webkit-autofill:hover,
.sign-up-form-block .sign-up-form__form input[type=text]:-webkit-autofill:focus,
.sign-up-form-block .sign-up-form__form input[type=text]:-webkit-autofill:active,
.sign-up-form-block .sign-up-form__form input[type=email]:-webkit-autofill,
.sign-up-form-block .sign-up-form__form input[type=email]:-webkit-autofill:hover,
.sign-up-form-block .sign-up-form__form input[type=email]:-webkit-autofill:focus,
.sign-up-form-block .sign-up-form__form input[type=email]:-webkit-autofill:active,
.sign-up-form-block .sign-up-form__form input[type=tel]:-webkit-autofill,
.sign-up-form-block .sign-up-form__form input[type=tel]:-webkit-autofill:hover,
.sign-up-form-block .sign-up-form__form input[type=tel]:-webkit-autofill:focus,
.sign-up-form-block .sign-up-form__form input[type=tel]:-webkit-autofill:active,
.sign-up-form-block .sign-up-form__form input[type=password]:-webkit-autofill,
.sign-up-form-block .sign-up-form__form input[type=password]:-webkit-autofill:hover,
.sign-up-form-block .sign-up-form__form input[type=password]:-webkit-autofill:focus,
.sign-up-form-block .sign-up-form__form input[type=password]:-webkit-autofill:active,
.sign-up-form-block .sign-up-form__form select:-webkit-autofill,
.sign-up-form-block .sign-up-form__form select:-webkit-autofill:hover,
.sign-up-form-block .sign-up-form__form select:-webkit-autofill:focus,
.sign-up-form-block .sign-up-form__form select:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px transparent inset !important;
  -webkit-text-fill-color: #eff6e7 !important;
  border-bottom: 1px solid #eff6e7 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
  background-color: transparent !important
}

.sign-up-form-block .share-friend-form__form input[type=checkbox],
.sign-up-form-block .sign-up-form__form input[type=checkbox] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]+label,
.sign-up-form-block .sign-up-form__form input[type=checkbox]+label {
  position: relative;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.4;
  color: #ffffc7;
  padding-left: 30px;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 400
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]+label:before,
.sign-up-form-block .sign-up-form__form input[type=checkbox]+label:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background-color: transparent;
  border: 2px solid #f5f5dc;
  border-radius: 4px;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]+label:after,
.sign-up-form-block .sign-up-form__form input[type=checkbox]+label:after {
  content: "";
  position: absolute;
  left: 4px;
  width: 12px;
  height: 10px;
  background-image: url('data:image/svg+xml,<svg width="14" height="10" viewBox="0 0 14 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.3332 1L4.99984 8.33333L1.6665 5" stroke="%231D241B" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  opacity: 0;
  -webkit-transition: opacity .3s ease;
  transition: opacity .3s ease;
  top: 30%
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]+label a,
.sign-up-form-block .sign-up-form__form input[type=checkbox]+label a {
  color: #fff;
  font: 400 .765rem/120% Inter, sans-serif;
  margin-left: 40px;
  opacity: .5
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]:checked+label:before,
.sign-up-form-block .sign-up-form__form input[type=checkbox]:checked+label:before {
  background-color: beige;
  border-color: beige
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]:checked+label:after,
.sign-up-form-block .sign-up-form__form input[type=checkbox]:checked+label:after {
  opacity: 1
}

.sign-up-form-block .share-friend-form__form input[type=checkbox]:checked:hover+label:before,
.sign-up-form-block .sign-up-form__form input[type=checkbox]:checked:hover+label:before {
  background-color: beige;
  border-color: beige
}

.sign-up-form-block .share-friend-form__form .field-center,
.sign-up-form-block .sign-up-form__form .field-center {
  text-align: center
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form,
.sign-up-form-block .sign-up-form__form .select-plan-block__form {
  margin-top: 45px;
  display: block
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-info,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-info {
  display: -webkit-box;
  display: flex;
  gap: 10px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-info .p-small,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-info .p-small {
  margin-bottom: 0
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-option,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-option {
  display: block;
  border-radius: 25px;
  padding: 18px 23px 25px 45px;
  border: 1px solid #eff6e7;
  margin-bottom: 20px !important;
  position: relative
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-option:before,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-option:before {
  content: "";
  position: absolute;
  left: 19px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 3px solid #eff6e7;
  background: #eff6e7
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-option.selected,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-option.selected {
  background: #eff6e71a
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-option.selected:before,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-option.selected:before {
  background: #2a392e
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-savings-badge,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-savings-badge {
  background-color: #2a392e;
  padding: 5px 13px;
  border-radius: 10px;
  font-size: .5882352941rem;
  line-height: 120%
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form input,
.sign-up-form-block .sign-up-form__form .select-plan-block__form input {
  display: none
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-additional-content,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-additional-content {
  margin-top: 20px
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-additional-content p,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-additional-content p {
  font: 400 .765rem/120% Inter, sans-serif
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmp-level-actions,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmp-level-actions {
  margin-top: 50px;
  margin-bottom: 35px
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card {
  background: transparent;
  box-shadow: none;
  border-radius: 25px;
  border: 1px solid rgba(239, 246, 231, .4)
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_card_content,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_card_content {
  padding: 0
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table {
  background: transparent;
  border-collapse: collapse;
  border-radius: 0
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table th,
.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tbody td,
.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tfoot td,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table th,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tbody td,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tfoot td {
  background: transparent;
  color: #eff6e7;
  border: none
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tr,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tr {
  border-radius: 0;
  border-bottom: 1px solid rgba(239, 246, 231, .4)
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tr:last-child th,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tr:last-child th {
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto
}

.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tr th:before,
.sign-up-form-block .share-friend-form__form .select-plan-block__form .pmpro_card .pmpro_table tr td:before,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tr th:before,
.sign-up-form-block .sign-up-form__form .select-plan-block__form .pmpro_card .pmpro_table tr td:before {
  content: attr(data-title)
}

.sign-up-form-block .share-friend-form__form .select-plan-block .pmpro_card_content .InputElement,
.sign-up-form-block .sign-up-form__form .select-plan-block .pmpro_card_content .InputElement {
  color: #eff6e7 !important
}

.sign-up-form-block .share-friend-form__form .select-plan-block .additional-content p,
.sign-up-form-block .sign-up-form__form .select-plan-block .additional-content p {
  font-size: 13px;
  line-height: 120%
}

.sign-up-form-block .share-friend-form__error-message,
.sign-up-form-block .sign-up-form__error-message {
  display: block;
  margin-top: 8px;
  font-size: 14px
}

.sign-up-form-block .share-friend-form__countries,
.sign-up-form-block .sign-up-form__countries {
  display: none;
  background: #2a392e;
  border: 1px solid #eff6e7;
  padding: 14px 10px;
  font-size: 1rem;
  color: #eff6e7
}

.sign-up-form-block .share-friend-form__country-item,
.sign-up-form-block .sign-up-form__country-item {
  cursor: pointer
}

.sign-up-form-block .share-friend-form__country-item:not(:last-child),
.sign-up-form-block .sign-up-form__country-item:not(:last-child) {
  margin-bottom: 20px
}

.sign-up-form-block .share-friend-form__success,
.sign-up-form-block .sign-up-form__success {
  margin-top: 60px;
  text-align: center
}

.sign-up-form-block .registered-email {
  margin-bottom: 48px
}

.share-friend-form__form {
  margin-bottom: 120px
}

.sign-up-form__resend {
  position: absolute;
  bottom: 75px;
  width: 100%;
  text-align: center;
  left: 0
}

.signup-form-container {
  position: relative
}

@media(min-width:1025px) {
  .signup-form-container {
    max-width: 445px;
    margin-left: auto;
    margin-right: auto
  }
}

.signup-process-wrapper h2 {
  text-align: center
}

/* Sign Up Page - Two Column Layout (Figma) */
main.sign-up-page {
  width: 80%;
  margin-left: auto;
  margin-right: auto
}

main.sign-up-page .signup-form-container {
  max-width: none
}

main.sign-up-page .sign-up-form__form {
  margin-top: 40px
}

.sign-up-form__columns {
  display: flex;
  flex-direction: column;
  gap: 46px
}

@media(min-width:1025px) {
  .sign-up-form__columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 46px
  }
}

.sign-up-form__col {
  background: rgba(255, 255, 255, 0.04);
  border-radius: 10px;
  padding: 20px;
  overflow: visible
}

.sign-up-form__col .sign-up-form__field:last-child {
  margin-bottom: 0
}

.sign-up-form__col--right .field-center {
  text-align: right;
  margin-top: 10px
}

main.sign-up-page .form-steps-block {
  background: rgba(255, 255, 255, 0.04);
  border-radius: 10px;
  padding: 25px 20px;
  margin-bottom: 0
}

main.sign-up-page .signup-title {
  text-align: center
}

main.sign-up-page .form-steps {
  max-width: 350px;
  margin: 0 auto
}

@media(max-width:1024px) {
  main.sign-up-page {
    width: 92%;
  }
}

.reset-password-message {
  margin-top: 45px;
  text-align: center
}

.reset-password-message p {
  margin-bottom: 45px
}

.consent-popup {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
  overflow: hidden
}

.consent-popup__container {
  position: relative;
  display: -webkit-box;
  display: flex;
  overflow: hidden;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 20px
}

.consent-popup__content {
  position: relative;
  background: #2d483c;
  border-radius: 8px;
  max-width: 800px;
  width: 100%;
  max-height: 90vh;
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  box-shadow: 0 10px 40px #0000004d;
  z-index: 1;
  overflow: hidden
}

.consent-popup__header {
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  align-items: center;
  padding: 20px 30px;
  border-bottom: 1px solid #e0e0e0;
  flex-shrink: 0
}

.consent-popup__title {
  margin: 0;
  font-size: 16px
}

.consent-popup__close {
  background: none;
  border: none;
  font-size: 32px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  width: 32px;
  height: 32px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  color: #eff6e7;
  -webkit-transition: color .3s;
  transition: color .3s
}

.consent-popup__body {
  padding: 30px;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-box-flex: 1;
  flex: 1;
  font-size: 13px;
  line-height: 120%
}

.consent-popup__body ul {
  list-style: disc;
  padding-left: 15px;
  margin-bottom: 24px
}

.consent-popup__body ul li {
  line-height: 2em
}

.consent-popup__body hr {
  margin-bottom: 1.5em
}

.consent-popup__iframe {
  width: 100%;
  min-height: 500px
}

.consent-popup__footer {
  padding: 20px 30px;
  border-top: 1px solid #e0e0e0;
  text-align: right;
  flex-shrink: 0
}

.consent-popup-trigger {
  background: none;
  border: none;
  color: inherit;
  text-decoration: underline;
  cursor: pointer;
  padding: 0;
  font: inherit
}

.consent-popup-trigger:hover {
  opacity: .8
}

body.consent-popup-open {
  overflow: hidden !important;
  position: fixed;
  width: 100%;
  height: 100vh
}

.share-link {
  color: #ffffff80;
  font-size: 13px;
  line-height: 120%;
  margin-top: 32px;
  text-align: center;
  width: 100%;
  display: block
}

.page-template-page-share-with-a-friend main {
  min-height: calc(100vh - 104px)
}

.page-template-page-share-with-a-friend .hero-block {
  padding-bottom: 0
}

.page-template-page-share-with-a-friend .share-with-a-friend-block.sign-up-form-block {
  min-height: auto
}

.page-template-page-share-with-a-friend .share-friend-form__actions {
  position: absolute;
  bottom: 45px;
  width: calc(100% - 40px);
  max-width: 895px
}

@media(min-width:1025px) {
  .page-template-page-share-with-a-friend .share-friend-form__actions {
    max-width: 485px
  }
}

.sign-up-form__field {
  margin-bottom: 30px
}

.sign-up-form__field--error {
  color: #e78789;
  position: relative
}

.sign-up-form__field--error input {
  border-color: #e78789 !important;
  color: #e78789 !important
}

.sign-up-form__field--error input::-webkit-input-placeholder {
  color: #e78789 !important
}

.sign-up-form__field--error input::-moz-placeholder {
  color: #e78789 !important
}

.sign-up-form__field--error input::-ms-input-placeholder {
  color: #e78789 !important
}

.sign-up-form__field--error input::placeholder {
  color: #e78789 !important
}

.sign-up-form__field--error:after {
  content: attr(data-error-message);
  color: #e78789;
  right: 0;
  font-size: 14px;
  margin-top: .25rem;
  line-height: 1.4
}

.country-selector {
  position: relative;
  min-width: 100px
}

.country-selector__selected {
  border: 1px solid #ccc;
  padding: 8px;
  cursor: pointer;
  border-radius: 4px
}

.country-selector__dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  max-height: 300px;
  overflow-y: auto;
  z-index: 1000;
  margin-top: 4px
}

.country-selector__dropdown input {
  width: 100%;
  padding: 8px;
  border: none;
  border-bottom: 1px solid #eee;
  box-sizing: border-box
}

.phone-input-wrapper {
  display: -webkit-box;
  display: flex;
  position: relative
}

.code-selector {
  position: relative;
  z-index: 10
}

.code-selector__selected {
  border-bottom: 1px solid #eff6e7;
  padding: 8px 12px;
  cursor: pointer;
  background: transparent;
  pointer-events: auto;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  position: relative;
  z-index: 10;
  min-width: 80px;
  height: 100%
}

.code-selector__arrow {
  margin-left: 4px;
  font-size: 10px;
  color: #666
}

.code-selector__dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 405px;
  background: #2a392e;
  border: 1px solid #ccc;
  box-shadow: 0 4px 12px #00000026;
  z-index: 9999;
  pointer-events: auto
}

.code-selector__dropdown--open {
  display: block
}

.code-selector__search {
  width: 100%;
  border: none;
  border-bottom: 1px solid #eee;
  box-sizing: border-box;
  outline: none;
  font-size: 14px;
  padding: 14px !important
}

.code-selector__search:focus {
  border-bottom-color: #999
}

.code-selector__options {
  max-height: 250px;
  overflow-y: auto
}

.code-selector__loading {
  padding: 10px;
  color: #999;
  text-align: center;
  font-size: 14px
}

.country-option {
  padding: 10px 12px;
  cursor: pointer;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  justify-content: space-between;
  gap: 8px;
  -webkit-transition: background-color .2s;
  transition: background-color .2s
}

.country-option:hover,
.country-option--focused {
  background: #344638cc
}

.country-option__name {
  -webkit-box-flex: 1;
  flex: 1;
  font-size: 17px
}

.country-option__code {
  font-weight: 500;
  font-size: 15px;
  opacity: .8
}

.phone-input {
  -webkit-box-flex: 1;
  flex: 1
}

.phone-input:focus+.country-selector .country-selector__selected,
.phone-input-wrapper:focus-within .country-selector__selected {
  border-color: #999
}

.share-friend-form__field {
  margin-bottom: 16px
}

.share-friend-form p {
  font-size: 14px
}

input[data-com-onepassword-filled] {
  -webkit-background-clip: text !important;
  background-clip: text !important
}

.reset-password-form .sign-up-form__field--error {
  margin-bottom: 30px
}

.select-birthday-block {
  padding: 25px 0
}

.select-birthday-block .picker-wrapper {
  position: relative;
  margin-bottom: 60px
}

.select-birthday-block .columns-container {
  display: -webkit-box;
  display: flex;
  gap: 30px;
  -webkit-box-pack: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-perspective: 1000px;
  perspective: 1000px
}

.select-birthday-block .column {
  height: 280px;
  overflow: hidden;
  position: relative;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}

.select-birthday-block .column .scroll-area {
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-y: contain;
  -webkit-scroll-snap-type: y mandatory;
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory;
  scroll-padding: calc(50% - 20px);
  scrollbar-width: none;
  -ms-overflow-style: none
}

.select-birthday-block .column .scroll-area::-webkit-scrollbar {
  display: none
}

.select-birthday-block .column .scroll-area {
  scroll-behavior: smooth
}

.select-birthday-block .column .scroll-area:focus,
.select-birthday-block .column .scroll-area:focus-visible {
  outline: none;
  border: 1px solid #eff6e7
}

.select-birthday-block .column .option {
  height: 40px;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  font-size: 23px;
  font-weight: 400;
  color: #eff6e7;
  cursor: pointer;
  flex-shrink: 0;
  scroll-snap-align: center;
  scroll-snap-stop: always;
  -webkit-transition: opacity .2s ease-out, font-size .2s ease-out, color .2s ease-out, -webkit-transform .2s ease-out;
  transition: opacity .2s ease-out, font-size .2s ease-out, color .2s ease-out, -webkit-transform .2s ease-out;
  transition: opacity .2s ease-out, font-size .2s ease-out, transform .2s ease-out, color .2s ease-out;
  transition: opacity .2s ease-out, font-size .2s ease-out, transform .2s ease-out, color .2s ease-out, -webkit-transform .2s ease-out;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  will-change: opacity, transform
}

.select-birthday-block .column .option:focus,
.select-birthday-block .column .option:focus-visible {
  outline: none;
  background: #eff6e726;
  box-shadow: 0 0 0 2px #eff6e766;
  border-radius: 8px;
  z-index: 10
}

.select-birthday-block .column .option.empty-option {
  pointer-events: none;
  opacity: 0
}

.select-birthday-block .column .option.hidden-day {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important
}

.select-birthday-block .column .fade-overlay {
  position: absolute;
  left: 0;
  right: 0;
  height: 60px;
  pointer-events: none;
  z-index: 3
}

.select-birthday-block #months-column {
  width: 50%
}

.select-birthday-block #days-column,
.select-birthday-block #years-column {
  width: 25%
}

.select-birthday-block .center-indicator {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 40px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background: #ffffff1a;
  border-radius: 8px;
  z-index: 5;
  pointer-events: none
}

.select-birthday-block .action-link {
  text-align: center
}

.select-birthday-block__sign {
  text-align: center;
  margin-bottom: 35px;
  margin-top: 65px
}

.select-birthday-block__sign-icon {
  width: 69px;
  height: 69px;
  border-radius: 50%;
  border: 1px solid #eff6e7;
  padding: 13px;
  margin: 0 auto 20px
}

.select-birthday-block__sign-icon img {
  width: 42px
}

.select-birthday-block__sign-name {
  margin-bottom: 8px
}

.select-birthday-block .zodiac-icon-wrapper {
  position: relative;
  display: inline-block
}

.select-birthday-block .zodiac-icon-wrapper img {
  -webkit-transition: opacity .3s ease-out, -webkit-transform .4s cubic-bezier(.34, 1.56, .64, 1), -webkit-filter .3s ease-out;
  transition: opacity .3s ease-out, -webkit-transform .4s cubic-bezier(.34, 1.56, .64, 1), -webkit-filter .3s ease-out;
  transition: transform .4s cubic-bezier(.34, 1.56, .64, 1), opacity .3s ease-out, filter .3s ease-out;
  transition: transform .4s cubic-bezier(.34, 1.56, .64, 1), opacity .3s ease-out, filter .3s ease-out, -webkit-transform .4s cubic-bezier(.34, 1.56, .64, 1), -webkit-filter .3s ease-out;
  -webkit-transform-origin: center center;
  transform-origin: center center
}

.select-birthday-block .zodiac-icon-wrapper.zodiac-fade-out img {
  opacity: 0;
  -webkit-transform: scale(.8) rotate(-10deg);
  transform: scale(.8) rotate(-10deg);
  -webkit-filter: blur(2px);
  filter: blur(2px)
}

.select-birthday-block .zodiac-icon-wrapper.zodiac-fade-in img {
  opacity: 1;
  -webkit-transform: scale(1) rotate(0deg);
  transform: scale(1) rotate(0);
  -webkit-filter: blur(0px);
  filter: blur(0px);
  -webkit-animation: zodiacBounceIn .6s cubic-bezier(.34, 1.56, .64, 1);
  animation: zodiacBounceIn .6s cubic-bezier(.34, 1.56, .64, 1)
}

.select-birthday-block .zodiac-text-wrapper {
  position: relative;
  overflow: hidden
}

.select-birthday-block .zodiac-text-wrapper .zodiac-text-content {
  -webkit-transition: opacity .3s ease-out, -webkit-transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: opacity .3s ease-out, -webkit-transform .4s cubic-bezier(.25, .46, .45, .94);
  transition: transform .4s cubic-bezier(.25, .46, .45, .94), opacity .3s ease-out;
  transition: transform .4s cubic-bezier(.25, .46, .45, .94), opacity .3s ease-out, -webkit-transform .4s cubic-bezier(.25, .46, .45, .94)
}

.select-birthday-block .zodiac-text-wrapper.zodiac-slide-out .zodiac-text-content {
  opacity: 0;
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px)
}

.select-birthday-block .zodiac-text-wrapper.zodiac-slide-in .zodiac-text-content {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-animation: zodiacSlideIn .5s cubic-bezier(.25, .46, .45, .94);
  animation: zodiacSlideIn .5s cubic-bezier(.25, .46, .45, .94)
}

.select-birthday-block .no-break {
  white-space: nowrap
}

@-webkit-keyframes zodiacBounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3) rotate(-15deg);
    transform: scale(.3) rotate(-15deg);
    -webkit-filter: blur(3px);
    filter: blur(3px)
  }

  50% {
    opacity: .8;
    -webkit-transform: scale(1.1) rotate(5deg);
    transform: scale(1.1) rotate(5deg);
    -webkit-filter: blur(1px);
    filter: blur(1px)
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0);
    -webkit-filter: blur(0px);
    filter: blur(0px)
  }
}

@keyframes zodiacBounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3) rotate(-15deg);
    transform: scale(.3) rotate(-15deg);
    -webkit-filter: blur(3px);
    filter: blur(3px)
  }

  50% {
    opacity: .8;
    -webkit-transform: scale(1.1) rotate(5deg);
    transform: scale(1.1) rotate(5deg);
    -webkit-filter: blur(1px);
    filter: blur(1px)
  }

  to {
    opacity: 1;
    -webkit-transform: scale(1) rotate(0deg);
    transform: scale(1) rotate(0);
    -webkit-filter: blur(0px);
    filter: blur(0px)
  }
}

@-webkit-keyframes zodiacSlideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px)
  }

  60% {
    opacity: .8;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

@keyframes zodiacSlideIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
    transform: translateY(30px)
  }

  60% {
    opacity: .8;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px)
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}

.select-plan-block {
  padding-bottom: 45px
}

.select-plan-block__form {
  margin-top: 45px;
  display: block
}

.select-plan-block__form .pmp-level-info {
  display: -webkit-box;
  display: flex;
  gap: 10px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

.select-plan-block__form .pmp-level-info .p-small {
  margin-bottom: 0
}

.select-plan-block__form .pmp-level-option {
  display: block;
  border-radius: 25px;
  padding: 18px 23px 25px 45px;
  border: 1px solid #eff6e7;
  margin-bottom: 20px !important;
  position: relative;
  cursor: pointer
}

.select-plan-block__form .pmp-level-option:before {
  content: "";
  position: absolute;
  left: 19px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 3px solid #eff6e7;
  background: #eff6e7
}

.select-plan-block__form .pmp-level-option.selected {
  background: #eff6e71a
}

.select-plan-block__form .pmp-level-option.selected:before {
  background: #2a392e
}

.select-plan-block__form .pmp-level-option:focus,
.select-plan-block__form .pmp-level-option:focus-visible {
  outline: 2px solid #eff6e7;
  outline-offset: 2px
}

.select-plan-block__form .pmp-savings-badge {
  background-color: #2a392e;
  padding: 5px 13px;
  border-radius: 10px;
  font-size: .5882352941rem;
  line-height: 120%
}

.select-plan-block__form input {
  display: none
}

.select-plan-block__form .pmp-level-radio {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  pointer-events: none
}

.select-plan-block__form .pmp-additional-content {
  margin-top: 20px
}

.select-plan-block__form .pmp-additional-content p {
  font: 400 .765rem/120% Inter, sans-serif
}

.select-plan-block__form .pmp-level-actions {
  margin-top: 50px;
  margin-bottom: 35px
}

.select-plan-block__form .pmpro_card {
  background: transparent;
  box-shadow: none;
  border-radius: 25px;
  border: 1px solid rgba(239, 246, 231, .4)
}

.select-plan-block__form .pmpro_card .pmpro_card_content {
  padding: 0
}

.select-plan-block__form .pmpro_card .pmpro_table {
  background: transparent;
  border-collapse: collapse;
  border-radius: 0
}

.select-plan-block__form .pmpro_card .pmpro_table th,
.select-plan-block__form .pmpro_card .pmpro_table tbody td,
.select-plan-block__form .pmpro_card .pmpro_table tfoot td {
  background: transparent;
  color: #eff6e7;
  border: none
}

.select-plan-block__form .pmpro_card .pmpro_table tr {
  border-radius: 0;
  border-bottom: 1px solid rgba(239, 246, 231, .4)
}

.select-plan-block__form .pmpro_card .pmpro_table tr:last-child th {
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto
}

.select-plan-block__form .pmpro_card .pmpro_table tr th:before,
.select-plan-block__form .pmpro_card .pmpro_table tr td:before {
  content: attr(data-title)
}

.select-plan-block__form .additional-content {
  text-align: center
}

.select-plan-block__form .additional-content ul {
  list-style: disc;
  display: inline-block
}

.select-plan-block__form .additional-content ul li {
  font-size: 13px;
  line-height: 120%
}

.select-plan-block__form--edit {
  padding-bottom: 45px
}

.select-plan-block .pmpro_card_content .InputElement {
  color: #eff6e7 !important
}

.select-plan-block .additional-content p,
.select-plan-block .additional-content a {
  font-size: 13px;
  line-height: 120%
}

.pmpro_form .pmpro_level_name_text,
.pmpro_form .pmpro_level_description_text,
.pmpro_form .pmpro_level_cost_text,
.pmpro_form #pmpro_account_loggedin,
.pmpro_form #pmpro_user_fields,
.pmpro_form #pmpro_pricing_fields {
  display: none !important
}

.wp-block-pmpro-checkout-page {
  margin-top: 50px
}

.wp-block-pmpro-checkout-page .pmpro_section:has(.pmpro_form) .pmpro_card_content {
  padding: 0;
  margin: 0
}

.wp-block-pmpro-checkout-page .pmpro_form_legend {
  display: none
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_card {
  background: transparent;
  border: none;
  color: #eff6e7;
  margin-top: 0;
  text-align: center
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_card_title {
  display: none
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_form_submit {
  display: block;
  text-align: center
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 10px 40px;
  min-width: 160px;
  min-height: 44px;
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A;
  border-radius: 23px;
  text-decoration: none;
  text-align: center;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px;
  line-height: 130%;
  transition: all .3s cubic-bezier(.455, .03, .515, .955);
  cursor: pointer !important
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_btn:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03)
}

.wp-block-pmpro-checkout-page .pmpro_form .pmpro_btn:active,
.wp-block-pmpro-checkout-page .pmpro_form .pmpro_btn:focus {
  transform: scale(0.97)
}

.wp-block-pmpro-checkout-page .pmpro_form_label {
  font: 600 .8rem/130% Inter, sans-serif
}

#pmpro_payment_information_fields .pmpro_form_fields label {
  font: 600 .8rem/130% Inter, sans-serif;
  text-transform: uppercase;
  letter-spacing: .1em
}

.pmpro .pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#AccountNumber,
.pmpro .pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#Expiry,
.pmpro .pmpro_checkout_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#CVV,
.pmpro .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#AccountNumber,
.pmpro .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#Expiry,
.pmpro .pmpro_billing_gateway-stripe form.pmpro_form #pmpro_payment_information_fields div#CVV {
  background: transparent;
  background-color: unset;
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid #eff6e7;
  padding-left: 0;
  color: #eff6e7
}

.pmpro .pmpro_cols-2>* {
  width: 100%
}

.__PrivateStripeElement {
  color: #eff6e7
}

.pmpro .pmpro_form_fields,
.pmpro .pmpro_cols-2 {
  gap: 30px
}

.pmpro_checkout_gateway-stripe {
  padding: 0 20px
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_card {
  background: transparent;
  border: none;
  color: #eff6e7;
  margin-top: 0;
  text-align: center;
  box-shadow: none;
  border-radius: 0
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_card_title {
  display: none
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_form_submit {
  display: block;
  text-align: center
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_btn {
  max-width: 100%;
  margin-top: 40px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 10px 40px;
  min-width: 160px;
  min-height: 44px;
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A;
  border-radius: 23px;
  text-decoration: none;
  text-align: center;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px;
  line-height: 130%;
  transition: all .3s cubic-bezier(.455, .03, .515, .955);
  cursor: pointer !important
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_btn:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03)
}

.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_btn:active,
.pmpro_checkout_gateway-stripe .pmpro_form .pmpro_btn:focus {
  transform: scale(0.97)
}

.payment-confirmation-block {
  text-align: center
}

.payment-confirmation-block .confirmation-header {
  width: 265px;
  height: 265px;
  background-image: url("data:image/svg+xml,%3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='50%25' cy='50%25' r='49%25' fill='none' stroke='%23EFF6E7' stroke-width='1' stroke-dasharray='1%2c 3' stroke-dashoffset='0' stroke-linecap='square'/%3e%3c/svg%3e");
  border-radius: 50%;
  margin: 40px auto;
  text-align: center;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center
}

.payment-confirmation-block .confirmation-message {
  font: 600 .8rem/130% Inter, sans-serif;
  margin-bottom: 60px
}

.payment-confirmation-block .confirmation-journey-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 0.85rem;
  line-height: 140%;
  letter-spacing: 0.02em;
  margin-top: 18px;
  text-transform: none
}

.payment-confirmation-block .confirmation-enter-btn {
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px
}

#pmpro_processing_message {
  display: none !important
}

.button-block {
  padding-top: 14px;
  padding-bottom: 14px
}

.button-block .button {
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  line-height: 130%;
  letter-spacing: 1.7px;
  text-transform: none
}

.page-404-wrapper {
  width: 100%;
  max-width: 980px;
  padding-left: 1.2rem;
  padding-right: 1.2rem;
  margin: 4rem auto
}

.page-404-wrapper .go-to-home {
  display: table;
  margin: 2.4rem auto 0;
  padding: .6rem 1.6rem;
  text-decoration: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  font-size: 1rem;
  border-radius: 4px
}

.single .hero-block {
  padding-top: 168px;
  padding-bottom: 23px
}

.single .hero-block__content .heading {
  color: #fff;
  line-height: 90%;
  font-weight: 300;
  margin-bottom: 8px;
  font-size: 67px;
  letter-spacing: -.05em
}

.single .hero-block__content .above-heading {
  color: #fff;
  margin-bottom: 22px;
  letter-spacing: .1rem;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%
}

.single-horoscope .hero-block {
  padding-bottom: 64px
}

.single-horoscope .hero-block__overlay {
  display: none
}

.single-horoscope .hero-block__content {
  text-align: center
}

.single-horoscope .hero-block__content .heading {
  margin-bottom: 22px
}

.single-horoscope .hero-block__content-icon {
  width: 92px;
  height: 92px;
  padding: 20px;
  margin: 0 auto 22px;
  border-radius: 50%;
  border: 1px solid #e1f7b0
}

.single-horoscope .hero-block__content-icon img {
  width: 54px
}

.single-horoscope .hero-block__content .flex {
  gap: 6px
}

.single-horoscope .hero-block__content .p-small {
  margin: 0
}

.single-course .hero-block__overlay {
  background: #0000004d
}

.single-course .hero-block__content .heading {
  font-size: 67px;
  margin-bottom: 20px
}

.single-course .hero-block .above-heading {
  text-transform: none;
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 10px
}

.single-course .hero-block .duration-text {
  font-size: 13px;
  line-height: 120%;
  margin-bottom: 20px
}

.single-course .hero-block .button {
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 20px;
  letter-spacing: 1.7px;
  min-width: 170px;
  min-height: 40px;
  text-transform: none
}

/* ── Meditation Single – Hero ── */
.single-meditation .hero-block {
  padding-top: 168px;
  padding-bottom: 50px
}

.single-meditation .hero-block__overlay {
  background: rgba(0, 0, 0, 0.7)
}

.single-meditation .meditation-hero-container {
  text-align: center;
  max-width: 680px;
  margin: 0 auto
}

.single-meditation .hero-block__content .above-heading {
  text-align: center;
  margin-bottom: 16px
}

.single-meditation .hero-block__content .heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 67px;
  line-height: 0.9;
  letter-spacing: -0.05em;
  color: #eff6e7;
  margin-bottom: 20px;
  text-align: center
}

.single-meditation .meditation-hero-description {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.3;
  color: #eff6e7;
  text-align: center;
  max-width: 507px;
  margin: 0 auto
}

/* ── Meditation Single – Content Card ── */
.single-meditation main>*:not(.hero-block):not(.sticky-player) {
  width: 80%;
  margin-left: auto;
  margin-right: auto
}

.meditation-content-card {
  background: rgba(255, 255, 255, 0.04);
  border-radius: 10px;
  padding: 60px 55px 50px;
  margin-top: 50px;
  margin-bottom: 40px;
  text-align: center
}

/* Post title inside the card – Cormorant Light 80px */
.meditation-card-title {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 80px;
  line-height: 0.9;
  letter-spacing: -4px;
  color: #eff6e7;
  margin-bottom: 28px;
  text-align: center
}

/* Force white color on ALL elements inside the card (overrides WP editor inline styles) */
.meditation-content-card,
.meditation-content-card *:not(.meditation-play-btn),
.meditation-content-card h2[style],
.meditation-content-card h3[style],
.meditation-content-card p[style],
.meditation-content-card span[style],
.meditation-content-card .has-text-color,
.meditation-content-card [class*="has-"] {
  color: #eff6e7 !important
}

/* Play button must stay dark text on light bg */
.meditation-play-btn {
  color: #2d483c !important
}

/* Eyebrow – first paragraph or above-heading in the content card */
.meditation-content-card .above-heading,
.meditation-content-card .wp-block-heading:first-of-type~p:first-of-type,
.meditation-content-card>p:first-of-type {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #eff6e7 !important;
  margin-bottom: 10px;
  text-align: center
}

/* Large title – Cormorant Light 80px */
.meditation-content-card h2,
.meditation-content-card h3,
.meditation-content-card .wp-block-heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 80px;
  line-height: 0.9;
  letter-spacing: -4px;
  color: #eff6e7 !important;
  margin-bottom: 28px;
  text-align: center
}

.meditation-content-card .wp-block-heading span,
.meditation-content-card h2 span,
.meditation-content-card h3 span,
.meditation-content-card h2 em,
.meditation-content-card h3 em,
.meditation-content-card .wp-block-heading em {
  font-style: italic;
  font-weight: 400
}

.meditation-content-card p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.7;
  color: #eff6e7;
  margin-bottom: 18px;
  text-align: center
}

.meditation-content-card p:last-child {
  margin-bottom: 0
}

.meditation-content-card a:not(.meditation-back-link):not(.meditation-play-btn) {
  color: #E1F7B0;
  text-decoration: underline;
  text-underline-offset: 3px
}

.meditation-content-card a:not(.meditation-back-link):not(.meditation-play-btn):hover {
  opacity: 0.8
}

/* ── Meditation Controls (play + duration) ── */
.meditation-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-top: 0
}

/* Filled pill play button */
button.meditation-play-btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 6px 40px;
  min-width: 80px;
  height: 27px;
  background: #eff6e7;
  color: #2d483c;
  border: none;
  border-radius: 24px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.2;
  cursor: pointer;
  transition: all .3s cubic-bezier(.455, .03, .515, .955)
}

.meditation-play-btn:hover {
  background: #d3f38a;
  transform: scale(1.05)
}

.meditation-play-btn:active {
  transform: scale(0.97)
}

/* Duration text */
.meditation-content-card .duration-text,
.meditation-controls .duration-text {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.2;
  color: #eff6e7;
  text-align: center
}

/* Back to meditations link */
.meditation-back-link {
  display: inline-block;
  margin-top: 16px;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.3;
  color: #eff6e7;
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: opacity .2s ease
}

.meditation-back-link:hover {
  opacity: 0.7
}

/* ── Single Meditation – heading desktop/mobile toggle ── */
.single-meditation .heading--mobile,
.single-meditation .meditation-hero-controls {
  display: none
}

@media (max-width: 768px) {
  .single-meditation .heading--desktop {
    display: none
  }

  .single-meditation .heading--mobile {
    display: block
  }

  .single-meditation .meditation-hero-controls {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    margin-top: 20px
  }

  /* ── Single Meditation – MOBILE hero ── */
  .single-meditation .hero-block {
    padding: 180px 33px 57px 23px !important;
    border-radius: 5px;
  }

  .single-meditation .hero-block__overlay {
    background: rgba(0, 0, 0, 0.2)
  }

  .single-meditation .meditation-hero-container {
    text-align: left;
    max-width: 100%
  }

  .single-meditation .hero-block__content .above-heading {
    text-align: left;
    margin-bottom: 12px
  }

  .single-meditation .hero-block__content .heading {
    font-size: 80px;
    line-height: 0.9;
    letter-spacing: -4px;
    text-align: left;
    margin-bottom: 20px
  }

  .single-meditation .meditation-hero-description {
    display: none
  }

  /* ── Single Meditation – MOBILE controls (play + duration inline) ── */
  .single-meditation .meditation-controls {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 20px
  }

  /* ── Single Meditation – MOBILE content area ── */
  .single-meditation main>*:not(.hero-block):not(.sticky-player) {
    width: 100% !important
  }

  .single-meditation .meditation-content-card {
    background: none;
    border-radius: 0;
    padding: 30px 20px 30px;
    margin-top: 0;
    text-align: left
  }

  .single-meditation .meditation-content-card p {
    text-align: left
  }

  /* Hide title, eyebrow & controls in card on mobile (already in hero) */
  .single-meditation .meditation-content-card h2,
  .single-meditation .meditation-content-card h3,
  .single-meditation .meditation-content-card .wp-block-heading,
  .single-meditation .meditation-card-title,
  .single-meditation .meditation-content-card .above-heading,
  .single-meditation .meditation-content-card .meditation-controls,
  .single-meditation .meditation-content-card > p:first-child {
    display: none !important
  }

  .single-meditation .meditation-back-link {
    display: inline-block;
    text-align: left
  }
}

.sign-in-form {
  padding-top: 20px
}

.sign-in-form label {
  display: block;
  margin-bottom: 12px;
  font-weight: 700
}

.sign-in-form input[type=text],
.sign-in-form input[type=password],
.sign-in-form input[type=email] {
  width: 100%;
  background: #2a392e;
  padding: 14px 18px;
  font-size: 1rem;
  border: 1px solid #eff6e7;
  margin-bottom: 20px
}

.sign-in-form input[type=text]::-webkit-input-placeholder,
.sign-in-form input[type=password]::-webkit-input-placeholder,
.sign-in-form input[type=email]::-webkit-input-placeholder {
  color: #eff6e7
}

.sign-in-form input[type=text]::-moz-placeholder,
.sign-in-form input[type=password]::-moz-placeholder,
.sign-in-form input[type=email]::-moz-placeholder {
  color: #eff6e7
}

.sign-in-form input[type=text]::-ms-input-placeholder,
.sign-in-form input[type=password]::-ms-input-placeholder,
.sign-in-form input[type=email]::-ms-input-placeholder {
  color: #eff6e7
}

.sign-in-form input[type=text]::placeholder,
.sign-in-form input[type=password]::placeholder,
.sign-in-form input[type=email]::placeholder {
  color: #eff6e7
}

.sign-in-form input[type=text]:-webkit-autofill,
.sign-in-form input[type=text]:-webkit-autofill:hover,
.sign-in-form input[type=text]:-webkit-autofill:focus,
.sign-in-form input[type=text]:-webkit-autofill:active,
.sign-in-form input[type=password]:-webkit-autofill,
.sign-in-form input[type=password]:-webkit-autofill:hover,
.sign-in-form input[type=password]:-webkit-autofill:focus,
.sign-in-form input[type=password]:-webkit-autofill:active,
.sign-in-form input[type=email]:-webkit-autofill,
.sign-in-form input[type=email]:-webkit-autofill:hover,
.sign-in-form input[type=email]:-webkit-autofill:focus,
.sign-in-form input[type=email]:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px transparent inset !important;
  -webkit-text-fill-color: #eff6e7 !important;
  border-bottom: 1px solid #eff6e7 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
  background-color: transparent !important
}

.sign-in-form__actions {
  -webkit-box-pack: center;
  justify-content: center;
  gap: 25px;
  margin-top: 20px
}

.sign-in-form__actions--link {
  opacity: .5
}

.sign-in-form .success-message {
  line-height: 130%
}

.login-error {
  margin-top: 20px;
  color: #dc2323;
  margin-bottom: 20px
}

.sign-up-link {
  margin-top: auto;
  margin-bottom: 45px;
  text-align: center
}

.sign-up-link .text-yellow {
  font-size: 13px;
  color: #e1f7b0;
  margin-bottom: 20px;
  margin-top: 20px
}

.email-validation-page {
  text-align: center;
  padding-top: 104px
}

.user-profile .user-details {
  padding-left: 0
}

.user-profile {
  margin-top: 70px
}

.user-profile .sign-up-form__form {
  margin-bottom: 35px;
  margin-top: 35px
}

.user-profile .sign-up-form__form label {
  margin-bottom: 0
}

.user-profile .sign-up-form__form .sign-up-form__field {
  margin-bottom: 19px
}

.user-profile .sign-up-form__form .sign-up-form__field input[type=text],
.user-profile .sign-up-form__form .sign-up-form__field input[type=password] {
  border-bottom: none;
  padding: 9px 0
}

.user-profile .sign-up-form__form .sign-up-form__field--password {
  margin-bottom: 30px
}

.user-profile .account-details {
  margin-top: 35px
}

.user-profile .account-details p {
  margin-bottom: 30px
}

.edit-action {
  position: relative
}

.edit-action__tooltip {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background-color: #eff6e7;
  opacity: .5;
  color: #2d483c;
  text-align: center;
  font-size: 12px;
  line-height: 13px;
  font-weight: 700;
  display: inline-block;
  cursor: pointer
}

.edit-action__tooltip-text {
  visibility: hidden;
  width: 120px;
  background-color: #fff;
  color: #000;
  text-align: center;
  font-weight: 400;
  border-radius: 8px;
  padding: 8px;
  position: absolute;
  z-index: 1;
  bottom: 125%;
  margin-left: -66px;
  opacity: 0;
  -webkit-transition: opacity .3s;
  transition: opacity .3s;
  font-size: 10px
}

.edit-action__tooltip.active {
  opacity: 1
}

.edit-action__tooltip.active .edit-action__tooltip-text {
  visibility: visible;
  opacity: 1
}

.edit-action__link {
  font-size: 13px;
  color: #eff6e7;
  opacity: .5;
  margin-left: 16px
}

.edit-action__link:hover {
  opacity: 1
}

.birthday-tooltip {
  margin-bottom: 10px
}

.edit-page-header {
  margin-top: 104px;
  text-align: center;
  position: relative
}

.edit-page-header h1 {
  margin-bottom: 0
}

.edit-account-page .sign-up-form-block {
  min-height: auto
}

.edit-account-page .sign-up-form__actions {
  position: absolute;
  bottom: 45px;
  width: calc(100% - 40px);
  max-width: 895px
}

@media(min-width:1025px) {
  .edit-account-page .sign-up-form__actions {
    max-width: 445px
  }
}

.cancel-account-page .pmpro_card_content {
  text-align: center;
  margin-top: 40px
}

.cancel-account-page .pmpro_form_submit {
  margin-top: 32px
}

.cancel-account-page .pmpro_form_submit .button {
  margin-bottom: 16px
}

.cancel-account-page .pmpro_message.pmpro_success {
  background: transparent;
  border: none;
  color: #eff6e7;
  text-align: center;
  margin-top: 80px
}

.cancel-account-page .pmpro_actions_nav {
  display: none !important
}

a.cancel-link {
  text-decoration: underline;
  text-align: center;
  display: block;
  font-size: 14px;
  margin-bottom: 24px
}

#pmpro_cancel .signup-title {
  color: #eff6e7;
  text-align: center;
  margin-bottom: 48px
}

#pmpro_cancel .pmpro_message {
  background: transparent;
  color: #fff;
  border: none;
  font-size: 16px;
  text-align: center;
  box-shadow: none
}

#pmpro_cancel .pmpro_actions_nav-right {
  text-align: center
}

.pmpro-billing .pmpro_section:has(.pmpro_form) .pmpro_card_title+.pmpro_card_content {
  display: none
}

.pmpro-billing .pmpro_section .pmpro_card_content {
  padding: 0 !important
}

.pmpro-billing .pmpro_section .pmpro_form {
  box-shadow: none
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_card_title,
.pmpro-billing .pmpro_section .pmpro_card .pmpro_card_content p,
.pmpro-billing .pmpro_section .pmpro_card .pmpro_list-plain,
.pmpro-billing .pmpro_section .pmpro_card .pmpro_form_legend {
  display: none
}

.pmpro-billing .pmpro_section .pmpro_card {
  background: transparent;
  color: #fff !important;
  border: none
}

.pmpro-billing .pmpro_section .pmpro_card input {
  color: #fff !important
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 10px 40px;
  min-width: 160px;
  min-height: 44px;
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A;
  border-radius: 23px;
  text-decoration: none;
  text-align: center;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px;
  line-height: 130%;
  transition: all .3s cubic-bezier(.455, .03, .515, .955);
  cursor: pointer !important
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03)
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn.pmpro_btn-cancel {
  background: transparent;
  color: #D3F38A !important;
  border: 1px solid #D3F38A
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn.pmpro_btn-cancel:hover {
  opacity: 1;
  background: rgba(211, 243, 138, 0.12);
  transform: scale(1.03)
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn.pmpro_btn-cancel:active,
.pmpro-billing .pmpro_section .pmpro_card .pmpro_btn.pmpro_btn-cancel:focus {
  transform: scale(0.97)
}

.pmpro-billing .pmpro_section .pmpro_card .pmpro_form_submit {
  -webkit-box-pack: center;
  justify-content: center
}

.pmpro-billing .footer {
  display: none
}

.page-template-page-home-intro main {
  height: 100dvh;
  position: relative;
  overflow: hidden
}

.page-template-page-home-intro main:before {
  content: "";
  position: absolute;
  inset: -10%;
  background-image: var(--background);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: -1;
  -webkit-transition: -webkit-transform 20s ease-in-out;
  transition: -webkit-transform 20s ease-in-out;
  transition: transform 20s ease-in-out;
  transition: transform 20s ease-in-out, -webkit-transform 20s ease-in-out
}

.page-template-page-home-intro main.animate-bg-zoom:before {
  -webkit-transform: scale(1.2);
  transform: scale(1.2)
}

.page-template-page-home-intro .home-intro-wrapper {
  height: calc(100vh - 106px)
}

.page-template-page-home-intro .home-intro-content {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column;
  -webkit-box-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  align-items: center;
  text-align: center
}

.page-template-page-home-intro .home-intro-content .home-intro-dates,
.page-template-page-home-intro .home-intro-content .home-intro-title {
  visibility: hidden;
  opacity: 0;
  max-height: 0;
  -webkit-transition: all .8s ease-in-out;
  transition: all .8s ease-in-out
}

.page-template-page-home-intro .home-intro-content .home-intro-dates.visible,
.page-template-page-home-intro .home-intro-content .home-intro-title.visible {
  visibility: visible;
  opacity: 1;
  max-height: none
}

.page-template-page-home-intro .home-intro-content .home-intro-title h2 {
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: .1px;
  text-transform: uppercase;
  font-family: Inter, sans-serif;
  margin-bottom: 50px
}

.page-template-page-home-intro .home-intro-content .home-intro-dates p {
  font-weight: 400;
  font-family: Inter, sans-serif;
  font-size: 13px;
  line-height: 120%
}

.page-template-page-home-intro .home-intro-ctas {
  position: absolute;
  bottom: 65px;
  width: 100%;
  visibility: hidden;
  opacity: 0;
  max-height: 0;
  -webkit-transition: all .8s ease-in-out;
  transition: all .8s ease-in-out
}

.page-template-page-home-intro .home-intro-ctas.visible {
  visibility: visible;
  opacity: 1;
  max-height: none
}

.page-template-page-home-intro .home-intro-logo {
  visibility: hidden;
  opacity: 0;
  max-height: 0;
  -webkit-transition: all .8s ease-in-out;
  transition: all .8s ease-in-out
}

.page-template-page-home-intro .home-intro-logo.visible {
  visibility: visible;
  opacity: 1;
  max-height: none
}

.page-template-page-home-intro .home-intro-logo img {
  max-width: 330px
}

@media(min-width:1025px) {
  .page-template-page-home-intro .home-intro-logo img {
    max-width: 450px
  }
}

.page-template-page-home-intro .home-intro-lottie.hidden {
  display: none
}

:root {
  --swiper-theme-color: #007aff
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1;
  display: block
}

.swiper-vertical>.swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  flex-direction: column
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  transform: translateZ(0)
}

.swiper-horizontal {
  touch-action: pan-y
}

.swiper-vertical {
  touch-action: pan-x
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  display: block
}

.swiper-slide-invisible-blank {
  visibility: hidden
}

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto
}

.swiper-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform
}

.swiper-backface-hidden .swiper-slide {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
  -webkit-perspective: 1200px;
  perspective: 1200px
}

.swiper-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}

.swiper-3d {
  -webkit-perspective: 1200px;
  perspective: 1200px
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}

.swiper-css-mode>.swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
  display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: start start
}

.swiper-css-mode.swiper-horizontal>.swiper-wrapper {
  -webkit-scroll-snap-type: x mandatory;
  -ms-scroll-snap-type: x mandatory;
  scroll-snap-type: x mandatory
}

.swiper-css-mode.swiper-vertical>.swiper-wrapper {
  -webkit-scroll-snap-type: y mandatory;
  -ms-scroll-snap-type: y mandatory;
  scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
  -webkit-scroll-snap-type: none;
  -ms-scroll-snap-type: none;
  scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: none
}

.swiper-css-mode.swiper-centered>.swiper-wrapper:before {
  content: "";
  flex-shrink: 0;
  -webkit-box-ordinal-group: 10000;
  order: 9999
}

.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
  margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
  margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after)
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10
}

.swiper-3d .swiper-slide-shadow {
  background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to left, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to right, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to top, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0));
  background-image: linear-gradient(to bottom, #00000080, #0000)
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent
}

:is(.swiper:not(.swiper-watch-progress), .swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader {
  -webkit-animation: swiper-preloader-spin 1s infinite linear;
  animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000
}

@-webkit-keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0)
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

@keyframes swiper-preloader-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0)
  }

  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}

:root {
  --swiper-navigation-size: 44px
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  width: var(--swiper-navigation-size);
  height: var(--swiper-navigation-size);
  z-index: 10;
  cursor: pointer;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color))
}

:is(.swiper-button-prev, .swiper-button-next).swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}

:is(.swiper-button-prev, .swiper-button-next).swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none
}

.swiper-navigation-disabled :is(.swiper-button-prev, .swiper-button-next) {
  display: none !important
}

:is(.swiper-button-prev, .swiper-button-next) svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -webkit-transform-origin: center;
  transform-origin: center;
  fill: currentColor;
  pointer-events: none
}

.swiper-button-lock {
  display: none
}

.swiper-button-prev,
.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2))
}

.swiper-button-prev {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto
}

.swiper-button-prev .swiper-navigation-icon {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

.swiper-button-next {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto
}

.swiper-horizontal .swiper-button-prev,
.swiper-horizontal .swiper-button-next,
.swiper-horizontal~.swiper-button-prev,
.swiper-horizontal~.swiper-button-next {
  top: var(--swiper-navigation-top-offset, 50%);
  margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
  margin-left: 0
}

.swiper-horizontal .swiper-button-prev,
.swiper-horizontal~.swiper-button-prev,
.swiper-horizontal.swiper-rtl .swiper-button-next,
.swiper-horizontal.swiper-rtl~.swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 4px);
  right: auto
}

.swiper-horizontal .swiper-button-next,
.swiper-horizontal~.swiper-button-next,
.swiper-horizontal.swiper-rtl .swiper-button-prev,
.swiper-horizontal.swiper-rtl~.swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 4px);
  left: auto
}

:is(.swiper-horizontal .swiper-button-prev, .swiper-horizontal~.swiper-button-prev, .swiper-horizontal.swiper-rtl .swiper-button-next, .swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}

:is(.swiper-horizontal.swiper-rtl .swiper-button-prev, .swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon {
  -webkit-transform: rotate(0deg);
  transform: rotate(0)
}

.swiper-vertical .swiper-button-prev,
.swiper-vertical .swiper-button-next,
.swiper-vertical~.swiper-button-prev,
.swiper-vertical~.swiper-button-next {
  left: var(--swiper-navigation-top-offset, 50%);
  right: auto;
  margin-left: calc(0px - (var(--swiper-navigation-size) / 2));
  margin-top: 0
}

.swiper-vertical .swiper-button-prev,
.swiper-vertical~.swiper-button-prev {
  top: var(--swiper-navigation-sides-offset, 4px);
  bottom: auto
}

:is(.swiper-vertical .swiper-button-prev, .swiper-vertical~.swiper-button-prev) .swiper-navigation-icon {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg)
}

.swiper-vertical .swiper-button-next,
.swiper-vertical~.swiper-button-next {
  bottom: var(--swiper-navigation-sides-offset, 4px);
  top: auto
}

:is(.swiper-vertical .swiper-button-next, .swiper-vertical~.swiper-button-next) .swiper-navigation-icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: .3s opacity;
  transition: .3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translateZ(0);
  z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}

.swiper-pagination-disabled>.swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%
}

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(.33);
  transform: scale(.33);
  position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(.66);
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(.33);
  transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(.66);
  transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(.33);
  transform: scale(.33)
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, .2)
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}

.swiper-pagination-bullet:only-child {
  display: none !important
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-vertical>.swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0, -50%, 0)
}

:is(.swiper-vertical>.swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block
}

:is(.swiper-vertical>.swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px
}

:is(.swiper-vertical>.swiper-pagination-bullets, .swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: .2s top, .2s -webkit-transform;
  transition: .2s top, .2s -webkit-transform;
  transition: .2s transform, .2s top;
  transition: .2s transform, .2s top, .2s -webkit-transform
}

:is(.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px)
}

:is(.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translate(-50%);
  white-space: nowrap
}

:is(.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s left, .2s -webkit-transform;
  transition: .2s left, .2s -webkit-transform;
  transition: .2s transform, .2s left;
  transition: .2s transform, .2s left, .2s -webkit-transform
}

.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s right, .2s -webkit-transform;
  transition: .2s right, .2s -webkit-transform;
  transition: .2s transform, .2s right;
  transition: .2s transform, .2s right, .2s -webkit-transform
}

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit)
}

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));
  position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  transform-origin: left top
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  transform-origin: right top
}

.swiper-horizontal>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0
}

.swiper-vertical>.swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0
}

.swiper-pagination-lock {
  display: none
}

.swiper-scrollbar {
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  position: relative;
  touch-action: none;
  background: var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, .1))
}

.swiper-scrollbar-disabled>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-disabled {
  display: none !important
}

.swiper-horizontal>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
  position: absolute;
  left: var(--swiper-scrollbar-sides-offset, 1%);
  bottom: var(--swiper-scrollbar-bottom, 4px);
  top: var(--swiper-scrollbar-top, auto);
  z-index: 50;
  height: var(--swiper-scrollbar-size, 4px);
  width: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-vertical>.swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-vertical {
  position: absolute;
  left: var(--swiper-scrollbar-left, auto);
  right: var(--swiper-scrollbar-right, 4px);
  top: var(--swiper-scrollbar-sides-offset, 1%);
  z-index: 50;
  width: var(--swiper-scrollbar-size, 4px);
  height: calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, .5));
  border-radius: var(--swiper-scrollbar-border-radius, 10px);
  left: 0;
  top: 0
}

.swiper-scrollbar-cursor-drag {
  cursor: move
}

.swiper-scrollbar-lock {
  display: none
}

/* ===== SINGLE-COLUMN LAYOUT — ALL PAGES ===== */
@media (min-width: 1025px) {
  .container {
    max-width: 1440px;
  }

  .wp-block-columns {
    max-width: 720px;
    flex-direction: column !important;
  }

  .wp-block-columns .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
    flex-grow: 0 !important;
  }
}

/* Password toggle */
.password-toggle {
  position: relative;
  display: flex;
  align-items: stretch
}

.password-toggle input {
  flex: 1;
  padding-right: 44px !important
}

.password-toggle__btn {
  position: absolute;
  right: 8px;
  top: 0;
  bottom: 0;
  width: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  color: #eff6e7;
  opacity: .6;
  transition: opacity .2s
}

.password-toggle__btn:hover {
  opacity: 1
}

.password-toggle__icon--closed {
  display: none
}

.password-toggle__btn svg {
  width: 20px;
  height: 20px
}

.sign-in-form .password-toggle {
  background: #2a392e;
  border: 1px solid #eff6e7;
  margin-bottom: 20px
}

.sign-in-form .password-toggle input {
  border: none !important;
  margin-bottom: 0 !important;
  background: transparent !important
}

/* ===== GLOBAL FONT COLOR OVERRIDE: #D3F38A ===== */
body,
body a,
body p,
body span,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .h1,
body .h2,
body .h3,
body .h4,
body .h5,
body .h6,
body li,
body label,
body .heading,
body .above-heading,
body .small-caps,
body .p-small,
body .block-title,
body .astro-block__title,
body .footer__nav-list a,
body .main-nav ul li a,
body .user-details__name span,
body .user-details__birthday,
body .user-details__sign,
body .sticky-player__record-title,
body .cards-block__item--title,
body .post-card-block__item--duration,
body .accordions-block .accordions-list .accordions-item__header,
body .tabs-block .tabs-list__item--label,
body .sign-in-form label,
body .sign-up-form-block label,
body .edit-action__link,
body .share-link,
body .content-block p.text-above-heading,
body .zodiac-list-block__list--item-name,
body .zodiac-list-block__list--item-date,
body .select-birthday-block .column .option,
body .consent-popup__title,
body .consent-popup__body,
body .payment-confirmation-block .confirmation-message,
body .select-plan-block__form .pmp-level-info,
body .select-plan-block__form .pmp-savings-badge,
body .accordion-header {
  color: #D3F38A;
}

/* ===== HEADER: TOP (NON-STICKY) ===== */
.header {
  position: relative;
  top: auto;
  height: 90px;
}

.header .wrapper {
  height: 90px;
}

.hero-block__content {
  text-align: center;
}

/* ===== FLOATING STICKY MENU BUTTON ===== */
.header .action-section {
  position: static;
  z-index: 99999;
}

@media (min-width: 1025px) {
  .header .action-section {
    position: fixed;
    top: 42px;
    right: 40px;
  }
}

/* ===== HEADER CONTAINER: full viewport width ===== */
.header>.container {
  max-width: 100% !important;
  padding: 0 20px !important;
}

@media (min-width: 1025px) {
  .header>.container {
    padding: 0 40px !important;
  }
}

/* ===== LOTUS: normal flow, centered vertically ===== */
.header .main-header__logo.back-button {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
  line-height: 0;
}

.header .main-header__logo.back-button img {
  height: 30px;
  width: auto;
  display: block;
  filter:
    drop-shadow(0 0 0.4px #D570A5) drop-shadow(0 0 0.4px #D570A5);
}

/* ===== DESKTOP: INCREASE LOGO, MENU BUTTON SIZES ===== */
@media (min-width: 1025px) {

  /* Header taller */
  .header {
    height: 130px;
  }

  .header .wrapper {
    height: 130px;
  }



  /* Logo — bigger */
  .header .main-header__logo.logo:not(.back-button) img {
    height: 36px;
    width: auto;
  }

  /* Menu button icon — bigger */
  .header .mobile-toggle .nav-toggle .icon-svg.icon-svg--menu {
    width: 70px;
    height: 49px;
  }
}

/* ===== CENTER LOGO IN HEADER ===== */
.header .wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.header .main-header__logo.logo:not(.back-button) {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/* ===== NAV MENU OVERRIDES ===== */
.main-nav {
  background: #0b1a10 !important;
  padding: 0 !important;
  overflow: hidden;
}

/* Hide lotus in nav menu (all sizes) */
.main-nav .main-nav__desktop .main-header__logo {
  display: none !important;
}

/* Nav top: flex column, full height */
.main-nav .main-nav__top {
  display: flex !important;
  flex-direction: column !important;
  height: 100vh !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Mobile: hide the desktop close bar, use the header toggle X instead */
/* main-nav__desktop is display:none on mobile by default (minified CSS) — keep it that way */

/* Mobile: offset cards below the header overlay */
@media (max-width: 1024px) {
  .main-nav .main-nav__top {
    padding-top: 100px !important;
  }
}

/* Desktop: show close bar with circle X */
@media (min-width: 1025px) {
  .main-nav .main-nav__desktop {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    padding: 20px 30px !important;
    flex-shrink: 0;
  }

  /* Close (X) button — circle style (desktop only) */
  .main-nav__close {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.15) !important;
    cursor: pointer;
    transition: background 0.3s ease;
    padding: 0 !important;
  }

  .main-nav__close:hover {
    background: rgba(255, 255, 255, 0.18) !important;
  }

  .main-nav__close svg {
    width: 20px !important;
    height: 20px !important;
  }
}

/* Cards fill remaining height — no gaps */
.main-nav .nav-cards-grid {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.main-nav .nav-cards-grid .nav-card {
  flex: 1;
  min-height: 0;
}

/* Close X in the menu toggle (mobile) — bigger */
.nav-toggle.open .close-x {
  stroke-width: 1.5 !important;
}

/* ===== MOBILE FOOTER ===== */
/* Lotus flower FAB circle above footer */
.footer-flower-fab {
  display: flex;
  justify-content: center;
  margin-top: 40px;
  margin-bottom: -50px;
  position: relative;
  z-index: 10;
}

.footer-flower-fab__btn {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 1px dashed #eff6e7;
  background: #2d483c;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  padding: 18px;
}

.footer-flower-fab__btn:hover {
  transform: scale(1.05);
  box-shadow: 0 0 20px rgba(239, 246, 231, 0.15);
}

.footer-flower-fab__btn:active {
  transform: scale(0.95);
}

.footer-flower-fab__btn img {
  width: 60px;
  height: 60px;
  object-fit: contain;
}

/* Centered footer on mobile */
@media (max-width: 1024px) {
  .footer {
    padding-top: 100px;
    /* space for the overlapping FAB */
  }

  .footer__nav-list {
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
}

/* Desktop footer redesign V3 */
@media (min-width: 1025px) {
  .footer-flower-fab {
    display: none;
  }
}

/* Zodiac list grid: 4 columns on desktop */
@media (min-width: 1025px) {
  .zodiac-list-block__list>* {
    flex-basis: calc(25% - 8px);
  }
}

/* ===== HOME SPACE PAGE ===== */
.page-template-page-home-space .footer,
.page-template-page-home-space .footer-flower-fab {
  display: none;
}

.page-template-page-home-space .background {
  display: none;
}

.page-template-page-home-space main {
  min-height: 0;
}

.page-template-page-home-space .header.nav-open {
  background: #2d483c;
}

/* ===== NAV CARDS (slide-out menu) ===== */
.main-nav .nav-cards-grid {
  display: flex;
  flex-direction: column;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
}

.main-nav .nav-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  flex: 1 1 0;
  min-height: 60px;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  transition: flex 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Background image */
.main-nav .nav-card::before {
  content: "";
  position: absolute;
  inset: -5px;
  background-image: var(--card-bg, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0;
}

/* Fallback dark backgrounds */
.main-nav .nav-card:nth-child(1)::before {
  background-color: #1a2f21;
}

.main-nav .nav-card:nth-child(2)::before {
  background-color: #1d3526;
}

.main-nav .nav-card:nth-child(3)::before {
  background-color: #20392a;
}

.main-nav .nav-card:nth-child(4)::before {
  background-color: #1a2f21;
}

.main-nav .nav-card:nth-child(5)::before {
  background-color: #111e15;
}

.main-nav .nav-card:nth-child(6)::before {
  background-color: #1d3526;
}

/* Overlay */
.main-nav .nav-card__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
  transition: background 0.3s ease;
}

/* Hover */
.main-nav .nav-card:hover::before {
  transform: scale(1.05);
}

.main-nav .nav-card:hover .nav-card__overlay {
  background: rgba(0, 0, 0, 0.15);
}

.main-nav .nav-card:hover {
  flex: 1.4 1 0;
}

/* Label */
.main-nav .nav-card__label {
  position: relative;
  z-index: 2;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 0;
  color: #D3F38A;
  text-align: center;
  text-transform: uppercase;
  transition: transform 0.3s ease, letter-spacing 0.3s ease;
}

.main-nav .nav-card:hover .nav-card__label {
  transform: scale(1.05);
  letter-spacing: 2px;
}

/* My Account card */
.main-nav .nav-card--account .nav-card__account-info {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.main-nav .nav-card__sublabel {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-weight: 400;
  font-size: 20px;
  line-height: 28px;
  color: #D3F38A;
  text-align: center;
}

/* Make the nav panel fill height with cards */
.main-nav .main-nav__top {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 60px);
  overflow: hidden;
}

.main-nav .main-nav__desktop {
  flex-shrink: 0;
}

/* New Figma menu icon — override minified .header .mobile-toggle .nav-toggle .icon-svg */
.header .mobile-toggle .nav-toggle .icon-svg.icon-svg--menu {
  width: 56px;
  height: 39px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (max-width: 1024px) {
  .header .mobile-toggle .nav-toggle .icon-svg.icon-svg--menu {
    width: 44px;
    height: 31px;
  }
}

.nav-toggle .menu-ellipse,
.nav-toggle .menu-text {
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.nav-toggle .close-x {
  transition: opacity 0.3s ease 0.1s;
}

/* Open state: hide ellipses + text, show X */
.nav-toggle.open .menu-ellipse,
.nav-toggle.open .menu-text {
  opacity: 0;
  transform: scale(0.8);
}

.nav-toggle.open .close-x {
  opacity: 1 !important;
}

.home-space-page {
  min-height: calc(100dvh - 104px);
  padding: 0;
  margin: 0;
}

.home-space-grid {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.home-space-card {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 100px;
  flex: 1 1 0;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  transition: flex 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Make the grid fill remaining viewport height */
.home-space-grid {
  min-height: calc(100dvh - 104px);
}

@media (max-width: 1024px) {
  .home-space-grid {
    min-height: calc(100dvh - 60px);
  }
}

/* Background image via CSS custom property */
.home-space-card::before {
  content: "";
  position: absolute;
  inset: -5px;
  background-image: var(--card-bg, none);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0;
}

/* Fallback dark background if no image */
.home-space-card:nth-child(1)::before {
  background-color: #1a2f21;
}

.home-space-card:nth-child(2)::before {
  background-color: #1d3526;
}

.home-space-card:nth-child(3)::before {
  background-color: #20392a;
}

.home-space-card:nth-child(4)::before {
  background-color: #1a2f21;
}

.home-space-card:nth-child(5)::before {
  background-color: #111e15;
}

.home-space-card:nth-child(6)::before {
  background-color: #1d3526;
}

/* Overlay */
.home-space-card__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
  transition: background 0.3s ease;
}

/* Hover effects */
.home-space-card:hover::before {
  transform: scale(1.05);
}

.home-space-card:hover .home-space-card__overlay {
  background: rgba(0, 0, 0, 0.15);
}

.home-space-card:hover {
  flex: 1.4 1 0;
}

/* Label */
.home-space-card__label {
  position: relative;
  z-index: 2;
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
  color: #D3F38A;
  text-align: center;
  text-transform: uppercase;
  transition: transform 0.3s ease, letter-spacing 0.3s ease;
}

.home-space-card:hover .home-space-card__label {
  transform: scale(1.05);
  letter-spacing: 2px;
}

/* My Account card */
.home-space-card--account .home-space-card__account-info {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.home-space-card__sublabel {
  font-family: 'Cormorant', serif;
  font-style: italic;
  font-weight: 400;
  font-size: 24px;
  line-height: 32px;
  color: #D3F38A;
  text-align: center;
}

.home-space-card:hover .home-space-card__sublabel {
  transform: scale(1.05);
}

/* Responsive */
@media (max-width: 1024px) {
  .home-space-card__label {
    font-size: 18px;
    line-height: 24px;
  }

  .home-space-card__sublabel {
    font-size: 18px;
    line-height: 24px;
  }

  .home-space-card {
    min-height: 80px;
  }
}


/* ===== SIGN-IN SPLASH REDESIGN ===== */

/* Hide header, footer, and background on sign-in page */
.page-template-page-sign-in .header,
.page-template-page-sign-in .footer,
.page-template-page-sign-in .footer-flower-fab,
.page-template-page-sign-in .background,
.page-template-page-sign-in .background-overlay,
.page-template-page-sign-in .shape {
  display: none !important;
}

/* Prevent green body background from bleeding below the splash */
.page-template-page-sign-in {
  background: #102016 !important;
  background-color: #102016 !important;
  overflow: hidden !important;
  height: 100dvh !important;
}

/* Main layout */
.sign-in-splash-page {
  min-height: 100dvh !important;
  max-height: 100dvh !important;
  max-width: 100% !important;
  margin: 0 !important;
  display: block !important;
  overflow: hidden !important;
}

/* Splash container */
.sign-in-splash {
  position: relative;
  width: 100%;
  height: 100dvh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  gap: 70px;
  padding: 90px 40px;
  box-sizing: border-box;
}

/* Background image layer */
.sign-in-splash__bg {
  position: absolute;
  inset: -20px;
  background-image: var(--splash-bg, none);
  background-color: #102016;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: 0;
  animation: splashBgZoom 25s ease-in-out forwards;
}

@keyframes splashBgZoom {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.08);
  }
}

/* Dark overlay */
.sign-in-splash__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 1;
}

/* Content container */
.sign-in-splash__content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 60px;
  text-align: center;
}

/* Logo */
.sign-in-splash__logo {
  width: 330px;
  max-width: 85vw;
}

.sign-in-splash__logo img {
  width: 100%;
  height: auto;
  display: block;
}

/* CTAs container */
.sign-in-splash__ctas {
  display: flex;
  align-items: center;
  gap: 60px;
}

/* Sign up — outlined pill button */
.sign-in-splash__cta-signup {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 44px;
  border: none;
  border-radius: 23px;
  position: relative;
  color: #D3F38A !important;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  letter-spacing: 1.7px;
  text-decoration: none;
  text-align: center;
  background: transparent;
  transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.sign-in-splash__cta-signup:hover {
  background: rgba(211, 243, 138, 0.12);
  opacity: 1;
  transform: scale(1.03);
}

.sign-in-splash__cta-signup:active {
  transform: scale(0.97);
}

/* SVG border draw animation */
.cta-border-draw {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
}

.cta-border-draw path {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  animation: drawBorder 2s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  animation-delay: 0.6s;
}

@keyframes drawBorder {
  to {
    stroke-dashoffset: 0;
  }
}

.sign-in-splash__cta-signup span {
  position: relative;
  z-index: 1;
}

/* Login — text button */
.sign-in-splash__cta-login {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 160px;
  height: 44px;
  font-family: 'Cormorant', serif;
  font-weight: 700;
  font-style: italic;
  font-size: 22px;
  color: #D3F38A;
  background: none;
  border: none;
  border-radius: 23px;
  cursor: pointer;
  letter-spacing: 1.7px;
  padding: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.sign-in-splash__cta-login:hover {
  opacity: 0.75;
  transform: scale(1.03);
}

.sign-in-splash__cta-login:active {
  transform: scale(0.97);
}

/* Moon info at bottom */
.sign-in-splash__moon {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  white-space: nowrap;
  margin-top: 100px;
}

.sign-in-splash__moon-date {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 15.6px;
  color: #D3F38A;
  margin-bottom: 4px !important;
}

.sign-in-splash__moon-phase {
  font-family: 'Inter', sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #D3F38A;
  text-transform: uppercase;
  letter-spacing: 0.1px;
  margin-bottom: 0 !important;
}

/* Moon link style */
.sign-in-splash__moon-link {
  text-decoration: none;
  color: inherit;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: opacity 0.3s ease;
}

.sign-in-splash__moon-link:hover {
  opacity: 0.75;
}

/* ===== LOGIN MODAL POPUP ===== */
.sign-in-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, visibility 0.35s ease;
}

.sign-in-modal.active {
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
}

/* Backdrop */
.sign-in-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

/* Panel */
.sign-in-modal__panel {
  position: relative;
  background: #102016;
  border: 1px solid rgba(211, 243, 138, 0.15);
  border-radius: 16px;
  padding: 55px 55px 50px;
  width: 90vw;
  max-width: 650px;
  transform: scale(0.92) translateY(20px);
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}

/* Modal header with logo and intro */
.sign-in-modal__header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 18px;
  margin-bottom: 35px;
  text-align: center;
}

.sign-in-modal__logo {
  width: 180px;
  max-width: 60%;
}

.sign-in-modal__logo img {
  width: 100%;
  height: auto;
  display: block;
}

.sign-in-modal__subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: 14px;
  line-height: 1.4;
  color: #fff;
  margin: 8px 0 0;
  text-align: center;
}

.sign-in-modal__title {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 22px;
  line-height: 1.4;
  color: #D3F38A;
  letter-spacing: 0.5px;
}

.sign-in-modal.active .sign-in-modal__panel {
  transform: scale(1) translateY(0);
}

/* Close button */
.sign-in-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: none;
  border: none;
  color: #D3F38A;
  cursor: pointer;
  padding: 6px;
  opacity: 0.6;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.sign-in-modal__close:hover {
  opacity: 1;
  transform: scale(1.1);
}

/* Form inside modal */
.sign-in-modal .sign-in-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.sign-in-modal .sign-in-form label {
  color: #D3F38A;
}

.sign-in-modal .sign-in-form input[type="text"],
.sign-in-modal .sign-in-form input[type="password"] {
  width: 100%;
  box-sizing: border-box;
}

.sign-in-modal .sign-in-form input[type="submit"],
.sign-in-modal .sign-in-form .sign-in-form__actions--link {
  font-family: 'Cormorant', serif;
}

.sign-in-modal .login-error {
  margin-bottom: 10px;
}

@media (max-width: 480px) {
  .sign-in-modal__panel {
    padding: 40px 30px 35px;
    width: 92vw;
    border-radius: 12px;
  }

  .sign-in-modal__logo {
    width: 140px;
  }

  .sign-in-modal__title {
    font-size: 18px;
  }

  .sign-in-modal__subtitle {
    font-size: 12px;
  }

  .sign-in-modal__header {
    margin-bottom: 25px;
  }
}

/* ===== RESPONSIVE: SIGN-IN SPLASH ===== */
@media (max-width: 480px) {
  .sign-in-splash__logo {
    width: 260px;
  }

  .sign-in-splash__ctas {
    gap: 40px;
  }

  .sign-in-splash__cta-signup {
    width: 140px;
    height: 40px;
    font-size: 19px;
    letter-spacing: 1.2px;
  }

  .sign-in-splash__cta-login {
    width: 140px;
    height: 40px;
    font-size: 19px;
    letter-spacing: 1.2px;
  }

  .sign-in-splash {
    gap: 55px;
    padding: 70px 35px;
  }

  .sign-in-splash__content {
    gap: 55px;
  }
}

@media (min-width: 1025px) {
  .sign-in-splash {
    gap: 70px;
    padding: 100px 20px;
  }

  .sign-in-splash__logo {
    width: 400px;
  }

  .sign-in-splash__content {
    gap: 70px;
  }

  .sign-in-splash__cta-signup {
    width: 180px;
    height: 48px;
    font-size: 24px;
  }

  .sign-in-splash__cta-login {
    width: 180px;
    height: 48px;
    font-size: 24px;
  }
}

/* ===== ACCOUNT DETAILS: TWO-COLUMN LAYOUT (Figma) ===== */
main.account-details-page {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 1025px) {
  .account-details-page .user-profile {
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 46px !important;
  }

  .account-details-page .user-profile__left,
  .account-details-page .user-profile__right {
    width: 50% !important;
    max-width: none !important;
  }
}

@media (max-width: 1024px) {
  main.account-details-page {
    width: 92%;
  }
}

/* ===== WP BLOCK COLUMNS: 80% WIDTH ===== */
.wp-block-columns {
  width: 80% !important;
  max-width: none !important;
  margin-left: auto;
  margin-right: auto;
}

/* Inside single horoscope the columns are already nested in an 80% container */
.single-horoscope .wp-block-columns {
  width: 100% !important;
}

/* ===== SINGLE HOROSCOPE — MATCHING MARS HOROSCOPES LAYOUT ===== */

/* Hero: no background image on single horoscope */
.single-horoscope .hero-block--horoscope {
  padding-top: 200px;
  padding-bottom: 50px;
  position: relative;
  border-radius: 5px;
  background-image: none !important;
  background: transparent;
}

/* Overlay: hidden — no background image on single horoscope hero */
.single-horoscope .hero-block--horoscope .hero-block__overlay {
  display: none;
}

/* Content: left-aligned like Mars Horoscopes */
.single-horoscope .hero-block--horoscope .hero-block__content {
  text-align: center;
}

.single-horoscope .hero-block--horoscope .container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto;
  padding: 0 !important;
}

/* Neutralise .container inside all ACF blocks on single horoscope pages */
.single-horoscope .acf-block>.container {
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Zodiac sign icon — centered */
.single-horoscope .hero-block--horoscope .hero-block__content-icon {
  margin: 0 auto 22px;
  text-align: center;
}

/* Eyebrow: uppercase Inter Semi Bold — same as Mars Horoscopes */
.single-horoscope .hero-block--horoscope .above-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #eff6e7;
  margin-bottom: 14px;
  text-align: center;
}

/* Title: large serif — matching Mars Horoscopes heading style */
.single-horoscope .hero-block--horoscope .heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 80px;
  line-height: 0.9;
  letter-spacing: -4px;
  color: #eff6e7;
  margin-bottom: 10px;
  text-align: center;
}

/* Italic styling for the sign name span inside heading */
.single-horoscope .hero-block--horoscope .heading span {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  display: block;
  color: #eff6e7 !important;
}

/* Subnames: comma-separated italic — like the description on Mars Horoscopes */
.single-horoscope .hero-block--horoscope .hero-block__subnames {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 18px;
  line-height: 26px;
  color: #e1f7b0;
  margin-top: 30px;
  margin-bottom: 0;
}

/* Intro body text — same as Mars Horoscopes description */
.single-horoscope .hero-block--horoscope .hero-block__intro {
  margin-top: 30px;
}

.single-horoscope .hero-block--horoscope .hero-block__intro p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.3;
  color: #eff6e7;
  text-align: left;
}

.single-horoscope .hero-block--horoscope .hero-block__intro p:not(:last-child) {
  margin-bottom: 20px;
}

/* Scroll-down arrow — hidden on desktop, shown on mobile only */
.single-horoscope .hero-block--horoscope .hero-block__scroll-arrow {
  display: none;
  justify-content: center;
  margin-top: 60px;
  animation: horoscopeArrowBounce 2.5s ease-in-out infinite;
}

.single-horoscope .hero-block--horoscope .hero-block__scroll-arrow svg {
  width: 20px;
  height: 52px;
  opacity: 0.8;
}

@keyframes horoscopeArrowBounce {

  0%,
  100% {
    transform: translateY(0);
    opacity: 0.8;
  }

  50% {
    transform: translateY(10px);
    opacity: 1;
  }
}

/* ===== RESPONSIVE: SINGLE HOROSCOPE ===== */

/* ----- Mobile-only redesign (Figma) ----- */
@media (max-width: 1024px) {

  /* Smooth scroll for the entire page on mobile */
  .single-horoscope {
    scroll-behavior: smooth;
  }

  /* Hero: remove background, full-viewport, let page gradient show through */
  .single-horoscope .hero-block--horoscope {
    background: transparent !important;
    background-image: none !important;
    padding-top: 160px;
    padding-bottom: 40px;
    border-radius: 0;
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Hide overlay */
  .single-horoscope .hero-block--horoscope .hero-block__overlay {
    display: none !important;
  }

  /* Container: full width, flex column for reordering */
  .single-horoscope .hero-block--horoscope .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
  }

  /* ── Reorder elements: date → title → subnames → icon → intro → arrow ── */
  .single-horoscope .hero-block--horoscope .hero-block__date-range {
    order: 1;
  }

  .single-horoscope .hero-block--horoscope .above-heading:not(.hero-block__date-range) {
    order: 2;
  }

  .single-horoscope .hero-block--horoscope .heading {
    order: 3;
  }

  .single-horoscope .hero-block--horoscope .hero-block__subnames {
    order: 4;
  }

  .single-horoscope .hero-block--horoscope .hero-block__content-icon {
    order: 5;
  }

  .single-horoscope .hero-block--horoscope .hero-block__intro {
    order: 6;
  }

  .single-horoscope .hero-block--horoscope .hero-block__scroll-arrow {
    order: 7;
  }

  /* Date range & eyebrow: centered */
  .single-horoscope .hero-block--horoscope .above-heading {
    text-align: center;
  }

  /* Title: centered, 60px, green colour */
  .single-horoscope .hero-block--horoscope .heading {
    font-size: 60px;
    line-height: 50px;
    letter-spacing: -2px;
    text-align: center;
    color: #e1f7b0;
    margin-bottom: 10px;
  }

  /* Italic span (sign name) */
  .single-horoscope .hero-block--horoscope .heading span {
    color: #e1f7b0 !important;
  }

  /* Subnames: centered under title, italic, green */
  .single-horoscope .hero-block--horoscope .hero-block__subnames {
    text-align: center;
    font-size: 18px;
    line-height: 26px;
    color: #e1f7b0;
    margin-top: 10px;
  }

  /* Zodiac icon: shown, centered, below subnames */
  .single-horoscope .hero-block--horoscope .hero-block__content-icon {
    display: block;
    margin: 30px auto 0;
    text-align: center;
  }

  /* Intro body text: justified, spaced paragraphs */
  .single-horoscope .hero-block--horoscope .hero-block__intro {
    margin-top: 40px;
  }

  .single-horoscope .hero-block--horoscope .hero-block__intro p {
    text-align: justify;
    font-size: 17px;
    line-height: 1.3;
    margin-bottom: 50px;
  }

  .single-horoscope .hero-block--horoscope .hero-block__intro p:last-child {
    margin-bottom: 0;
  }

  /* Hide audio player from hero on mobile — JS moves it to the player section */
  .single-horoscope .hero-block--horoscope .hero-block__intro .generic-player-block {
    display: none !important;
  }

  /* Player section players container */
  .single-horoscope .horoscope-player-section__players {
    width: 100%;
    margin-top: 20px;
  }

  /* Show the moved player blocks */
  .single-horoscope .horoscope-player-section__players .generic-player-block {
    display: flex !important;
  }

  /* Pill-shaped player card in the player section (Figma) */
  .single-horoscope .horoscope-player-section__players .generic-player-block .container {
    background: rgba(255, 255, 255, 0.08);
    border-radius: 95px;
    padding: 20px 44px !important;
    max-width: 340px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-horoscope .horoscope-player-section__players .generic-player-block .file-data__title {
    font-family: 'Cormorant', serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 0.9;
    letter-spacing: -1.2px;
    color: #fff;
  }

  /* Scroll arrow: clickable link */
  .single-horoscope .hero-block--horoscope .hero-block__scroll-arrow {
    display: flex;
    margin-top: 50px;
    text-decoration: none;
    cursor: pointer;
  }

  /* Hide zodiac list block on mobile single horoscope */
  .single-horoscope .zodiac-list-block {
    display: none !important;
  }

  /* ── Player section (second viewport) ── */
  .single-horoscope .horoscope-player-section {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 0;
  }

  .single-horoscope .horoscope-player-section .container {
    width: 100% !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Player section eyebrow */
  .single-horoscope .horoscope-player-section__eyebrow {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    color: #eff6e7;
    margin-bottom: 20px;
  }

  /* Player section title */
  .single-horoscope .horoscope-player-section__title {
    font-family: 'Cormorant', serif;
    font-weight: 300;
    font-size: 60px;
    line-height: 60px;
    letter-spacing: -2px;
    color: #e1f7b0;
    margin-bottom: 40px;
  }

  /* Zodiac card */
  .single-horoscope .horoscope-player-section__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-bottom: 40px;
  }

  .single-horoscope .horoscope-player-section__card-icon {
    width: 92px;
    height: 91px;
    border-radius: 500px;
    border: 1px solid #e1f7b0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .single-horoscope .horoscope-player-section__card-icon img {
    width: 54px;
    height: auto;
  }

  .single-horoscope .horoscope-player-section__card-name {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 13px;
    line-height: 1.2;
    color: #fff;
    text-transform: uppercase;
    text-align: center;
  }

  .single-horoscope .horoscope-player-section__card-subnames {
    display: flex;
    flex-direction: column;
    gap: 3px;
    align-items: center;
  }

  .single-horoscope .horoscope-player-section__card-subnames span {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.2;
    color: #eff6e7;
    opacity: 0.5;
  }
}

/* ----- Desktop (unchanged) ----- */
@media (min-width: 1025px) {
  .single-horoscope .hero-block--horoscope .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  .single-horoscope .hero-block--horoscope {
    padding-top: 280px;
    padding-bottom: 50px;
  }

  .single-horoscope .hero-block--horoscope .heading {
    font-size: 90px;
    letter-spacing: -5px;
  }

  /* Hide the mobile-only player section on desktop */
  .single-horoscope .horoscope-player-section {
    display: none;
  }

  /* Player: ensure duration is left-aligned on desktop */
  .single-horoscope .generic-player-block .file-data {
    text-align: left;
  }

  .single-horoscope .generic-player-block .file-data__duration {
    text-align: left;
  }

  .single-horoscope .generic-player-block .file-data__duration .duration {
    text-align: left;
  }
}

/* ===== MARS HOROSCOPES LANDING PAGE ===== */

/* Content: text left-aligned but inside centered container */
body[class*="mars-horoscopes"] .hero-block__content {
  text-align: left;
}

body[class*="mars-horoscopes"] .hero-block__content .container {
  width: 80% !important;
  max-width: none !important;
  margin: 0 auto;
  padding: 0px !important;
}

/* Eyebrow: Inter Semi Bold 14px uppercase */
body[class*="mars-horoscopes"] .hero-block__content .above-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #eff6e7;
  margin-bottom: 14px;
  text-align: left;
}

/* Title: Cormorant Light 80px */
body[class*="mars-horoscopes"] .hero-block__content .heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 80px;
  line-height: 0.9;
  letter-spacing: -4px;
  color: #eff6e7;
  margin-bottom: 10px;
  text-align: left;
}

/* Italic "Horoscopes" span */
body[class*="mars-horoscopes"] .hero-block__content .heading span {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  display: inline;
  color: #eff6e7 !important;
}

/* Description text inside hero */
body[class*="mars-horoscopes"] .hero-block__description {
  margin-top: 30px;
}

body[class*="mars-horoscopes"] .hero-block__description p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.3;
  color: #eff6e7;
  text-align: left;
}

/* Content blocks below hero */
body[class*="mars-horoscopes"] .content-block p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 1.3;
  color: #eff6e7;
  text-align: left;
}

/* Divider spacing */
body[class*="mars-horoscopes"] .divider-block__item {
  margin-top: 15px;
  margin-bottom: 20px;
}

/* Remove gap between hero and next block */
body[class*="mars-horoscopes"] .hero-block {
  margin-bottom: 0 !important;
}

/* Content columns: 80% width, transparent (no double backgrounds) */
body[class*="mars-horoscopes"] .wp-block-columns {
  width: 80% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 40px !important;
  background: transparent !important;
  padding: 0 !important;
  gap: 0 !important;
}

/* Single content box: one consistent semi-transparent background */
body[class*="mars-horoscopes"] .wp-block-columns .wp-block-column {
  background: rgba(255, 255, 255, 0.04) !important;
  border-radius: 10px;
}

/* Remove nested column backgrounds to prevent color stacking */
body[class*="mars-horoscopes"] .wp-block-column .wp-block-columns,
body[class*="mars-horoscopes"] .wp-block-column .wp-block-columns .wp-block-column {
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0;
}

/* Mars in Action — injected column header */
body[class*="mars-horoscopes"] .mars-column-header {
  text-align: center;
  margin-top: 60px;
  padding-top: 20px;
  padding-bottom: 10px;
}

body[class*="mars-horoscopes"] .mars-column-title {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 70px;
  line-height: 0.85;
  letter-spacing: -2px;
  color: #E1F7B0;
  margin-bottom: 8px;
}

body[class*="mars-horoscopes"] .mars-column-title em {
  font-weight: 400;
  font-style: italic;
}

body[class*="mars-horoscopes"] .mars-column-subtitle {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 18px;
  line-height: 1.3;
  color: #E1F7B0;
  opacity: 0.8;
  margin-bottom: 0;
  text-align: center;
}

/* Generic player: tighter layout, no top gap */
body[class*="mars-horoscopes"] .generic-player-block {
  padding-top: 5px;
  padding-bottom: 5px;
  margin-top: 0 !important;
}

body[class*="mars-horoscopes"] .generic-player-block .file-data__title {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-size: 24px;
  line-height: 0.9;
  letter-spacing: -1.2px;
  color: #fff;
}

body[class*="mars-horoscopes"] .generic-player-block .file-data__duration .duration {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.2;
  color: #eff6e7;
  opacity: 0.5;
}

/* Zodiac list: section title in Cormorant Light */
body[class*="mars-horoscopes"] .zodiac-list-block {
  padding-top: 30px;
}

body[class*="mars-horoscopes"] .zodiac-list-block__title {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 40px;
  line-height: 0.9;
  letter-spacing: -2px;
  color: #eff6e7;
  margin-bottom: 40px;
  text-align: left;
}

/* Zodiac grid: 3-column */
body[class*="mars-horoscopes"] .zodiac-list-block__list {
  gap: 42px 8px;
  justify-content: center;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list>div {
  flex: 0 0 calc(33.333% - 6px);
  max-width: calc(33.333% - 6px);
  text-align: center;
}

/* Zodiac cards: centered */
body[class*="mars-horoscopes"] .zodiac-list-block__list--item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list--item .flex {
  align-items: center;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon {
  width: 92px;
  height: 91px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 6px;
  border-radius: 500px;
  border: 1px solid #e1f7b0;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon img {
  width: 54px;
  height: auto;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list--item-title {
  font-size: 13px;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
}

body[class*="mars-horoscopes"] .zodiac-list-block__list--item-date,
body[class*="mars-horoscopes"] .zodiac-list-block__list--item-name {
  font-size: 13px;
  line-height: 1.2;
  color: #eff6e7;
  opacity: 0.5;
  text-align: center;
}

/* ===== RESPONSIVE: MARS HOROSCOPES ===== */

/* ----- Mobile-only redesign (Figma) ----- */
@media (max-width: 1024px) {

  /* ── Hero: remove jungle background, let page gradient show through ── */
  body[class*="mars-horoscopes"] .hero-block {
    background-image: none !important;
    background-color: transparent !important;
    border-radius: 0;
  }

  /* Hide the dark overlay — no image to darken */
  body[class*="mars-horoscopes"] .hero-block__overlay {
    display: none !important;
  }

  /* Hero container: 85% width on mobile */
  body[class*="mars-horoscopes"] .hero-block__content .container {
    width: 85% !important;
    padding: 0 !important;
  }

  /* Content columns: 85% width on mobile */
  body[class*="mars-horoscopes"] .wp-block-columns {
    width: 85% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* Eyebrow: centred on mobile */
  body[class*="mars-horoscopes"] .hero-block__content .above-heading {
    text-align: center;
  }

  /* Title: centred, 60px, green colour matching Figma */
  body[class*="mars-horoscopes"] .hero-block__content .heading {
    font-size: 60px;
    line-height: 60px;
    letter-spacing: -2px;
    text-align: center;
    color: #e1f7b0;
  }

  /* Italic span inside heading */
  body[class*="mars-horoscopes"] .hero-block__content .heading span {
    color: #e1f7b0 !important;
  }

  /* Description paragraphs: justified, spaced out */
  body[class*="mars-horoscopes"] .hero-block__description {
    margin-top: 20px;
  }

  body[class*="mars-horoscopes"] .hero-block__description p {
    text-align: justify;
    font-size: 17px;
    line-height: 1.3;
    margin-bottom: 50px;
  }

  body[class*="mars-horoscopes"] .hero-block__description p:last-child {
    margin-bottom: 0;
  }

  /* Content block paragraphs (below hero): justified */
  body[class*="mars-horoscopes"] .content-block p {
    text-align: justify;
  }

  /* ── Zodiac section ── */

  /* Section title: centred italic Cormorant, like "Where will you feel the impact?" */
  body[class*="mars-horoscopes"] .zodiac-list-block__title {
    font-family: 'Cormorant', serif;
    font-weight: 400;
    font-style: italic;
    font-size: 18px;
    line-height: 1.4;
    letter-spacing: 0;
    color: #e1f7b0;
    text-align: center;
    margin-bottom: 30px;
  }

  /* Card grid: 3 columns, generous gaps to avoid cramped look */
  body[class*="mars-horoscopes"] .zodiac-list-block .container {
    padding: 0 !important;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list {
    gap: 36px 12px;
    justify-content: center;
    padding: 0 0 32px;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list>div {
    flex: 0 0 calc(33.333% - 8px);
    max-width: calc(33.333% - 8px);
  }

  /* Card icon: scale down slightly on small screens so cards breathe */
  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon {
    width: 76px;
    height: 76px;
    padding: 16px;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon img {
    width: 42px;
  }

  /* Card text: small, centred */
  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-title {
    font-size: 13px;
    line-height: 1.2;
    color: #fff;
    text-align: center;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-date,
  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-name {
    font-size: 12px;
    line-height: 1.2;
    color: #eff6e7;
    opacity: 0.5;
    text-align: center;
  }
}

/* Slightly larger icons on wider phones / small tablets */
@media (min-width: 420px) and (max-width: 1024px) {
  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon {
    width: 88px;
    height: 88px;
    padding: 18px;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list--item-icon img {
    width: 50px;
  }
}

/* ----- Desktop: Figma redesign ----- */
@media (min-width: 1025px) {

  /* ── Page-level card wrapper ──
     Use main as the card backdrop for everything between hero and zodiac.
     We create a single continuous card via a pseudo-element on <main>. */

  /* ── Hero section ── */
  body[class*="mars-horoscopes"] .hero-block {
    position: relative;
    padding-top: 280px;
    padding-bottom: 40px;
    overflow: visible;
    margin-bottom: 0 !important;
    width: auto !important;
    max-width: none !important;
  }

  body[class*="mars-horoscopes"] .hero-block__content {
    position: relative;
    z-index: 2;
  }

  body[class*="mars-horoscopes"] .hero-block__content .heading {
    font-size: 80px;
    letter-spacing: -4px;
  }

  body[class*="mars-horoscopes"] .hero-block__description {
    margin-top: 30px;
    max-width: 631px;
  }

  body[class*="mars-horoscopes"] .hero-block__description p {
    font-size: 17px;
    line-height: 1.3;
  }

  /* ── Card blocks: constrain width, remove gaps, NO bg on outer divs ── */
  body[class*="mars-horoscopes"] .generic-player-block,
  body[class*="mars-horoscopes"] .divider-block,
  body[class*="mars-horoscopes"] .content-block,
  body[class*="mars-horoscopes"] .wp-block-columns {
    width: 80% !important;
    margin: 0 auto !important;
    padding-left: 50px;
    padding-right: 50px;
    border-radius: 0 !important;
    position: relative;
    z-index: 2;
    box-sizing: border-box;
  }

  /* Hero and zodiac: full-width, no bg */
  body[class*="mars-horoscopes"] .hero-block {
    background-color: transparent;
    width: auto !important;
    max-width: none !important;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block {
    width: auto !important;
    max-width: none !important;
    background: none !important;
    position: relative;
    z-index: 2;
    margin-top: 0 !important;
  }

  /* ── Inner .container: make transparent, no extra bg ── */
  body[class*="mars-horoscopes"] .generic-player-block>.container,
  body[class*="mars-horoscopes"] .divider-block>.container,
  body[class*="mars-horoscopes"] .content-block>.container {
    background: transparent !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* ── First block after hero: top rounded corners ── */
  body[class*="mars-horoscopes"] .hero-block+.generic-player-block,
  body[class*="mars-horoscopes"] .hero-block+.content-block,
  body[class*="mars-horoscopes"] .hero-block+.divider-block {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
    padding-top: 60px !important;
  }

  /* ── Last block before zodiac: bottom rounded corners ── */
  body[class*="mars-horoscopes"] .content-block:has(+ .zodiac-list-block),
  body[class*="mars-horoscopes"] .divider-block:has(+ .zodiac-list-block),
  body[class*="mars-horoscopes"] .generic-player-block:has(+ .zodiac-list-block),
  body[class*="mars-horoscopes"] .wp-block-columns:has(+ .zodiac-list-block) {
    border-bottom-left-radius: 10px !important;
    border-bottom-right-radius: 10px !important;
    padding-bottom: 50px !important;
  }

  /* ── Audio player: centered vertical layout ── */
  body[class*="mars-horoscopes"] .generic-player-block {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  body[class*="mars-horoscopes"] .generic-player-block .player.flex {
    flex-direction: column !important;
    align-items: center !important;
    gap: 20px !important;
    text-align: center;
  }

  body[class*="mars-horoscopes"] .generic-player-block .play-pause-btn {
    width: 139px !important;
    height: 139px !important;
  }

  body[class*="mars-horoscopes"] .generic-player-block .icon-container {
    width: 139px !important;
    height: 139px !important;
  }

  body[class*="mars-horoscopes"] .generic-player-block .play-pause-svg {
    width: 139px !important;
    height: 139px !important;
  }

  body[class*="mars-horoscopes"] .generic-player-block .file-data {
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }

  body[class*="mars-horoscopes"] .generic-player-block .file-data__title {
    font-family: 'Cormorant', serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 0.9;
    letter-spacing: -1.2px;
    color: #fff;
    text-align: left;
  }

  body[class*="mars-horoscopes"] .generic-player-block .file-data__duration {
    text-align: left;
    margin-top: 8px;
  }

  body[class*="mars-horoscopes"] .generic-player-block .file-data__duration .duration {
    font-family: 'Inter', sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.2;
    color: #eff6e7;
    opacity: 0.5;
  }

  /* ── Dividers: dotted lines on both sides with center gap ── */
  body[class*="mars-horoscopes"] .divider-block .divider-block__item {
    max-width: none;
    width: 100%;
    margin: 20px auto;
    background-image: repeating-linear-gradient(90deg, #eff6e7, #eff6e7 1px, transparent 1px, transparent 9px);
    -webkit-mask-image: linear-gradient(to right, black 0%, black 25%, transparent 35%, transparent 65%, black 75%, black 100%);
    mask-image: linear-gradient(to right, black 0%, black 25%, transparent 35%, transparent 65%, black 75%, black 100%);
  }

  /* ── Content blocks: body text justified ── */
  body[class*="mars-horoscopes"] .content-block {
    padding-top: 10px;
    padding-bottom: 40px;
  }

  body[class*="mars-horoscopes"] .content-block p {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 17px !important;
    line-height: 1.3 !important;
    color: #eff6e7 !important;
    text-align: justify;
    max-width: 631px;
    margin-left: auto;
    margin-right: auto;
  }

  body[class*="mars-horoscopes"] .content-block p:not(:last-child) {
    margin-bottom: 50px;
  }

  /* ── wp-block-columns ── */
  body[class*="mars-horoscopes"] .wp-block-columns {
    padding-top: 10px;
    padding-bottom: 40px;
  }

  /* ── Zodiac list section ── */
  body[class*="mars-horoscopes"] .zodiac-list-block__title {
    font-family: 'Cormorant', serif;
    font-weight: 400;
    font-style: italic;
    font-size: 26px;
    line-height: 60px;
    letter-spacing: 0;
    color: #e1f7b0;
    text-align: center;
    margin-bottom: 40px;
    margin-top: 20px;
  }

  body[class*="mars-horoscopes"] .zodiac-list-block__list>div {
    flex: 0 0 calc(25% - 8px);
    max-width: calc(25% - 8px);
  }

  /* ── Down arrow before zodiac section ── */
  body[class*="mars-horoscopes"] .zodiac-list-block::before {
    content: "";
    display: block;
    width: 2px;
    height: 52px;
    margin: 30px auto 20px;
    background: #eff6e7;
    opacity: 0.5;
  }
}

.acf-block.hero-block.padding-l {
  margin-bottom: 70px !important;
}

/* ===== SINGLE HOROSCOPE: 80% width layout ===== */
main.type-horoscope {
  max-width: 80%;
  margin-left: auto;
  margin-right: auto;
}

/* ===== MOON CYCLES: ZODIAC LIST CARD ===== */
.moon-cycles-zodiac-wrapper {
  width: 80%;
  margin: -181px auto 151px;
  padding: 50px 40px 50px;
  background: rgb(64 79 69 / 31%);
  border-radius: 10px;
  position: relative;
}

.moon-cycles-zodiac-wrapper__title {
  font-family: 'Cormorant', serif;
  font-weight: 400;
  font-style: italic;
  font-size: 40px;
  line-height: 0.9;
  letter-spacing: -1px;
  color: #e1f7b0;
  text-align: center;
  margin-bottom: 10px;
}

.moon-cycles-zodiac-wrapper__subtitle {
  font-family: 'Inter', sans-serif;
  font-weight: 300;
  font-style: italic;
  font-size: 14px;
  line-height: 1.4;
  color: #e1f7b0;
  opacity: 0.7;
  text-align: center;
  margin-bottom: 30px;
}

/* Override the inner zodiac-list-block padding so the wrapper controls spacing */
.moon-cycles-zodiac-wrapper .zodiac-list-block {
  padding-top: 10px;
  padding-bottom: 0;
}

/* Hide the block's own title since we use the wrapper title */
.moon-cycles-zodiac-wrapper .zodiac-list-block__title {
  display: none;
}

/* 4-column grid on desktop */
@media (min-width: 1025px) {
  .moon-cycles-zodiac-wrapper .zodiac-list-block__list>div {
    flex: 0 0 calc(25% - 8px);
    max-width: calc(25% - 8px);
  }

  .moon-cycles-zodiac-wrapper .zodiac-list-block .container {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }
}

/* Zodiac card items: centered */
.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item .flex {
  align-items: center;
}

.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-icon {
  width: 92px;
  height: 91px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 6px;
  border-radius: 500px;
  border: 1px solid #e1f7b0;
}

.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-icon img {
  width: 54px;
  height: auto;
}

.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-title {
  font-size: 13px;
  line-height: 1.2;
  color: #fff;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
}

.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-date,
.moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-name {
  font-size: 13px;
  line-height: 1.2;
  color: #eff6e7;
  opacity: 0.5;
  text-align: center;
}



/* ── Responsive: Mobile ── */
@media (max-width: 1024px) {
  .moon-cycles-zodiac-wrapper {
    width: 92%;
    padding: 40px 20px;
    margin-top: 80px;
    margin-bottom: 80px;
  }

  .moon-cycles-zodiac-wrapper__title {
    font-size: 26px;
    margin-bottom: 10px;
  }

  .moon-cycles-zodiac-wrapper .zodiac-list-block__list>div {
    flex: 0 0 calc(33.333% - 8px);
    max-width: calc(33.333% - 8px);
  }

  .moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-icon {
    width: 76px;
    height: 76px;
    padding: 16px;
  }

  .moon-cycles-zodiac-wrapper .zodiac-list-block__list--item-icon img {
    width: 42px;
  }


}

/* ===== MEDITATION LISTING PAGE: HERO ===== */
body[class*="meditation"]:not(.single-meditation) .hero-block {
  padding-top: 220px;
  padding-bottom: 80px;
  min-height: 450px;
  display: flex;
  align-items: flex-end;
  border-radius: 0;
  margin-top: -90px
}

body[class*="meditation"]:not(.single-meditation) .hero-block__overlay {
  background: rgba(0, 0, 0, 0.7);
  border-radius: 0
}

body[class*="meditation"]:not(.single-meditation) .hero-block__content {
  width: 100%
}

body[class*="meditation"]:not(.single-meditation) .hero-block__content .container {
  text-align: center;
  max-width: 720px;
  margin: 0 auto
}

body[class*="meditation"]:not(.single-meditation) .hero-block__content .above-heading {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #eff6e7 !important;
  margin-bottom: 16px;
  text-align: center
}

body[class*="meditation"]:not(.single-meditation) .hero-block__content .heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 52px;
  line-height: 0.9;
  letter-spacing: -0.05em;
  color: #eff6e7 !important;
  margin-bottom: 22px;
  text-align: center
}

body[class*="meditation"]:not(.single-meditation) .hero-block__description {
  text-align: center;
  max-width: 520px;
  margin: 0 auto
}

body[class*="meditation"]:not(.single-meditation) .hero-block__description p {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.3;
  color: #eff6e7 !important;
  text-align: center;
  margin: 0
}

@media (min-width: 1025px) {
  body[class*="meditation"]:not(.single-meditation) .hero-block {
    padding-top: 280px;
    padding-bottom: 100px;
    min-height: 450px;
    margin-top: -220px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__content .heading {
    font-size: 67px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__description p {
    font-size: 17px
  }
}

@media (max-width: 768px) {

  /* ── Meditation listing – MOBILE hero (left-aligned per Figma) ── */
  body[class*="meditation"]:not(.single-meditation) .hero-block {
    padding-top: 100px;
    padding-bottom: 0px;
    min-height: auto;
    background-image: none !important
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__overlay {
    display: none
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__content {
    width: 87% !important;
    margin-left: auto;
    margin-right: auto;
    padding-top: 48px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__content .container {
    text-align: left;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__content .above-heading {
    font-size: 14px;
    letter-spacing: 1.4px;
    text-align: left;
    margin-bottom: 10px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__content .heading {
    font-size: 80px;
    line-height: 0.9;
    letter-spacing: -4px;
    text-align: left;
    margin-bottom: 16px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__description {
    text-align: left;
    max-width: 350px;
    margin: 0
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block__description p {
    font-size: 17px;
    text-align: left
  }

  /* ── Meditation listing – MOBILE divider after hero ── */
  body[class*="meditation"]:not(.single-meditation) .hero-block+.acf-block.divider-block {
    padding-left: 20px;
    padding-right: 20px
  }

  body[class*="meditation"]:not(.single-meditation) .hero-block+.acf-block.divider-block .divider-block__item {
    max-width: 350px
  }

  /* ── Meditation listing – MOBILE cards ── */
  body[class*="meditation"]:not(.single-meditation) .post-card-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block__item--meditation {
    gap: 20px
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block__item--meditation a {
    min-height: 180px;
    border-radius: 0px;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0;
    padding: 28px 24px 28px 20px
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block__item--meditation .post-card-block__item--title {
    font-size: 40px !important;
    letter-spacing: -2px !important;
    margin-bottom: 4px
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block__item--meditation .post-card-block__item--duration {
    display: none !important
  }

  body[class*="meditation"]:not(.single-meditation) .post-card-block__item--meditation .post-card-block__item--cta {
    bottom: 20px;
    right: 24px;
    font-size: 17px
  }

  /* ── Meditation listing – MOBILE bottom section ── */
  body[class*="meditation"]:not(.single-meditation) .meditation-bottom-section {
    margin-left: auto;
    margin-right: auto;
    border-radius: 0px;
    margin-bottom: 120px;
    margin-top: -227px;
    max-width: 100%;
    position: relative;
    padding: 80px 24px 60px;
    text-align: center;
    overflow: hidden;
    background-image: url(https://members.nymphofneptune.com/wp-content/uploads/2026/04/fondo.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: nowrap;
    flex-direction: row
  }

  body[class*="meditation"]:not(.single-meditation) .meditation-bottom-heading {
    font-size: 40px;
    letter-spacing: -2px
  }
}

/* ===== MEDITATION LISTING PAGE: CARD AREA ===== */
body[class*="meditation"]:not(.single-meditation) .post-card-block {
  padding-top: 50px;
  padding-bottom: 50px
}

body[class*="meditation"]:not(.single-meditation) .post-card-block .container {
  width: 80%;
  max-width: 80%;
  margin: 0 auto
}

@media (min-width: 1025px) {
  body[class*="meditation"]:not(.single-meditation) .post-card-block {
    padding-top: 70px;
    padding-bottom: 70px
  }
}

/* ===== MEDITATION LISTING PAGE: BOTTOM SECTION ===== */
.meditation-bottom-section {
  margin-left: auto;
  margin-right: auto;
  border-radius: 15px;
  margin-bottom: 120px;
  margin-top: -259px;
  max-width: 80%;
  position: relative;
  padding: 80px 24px 100px;
  text-align: center;
  overflow: hidden;
  background-image: url('https://members.nymphofneptune.com/wp-content/uploads/2026/04/fondo.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  align-content: center;
  flex-wrap: nowrap;
  flex-direction: row
}

.meditation-bottom-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1
}

.meditation-bottom-section__inner {
  position: relative;
  z-index: 2;
  max-width: 680px;
  margin: 0 auto
}

.meditation-bottom-heading {
  font-family: 'Cormorant', serif;
  font-weight: 300;
  font-size: 32px;
  line-height: 1;
  letter-spacing: -0.05em;
  color: #eff6e7;
  margin-bottom: 18px;
  text-align: center
}

@media (min-width: 1025px) {
  .meditation-bottom-heading {
    font-size: 40px
  }
}

.meditation-bottom-eyebrow {
  font-family: 'Inter', sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 130%;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #eff6e7;
  opacity: 0.5;
  margin-bottom: 48px;
  text-align: center
}

.meditation-bottom-cta {
  font-family: 'Inter', sans-serif;
  font-weight: 400;
  font-size: 17px;
  line-height: 130%;
  color: #eff6e7;
  text-align: center
}

.meditation-bottom-cta a {
  color: #eff6e7;
  text-decoration: underline;
  text-underline-offset: 3px
}

/* ── Bottom section: desktop/mobile toggle ── */
.meditation-bottom--mobile {
  display: none
}

@media (max-width: 768px) {
  .meditation-bottom--desktop {
    display: none
  }

  .meditation-bottom--mobile {
    display: block
  }
}

/* ── Tabs block: mobile spacing & title size ── */
@media (max-width: 1024px) {
  .tabs-block .tabs-list {
    gap: 24px;
    justify-content: flex-start;
  }

  .tabs-block .tabs-list__item--label {
    font-size: 0.6rem;
    letter-spacing: 0.07rem;
  }

  .tabs-block .tabs-list__item--title {
    font-size: 1.25rem;
    line-height: 115%;
  }
}

/* ── Transactional pages: horizontal breathing room on mobile ── */
@media (max-width: 1024px) {
  /* share-with-a-friend, edit-account */
  .sign-up-form-block {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* forgot-password, reset-password */
  .page-template-page-forgot-password .sign-in-form,
  .page-template-page-reset-password .sign-in-form {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* PMPro checkout & cancel */
  .pmpro {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

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