html {
    font-size: 62.5%;
    overflow-x: hidden;
}

:root {
    --color-forest-deep: #163229;
    --color-forest: #26493d;
    --color-sage: #7d9b85;
    --color-mist: #edf3ee;
    --color-sand: #efe4d0;
    --color-gold: #c79a4a;
    --color-ink: #1b2420;
    --shadow-soft: 0 24px 60px rgba(20, 42, 34, 0.22);
}

body,
h1, h2, h3, h4, h5, h6 {
    font-family: 'Alef', sans-serif;
}

body {
    overflow-x: hidden;
    width: 100%;
    max-width: 100vw;
}

.container,
.container-fluid {
    overflow-x: hidden;
}

h1 {
    font-size: 3.6rem;
}

h2,
section h2 {
    font-size: 3.2rem;
}

h3 {
    font-size: 2.6rem;
}

h4 {
    font-size: 2.2rem;
}

h5 {
    font-size: 1.6rem;
}

h6 {
    font-size: 1.4rem;
}
.larger-text {
    font-size: 2.4rem;
}
ul, li {
    list-style: none;
    padding: 0;
}
.stroke-text {
    text-decoration: line-through;
}
/*form*/

.is-bold {
    font-weight: 700;
}

.white-text {
    color: #fff;
}


.class-times {
  opacity: 0;
  transform: translateY(-30px);
  transition: transform 0.8s ease-in-out, opacity 1.2s ease;
  flex-flow: column nowrap;
  margin-top: 28px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  backdrop-filter: none;
  box-shadow: none;
}

.class-times.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.class-times div {
    font-size: 1.8rem;
    color: rgba(255, 248, 240, 0.96);
    line-height: 1.7;
    text-shadow: 0 6px 18px rgba(0, 0, 0, 0.24);
}
.class-times h3 {
    font-size: 1.8rem;
    margin-top: 10px;
}
.first-slide .class-times ul {
    margin: 0;
}
.first-slide .class-times ul li {
    font-size: 1.6rem;
    font-weight: 400;
}
.first-slide .class-times ul li:before {
margin-left: 5px;
}

/* initial style */
form {
    max-width: 320px;
    /*margin-top: 20px;*/
}

.parallax {
    background-attachment: fixed !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

.margin-auto {
    margin: 0 auto;
    float: none;
}

.all-input-wrap {
    text-align: right;
}

.single-input-wrap input {
    color: #000;
    bottom: 0;
    width: 100%;
    border: none;
    outline: none;
    padding: 10px;
    font-size: 2.4rem;
    position: relative;
    background: transparent;
    transition: all 0.5s ease-in-out;
    border-bottom: 1px solid #E0E0E0;
    margin-top: 30px;
}

.single-input-wrap {
    position: relative;
}

label {
    bottom: 10px;
    color: #333;
    font-size: 2rem;
    position: absolute;
    pointer-events: none;
    transition: 0.5s ease-in-out;
    right: 0;
}

.bar {
    bottom: 2px;
    width: 100%;
    position: absolute;
}

input.filled {
    border-bottom: 1px solid #2196F3;
}

input:focus ~ label,
input.filled ~ label {
    bottom: 55px;
    color: #de176e;
    font-size: 1.6rem;
}

.bar:before, .bar:after {
    content: "";
    width: 0;
    height: 2px;
    position: absolute;
    background: #17a9ff;
    transition: all 0.2s ease-in-out;
}

.bar:before {
    left: 50%;
}

.bar:after {
    right: 50%;
}

input:focus ~ .bar:before,
input:focus ~ .bar:after {
    width: 50%;
}

input:valid {
    border-bottom: 1px solid #17a9ff;
}

input:valid ~ .bar:before,
input:valid ~ .bar:after {
    background: #17a9ff !important;
}

input:valid ~ label {
    color: #17a9ff;
}

@keyframes btn-alt-gradient-animation {
    0% {
        background-position: 0% 50%
    }
    100% {
        background-position: 100% 50%
    }
    /*100%{background-position:0% 50%}*/
}
.checkbox-input-wrap {
    position: relative;
    margin-top: 40px;
}
.checkbox-input-wrap input {
    position: absolute;
    width: 15px;
    height: 15px;
}

.all-input-wrap .checkbox-input-wrap label {
    color: #333;
    font-size: 1.4rem;
    position: relative;
    margin-right: 25px;
    bottom: unset;
}
.submit-btn {
    display: block;
    margin: 20px auto 0;
    background: #989eae;
    padding: 10px 20px;
    font-size: 2.4rem;
    color: #fcfcfc;
    font-weight: 400;
    border: 0;
    letter-spacing: .8px;

    transition: opacity .3s;
    background-image: linear-gradient(-41deg, #ec276e 0, #a22885 100%);
    background-image: linear-gradient(-41deg, #ec276e 0, #a22885 100%);
    background-image: linear-gradient(-33deg, #ff0d64 0, #9c3483 100%);
    background-size: 150% 150%;
    animation-direction: reverse;
    box-shadow: 0 0 10px rgba(0, 0, 0, .2);
}

.submit-btn:hover {
    text-decoration: none;
    color: inherit;
    animation: btn-alt-gradient-animation .1s ease-in-out 1 forwards;
    color: #fff;
}

.submit-btn:valid {
    border-bottom: none;
}

/*my styles*/

/*************/
/*FIRST SLIDE*/
/*************/

.first-slide-top {
}

.first-slide-bot {
    padding-top: 56px;
    padding-bottom: 56px;
}

.first-slide-bot .row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    min-height: calc(100vh - 86px);
}

.first-slide-bot h1 {
    margin-bottom: 15px;
}

.logo-wrap {
    color: #f3f3f3;
}

.first-slide .logo-wrap h1.logo {
    font-size: 2rem;
}


.first-slide h1 {
    color: #fff;
    font-weight: bold;
    line-height: 1.15;
    text-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.first-slide h2 {
    color: #fff;
    line-height: 1.44;
    margin-top: 0;
}

.first-slide .smaller-text {
    font-size: 1.8rem;
    color: #f3f3f3;
}

.first-slide ul {
    margin-top: 30px;
    margin-bottom: 60px;
}

.first-slide ul li {
    font-size: 2.8rem;
    color: #fff;
    /* text-align: center; */
}

.first-slide ul li:before {
    content: '+';
    /* border: 1px solid #fff; */
    /* border-radius: 50%; */
    /* width: 6px; */
    /* height: 6px; */
    margin-left: 15px;
    display: inline-block;
    /* background: #fff; */
    /* margin-top: 15px; */
    vertical-align: top;
}

.first-slide .section-heading {
    width: 80%;
}

header.masthead {
    background-size: cover;
    padding-top: 30px;
    height: auto;
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(110deg, rgba(8, 22, 18, 0.72) 0%, rgba(18, 45, 37, 0.58) 42%, rgba(16, 33, 27, 0.34) 100%),
        radial-gradient(circle at 22% 22%, rgba(239, 228, 208, 0.22), transparent 34%),
        url("../img/A7302201.jpg");
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

header.masthead::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, rgba(13, 28, 23, 0.58), rgba(13, 28, 23, 0.08) 35%),
        linear-gradient(to left, rgba(9, 20, 17, 0.12), transparent 30%);
    pointer-events: none;
}

header.masthead .container,
header.masthead .row,
header.masthead .col-sm-6 {
    position: relative;
    z-index: 1;
}

.main-text {
    max-width: 580px;
    padding: 28px 0;
}

.main-text > h3 {
    color: #f6efe1 !important;
    text-shadow: 0 8px 24px rgba(0, 0, 0, 0.22);
}

.hero-logo-badge {
    display: inline-flex;
    align-items: center;
    margin: 0 0 20px;
    padding: 0;
    overflow: hidden;
    border-radius: 0;
    background: transparent;
    border: 0;
    backdrop-filter: none;
}

.hero-logo {
    display: block;
    width: min(100%, 204px);
    height: auto;
    transform: translateX(-18px);
    transform-origin: center center;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

.main-title {
    max-width: 9ch;
    margin-top: 0;
    margin-bottom: 24px;
    font-size: clamp(4.8rem, 7vw, 8.4rem);
    font-weight: 700;
}

.main-text > h3:last-of-type {
    max-width: 52rem;
    margin: 0;
    font-size: 2.3rem;
    line-height: 1.75;
    font-weight: 400;
}

   .form-promise {
        margin-top: 15px;
        color: rgba(27, 36, 32, 0.78);
        font-size: 1.5rem;
        line-height: 1.7;
    }
/*.first-slide-video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: -100;
  -ms-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background: url(img/bg09.jpg) no-repeat;
  background-size: cover;
}*/
.form-wrap {
    color: #000;
    margin: 0 auto;
    max-width: 380px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(247, 244, 237, 0.9));
    padding: 34px 30px 26px 22px;
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 28px;
    box-shadow: var(--shadow-soft);
    backdrop-filter: blur(16px);
}

.hero-form-column {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-end;
}

.hero-form-wrap {
    position: relative;
    max-width: 348px;
    margin: 110px 0 0 auto;
    transform: translateX(-50px);
    padding: 22px 20px 18px;
    color: #fff;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 30px;
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.16);
    backdrop-filter: blur(10px);
}

.hero-form-wrap::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    border: 1px solid rgba(255, 255, 255, 0.05);
    pointer-events: none;
}

.form-wrap h2 {
    color: #000;
    font-weight: bold;
}

.form-wrap h3 {
    margin-top: 0;
    margin-bottom: 12px;
    color: var(--color-forest-deep);
    font-weight: 700;
    line-height: 1.3;
}

.hero-form-subtitle {
    margin: 0 0 16px;
    color: rgba(255, 248, 240, 0.96);
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
}

.hero-name-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.first-slide .bonus li {
    color: #000;
    font-size: 1.8rem;
    background: rgb(255, 251, 103);
    /*font-weight: bold;*/
    margin-bottom: 10px;
    padding: 0 7px 0 7px;
    max-width: fit-content;
}

.section-contact .bonus {
    font-size: 2.4rem;
    color: #fff;
    /* background: yellow; */
    opacity: 1;
    text-shadow: 1px 1px 1px #333;
    padding: 0 7px 0 7px;
    max-width: fit-content;
    font-weight: bold;

}

section.second-slide {
    padding: 40px 0;
    background: #FFF;
    color: #000;
}

section#download.second-slide {
    
}

.second-slide .section-heading {
    margin-bottom: 40px;
}

section.second-slide p {
    font-size: 2.2rem;
    text-align: right;
}

.benefits-grid {
    margin: 0;
}

.benefits-grid .row {
    display: flex;
    flex-wrap: wrap;
}

.benefits-grid .row > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.benefit-box {
    background: #fff;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 12px 30px rgba(34, 57, 47, 0.08);
    transition: all 0.3s ease;
    text-align: right;
    border-top: 3px solid var(--color-gold);
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.benefit-box:hover {
    box-shadow: 0 18px 36px rgba(34, 57, 47, 0.14);
    transform: translateY(-6px);
}

.benefit-box h4 {
    font-size: 2.2rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 15px;
    margin-top: 0;
    flex-shrink: 0;
}

.benefit-box p {
    font-size: 1.8rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
    flex: 1;
}

/* New section styles */
.subtitle-text {
    font-size: 1.6rem;
    color: #666;
    font-style: italic;
    margin-bottom: 30px;
    text-align: right;
}

.approach-grid {
    margin: 40px 0;
}

.approach-grid .row {
    display: flex;
    flex-wrap: wrap;
}

.approach-grid .row > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.approach-box {
    background: #fff;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    text-align: right;
    border-top: 3px solid #17a9ff;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.approach-box:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
    transform: translateY(-5px);
}

.approach-box h4 {
    font-size: 2.2rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 15px;
    margin-top: 0;
    flex-shrink: 0;
}

.approach-box p {
    font-size: 1.8rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
    flex: 1;
}

.no-preparation-section {
    background: rgba(255, 255, 255, 0.7);
    border-radius: 8px;
    text-align: right;
}

.no-preparation-section h3 {
    font-size: 2.6rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.no-preparation-section p {
    font-size: 2rem;
    color: #666;
    line-height: 1.6;
}

.chi-gong-section {
    margin-top: 60px;
}

.chi-gong-section h2 {
    margin-bottom: 30px;
}

.chi-gong-benefits {
    margin: 40px 0;
}

.chi-gong-benefits .row {
    display: flex;
    flex-wrap: wrap;
}

.chi-gong-benefits .row > [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.chi-gong-box {
    background: #fff;
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    text-align: right;
    border-top: 3px solid #17a9ff;
    display: flex;
    flex-direction: column;
    flex: 1;
    height: 100%;
}

.chi-gong-box:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
    transform: translateY(-5px);
}

.chi-gong-box h4 {
    font-size: 2.2rem;
    font-weight: bold;
    color: #333;
    margin-bottom: 15px;
    margin-top: 0;
}

.chi-gong-box p {
    font-size: 1.8rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 0;
}

.second-slide .stamp-wrap {
    width: 120px;
}

.second-slide .stamp-wrap img {
    width: 100%;
}

.course-benefits-slide {
    background: url(../img/bg07.jpg), #fff;
    color: #FFF;
    /* background-position: top; */
    padding: 60px 0 100px;
}

.course-benefits-slide .section-title {
    text-align: center;
    font-weight: bold;
    color: #000;
    font-size: 2.8rem;
}

.course-benefits-slide-ul li {
    /*margin-right: 40px;*/
    margin-bottom: 30px;
    font-size: 2.4rem;
}

.course-benefits-slide-ul li:before {
    content: '+';
    /* border: 1px solid #fff; */
    /* border-radius: 50%; */
    /* width: 6px; */
    /* height: 6px; */
    margin-left: 15px;
    display: inline-block;
    /* background: #fff; */
    /* margin-top: 15px; */
    vertical-align: top;
}

/*course goals section*/

.course-goals {
    background: url(../img/bg07.jpg), #fff;
    color: #FFF;
    /* background-position: top; */
    padding: 60px 0 100px;
}

.lessons-slide {
    background: url(../img/ocean.jpg), #fff;
    color: #000;
    /* background-position: top; */
    padding: 60px 0 100px;
    background-size: cover;
    /*background-position: ;*/
}

.course-goal-logo {
    width: 100px;
    height: 100px;
    margin: 0 auto;
    margin-top: 20px;
}

.course-goals h3 {
    text-align: center;
    margin-bottom: 20px;
}

.course-goal-single {
    display: flex;
    flex-flow: column nowrap;
    height: 100%;
    color: #000;
    max-width: 100%;
    margin-top: 40px;
}
.course-goal-single h3 {
    font-weight: bold;
    margin-bottom: 20px;
}

.course-goal-single p {
    text-align: justify;
    max-width: 90%;
    text-align: center;
    margin: 0 auto;
}

/*about section*/

.about-section {
    background: url(../img/bg09.jpg), #fff;
    padding: 50px;
    padding-bottom: 0px;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#a2a0bc+2,ffffff+100 */
    background: #a2a0bc; /* Old browsers */
    background: -moz-linear-gradient(top, #a2a0bc 2%, #ffffff 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, #a2a0bc 2%, #ffffff 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, #a2a0bc 2%, #ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a2a0bc', endColorstr='#ffffff', GradientType=0); /* IE6-9 */
    color: #000;
    /* box-shadow: inset 0px 30px 50px rgba(0,0,0,.1); */
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,a2a0bc+32,ffffff+100&1+1,0.3+31,1+100 */
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(252, 252, 253, 1) 1%, rgba(165, 163, 190, 0.3) 31%, rgba(162, 160, 188, 0.31) 32%, rgba(255, 255, 255, 1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(252, 252, 253, 1) 1%, rgba(165, 163, 190, 0.3) 31%, rgba(162, 160, 188, 0.31) 32%, rgba(255, 255, 255, 1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(252, 252, 253, 1) 1%, rgba(165, 163, 190, 0.3) 31%, rgba(162, 160, 188, 0.31) 32%, rgba(255, 255, 255, 1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#ffffff', GradientType=0); /* IE6-9 */
}

.logos-section {
    background: #fff;
    margin: 0 auto;
    padding: 0;
    padding-top: 20px;
    padding-bottom: 40px;
}

.logos-section .container {
    /* width: 90% !important; */
}

.partners-title {
    margin-bottom: 30px;
    margin-top: 30px;
    text-align: center;
}

.about-logo-wrap {
    /* padding-bottom: 50px; */
    min-height: 140px;
    display: flex;
    justify-content: center;
    position: relative;
}

.about-logo {
    align-self: center;
    max-height: 100px;
    max-width: calc(100% - 10px);
    max-height: 80px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.about-section h3 {
    /* color: #fff; */
    font-size: 3.2rem;
    margin-bottom: 40px;
}

.about-section p {
    /* color: #fff; */
    font-size: 2.2rem;
}

.about-section .row {
    display: flex;
    align-items: center;
}

.about-section .profile-img {
    width: 80%;
    max-width: 240px;
    height: 0;
    padding-bottom: 100%; /* Creates perfect square - height equals width */
    border-radius: 50%; /* Makes it a perfect circle */
    /* box-shadow: 0px 0px 5px rgba(0,0,0,.5); */
    border: 10px solid #FFF;
    margin: 0 auto;
    background-image: url(../img/02_face.JPG);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: block;
    overflow: hidden; /* Ensures content stays within circle */
    box-sizing: content-box; /* Don't include border in width calculation for padding-bottom */
    position: relative;
}

/* Modern browsers - use aspect-ratio if supported */
@supports (aspect-ratio: 1 / 1) {
    .about-section .profile-img {
        aspect-ratio: 1 / 1;
        height: auto;
        padding-bottom: 0;
        box-sizing: border-box;
    }
}

/*testemonials section*/

.testemonials-section {
    /*background: url('img/bg07.jpg') cover;*/
    background: url(../img/bg07.jpg), #fff;
    padding: 60px 0 100px;
}

.testemonials-single {
    background: #FFF;
    box-shadow: 0 0 30px #ddd;
    padding: 10px;
    /* border-radius: 20px; */
    /* margin: 0 auto; */
    /* text-align: center; */
    margin-top: 40px;
}

.testemonials-name {
    /* background: red; */
    font-size: 2rem;
    /* margin-top: 56px; */
    padding-right: 30px;
    /*font-weight: bold;*/
}
.testemonials-profession {
    padding-right: 4px;
    font-size: 2rem;
    font-weight: normal;
}
.testemonials-img {
    background: red;
    width: 100px;
    border-radius: 50%;
}

.testemonials-txt {
    /* background: red; */
    margin-bottom: 10px;
    text-align: justify;
    font-size: 2.4rem;
    font-style: italic;
}

/*faq section*/

.section-faq {
    padding: 40px 0;
}

.section-title.faq-title {
    margin-bottom: 30px;
}

.question {
    position: relative;
    color: #428bca;
    font-size: 2.4rem;
    font-weight: bold;
    cursor: pointer;
    margin: 0px 0 15px 0;
    padding-top: 15px;
    border-top: 1px solid #eee;
    padding-right: 20px;
}

.question:before {
    position: absolute;
    content: '+';
    width: 10px;
    height: 10px;
    /* background: purple; */
    right: 0;
    top: 15px;
}

.question.question-active:before {
    position: absolute;
    content: '-';
    width: 10px;
    height: 10px;
    /* background: green; */
}
.answer p {
    font-size: 2rem;
}
/*section contact*/

.section-contact {
    background: url(../img/cherry-blossom.jpg), #fff;
    position: relative;
}

.section-contact::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.5);
    z-index: 0;
}

.section-contact > * {
    position: relative;
    z-index: 1;
}

footer {
    padding: 0;
    color: #000;
    text-align: right;
}
footer p {
    font-size: 2rem;
    margin: 0;
}
footer .form-wrap {
    box-shadow: none;
    border-right: 1px solid rgba(0,0,0,.08);

}

.lesson-info-wrap {
    /*display: flex;*/
    /*flex-flow: column wrap;*/
    counter-reset: lesson-counter;
}

.lesson-info {
    margin-top: 20px;
    flex: 1 1 auto;

    /*height: 250px;*/
    /*overflow-y: scroll;*/
    position: relative;
    border-right: 5px solid #cacaca;
    margin-right: 50px;
}

.lesson-info:before {
    content: counter(lesson-counter);
    counter-increment: lesson-counter;
    position: absolute;
    right: -50px;
    top: 50%;
    transform: translateY(-50%);
    font: bold 26px/1 Sans-Serif;

}

.lesson-info-wrap .lesson-info h3,
.lesson-info-wrap .lesson-info h4 {
    text-align: right;
    margin-right: 15px;
    padding-right: 15px;
    font-weight: bold;
    margin-top: 0;
}

.lesson-info-wrap .lesson-info .lesson-info-text {
    margin-right: 15px;
    padding-right: 15px;

}

.lesson-info-wrap .lesson-info p {
    font-size: 1.8rem;
    margin-bottom: 10px;
    text-align: justify;
    padding-left: 60px;
}

.lesson-info-date {
    font-size: 2rem;
    margin-right: 30px;
    margin-bottom: 0;
}
.has-shadow {
    box-shadow: 0 0 50px #bbb;
}
.white-bg {
    background: #fff;
}
.white-bg-20 {
    background: rgba(255, 255, 255, .7);
    padding: 20px;
}
.white-bg-50 {
    background: rgba(255, 255, 255, .7);
    padding: 50px;
}
.notice-text {
    font-weight: bold;
    padding: 30px 50px;
    background: #efefef;
    margin: 20px 80px;
}

.program-includes li {
    /*margin-right: 40px;*/
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: bold;
}

.program-includes li:before {
    content: '+';
    /* border: 1px solid #fff; */
    /* border-radius: 50%; */
    /* width: 6px; */
    /* height: 6px; */
    margin-left: 15px;
    display: inline-block;
    /* background: #fff; */
    /* margin-top: 15px; */
    vertical-align: top;
}

.mini-section {
    margin-top: 40px;
    margin-bottom: 40px;
}
.align-right {
    text-align: right;
}
.align-center {
    text-align: center;
}
.margin-top-40 {
    margin-top: 40px;
}
.margin-bottom-40 {
    margin-bottom: 40px;
}

/* sent page style */

.sent-page header.masthead {
    height: 100%;
    background: url(../img/ocean.jpg), #fff;
}

.sent-page .first-slide-bot {
    padding-top: 60px;
}
.sent-page .first-slide h2 {
    /*margin-top: 40px;*/
    margin-bottom: 0;
}
.sent-page .first-slide a {
    font-size: 1.6rem;
    cursor: pointer;
    color: #000;
    transition: color ease-in-out .2s;
    text-decoration: underline;
    margin-top: 30px;
    display: block;
}
.sent-page .first-slide a:hover {
    opacity: .6;
}
.sent-page .form-wrap {
    min-height: 500px;
    display: flex;
    flex-flow: column nowrap;
    justify-content: space-between;
    width: 100%;
    max-width: unset;
}

.player-box {
    display: flex;
    border-radius: 50px;
    padding: 0px 10px;
    border: 1px solid #ff0d64;
    width: 320px;
    margin: 30px 0 50px;
}
.seperator {
    border-top: 1px solid #ddd;
    width: 96%;
    margin: 20px auto;

}
audio {
    outline: none;
}
.highlight {
    display: inline-block;
    background: linear-gradient(120deg, rgba(199, 154, 74, 0.22), rgba(239, 228, 208, 0.7));
    color: var(--color-forest-deep);
    padding: 4px 10px;
    border-radius: 999px;
    font-weight: 700;
}
.highlight-white {
      background: rgba(255, 255, 255, 0.8);
}
.highlight-red {
  display: inline-block;
  background: rgba(255, 0, 0, 0.8);
  padding: 0 7px;
  color: #fff;
}
/* Mailchimp form styles - matching original form */
/* High specificity to override MailChimp defaults */
#mc_embed_shell,
#mc_embed_shell_bottom {
    max-width: 320px !important;
}

#mc_embed_signup,
#mc_embed_signup_bottom {
    background: transparent !important;
    width: 100% !important;
    max-width: 320px !important;
    font-family: 'Alef', sans-serif !important;
    clear: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#mc_embed_signup_scroll,
#mc_embed_signup_scroll_bottom {
    text-align: right !important;
    width: 100% !important;
}

#mc_embed_signup .indicates-required,
#mc_embed_signup_bottom .indicates-required {
    display: none !important;
}

#mc_embed_signup .asterisk,
#mc_embed_signup_bottom .asterisk {
    display: none !important;
}

#mc_embed_signup .mc-field-group,
#mc_embed_signup_bottom .mc-field-group {
    position: relative !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    float: none !important;
}

#mc_embed_signup .mc-field-group label,
#mc_embed_signup_bottom .mc-field-group label {
    bottom: 14px !important;
    color: rgba(38, 73, 61, 0.88) !important;
    font-size: 2rem !important;
    position: absolute !important;
    pointer-events: none !important;
    transition: 0.5s ease-in-out !important;
    right: 0 !important;
    left: auto !important;
    font-weight: normal !important;
    margin-bottom: 0 !important;
    margin-top: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}

#mc_embed_signup .mc-field-group input[type="email"],
#mc_embed_signup .mc-field-group input[type="text"],
#mc_embed_signup .mc-field-group input[type="tel"],
#mc_embed_signup_bottom .mc-field-group input[type="email"],
#mc_embed_signup_bottom .mc-field-group input[type="text"],
#mc_embed_signup_bottom .mc-field-group input[type="tel"] {
    color: var(--color-ink) !important;
    bottom: 0 !important;
    width: 100% !important;
    border: none !important;
    border: 1px solid rgba(38, 73, 61, 0.12) !important;
    outline: none !important;
    padding: 14px 12px 10px !important;
    font-size: 2.4rem !important;
    position: relative !important;
    background: rgba(255, 255, 255, 0.72) !important;
    transition: all 0.5s ease-in-out !important;
    margin-top: 30px !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
    display: block !important;
}










#mc_embed_signup .clear,
#mc_embed_signup_bottom .clear {
    margin-top: 20px !important;
    text-align: center !important;
    clear: both !important;
    width: 100% !important;
}

#mc_embed_signup #mc-embedded-subscribe,
#mc_embed_signup input[type="submit"].button,
#mc_embed_signup_bottom #mc-embedded-subscribe-bottom,
#mc_embed_signup_bottom input[type="submit"].button {
    display: block !important;
    margin: 20px auto 0 !important;
    background: var(--color-forest) !important;
    padding: 14px 24px !important;
    font-size: 2.1rem !important;
    color: #fcfcfc !important;
    font-weight: 700 !important;
    border: 0 !important;
    letter-spacing: 0.02em !important;
    transition: transform .25s ease, box-shadow .25s ease, opacity .3s !important;
    background-image: linear-gradient(135deg, #24473b 0%, #305f4f 48%, #9a7442 100%) !important;
    background-size: 180% 180% !important;
    animation-direction: reverse !important;
    box-shadow: 0 16px 34px rgba(36, 71, 59, 0.26) !important;
    cursor: pointer !important;
    width: auto !important;
    text-align: center !important;
    text-decoration: none !important;
    border-radius: 999px !important;
    height: auto;
}

#mc_embed_signup #mc-embedded-subscribe:hover,
#mc_embed_signup input[type="submit"].button:hover,
#mc_embed_signup_bottom #mc-embedded-subscribe-bottom:hover,
#mc_embed_signup_bottom input[type="submit"].button:hover {
    text-decoration: none !important;
    color: #fff !important;
    animation: btn-alt-gradient-animation .1s ease-in-out 1 forwards !important;
    transform: translateY(-2px) !important;
}

#mc_embed_signup .response,
#mc_embed_signup_bottom .response {
    font-size: 1.6rem !important;
    margin-top: 10px !important;
    text-align: right !important;
    padding: 0 !important;
}

/* Mailchimp form checkbox styling */
#mc_embed_signup .checkbox-input-wrap,
#mc_embed_signup_bottom .checkbox-input-wrap {
    position: relative;
    margin-top: 40px;
}

#mc_embed_signup .checkbox-input-wrap input,
#mc_embed_signup_bottom .checkbox-input-wrap input {
    position: absolute;
    width: 15px;
    height: 15px;
}

#mc_embed_signup .checkbox-input-wrap label,
#mc_embed_signup_bottom .checkbox-input-wrap label {
    color: rgba(27, 36, 32, 0.86);
    font-size: 1.4rem;
    position: relative;
    margin-right: 25px;
    bottom: unset;
    pointer-events: auto;
}

/* Bottom form styles - consolidated with top form styles above */

#mc_embed_signup .mc-field-group::before,
#mc_embed_signup_bottom .mc-field-group::before {
    content: "" !important;
    width: 0 !important;
    height: 2px !important;
    position: absolute !important;
    background: var(--color-gold) !important;
    transition: all 0.2s ease-in-out !important;
    bottom: 0 !important;
    left: 50% !important;
    z-index: 1 !important;
}

#mc_embed_signup .mc-field-group::after,
#mc_embed_signup_bottom .mc-field-group::after {
    content: "" !important;
    width: 0 !important;
    height: 2px !important;
    position: absolute !important;
    background: var(--color-gold) !important;
    transition: all 0.2s ease-in-out !important;
    bottom: 0 !important;
    right: 50% !important;
    z-index: 1 !important;
}

#mc_embed_signup .mc-field-group input:focus ~ label,
#mc_embed_signup .mc-field-group input.filled ~ label,
#mc_embed_signup .mc-field-group.has-value label,
#mc_embed_signup .mc-field-group.is-focused label,
#mc_embed_signup_bottom .mc-field-group input:focus ~ label,
#mc_embed_signup_bottom .mc-field-group input.filled ~ label,
#mc_embed_signup_bottom .mc-field-group.has-value label,
#mc_embed_signup_bottom .mc-field-group.is-focused label {
    bottom: 55px !important;
    color: var(--color-forest) !important;
    font-size: 1.6rem !important;
}

#mc_embed_signup .mc-field-group input.filled,
#mc_embed_signup_bottom .mc-field-group input.filled {
    border-bottom: 1px solid #E0E0E0 !important;
}

#mc_embed_signup .mc-field-group.is-focused::before,
#mc_embed_signup .mc-field-group.is-focused::after,
#mc_embed_signup_bottom .mc-field-group.is-focused::before,
#mc_embed_signup_bottom .mc-field-group.is-focused::after {
    width: 50% !important;
}

#mc_embed_signup .mc-field-group input:focus,
#mc_embed_signup_bottom .mc-field-group input:focus {
    border-bottom: none !important;
}

#mc_embed_signup .mc-field-group input:valid,
#mc_embed_signup_bottom .mc-field-group input:valid {
    border-bottom: 1px solid #E0E0E0 !important;
}

#mc_embed_signup .mc-field-group input:valid:focus,
#mc_embed_signup_bottom .mc-field-group input:valid:focus {
    border-bottom: none !important;
}

#mc_embed_signup .mc-field-group.is-focused.is-valid::before,
#mc_embed_signup .mc-field-group.is-focused.is-valid::after,
#mc_embed_signup_bottom .mc-field-group.is-focused.is-valid::before,
#mc_embed_signup_bottom .mc-field-group.is-focused.is-valid::after {
    background: var(--color-gold) !important;
    width: 50% !important;
}

#mc_embed_signup .mc-field-group.is-focused.is-valid label,
#mc_embed_signup_bottom .mc-field-group.is-focused.is-valid label {
    color: var(--color-forest) !important;
}

/* Bottom form styles consolidated above */

/* responsive */
@media screen and (max-width: 600px) {
    header.masthead {
        padding-top: 0;
        background-position: 58% center;
    }
    .first-slide-bot .row {
        min-height: auto;
    }
    .notice-text {
        margin: 20px;
        padding: 10px;
    }

    .lesson-info {
        margin-right: 0;
    }
    .lesson-info-wrap .lesson-info p {
        padding-left: 0;
    }
    .lesson-info:before {
    margin-right: 18px;
    top: 16px;
    font-size: 3.2rem;
    }
    .main-title {
        margin-top: 0;
        margin-bottom: 20px;
        font-size: 5rem;
    }
    .main-text {
        margin-bottom: 32px;
        padding-top: 40px;
    }
 
    .form-wrap {
      padding: 24px 18px 28px 18px;
      border-radius: 24px;
    }
    .hero-form-column {
        justify-content: center;
    }
    .hero-form-wrap {
        max-width: 100%;
        margin-top: 8px;
        transform: translateX(0);
        padding: 18px 16px 16px;
        border-radius: 26px;
    }
    .hero-logo-badge {
        padding: 0;
        margin-bottom: 16px;
    }
    .hero-logo {
        width: min(100%, 150px);
    }
    .hero-form-subtitle {
        margin-bottom: 12px;
        font-size: 1.7rem;
    }
    .hero-name-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="email"],
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="text"],
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="tel"] {
        margin-top: 0 !important;
        padding: 12px !important;
        font-size: 1.7rem !important;
    }
    .hero-form-wrap #mc_embed_signup .mc-field-group label {
        font-size: 1.5rem !important;
    }
    .hero-form-wrap #mc_embed_signup .checkbox-input-wrap label {
        font-size: 1.3rem;
    }
    .hero-form-wrap .form-promise {
        font-size: 1.25rem;
    }
    .sent-page .form-wrap {
        padding: 0 15px 30px 15px;
        margin-top: 20px;
    }
    .class-times {
        margin-top: 22px;
        padding: 14px 16px;
    }
    .main-text > h3:last-of-type {
        font-size: 2rem;
        line-height: 1.65;
    }
    .sent-page .first-slide-bot {
        padding-top: 0;
    }
    .sent-page .first-slide h2 {
        font-size: 2.6rem;
    }
    .player-box {
        width: 100%;
    }
    /* .sent-page .seperator {
        margin: 20px 0;
    } */
}
* {
    /* outline: 1px solid red; */
}

/* Marek pose image as background */
.marek-pose-img {
    width: 100%;
    max-width: 100%;
    height: 0;
    padding-bottom: 57.6%; /* Aspect ratio: 590/1024 = 0.576 (maintains 1024x590 ratio) */
    margin-top: 30px;
    border-radius: 8px;
    background-image: url(../img/A7302204.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Prevent MailChimp styles from affecting other page elements */
body:not(#mc_embed_signup) form:not(#mc-embedded-subscribe-form):not(#mc-embedded-subscribe-form-bottom),
body:not(#mc_embed_signup_bottom) form:not(#mc-embedded-subscribe-form):not(#mc-embedded-subscribe-form-bottom) {
    /* Ensure other forms maintain their styles */
}

/* Additional MailChimp override rules for server compatibility */
#mc_embed_signup form,
#mc_embed_signup_bottom form {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

#mc_embed_signup .mc-field-group input,
#mc_embed_signup_bottom .mc-field-group input {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    border-radius: 0 !important;
}

/* Ensure form-wrap maintains its styling */
.form-wrap #mc_embed_signup,
.form-wrap #mc_embed_signup_bottom {
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
}

.hero-form-wrap #mc_embed_shell,
.hero-form-wrap #mc_embed_signup {
    max-width: 100% !important;
}

.hero-form-wrap #mc_embed_signup .mc-field-group {
    margin-top: 0 !important;
}

.hero-form-wrap #mc_embed_signup .hero-name-row .mc-field-group {
    min-width: 0;
}

.hero-form-wrap #mc_embed_signup .mc-field-group label {
    position: static !important;
    display: block !important;
    margin: 0 0 6px !important;
    padding-right: 2ch !important;
    color: rgba(255, 248, 240, 0.92) !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: right !important;
}

.hero-form-wrap #mc_embed_signup .mc-field-group input[type="email"],
.hero-form-wrap #mc_embed_signup .mc-field-group input[type="text"],
.hero-form-wrap #mc_embed_signup .mc-field-group input[type="tel"] {
    margin-top: 0 !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    color: #1b2420 !important;
    font-size: 1.7rem !important;
    line-height: 1.4 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.hero-form-wrap #mc_embed_signup .mc-field-group input:focus,
.hero-form-wrap #mc_embed_signup .mc-field-group input:valid:focus {
    background: #fff !important;
    border-color: rgba(199, 154, 74, 0.7) !important;
    box-shadow: 0 0 0 3px rgba(199, 154, 74, 0.16) !important;
}

.hero-form-wrap #mc_embed_signup .mc-field-group input:focus ~ label,
.hero-form-wrap #mc_embed_signup .mc-field-group input.filled ~ label,
.hero-form-wrap #mc_embed_signup .mc-field-group.has-value label,
.hero-form-wrap #mc_embed_signup .mc-field-group.is-focused label {
    position: static !important;
    margin: 0 0 6px !important;
    color: rgba(255, 248, 240, 0.92) !important;
    font-size: 1.4rem !important;
}

.hero-form-wrap #mc_embed_signup .mc-field-group::before,
.hero-form-wrap #mc_embed_signup .mc-field-group::after {
    display: none !important;
}

.hero-form-wrap #mc_embed_signup .checkbox-input-wrap {
    margin-top: 16px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.hero-form-wrap #mc_embed_signup .checkbox-input-wrap input {
    position: relative;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--color-gold);
}

.hero-form-wrap #mc_embed_signup .checkbox-input-wrap label {
    margin-right: 0;
    color: rgba(247, 240, 228, 0.86);
    font-size: 1.35rem;
    line-height: 1.55;
    font-weight: 400 !important;
}

.hero-form-wrap #mc_embed_signup .clear {
    margin-top: 14px !important;
}

.hero-form-wrap #mc_embed_signup #mc-embedded-subscribe,
.hero-form-wrap #mc_embed_signup input[type="submit"].button {
    width: 100% !important;
    margin-top: 0 !important;
    padding: 12px 18px !important;
    font-size: 1.7rem !important;
    letter-spacing: 0 !important;
    box-shadow: 0 18px 32px rgba(10, 25, 20, 0.28) !important;
}

.hero-form-wrap .form-promise {
    margin-top: 12px;
    color: rgba(247, 240, 228, 0.74);
    font-size: 1.3rem;
    line-height: 1.65;
}

@media screen and (max-width: 600px) {
    .hero-form-column {
        align-items: stretch;
        justify-content: flex-end;
    }
    .hero-form-wrap {
        max-width: 100%;
        margin-top: 28px;
        transform: translateX(0);
        padding: 18px 16px 16px;
        border-radius: 26px;
    }
    .hero-logo-badge {
        padding: 0;
        margin-bottom: 16px;
    }
    .hero-logo {
        width: min(100%, 150px);
    }
    .hero-form-subtitle {
        margin-bottom: 12px;
        font-size: 1.7rem;
    }
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="email"],
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="text"],
    .hero-form-wrap #mc_embed_signup .mc-field-group input[type="tel"] {
        margin-top: 0 !important;
        padding: 12px !important;
        font-size: 1.7rem !important;
    }
    .hero-form-wrap #mc_embed_signup .mc-field-group label {
        font-size: 1.5rem !important;
    }
    .hero-form-wrap #mc_embed_signup .checkbox-input-wrap label {
        font-size: 1.3rem;
    }
    .hero-form-wrap .form-promise {
        font-size: 1.25rem;
    }
}

/* Full-page hero design system refresh */
body {
    background:
        radial-gradient(circle at top, rgba(239, 228, 208, 0.72), transparent 28%),
        linear-gradient(180deg, #f8f4ec 0%, #edf3ee 42%, #f8f3e8 100%);
    color: var(--color-ink);
}

section.second-slide,
.course-benefits-slide,
.lessons-slide,
.section-faq,
.testemonials-section,
.about-section,
.section-contact {
    position: relative;
    padding: 88px 0;
    overflow: hidden;
}

#research,
#download,
#what-is-taichi,
.section-faq,
.testemonials-section,
.about-section {
    background: transparent !important;
}

#research .container,
#download .container,
#what-is-taichi .container,
.section-faq .container,
.testemonials-section .container,
.about-section .container {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(247, 244, 237, 0.62)),
        radial-gradient(circle at top right, rgba(199, 154, 74, 0.12), transparent 28%);
    border: 1px solid rgba(255, 255, 255, 0.62);
    border-radius: 38px;
    box-shadow: 0 28px 70px rgba(20, 42, 34, 0.12);
    backdrop-filter: blur(10px);
    padding: clamp(26px, 4vw, 44px);
}

.section-heading,
.section-title {
    color: var(--color-forest-deep);
    font-size: clamp(3.2rem, 4vw, 4.8rem);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0;
    margin-top: 0;
}

section.second-slide p,
.course-benefits-slide p,
.lesson-info-wrap .lesson-info p,
.answer p,
.testemonials-txt,
.about-section p,
.section-contact h4 {
    color: rgba(27, 36, 32, 0.82);
    line-height: 1.9;
}

.subtitle-text {
    color: rgba(38, 73, 61, 0.72);
    font-size: 1.7rem;
    margin-bottom: 20px;
}

#research .container {
    max-width: 1040px;
}

#research p {
    margin: 0;
    font-size: clamp(2rem, 2.25vw, 2.4rem) !important;
}

#download .benefits-grid {
    margin-top: 18px;
}

.benefit-box,
.testemonials-single {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(244, 248, 244, 0.82));
    border: 1px solid rgba(38, 73, 61, 0.1);
    border-top: 0;
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(20, 42, 34, 0.09);
}

.benefit-box {
    padding: 28px 30px;
}

.benefit-box h4 {
    color: var(--color-forest-deep);
    font-size: 2.25rem;
    line-height: 1.5;
    margin: 0;
}

.benefit-box:hover,
.testemonials-single:hover {
    transform: translateY(-4px);
    box-shadow: 0 22px 52px rgba(20, 42, 34, 0.14);
}

.course-benefits-slide {
    background:
        linear-gradient(135deg, rgba(10, 27, 22, 0.8), rgba(22, 50, 41, 0.6)),
        url(../img/bg07.jpg) center/cover no-repeat;
}

.course-benefits-slide .white-bg-20 {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(242, 247, 243, 0.76)) !important;
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 38px;
    box-shadow: 0 28px 70px rgba(7, 18, 15, 0.2);
    padding: clamp(28px, 4vw, 44px);
}

.course-benefits-slide .section-title,
.course-goal-single,
.course-goal-single h3 {
    color: var(--color-forest-deep);
}

.course-goal-single {
    margin-top: 24px;
}

.course-goal-single h3 {
    font-size: 2.6rem;
    margin-bottom: 24px;
}

.course-benefits-slide-ul {
    margin: 0;
}

.course-benefits-slide-ul li {
    position: relative;
    margin: 0;
    padding: 0 28px 16px 0;
    border-bottom: 1px solid rgba(38, 73, 61, 0.1);
    color: rgba(27, 36, 32, 0.82);
    font-size: 2rem;
    line-height: 1.75;
}

.course-benefits-slide-ul li + li {
    padding-top: 16px;
}

.course-benefits-slide-ul li:before {
    content: "";
    position: absolute;
    right: 0;
    top: 12px;
    width: 12px;
    height: 12px;
    border-radius: 999px;
    background: linear-gradient(135deg, var(--color-gold), #ddc49b);
    margin: 0;
}

#what-is-taichi ul {
    display: grid;
    gap: 14px;
    margin: 30px 0 !important;
}

#what-is-taichi ul li {
    margin: 0 !important;
    padding: 18px 20px;
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(38, 73, 61, 0.1);
    border-radius: 24px;
    box-shadow: 0 12px 30px rgba(20, 42, 34, 0.06);
}

#what-is-taichi ul li strong {
    display: inline-block;
    margin-bottom: 6px;
    color: var(--color-forest-deep);
    font-size: 2.35rem !important;
}

.no-preparation-section {
    margin-top: 18px;
    background:
        linear-gradient(135deg, rgba(22, 50, 41, 0.9), rgba(48, 95, 79, 0.82)),
        radial-gradient(circle at top, rgba(199, 154, 74, 0.18), transparent 48%) !important;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 30px;
    padding: 28px 22px !important;
    box-shadow: 0 22px 50px rgba(20, 42, 34, 0.18);
}

.no-preparation-section h3,
.no-preparation-section p {
    color: #f9f3e8;
}

.chi-gong-section {
    margin-top: 52px;
    padding-top: 42px;
    border-top: 1px solid rgba(38, 73, 61, 0.14);
}

.lessons-slide {
    background:
        linear-gradient(135deg, rgba(10, 27, 22, 0.74), rgba(22, 50, 41, 0.52)),
        url(../img/ocean.jpg) center/cover no-repeat;
}

.lessons-slide .white-bg-50 {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(245, 247, 244, 0.76)) !important;
    border: 1px solid rgba(255, 255, 255, 0.5);
    border-radius: 38px;
    box-shadow: 0 28px 70px rgba(7, 18, 15, 0.18);
    padding: clamp(28px, 4vw, 48px);
}

.lesson-info-wrap {
    display: grid;
    gap: 18px;
    counter-reset: lesson-counter;
}

.lesson-info {
    margin: 0;
    padding: 24px 86px 24px 24px;
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(38, 73, 61, 0.1);
    border-radius: 24px;
    box-shadow: 0 12px 30px rgba(20, 42, 34, 0.06);
    border-right: 0;
}

.lesson-info:before {
    width: 42px;
    height: 42px;
    right: 24px;
    top: 24px;
    transform: none;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--color-forest), var(--color-gold));
    color: #fff;
    font: 700 1.8rem/1 'Alef', sans-serif;
    box-shadow: 0 12px 24px rgba(38, 73, 61, 0.16);
}

.lesson-info-wrap .lesson-info h4,
.lesson-info-wrap .lesson-info .lesson-info-text {
    margin: 0;
    padding: 0;
}

.lesson-info-wrap .lesson-info h4 {
    color: var(--color-forest-deep);
    font-size: 2.2rem;
    margin-bottom: 10px;
}

.lesson-info-wrap .lesson-info p {
    padding: 0;
    margin: 0;
    text-align: right;
}

.section-faq .container {
    max-width: 1120px;
}

.section-title.faq-title {
    margin-bottom: 34px;
}

.question {
    color: var(--color-forest-deep);
    background: rgba(255, 255, 255, 0.64);
    border: 1px solid rgba(38, 73, 61, 0.1);
    border-top: 0;
    border-radius: 22px;
    box-shadow: 0 10px 24px rgba(20, 42, 34, 0.05);
    padding: 18px 64px 18px 22px;
    margin: 0 0 10px;
}

.question:before,
.question.question-active:before {
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(38, 73, 61, 0.08);
}

.answer {
    margin-bottom: 18px;
    padding: 0 22px 2px;
}

.answer p {
    margin: 0;
    background: rgba(255, 255, 255, 0.45);
    border: 1px solid rgba(38, 73, 61, 0.08);
    border-radius: 20px;
    padding: 18px 20px;
}

.testemonials-section .container {
    max-width: 1120px;
}

.testemonials-single {
    padding: 24px 26px;
    margin-top: 24px;
}

.testemonials-txt {
    margin: 0;
    font-size: 2.2rem;
    font-style: normal;
    text-align: right;
}

.testemonials-name,
.testemonials-profession {
    color: var(--color-forest-deep);
}

.testemonials-name {
    padding-right: 0;
    margin-top: 16px;
    font-size: 2rem;
    font-weight: 700;
}

.testemonials-profession {
    font-weight: 400;
    color: rgba(38, 73, 61, 0.78);
}

.about-section {
    padding-bottom: 88px !important;
}

.about-section .container {
    max-width: 1120px;
}

.about-section h3 {
    color: var(--color-forest-deep);
    margin-bottom: 24px;
}

.about-section p {
    margin: 0;
}

.about-section .profile-img {
    border: 8px solid rgba(255, 255, 255, 0.82);
    box-shadow: 0 22px 50px rgba(20, 42, 34, 0.14);
}

.section-contact {
    background:
        linear-gradient(135deg, rgba(10, 27, 22, 0.72), rgba(22, 50, 41, 0.45)),
        url(../img/cherry-blossom.jpg) center/cover no-repeat;
}

.section-contact::before {
    background:
        linear-gradient(180deg, rgba(13, 28, 23, 0.3), rgba(13, 28, 23, 0.08));
}

.section-contact .white-bg {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.9), rgba(245, 247, 244, 0.82)) !important;
    border: 1px solid rgba(255, 255, 255, 0.52);
    border-radius: 38px;
    box-shadow: 0 28px 70px rgba(7, 18, 15, 0.22);
    padding: clamp(24px, 4vw, 42px);
}

.section-contact .white-bg > .row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.section-contact .white-bg > .row > [class*="col-lg-8"] {
    display: flex;
    flex-direction: column;
}

.section-contact h2,
.section-contact h4 {
    color: var(--color-forest-deep);
}

.section-contact h4 {
    margin-bottom: 24px;
}

.marek-pose-img {
    width: 100%;
    height: clamp(280px, 34vw, 420px);
    min-height: 0;
    padding-bottom: 0;
    margin-top: 18px;
    border-radius: 28px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    box-shadow: 0 24px 50px rgba(20, 42, 34, 0.16);
    background-position: center 24%;
}

.section-contact .form-wrap {
    max-width: 100%;
    background:
        linear-gradient(180deg, rgba(12, 31, 25, 0.82), rgba(19, 42, 35, 0.72)),
        radial-gradient(circle at top, rgba(199, 154, 74, 0.14), transparent 52%);
    border: 1px solid rgba(244, 237, 226, 0.16);
    box-shadow: 0 30px 70px rgba(7, 18, 15, 0.24);
    color: #fff;
}

.section-contact .form-wrap h3 {
    color: #f8f2e7;
    margin-bottom: 8px;
}

.section-contact .highlight {
    background: rgba(239, 228, 208, 0.16);
    color: rgba(247, 240, 228, 0.94);
}

.section-contact #mc_embed_shell_bottom,
.section-contact #mc_embed_signup_bottom {
    max-width: 100% !important;
}

.section-contact #mc_embed_signup_bottom .mc-field-group label {
    position: static !important;
    display: block !important;
    margin: 0 0 6px !important;
    padding-right: 2ch !important;
    color: rgba(255, 248, 240, 0.92) !important;
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    text-align: right !important;
}

.section-contact #mc_embed_signup_bottom .mc-field-group input[type="email"],
.section-contact #mc_embed_signup_bottom .mc-field-group input[type="text"],
.section-contact #mc_embed_signup_bottom .mc-field-group input[type="tel"] {
    margin-top: 0 !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255, 255, 255, 0.26) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    color: #1b2420 !important;
    font-size: 1.7rem !important;
    line-height: 1.4 !important;
}

.section-contact #mc_embed_signup_bottom .mc-field-group::before,
.section-contact #mc_embed_signup_bottom .mc-field-group::after {
    display: none !important;
}

.section-contact #mc_embed_signup_bottom .checkbox-input-wrap {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 16px;
}

.section-contact #mc_embed_signup_bottom .checkbox-input-wrap input {
    position: relative;
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--color-gold);
}

.section-contact #mc_embed_signup_bottom .checkbox-input-wrap label,
.section-contact .form-promise {
    color: rgba(247, 240, 228, 0.84);
}

.section-contact #mc_embed_signup_bottom .checkbox-input-wrap label {
    margin-right: 0;
    font-size: 1.35rem;
    line-height: 1.55;
}

.section-contact #mc_embed_signup_bottom .clear {
    margin-top: 14px !important;
}

.section-contact #mc_embed_signup_bottom #mc-embedded-subscribe-bottom,
.section-contact #mc_embed_signup_bottom input[type="submit"].button {
    width: 100% !important;
    margin-top: 0 !important;
    padding: 12px 18px !important;
    font-size: 1.7rem !important;
    letter-spacing: 0 !important;
}

footer {
    background: transparent;
}

@media screen and (max-width: 991px) {
    section.second-slide,
    .course-benefits-slide,
    .lessons-slide,
    .section-faq,
    .testemonials-section,
    .about-section,
    .section-contact {
        padding: 72px 0;
    }

    #research .container,
    #download .container,
    #what-is-taichi .container,
    .section-faq .container,
    .testemonials-section .container,
    .about-section .container {
        border-radius: 30px;
        padding: 24px 20px;
    }

    .section-contact .white-bg,
    .course-benefits-slide .white-bg-20,
    .lessons-slide .white-bg-50 {
        border-radius: 30px;
        padding: 24px 20px;
    }

    .lesson-info {
        padding: 22px 22px 22px 74px;
    }

    .about-section .row {
        display: block;
    }

    .about-section .profile-img {
        margin-top: 28px;
    }

    .marek-pose-img {
        height: 320px;
    }
}

@media screen and (max-width: 600px) {
    section.second-slide,
    .course-benefits-slide,
    .lessons-slide,
    .section-faq,
    .testemonials-section,
    .about-section,
    .section-contact {
        padding: 56px 0;
    }

    #research .container,
    #download .container,
    #what-is-taichi .container,
    .section-faq .container,
    .testemonials-section .container,
    .about-section .container,
    .section-contact .white-bg,
    .course-benefits-slide .white-bg-20,
    .lessons-slide .white-bg-50 {
        border-radius: 24px;
        padding: 18px 16px;
    }

    .section-heading,
    .section-title {
        font-size: 3rem;
    }

    #research p,
    section.second-slide p,
    .course-benefits-slide-ul li,
    .lesson-info-wrap .lesson-info p,
    .answer p,
    .testemonials-txt,
    .about-section p,
    .section-contact h4 {
        font-size: 1.85rem !important;
    }

    .benefit-box,
    .testemonials-single,
    #what-is-taichi ul li,
    .lesson-info {
        border-radius: 20px;
    }

    .question {
        padding: 16px 56px 16px 18px;
        font-size: 2rem;
    }

    .question:before,
    .question.question-active:before {
        right: 16px;
        width: 28px;
        height: 28px;
    }

    .lesson-info {
        padding: 20px 20px 20px 64px;
    }

    .lesson-info:before {
        right: 18px;
        top: 18px;
        width: 36px;
        height: 36px;
        font-size: 1.6rem;
    }

    .section-contact #mc_embed_signup_bottom .mc-field-group input[type="email"],
    .section-contact #mc_embed_signup_bottom .mc-field-group input[type="text"],
    .section-contact #mc_embed_signup_bottom .mc-field-group input[type="tel"] {
        padding: 12px !important;
        font-size: 1.7rem !important;
    }

    .marek-pose-img {
        height: 240px;
    }
}
