/**
Theme Name: Fit Mangas
Author: Fit Mangas
Author URI: https://casamangas.com/fitmangas/
Description: Fit Mangas is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Fit Mangas comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Fit Mangas is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fit-mangas
Template: astra
*/
:root {
    --fontfamilyMed:  "Helvetica Neue Medium", Sans-serif;
    --fontfamilybold:  "Helvetica Neue Bold", Sans-serif;
}
.font-normal {font-family: var(--fontfamilyMed) !important;font-weight: 500 !important;}
.font-medium {font-family: var(--fontfamilyMed) !important;font-weight: 500 !important;}
.font-bold { font-family: var(--fontfamilybold);}
.container {max-width: 100%;margin-inline: auto;padding-inline: 20px;width: 100%;}
.mb-0 {margin-bottom: 0 !important;}
.mb-4 {margin-bottom: 4px !important;}
.mb-5 {margin-bottom: 5px !important;}
.mb-6 {margin-bottom: 6px !important;}
.mb-8 {margin-bottom: 8px !important;}
.mb-10 {margin-bottom: 10px;}
.mb-12 {margin-bottom: 12px;}
.mb-14 {margin-bottom: 14px;}
.mb-16 {margin-bottom: 16px;}
.row {
    display: flex;
    flex-wrap: wrap;
}

.banner-col{
 display: flex;
 flex-direction: column;
}
.list-unstyled {padding-left: 0;list-style: none;margin-left: 0;}
.max-width-100 { max-width: 100%;}
.d-flex { 
    display: flex;
}
.d-flex-center { 
    display: flex; align-items: center;
}
.align-items-center { align-items: center;}

.justify-content-center { justify-content: center;}
.justify-content-between {justify-content: space-between;}

.flex-column { 
    flex-direction: column;
} 
.text-center { text-align: center;}
.font-16 { font-size: 16px;}
.font-14 { font-size: 14px;}
.container .btn {
    background-color: #9C6A39;
    display:inline-block;
    font-size: 18px;
    font-weight: 700;
    line-height: 36px;
    color: #FFFFFF;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #9C6A39;
    border-radius: 8px 8px 8px 8px;
    padding: 5px 24px;
    text-align: center;
}
.container .btn.btn-md {
    padding-block: 0px;
    line-height: 38px;
    font-size: 14px;
}

.container button.btn-outline, .container a.btn-outline {
    background-color: transparent;
    color: #9C6A39;
    border-color: #9C6A39;
}
.container button.btn:hover, .container input.btn:hover, .container a.btn:hover {
    background-color: #7d552e;
    color: #ffffff;
    border-color: #7d552e;
}


body.ast-plain-container.ast-no-sidebar #primary {
    margin-top: 0px;
    margin-bottom: 0px;
}
.ast-container:not(.container) {
    max-width: 100%;
    padding: 0px;
}
.internal-page-banner {
    padding-top: calc(50px + 65px);
    padding-bottom: 40px;
    color:#fff;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 29.25vw;
    margin-top: -66px;
    background-position: top center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.internal-page-banner {  
    & span {
        font-family: var(--fontfamilyMed);
        color:#fff;
        font-weight: 500;
        font-size: 14px;
        line-height: 1.28;
        display: block;
        margin-bottom: 8px;
    }
    & h1 {
        color:#fff;
        font-size: 56px;
        line-height: 1.142;
        letter-spacing: -0.01em;
    }
}
.in-person-session {
    padding-top: 64px;
}
.sessions-title h3 {
font-weight: 700;
    font-family: var(--fontfamilybold);
font-size: 32px;
line-height: 36px;

color: #262626;

}
.session-tab-buttons {
    padding: 4px;margin-left: auto;background: #f5f3f2;border-radius: 100px; column-gap:5px;
& button { box-shadow:none;
    padding: 4px 48px;width: 211px;min-width: 64px;height: 44px;background: transparent;border-radius: 100px !important;border:none !important;
    font-family: var(--fontfamilyMed);font-weight: 500;font-size: 18px;line-height: 32px;color: #797878;}
& button.active {
   background: #9c6a39; 
    color:#fff;
}
}
.session-tab-buttons button:hover, .session-tab-buttons button:focus {
    background: #9c6a39; 
    color:#fff;
}

.day-tab-content {
     background-color: #f9f5ef;
}
.day-tab-link button.tab-button {
    display:flex;
    justify-content:center;
    align-items:center;
    background: none;
    border: none;
    min-width: 122px;
    color: #262626;
    box-shadow: none;
    padding: 0px;
    font-size: 16px;
    border: none;
    pointer-events: painted;
    border-radius:0px;
}
.day-tab-link button.tab-button div { width:100%; padding: 16px 15px;
    border-bottom:4px solid transparent;
    
}
.day-tab-link button.tab-button:disabled {
    color: #939393;
}
.day-tab-link button.tab-button.current {
    color: #9C6A39; 
    & div {
        border-color: #9C6A39;
    }
}
.day-tab-link button span { display:block}
.day-tab-link span { display:block}
.monthdate-name {font-size:18px; line-height:32px; font-weight:500; font-family:var(--fontfamilyMed)}
span.day-name {font-size:24px; line-height:30px; font-weight:500; font-family:var(--fontfamilyMed)}

.day-tab-link {
    display: flex;
    row-gap: 32px;
    width: 100%;
    justify-content: space-between;
    padding: 0px 155px;
    position: relative;
    margin-inline: auto;
}

.day-tab-link {

& button.next-button, & button.previous-button {
    padding: 0;
    border: 2px solid transparent;
    background: #9C6A39;
    width: 54px;
    height: 54px;
    min-width: auto;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    position: absolute;

    & svg path { fill:#fff;}

}
& button.next-button:not(:disabled), button.previous-button:not(:disabled) {
    &:hover, :hover {
      padding: 0; border-color:transparent;
      background-color: #9C6A39;  
      & svg path { 
        fill:#ffffff;
      }
    }   
}
& button.next-button:disabled, button.previous-button:disabled {
    background: none; border-color: #ADADAD;
    & svg path { 
       fill:#ADADAD;
     }
}
}
.day-tab-link button.previous-button {
    left: 0;
}

.day-tab-link button.next-button {
    right: 0;
}
.sessions-type-row {margin-bottom:40px;column-gap: 30px;}
.day-tab-link-list {
    display: flex;
    overflow-x: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    column-gap: 32px;
}
.day-tab-link-list::-webkit-scrollbar {
    display: none; 
}
.day-tab-content {padding-top:56px;padding-bottom: 96px;margin-top: 53px;border-top-right-radius: 48px;border-top-left-radius: 48px;/* Rectangle 19310 */background: linear-gradient(181deg, #f9f5ef, #ffffff);}
.day-tab-pane:not(.active) {
    display:none;
}
.day-tab-content .session-day-title {
    font-size: 32px;
    line-height: 36px;
    color: #262626;
    text-align: center;
    margin-bottom: 32px;
}
.day-tab-pane table {border:0px;margin-bottom: 0;}
.day-tab-pane table tr {
    

& td {border:0px;padding: 24px 16px;border-bottom: 1px solid #D5D5D5;min-width: 100%;}

& td.session-profile-button {
        width: 170px;
        min-width: 130px;
        text-align: right;
        padding-right: 0px;
        position: relative;

    & > button.reserve-button {
            font-weight: 700;
            font-size: 14px;
            line-height: 24px;
            padding: 7px 24px;
        &:hover, &:focus {
            background-color: #7d552e;
            border-color: transparent;
            color: #fff;
        }
    }
}
& td.session-location {
     min-width: 154px;
     text-align: center;
     font-family: var(--fontfamilyMed);
     font-weight: 500;
     font-size: 16px;
     line-height: 20px;
     color: #262626;
}
& td.session-location div.d-flex { flex-direction: column; row-gap: 12px;}
& td.session-time {
    min-width: 140px;
    text-align: center;
    padding-left: 0;
    
    
    
    
    
    
    & span { display:block}
    & .session-exact-time {
        font-family: var(--fontfamilybold);
        font-size: 24px;
        line-height: 30px;
        color: #262626;
    }
    & .session-duration-time {
        color:#6E7073; line-height:28px;
    }
}
& td.session-profile 
    {
    width: 100%;
    & .row {
        display:flex;
        align-items:center;
        flex-wrap: nowrap;
    }
    & .pf-picture { width:80px; margin-right:24px;}  
    & .session-type { color:#9C6A39; font-size:20px; line-height:26px; margin-bottom:8px}
    & .user-name {
                font-weight: 500;
                font-size: 14px;
                line-height: 18px;
                color: #262626;
        font-family: var(--fontfamilyMed); margin-bottom:0
    } 
    }
} 
body.overflow-hidden {
    overflow: hidden;
}
.reserve-modal.open {
    overflow: auto;
}
.reserve-modal-dialog {
    min-height: calc(100% + 60px);
    margin: 30px auto;
    display: flex;
    align-items: center;
}
.reserve-modal-content {
    max-width: 584px;
    width: 584px;
    border-radius: 30px;
    background: #fff;
    overflow: hidden;
    margin: 0px auto;
}
.m-body {padding: 16px 40px 30px;}

.m-body h6 {
    font-weight: 700;
    font-size: 16px;
    margin-bottom: 8px;
}

.m-body p {
    font-size: 14px;
    line-height: 22px;
    color: #262626;
    margin-bottom: 16px;
}
.m-header {justify-content:space-between;padding: 24px 40px;background: #F4EBE1;}

.m-header-title h5 {
    margin-bottom: 6px;
    width: 290px;
    font-size: 20px;
    line-height: 26px;
    color: #8C5F33;
}
.m-header-title p {
font-style: normal;
font-weight: 500;
font-size: 14px;
line-height: 18px;
color: #262626;
}
.m-header button {background:none;border:none;padding: 0;align-self: self-start;height: 32px;width: 32px;display: flex;justify-content: center;align-items: center;background: none;box-shadow: none !important;}
.reserve-modal-backdrop { display:none;
    position: fixed;
    inset: 0px;
    /* background: rgba(31, 31, 30, 0.7); */
    background: #1F1F1EB2;
    z-index: 10;
}
.reserve-modal-backdrop.open {
    display: block;
}

.reserve-modal {
    display:none;
    position: fixed;
    z-index: 1000;
    inset: 0;
    /* bottom: calc(0px + 100px); */
    text-align: left;
    align-items: center;
    justify-content: center;
}
.reserve-modal.open {
    display: block;
}

.reserve-modal-content {
& .m-exact-time {
    font-weight: 700;
    font-size: 20px;
    line-height: 26px;
    color: #262626;
    margin-right: 4px;
    font-family: var(--fontfamilybold);
}
& .m-duration-time {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    color: #6E7073;
}
& .instructor-subtext {
font-size: 12px;
line-height: 18px;
color: #262626;
opacity: 0.7;
}
&  .instructor-name {
    font-family: var(--fontfamilyMed);
    font-weight: 500;
    font-size: 14px;
    line-height: 18px;
    color: #262626;
    margin-bottom: 2px;
}
& .instructor-profile {
    border-top: 1px solid #E5E8EC;
    border-bottom: 1px solid #E5E8EC;
    padding-block: 16px;
    column-gap: 8px;
    align-items: center;
    margin-bottom: 16px;
}
& .submit-button {width: 100%;margin-top: 24px;padding: 14.25px 24px;background: #9C6A39;
    &:hover {
        background-color:#916030; border-color:transparent; color:white
    }
                 }
}
.mobile-session-time, .m-location, .d-md-none.session-profile-button {
    display: none;
}
.hide-on-desktop { display:none}

.img-fluid { max-width:100%;} 

.checkout-row {
    margin-top: 40px;
    margin-bottom: 50px;
}

.checkout-image {
    width: 50%;
    padding-right: 16px;
    & img {border-radius: 24px;   
    }
}

.checkout-details {
    width: 50%;
    padding-top: 13.5px;
    padding-left: 16px;
}
.cd-2.checkout-details {
    padding-top: 0px;
}
.cd-3.checkout-details {
    padding-top: 15.5px;
}
.checkout-title h2 {
    font-size: 32px;
    line-height: 36px;
    margin-bottom: 0;
}

.checkout-title {
    margin-bottom: 16px;
}

.checkout-title svg {
    margin-right: 16px;
}


.cp-title {
    margin-right: 8px;
    font-size: 20px;
    line-height: 26px;
    display: flex; 
    align-items: center;
    color: #8C5F33;
}
.cp-sub-title {
    font-size: 14px;
    line-height: 18px;
    opacity: 0.7;
}
.checkout-price-value {
    font-size: 32px;
    text-align: right;
    line-height: 36px;
    margin-left: 10px;
}
.checkout-price-title { 
    display: flex;
    align-items: center;
    flex-grow: 1;
}
.cht-session-price {
    padding: 16px 24px;
    margin-bottom: 8px;
    background: #F4EBE1;
    border: 2px solid #9C6A39;
    border-radius: 12px;
    flex-grow: 0;
}
span.cht-session-time {
    font-weight: 500;
    font-size: 24px;
    line-height: 30px;
    margin-right: 4px;
}
.cht-session-minutes {
    font-weight: 500;
    font-size: 14px;
    opacity: 0.7;
}
.checkout-price-date {
    font-weight: 500;
    font-size: 14px;
    line-height: 120%;
}
.note {
    font-size: 16px;
    line-height: 28px;
}
.form-body {font-size: 16px;}
.form-body .form-group {
    margin-bottom:16px;
}
.form-body  label {
            font-size: 16px;
            line-height: 24px;
            color: #262626;
            display: block;
            margin-bottom: 4px;
            font-family: var(--fontfamilyMed);
        }
.form-body .form-group .form-control::placeholder {
            color: rgb(38 38 38 / 50%);
        }
.form-body .form-group .form-control::-webkit-input-placeholder {
            color: rgb(38 38 38 / 50%);
        }
.form-body .form-group .form-control::-moz-placeholder {
            color: rgb(38 38 38 / 50%);
        }
.form-body .form-group .form-control:-ms-input-placeholder {
            color: rgb(38 38 38 / 50%);
        }
.form-body .form-group .form-control {
        width: 100%;
        padding: 9px 16px;
        height: 48px;
        line-height: 28px;
        background-color: #FFFFFF;
        border: 1px solid #9C6A39 !important;
        border-radius: 8px !important;
        font-family: 'Helvetica';
        font-style: normal;
        font-size: 16px;
        color: #262626;
        display: block;
} 
.form-group select.form-control{background-image: url('data:image/svg+xml,<svg width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 5L0 0H10L5 5Z" fill="%23262626"/></svg>');background-position: center right 11px;padding-right: 28px !important;}
.form-body input.submit-button, .form-body button.submit-button, .form-body .submit-button {
            width: 100%;
            background-color: #9c6a39;
            height: 48px;
            padding-block: 9px;
            font-family: "Helvetica Neue Bold", Sans-serif;
            font-size: 18px;
        }
    .form-body input.submit-button:hover, 
    .form-body button.submit-button:hover, 
    .form-body input.submit-button:focus, 
    .form-body button.submit-button:focus {
                background-color: #7d552e !important;
                border-color: transparent !important;
                color: #fff !important;
    }
.checkout-details form { margin-top: 32px; 
    font-size: 16px;
    line-height: 1.5;}

   .form-body .row-nmx { margin-inline:-8px}
   .form-body .row-nmx .form-group {
        width: 100%;
        flex: 1 0 0;
        padding-inline:8px;
    }
   .form-body .contact-row.row-nmx .form-group {
        margin-bottom:0px
    }

   .form-body .cvc-code { position:relative;}
    .form-body .cvc-code  svg {
        position:absolute;
        transform: translate(0px, -50%);
        right: 8px;
        top: 50%;
        z-index: 10;
    }

   .form-body .cvc-code .form-control {font-size:24px;padding-right: 35px;}
   .form-body .payment-details {margin-top: 24px;}
    .form-body .payment-details-title h3 {
        font-size: 24px;
        line-height: 30px;
        margin-bottom: 0;
    }
    .form-body .payment-details-title p {
        font-size: 16px;
        line-height: 28px;
    }
   .form-body .payment-details-title {text-align:center;
        margin-bottom: 24px;   color: #262626;
    }
   .form-body .total-title { flex-grow: 1;
        font-family: var(--fontfamilybold);
        font-size: 24px;
        line-height: 30px;
        color: #1D1D1D;
    }
   .form-body .total-price {
        font-family: var(--fontfamilybold);
        font-size: 32px;
        line-height: 36px;
        color: #1D1D1D;
    }
   .form-body .total-row {border-top:1px solid #000000;margin-top: 16px;padding-top: 16px;}
   .form-body .checkout-submit {
        margin-top: 24px;
    }
   .form-body .promo-code-btn {
        padding: 10px 24px;
        background-color: #9C6A39;
        color: #fff;
        height: 48px;
    }
   .form-body .promo-code-btn:hover {
        border-color: transparent !important;
        background-color: #7d552e;
    }

.checkout-mobile-image { display: none;}
.tp-login-container {
    width: 100%;
}
.tp-login-image {
    width: calc(50% - 13px);
}
.tp-form-col {
    width: calc(50% + 13px);
    align-self: center;
    padding-right: 20px;
}
.tp-form {
    max-width: 614px;
    padding-left: 64px;
}

.tp-form h1 {
    font-size: 48px;
    line-height: 1.125;
    letter-spacing: -0.01em;
    margin-bottom: 32px;
}
.password-field { position:relative;}

.view-password {position:absolute;right: 16px;top: 50%;transform: translate(0px, -50%);display: flex;} 
.hidepassword, .show-password .showpassword { display: none;}
.show-password .hidepassword { display: block;}
.forgot-password  { text-align:right; margin-top:8px;font-family: var(--fontfamilyMed);font-size: 14px;line-height: 17px;}
a.link-color {text-decoration-line: underline;color: #8C5F33;}
a.link-color:hover {text-decoration-line: none;color: #9c6a39;}
.have-an-account { margin-top:12px;
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    text-align: center;
}
.have-an-account  a { font-family:var(--fontfamilyMed)}
.tp-login-submit {
    margin-top: 32px;
}
.payment-left-col {
    width: 46.25%;
    flex: 0 0 46.25%;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.15);
    -webkit-box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.15);
    background: #F9F9F9;
    border-radius: 24px;
    -webkit-border-radius: 24px;
    /* overflow: hidden; */
    align-self: start;
}
.payment-left-inner {}
.payment-left-inner img { 
    border-top-left-radius:24px; 
    border-top-right-radius:24px;
}
.payment-left-text {
    padding: 32px 40px;
}

.payment-left-text h3 {
    font-size: 32px;
    line-height: 1.125;
    margin-bottom:16px;
}
.payment-left-text ul {margin:0;list-style:none;display: flex;flex-direction: column;row-gap: 8px;}
.payment-left-text ul li {display: flex;gap: 16px;font-family: var(--fontfamilyMed);font-size: 16px;line-height: 1.5;color: rgb(38 38 38 / 70%);align-items: start;}

.payment-left-text ul li svg {
    min-width: 22px;
    height: auto;
}

.payment-right-col {
    width: 48.5%;
    flex: 0 0 48.5%;
    margin-left: 30px;
    font-size: 16px;
    padding-top: 21.5px;
}

.payment-right-col h1 {
    font-size: 32px;
    line-height: 1.125;
    text-transform: uppercase;
    margin-bottom:16px;
}

.subscription-plan-header {text-align:center;margin-bottom: 8px;}
.subscription-plan-header h3 {
    line-height: 1.25;
    margin-bottom:8px;
}
.subscription-plan-header p{
    font-size: 16px;
    line-height: 1.75;
    margin-bottom: 0;
}
.subscription-plan-col {
    padding-top: 16px;
    display: flex;
    flex-direction: column;
    row-gap: 16px;
}
.select-plan {position:relative;}
.select-plan label {
        padding: 16px 24px 24px;
        gap: 4px;
        background: #FFFFFF;
        border: 2px solid #E5E8EC;
        border-radius: 12px;
        display: flex;
        justify-content: space-between;
        margin-bottom:0;
        column-gap: 10px;
    }
.select-plan input { 
        position:absolute; opacity:0
    }
.select-plan input:checked ~ label {
        background: #F4EBE1;
        border-color: #9C6A39;
    }
.select-plan label.selected-plan  {
        background: #F4EBE1;
        border-color: #9C6A39;
    }
    
.select-plan input:checked ~ label h6, 
.select-plan label.selected-plan h6  { color:#9C6A39;}              
.select-plan .plan-name { margin-top:5px;}
.select-plan .plan-name h6 {margin-bottom: 9px;font-size: 20px;line-height: 1.3; font-family: var(--fontfamilybold);}
.select-plan .plan-name p {margin-bottom:0px;font-size: 14px;line-height: 18px;color: rgb(38 38 38 / 70%);font-family: var(--fontfamilyMed);}


.payment-right-col .checkout-submit {
    margin-top: 32px;
    text-align: center;
}

.payment-right-col .checkout-submit p {
    line-height: 22px;
    font-size: 14px;
    margin-top: 16px;
}
.payment-page-row {margin-block: 40px;flex-wrap: nowrap;}
.plan-price {
    display: flex;
    align-items: end;
    align-self: start;
    column-gap: 4px;
}
.plan-price .plan-value {
    font-size: 24px;
    line-height: 1.25;
    font-family: var(--fontfamilybold);
}
.plan-price span {
    display: block;
}
.plan-price .per-month {
    font-family: var(--fontfamilyMed);
    font-size: 17px;
    line-height: 1.41;
}
.subscription-page .form-body { margin-top: 24px;}
.subscription-page .form-body .subscription-plan-header { margin-bottom: 24px;}

.susbscription-total-row table {border:none;margin-bottom: 0;}
.susbscription-total-row table tbody td {
    padding: 0px;
    border: none; font-size:16px; line-height:28px; 
    padding-bottom:8px;
}
.susbscription-total-row table tbody td:last-child {
text-align:right;
}

.s-total-row {
    display: flex;
    justify-content: space-between;
line-height: 28px;
color: #1D1D1D;    
}
.susbscription-totals {
    display: flex;
    flex-direction: column; row-gap:8px; 
    border-top: 1px solid #E5E8EC;
    padding-top: 16px;
    margin-top: 8px;
}
.s-total-value {
    font-family: var(--fontfamilyMed);
}
.subscription-page .form-body .total-row {
    border-top: 0;
    margin-top: 0;
}
.subscription-page .form-body .total-row * {
    color: #9C6A39;
}
.subscription-page .payment-right-col .checkout-submit {
    margin-top: 24px;
}
.payment-page-row.subscription-page {
    margin-bottom: 80px;
}
.page-template-welcome-to-our-training-programs {
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;
    background-size: cover;
}
.training-programs-content {
    width: 526px;
    padding-top: 120px;
    padding-bottom: 152px;
    padding-top: 10.5vw;
    padding-bottom: 10vw;
}
.training-programs-content p {
    font-size: 18px;
    line-height: 180%;
    color: #262626;
    margin-bottom: 16px;
}
.training-programs-content h1 {
    font-size: 56px;
    line-height: 1.142;
    letter-spacing: -0.01em;
    color: #262626;
    margin-bottom: 16px;
}
.training-programs-content .elementor-button {
    display: inline-block; margin-top: 16px;
}
.training-programs-mobile {display: none;}
.login-page-container { padding-block: 80px;}
.login-with-social-account {width: calc(50% - 42px); padding-right: 64px; }
.social-account-inner { max-width: 403px; margin-left: auto; display: flex; flex-direction: column; row-gap: 24px;}
.login-with-social-account h3 { margin-bottom: 16px;}
.account-message {margin-inline: auto;text-align: center;line-height: 22px;}
.login-with-social-account .social-button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 11px 24px;
    border:0 !important;
    column-gap:16px;
    font-size: 16px;
    font-family: var(--fontfamilyMed);
    box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.084), 0px 2px 3px rgba(0, 0, 0, 0.168);
    border-radius: 8px;
    font-weight: 500;
    color:white;
}
.login-with-social-account .social-button:hover { border-color:transparent;}
.login-with-social-account .login-with-apple { background:#262626}
.login-with-social-account .login-with-facebook {background-color:#1877F2}
.login-with-social-account .login-with-google {background-color:#FFFFFF;color: #1F1F1E8A;}

.login-with-social-account .login-with-apple:hover { background:#000000; color:white;}
.login-with-social-account .login-with-facebook:hover {background-color:#156cde; color:white;}
.login-with-social-account .login-with-google:hover {background-color:#ffffff;color: #1F1F1E;}


.login-with-emnail {width:40%; margin:auto;/*width: calc(50% + 42px); padding-left: 64px; border-left: 1px solid #9C6A39;*/}

.login-with-emnail h3 { margin-bottom: 16px;}
.login-submit { margin-top: 32px;}
.login-submit p {font-size: 14px;margin-block: 12px 0;}

.password-must-be { list-style: none; margin: 0; padding: 0; margin-top: 8px; display: flex; flex-direction: column; row-gap: 8px;}
.password-must-be li { display: flex; gap: 4px;
font-size: 14px;
line-height: 22px;
color: rgba(38, 38, 38, 0.7);
}
.password-must-be li svg { margin-top:3px;}
.register-page-container { padding-block: 80px 84px;}
.register-col {     max-width: 779px; margin-inline: auto;
    width: 100%;
}
.register-col h1 { line-height:52px; margin-bottom:24px;}
.check-terms-condition { line-height: 19.54px;}

.my-account-page {padding-block: 80px;}

.bookings-container {
    padding-block: 72px 120px;
}
.my-account-picture {margin-right: 24px;width: 96px;flex: 0 0 96px;}
.my-account-picture img { border-radius: 100%;} 
.my-account-name h4 {
    margin-bottom: 0px;
    margin-right: 16px;
    font-size: 32px;
    line-height: 36px;
}
.my-account-name p {
    font-size: 18px;
    line-height: 180%;
    margin-top: 4px;
}
.my-account-profile { margin-bottom: 80px;}
.my-account-sidebar {
    padding-right: 50px;
    gap: 32px;
    width: 219px;
    flex: 0 0 219px;
    border-right: 1px solid #9C6A39;
    display: flex;
    flex-direction: column;
    min-height: 557px;
    align-self: start;
    }
.my-account-sidebar h3 {line-height: 30px;font-family: var(--fontfamilyMed);font-weight: 500;}
.my-account-sidebar ul {margin-bottom:0;display:flex;flex-direction:column;row-gap:8px;margin-top: 32px;}
.my-account-sidebar ul li a {
    font-size: 16px;
line-height: 24px;
color: #707072;
}

.my-account-sidebar ul li a.active, .my-account-sidebar ul li a:hover {
    color: #9C6A39;
}
.my-account-content {flex: 1 0 0;max-width: 100%;padding-left: 107px;}
.my-account-content h2 {margin-bottom: 24px;line-height: 36px;font-size: 32px;}
.bookings-links li { margin-right: 22px;
font-size: 16px;
line-height: 24px;

}
.bookings-links li a {  display: block;
    color: #707072; border-bottom: 1px solid transparent; padding-bottom: 8px;
}
 .bookings-links li a.active {
        border-color: #9C6A39;
}
.bookings-links li a.active, .bookings-links li a:hover, .bookings-links li a:focus {
    color: #9C6A39;
    outline: none;
}
.bookings-links { margin-bottom: 24px;}

.my-account-bookings { max-width: 808px;}
.bookings-cards { gap: 35px;}
.b-card {display: flex;flex-direction: column;background: #FFFFFF;box-shadow: 5px 10px 20px rgba(0, 0, 0, 0.1);border-radius: 16px;overflow: hidden;max-width: calc(50% - 25px);width: 100%;position: relative;}

.previous-cards .b-card:after {
    position: absolute;
    z-index: 5;
    inset: 0;
    background: #1F1F1E4D;
    content: '';
}span.completed {
    display: block;
    position: absolute;
    color: #fff;
    font-family: var(--fontfamilyMed);
    padding: 4px 8px 4px 16px;
    background: #9C6A39;
    box-shadow: 0px 2px 20px rgba(61, 104, 134, 0.1);
    border-radius: 0px 4px 4px 0px;
    font-size: 14px;
    margin-top: 12px;
}
.b-card-header img { width:100%}
.b-card-body {padding: 16px 16px 24px;gap: 12px;background: #F9F9F9;flex: auto;}
.b-card-body h5 {
font-size: 20px;
line-height: 26px; margin-bottom: 2px;
}
.b-card-body .b-date {font-family: var(--fontfamilybold);font-size: 18px;line-height: 24px;color: #9C6A39;margin-bottom: 12px;}
.b-card-body .b-date span {font-size: 14px;line-height: 22px;color: #8D8D8D;display: inline-block;font-family: "Helvetica", Sans-serif;vertical-align: top;}
.b-card-body .b-course-name {line-height: 22px;margin-bottom: 2px;display: flex;flex-wrap: wrap;white-space: normal;}

.b-course-name .b-course-title {
    font-size: 16px;
    margin-right: 4px;
    align-items: center;
}

.b-course-name .b-course-title img {
    margin-right: 3px;
}
.b-card-body .b-course-name span {
    font-size: 14px;
    color: #8D8D8D;
    display: block;
    }
.b-card-body .b-user-name {font-size: 14px;line-height: 20px;color: #8D8D8D;margin-bottom: 0;}

.b-card-body .booking-button { text-align: right;}
.b-card-body .booking-button .btn {
    padding: 12px 24px;
    border: 1.2px solid #ADADAD;
    border-radius: 8px;
    font-size: 14px;
    display: inline-block;
    color: #ADADAD;
    line-height: 1;
    font-family: var(--fontfamilybold);
    background: none !important;!i;!;
}
.b-card-body .booking-button .btn:hover, .b-card-body .booking-button .btn:focus, 
.previous-cards .b-card-body .booking-button .btn {
    border-color: #9C6A39; color: #9C6A39;
}
.my-plans-and-purchases h3 {
line-height: 1.25;
}
.current-plans > *:not(:last-child) { margin-bottom:16px;}
.plan-card {padding: 14px 24px 22px;gap: 4px;background: #FFFFFF;border: 2px solid #E5E8EC;border-radius: 12px;}
.plan-name-col { margin-inline-end:10px;}
.plan-name-col h5 {line-height: 26px;font-size: 20px;margin-block: 5px 9px;font-family: var(--fontfamilybold);}
.plan-name-col p {
font-family:var(--fontfamilyMed);
font-size: 14px;
line-height: 18px;
color: rgba(38, 38, 38, 0.70);
}
.plan-price-col {
    font-size: 24px;
    line-height: 1.25;
    font-family: var(--fontfamilybold);
}

.plan-price-col sub {
    bottom: 0;
    margin-inline-start: 4px;
    font-family: var(--fontfamilyMed);
    font-size: 17px;
    line-height: 1.41;
}
.current-plans-buttons {gap: 16px 8px;flex-wrap: wrap;}

.my-plans-and-purchases h2, .my-plans-and-purchases .current-plans { margin-bottom: 48px;}




.purchase-plan-type { display: flex; flex-direction: column; gap: 16px;}
.purchase-plan-type h6 {font-size: 16px;line-height: 22px;color: #9C6A39; font-family: var(--fontfamilyBold);}
.purchase-plan-type:not(:last-child) { margin-bottom: 48px; }

.dont-have-plans-purchases .current-plans:last-child { margin-bottom: 0; }
.dont-have-plans-purchases .current-plans p { line-height: 32.4px; }

.account-details-button { margin-top: 40px;}
.account-details-form { max-width: 580px;}
.payment-method-check {
    display: grid;
    gap: 24px; padding-top: 8px;
}
.pm-label { position: relative; display: flex; align-items: center; gap: 24px;}
.pm-checkbox { position: absolute; top: 0; opacity: 0;}
.pm-check-content {
    flex: 1 0 0;
    padding: 16px 24px;
    background: #FFFFFF;
    border: 3px solid #9C6A39;
    border-radius: 8px;
    }

.pm-checkbox:checked ~ .pm-check-content { background-color:#F3E1CA}

.pm-checkbox:checked ~ .pm-check-icon .pm-uncheck, .pm-check {
    display: none;
}
.pm-checkbox:checked ~ .pm-check-icon .pm-check {
    display: block;
}
.pmc-content { display: flex; align-items: start; gap: 16px;}
.pm-check-content h5 {
    font-family: var(--fontfamilyMed);
    font-weight: 500;
    font-size: 20px;
    line-height: 24px; margin-bottom: 12px;
}
.pm-image {
    width: 48px;
    background: #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 6px;
}
.pm-name {
    flex-grow: 1;
}
.pm-name h6 {
    font-family: var(--fontfamilyMed);
    font-weight: 500;
    font-size: 18px;
    line-height: 32px;
    color: #000000;
}
.pm-name p {
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
    color: #707072; margin-bottom: 0;
}

.add-new-medthod-button { padding: 16px 0 0 56px;}
.add-new-medthod-button button {display: flex;align-items: center;justify-content: center;padding-inline: 48px;gap: 10px;font-weight: 500 !important;!i;!;font-family: var(--fontfamilyMed);padding-block: 0;line-height: 46px;font-size: 16px;}


.payment-method-content {
    max-width: 641px;
}
.add-payment-method {max-width: 585px;display: none;}
.add-payment-method .form-body .payment-details-title {
    text-align: left;
}
.add-payment-method h2 { margin-bottom: 48px;}
.delivery-address-submit { margin-top: 44px;}
.session-tag {
    padding: 4px 12px;
    border: 1px solid #8C5F33;
    border-radius: 100px;
    font-family: var(--fontfamilyMed);
    font-style: normal;
    font-weight: 500;
    font-size: 12px;
    color: #8C5F33;
    line-height: 16px;
}

.day-tab-pane table tr td.session-tags {
    min-width: 345px;
    max-width: 345px;
}

.session-tags-list {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.casa-mangas-schedule .day-tab-pane table tr td.session-location {
    min-width: 190px;
}

.casa-mangas-plan-pricing { padding-block: 99px 80px;}
.casa-mangas-plan-pricing h1 {
font-size: 40px;
line-height: 130%;
letter-spacing: -0.01em; margin-bottom: 24px;

}

.nav.nav-tabs {
    display: flex;
    align-items: flex-start;
    padding: 4px;
    background: #FFFFFF;
    border-radius: 100px;
    list-style: none;
    margin-left: 0; margin-bottom: 80px;
}
.nav.nav-tabs li {
    flex: 1 0 0;
}
.nav.nav-tabs li.nav-item button.nav-link {
    padding: 8px 20px;
    line-height: 28px;
    font-size: 18px;background: transparent;border-radius: 100px;border: transparent;box-shadow: none;width: 100%;color: #7d7d7d;font-family: var(--fontfamilyMed);font-weight: 100;
}
.nav.nav-tabs li.nav-item button.nav-link.active, .nav.nav-tabs li.nav-item button.nav-link:hover, .nav.nav-tabs li.nav-item button.nav-link:focus {
    color: #fff;
    background: #9C6A39;
}
.pp-heading { margin-bottom: 64px;}
.ph-subtitle {
    display: block;
    font-size: 14px;
    line-height: 18px;
    color: #8C5F33;
    margin-bottom: 4px;
    text-transform: uppercase;
}
.ph-title { 
    font-size: 40px;
    line-height: 130%;
    letter-spacing: -0.01em;
}
.pp-description {font-size: 16px;line-height: 28px;color: #262626;}
.tab-pane-1 .pp-description {padding-top: 40px;}

.pp-tab-content .tab-pane:not(.active) { display: none;}
.ppc-row {column-gap: 32px;}
.best-value-badge {
    padding: 0px 40px;
    line-height: 40px;
    display: inline-block;
    color: #fff;
    background: #262626;
    border-radius: 16px 16px 0px 0px;
    position: absolute;
    inset: -40px auto auto 0;
}
.pp-card {
    padding: 40px 49.5px;
    background: #FFFFFF;
    position: relative;
    max-width: calc(50% - 16px);
    flex: 1 0 0%;
    box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.15);
    border-radius: 24px;
    box-sizing: border-box;
    position: relative;
}

.best-plan.pp-card {border-top-left-radius:0px}
.pp-card .badge {
    padding: 0px 24px;
    line-height: 38px;
    padding: 7.8px 24px;
    line-height: 22.4px;
    display: inline-block;
    background: #E1D2C4;
    border-radius: 100px;
    font-size: 14px;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: #262626;
    margin-bottom: 16px;
    text-align: center;
}

.tab-pane-3 .pp-card .badge {
    width: 170px;
}

.pp-card .price {
    font-size: 48px;
    line-height: 54px;
    letter-spacing: -0.01em;
}
.pp-card .price sub {
    font-size: 24px;
    line-height: 38.4px;
    letter-spacing: -0.01em;
    bottom: 0;
    font-family: "Helvetica", Sans-serif !important;
}
.pp-card p { color: #6a6a6a; font-size: 18px; line-height: 1.8;}
.pp-button {padding-top: 16px;text-align: center;}

.plan-features li:before {
    content: '';
    height: 22px;
    width: 22px;
    background-image: url('data:image/svg+xml,<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="11" cy="11" r="10.5" fill="%239C6A39" stroke="%239C6A39"/><mask id="mask0_3687_18140" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="3" y="3" width="16" height="16"><rect x="3" y="3" width="16" height="16" fill="%23D9D9D9"/></mask><g mask="url(%23mask0_3687_18140)"><path d="M9.36709 14.7156C9.27821 14.7156 9.19487 14.7017 9.11709 14.674C9.03932 14.6462 8.96709 14.599 8.90043 14.5323L6.03376 11.6656C5.91154 11.5434 5.85321 11.3851 5.85876 11.1906C5.86432 10.9962 5.92821 10.8378 6.05043 10.7156C6.17265 10.5934 6.32821 10.5323 6.51709 10.5323C6.70598 10.5323 6.86154 10.5934 6.98376 10.7156L9.36709 13.099L15.0171 7.44896C15.1393 7.32674 15.2977 7.26562 15.4921 7.26562C15.6865 7.26562 15.8449 7.32674 15.9671 7.44896C16.0893 7.57118 16.1504 7.72951 16.1504 7.92396C16.1504 8.1184 16.0893 8.27674 15.9671 8.39896L9.83376 14.5323C9.76709 14.599 9.69487 14.6462 9.61709 14.674C9.53932 14.7017 9.45598 14.7156 9.36709 14.7156Z" fill="white"/></g></svg>');
    display: block;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0px, -50%);
} 

.plan-features li {
    position: relative;
    padding-left: 35px;
    font-size: 16px;
    line-height: 28px;
}
.plan-features li:not(:last-child) { margin-bottom:8px
}
.pp-card-with-image {
    padding: 0;
    overflow: hidden;
    margin-left: 32px;
}

.pp-card-with-image img {
    width: 100%;
}
.tab-pane-3 .pp-card{ text-align: center; padding: 40px 35px;}
.tab-pane-3 .plan-features{ text-align: left;}
.tab-pane-3 .ppc-row {
    gap: 34px;
}

.pp-card.private-cources-card {
    padding: 0;
    max-width: 100%;
    overflow: hidden;
    display: flex;
}

.private-cources-image {
    flex: 0 0 553px;
    width: 553px;
}

.private-cources-description {
    padding: 40px 69px;
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    row-gap: 32px;
}

.pc-list h3 {
    font-size: 32px;
    line-height: 36px;
    margin-bottom: 4px;
}

.pc-list ul {
    margin-left: 25px;
}

@media(min-width:768px) {
    .hidden-desktop {
        display: none !important;
    } 
    .my-plans-and-purchases { max-width: 585px;}
    .account-details-form {
        max-width: 580px;
    }
    .delivery-address {max-width: 583px;padding-top: 6px;}
    #choose-course-type { display: none;}
    
    .tab-pane-1 .ppc-row .space-between-cards {
    display:none;
}
    .tab-pane-3 .ppc-row .space-between-cards {
    display:none;
}
}
@media(min-width:1300px) {
    .container { max-width: 1240px; }
}
@media(min-width:1200px) {

    .account-details-container .my-account-bookings {
         padding-left: 93px;
    }
    .delivery-address-container h2 { margin-bottom: 30px;}
}
@media(max-width:1199px) {

.cht-session-price {
    padding: 16px;
    margin-bottom: 8px;
}
.internal-page-banner {
    & h1 {
        font-size: 48px;
    }
    & span {
        font-size: 12px;
    }
}
.day-tab-link-list {
    column-gap: 12px;
}
.tp-form h1 {
    font-size: 40px;
    margin-bottom: 22px;
}
.tp-form-col {
    width: 44%;
}
.tp-login-image {
    width: 56%;
}
.tp-form {
    max-width: 100%;
    padding-left: 40px;
}
    .payment-right-col h1 {
        font-size: 28px;
    }
    .subscription-plan-header h3 { font-size:22px;
    }
    .subscription-plan-header p {
        font-size: 15px;
    }
    .payment-left-text {
        padding: 30px;
    }
    .payment-left-text h3 {
        font-size: 26px;
    }
    .payment-left-text ul li {
        gap: 10px;
        font-size: 15px;
    }
    .payment-left-text ul li svg {
        min-width: 16px;
        width: 16px;
        margin-top: 2px;
    }
    .select-plan label {
        padding: 16px 20px 20px;
        column-gap: 10px;
    }
    
    .training-programs-content {
        width: 420px;
        padding-top: 6vw;
        padding-bottom: 6vw;
    }
    .training-programs-content p {
        font-size: 15px;
    }
    .training-programs-content h1 {
        font-size: 42px;
    }
    .login-with-social-account {
        width: calc(50% - 0px);
        padding-right: 30px;
    }
    .login-with-emnail {
        width: calc(50% + 0px);
        padding-left: 30px; padding-block: 19.5px;
    }

    .my-account-sidebar {
        padding-right: 30px;
    }
    .my-account-content {
        flex: 1 0 0;
        max-width: 100%;
        padding-left: 40px;
    }
    .account-details-container .my-account-content {
        padding-left: 40px;
    }
.day-tab-pane table tr td.session-tags {
    min-width: 240px;
    max-width: 240px;
}
.casa-mangas-schedule .day-tab-pane table tr td.session-location {
    min-width: 170px;
}
.casa-mangas-schedule .day-tab-pane table tr td.session-location {
    min-width: 170px;
    font-size: 14px;
}
.casa-mangas-schedule .day-tab-pane table tr td.session-profile {
        padding-inline: 10px;
}
.casa-mangas-schedule .day-tab-pane table tr td.session-profile .pf-picture {
            width: 66px;
            margin-right: 14px;
}
.nav.nav-tabs li.nav-item button.nav-link {
    padding-inline: 12px;
    font-size: 15px;
}
.nav.nav-tabs li {
    flex: 1 0 auto;
}
.tab-pane-3 .ppc-row .pp-card {
    max-width: calc(50% - 17px);
    flex: 0 0 calc(50% - 17px);
}
}
@media(max-width:1199px) and (min-height:1000px)  {
    .training-programs-content {
        width: 420px;
        padding-top: 9vh;
        padding-bottom: 10vh;
    }

}
@media(max-width:1199px) and (min-height:1200px)  {

    .training-programs-content {
        width: 440px;
        padding-top: 7vh;
        padding-bottom: 6vh;
    }
}
@media(max-width:991px) {
    .day-tab-link {
    padding: 0px 85px;
    }
    .session-tab-buttons button {
            padding: 4px 28px;
            width: 150px;
            height: 40px;
            font-size: 17px;
    }
    .day-tab-pane table tr {
        & td {
            padding: 11px 10px;
        }
        & td.session-location {
            min-width: 135px;
        }
        & td.session-time {
            min-width: 100px;
            padding-left: 0px;
        }
        & td.session-profile {
            & .pf-picture {
                width: 70px;
                margin-right: 12px;
            }
            & .session-type {
                font-size: 17px;
                line-height: 23px;
                margin-bottom: 3px;
            }
        }
        & td.session-profile-button {
            width: 110px;
            max-width: 110px;
            padding-inline: 0px;
            min-width: 100px;
        }
    }
    .internal-page-banner {
        padding-top: calc(40px + 65px);
        padding-bottom: 40px;
        min-height: 40.25vw;
    }
    .checkout-title h2 {
        font-size: 22px;
        line-height: 26px;
    }
    .checkout-title svg {height:30px;margin-right:10px;width: auto;}
    .checkout-price-title {flex-direction: column;align-items: start;}
        .cht-session-price {
        padding: 12px;
    }
    .note {
        font-size: 14px;
        line-height: 24px;
    }
    .form-body .form-body .form-group label {
        font-size: 14px;
        line-height: 22px;
    }
    .form-body .form-body .form-control {
        padding: 9px 14px;
    }

    .checkout-details  .payment-details .payment-details-title p {
            font-size: 14px;
            line-height: 24px;
        }
    .checkout-details .payment-details .payment-details-title h3 {
            font-size: 22px;
    }

    .internal-page-banner {
        & h1 {
            font-size: 40px;
        }
        & span {
            font-size: 11px;
        }
    }
    .day-tab-link-list {
        column-gap: 10px;
    }
    .day-tab-link button.tab-button {
        min-width: 90px;
    }
    .day-tab-link button.tab-button div {
        padding: 16px 5px;
    }
    .checkout-details {
        padding-left: 5px;
    }
    .tp-login-image {
        width: 100%;
    }
    .tp-form-col {
        width: 100%;
        padding-inline: 24px;
        margin-block: 40px;
    }
    .tp-form {
        padding-inline: 0px;
        max-width: 614px;
        margin-inline: auto;
    }
    .payment-left-text {
        padding: 20px;
    }
    .payment-left-text h3 {
        font-size: 20px;
        margin-bottom: 12px;
    }
    .payment-left-text ul li {
        gap: 8px;
        font-size: 14px;
    }
    .payment-left-text ul li svg {
        min-width: 14px;
        width: 14px;
        margin-top: 2.5px;
    }
    .subscription-plan-header h3 {
        font-size: 20px;
    }
    .subscription-plan-header p {
        font-size: 14px;
    }
        .select-plan  label {
            padding: 15px;
            column-gap: 10px;
        }
        .select-plan  .plan-name {
            margin-top: 0px;
        }
        .select-plan  .plan-name h6 {
            margin-bottom: 5px;
            font-size: 16px;
        }

    .plan-price .plan-value {
        font-size: 20px;
    }
    .plan-price .per-month {
        font-size: 15px;
        line-height: 1.41;
    }
    .payment-left-col {
        width: 48%;
        flex: 0 0 48%;
    }
    .payment-right-col {
        width: 50%;
        flex: 0 0 50%;
        margin-left: 0;
        padding-left: 10px;
        padding-top: 10px;
    }
    .payment-right-col h1 {
        font-size: 26px;
    }
    .bookings-container {
        padding-block: 50px 70px;
    }
    .my-account-page {
        padding-block: 50px;
    }
    .my-account-sidebar {
        padding-right: 20px;
        gap: 20px;
        width: 200px;
        flex: 0 0 200px;
    }
    .my-account-sidebar ul {
        margin-top: 15px;
    }
    .my-account-content {

        padding-left: 30px;
    }
    .bookings-cards {
        gap: 20px;
    }
    .my-account-profile {
        margin-bottom: 50px;
    }
    .my-account-content h2 {
        line-height: 32px;
        font-size: 28px;
    }
        .plan-card {
        padding: 15px;
        column-gap: 10px;
    }
    .plan-name-col h5 {
        font-size: 16px;
        line-height: 22px;
        margin-block: 0px 5px;
    }
    .plan-price-col {
        font-size: 20px;
    }
    .plan-price-col sub{
        font-size: 15px;
        line-height: 1.41;
    }
    .day-tab-pane table tr td.session-profile-button > button.reserve-button {
        font-size: 14px;
        padding: 11px 16px;
    }
    .session-tag {
        padding: 4px 9px;
        border: 1px solid #8C5F33;
        border-radius: 100px;
        font-family: var(--fontfamilyMed);
        font-style: normal;
        font-weight: 500;
        font-size: 11px;
        color: #8C5F33;
        line-height: 16px;
    }
    .day-tab-pane table tr td.session-tags {
        min-width: 190px;
        max-width: 190px;
    }
    .casa-mangas-schedule .day-tab-pane table tr td.session-profile .pf-picture {
        width: 50px;
        min-width: 50px;
        margin-right: 10px;
    }
    .casa-mangas-schedule .day-tab-pane table td.session-location div.d-flex {flex-direction: column;row-gap: 4px;}
    .casa-mangas-schedule .day-tab-pane table tr td.session-time .session-exact-time {
        font-family: var(--fontfamilybold);
        font-size: 22px;
        line-height: 26px;
    }
    .casa-mangas-schedule .day-tab-pane table tr .session-duration-time { font-size:15px;}
    .casa-mangas-schedule   .day-tab-pane table tr td.session-time {
            min-width: 80px;
    }
    .nav.nav-tabs li.nav-item button.nav-link {
        padding-inline: 10px;
        line-height: 24px;
        font-size: 14px;
    }
    .casa-mangas-plan-pricing h1 {
        font-size: 36px;
    }
}
@media(max-width:767px) {
.hidden-mobile {
    display: none !important;
} 
.my-account-sidebar ul {
    display:none;
}
.my-account-sidebar ul.active {
    display:flex
}


.in-person-session {
    padding-top: 50px;
}
.sessions-type-row {
    margin-bottom: 2px;
    column-gap: 30px;
    flex-direction: column;
    row-gap: 16px;
    align-items: flex-start;
}
.day-tab-link-list {
        column-gap: 20px;
    }
.day-tab-link button.tab-button {
    min-width: 64px;
    font-size: 16px;
}
    span.day-name {
        font-size: 22px;
        line-height: 24px;
    }
    .monthdate-name {
    font-size: 15px;
    line-height: 28px;
}
.day-tab-link button.tab-button div {
    width: 100%;
    padding: 16px 0px;
}
.day-tab-pane table tr {
    & td.session-time, & td.session-location, & .session-tags, & td.session-profile-button > button  {display:none;}
}
.day-tab-pane table tr {
    & td {
            padding: 16px 10px;
        }
    & td.session-profile {
        padding-left: 0;
        padding-inline: 0px;
        
        

        & .pf-picture {
            min-width: 72px;
            width: 72px;
            margin-right: 16px;
        }
        & .session-type {
            font-size: 14px;
            line-height: 20px;
            margin-bottom: 6px;
        }
    }
    & td.session-profile-button {
        padding-inline: 0px;
        min-width: auto;
        vertical-align: bottom;
    }
    & .user-name {
    display:none
    }
    }
    .mobile-session-time, .m-location, .d-md-none.session-profile-button {
        display: block;
    }
     span.session-exact-time {
        font-family: var(--fontfamilybold);
        font-size: 18px;
        line-height: 24px;
        color: #262626;
        margin-right: 6px;
    }
    
    span.session-duration-time {
        color: #6E7073;
        line-height: 22px;
        font-size: 14px;
    }
   .mobile-session-time { display:flex; align-items:center} 
    .mobile-session-time {
        line-height: 1.25;
        margin-bottom: 4px;
    }
    .m-location {
        font-size: 12px;
        line-height: 16px;
        color: #6E7073;
        margin-bottom: 0px !important;
        font-family: var(--fontfamilyMed);
    }
    .m-header {
        padding: 16px 16px;
    }    
    .m-body {
        padding: 16px 16px 16px;
    }
     .reserve-modal-content {
        max-width: 100%;
        width: 100%;
        border-radius: 30px 30px 0px 0px;
    }
    .session-tab-buttons {
        padding: 4px;
        background: #f5f3f2;
        width:100%;
    }
     .session-tab-buttons button {
        padding: 4px 10px;
        width: 100%;
        height: 40px;
        font-size: 17px;
    }
    .container {
        padding-inline: 24px;
    }
    .reserve-modal {
        position: fixed;
        padding-inline: 0px;
    }
    .reserve-modal-dialog {
        min-height: calc(100% - 30px);
        margin: 30px auto 0;
        align-items: end;
    }
    .internal-page-banner {
        padding: 38px 0px;
        min-height: 57vh;
        min-height: clamp(416px, calc(320px + 70vh), 650px);
        margin-top: -104px;
        display: flex;
        align-items: end;

        
        & span {
            font-size: 12px;
            line-height: 16px;
        }
        & h1 {
            color: #fff;
            font-size: 32px;
            line-height: 36px;
            letter-spacing: 0;
        }
    }
    .checkout-image {
        display: none;
     }
    .checkout-row {
        display:block;
        margin-top: 40px;
    }
    .checkout-mobile-image {display: block;margin-top: -60px; 
        & img { width: 100%;}
    }
    .checkout-details {
        padding-left: 0px;
        width: 100%;
    }
  .checkout-title svg {
        height: auto;
        margin-right: 12px;
        width: 25px;
    }
    .checkout-title h2 {
        font-size: 24px;
        line-height: 30px;
    }
    .checkout-title {
        margin-bottom: 24px;
    }
    .cht-session-price {
        padding: 20px 16px;
        margin-bottom:16px;
        border-radius: 16px;
    }
    .note {
        font-size: 14px;
        line-height: 22px;
    }
    .checkout-price-value {
        font-size: 24px;
        line-height: 30px;
    }
    .checkout-details form {
        margin-top: 40px;
        font-size: 16px;
        line-height: 1.5;
    }
    .form-body .form-body .form-group label {
            font-size: 16px;
            line-height: 24px;
            margin-bottom: 4px;
    }

    .form-body .form-group .form-control {
            padding: 9px 16px;
        }
    .form-body .form-group .form-control.address-field { height: 74px;}



        .form-body .promo-code-btn { font-size:14px;
            padding: 10px 24px;
            background-color: #9C6A39;
        }
        .form-body .row.contact-row .form-group {
            width: 100%;
            padding-inline: 0px;
        }
        .form-body .row.contact-row .form-group:not(last-child) { margin-bottom:16px;
        }
        .form-body .row-nmx.card-info .form-group {
            width: 50%;
            flex: auto;
            padding-inline: 8px;
        }
        .form-body .row-nmx.card-info .form-group.billing-zip-code {
            width: 100%;
        }
        .form-body .contact-row {margin-inline: 0px; display:block}
        .form-body .payment-details {
            margin-top: 40px;
        }
        .form-body .payment-details .payment-details-title {
                text-align: left;
                margin-bottom: 32px;
                color: #262626;
        }
        .form-body .payment-details .payment-details-title p {
                font-size: 14px;
                line-height: 22px;
        }
        .form-body .payment-details .payment-details-title h3 {
                font-size: 20px; 
                line-height: 26px;
                margin-bottom: 4px;
        }
        .form-body .total-row {
            margin-top: 24px;
            padding-top: 16px; border-color: #ADADAD;
        }
        .form-body .checkout-submit {
            margin-top: 40px;
        }
 
    .cp-title { 
        font-size: 18px;
        line-height: 24px;
        margin-bottom:4px;
    }
    .cp-sub-title {
        font-size: 14px;
        line-height: 20px;
        opacity: 1; color:#6E7073;
    }
    .checkout-price-col { margin-bottom: 12px;}
    .tp-login-image {
        margin-top:-66px;
    }
    .tp-form-col {
        margin-block: 32px 0;
    }
    .tp-form h1 {
        font-size: 32px;
        margin-bottom: 16px;
    }
    .tp-login-submit {
        margin-top: 24px;
    }
    .payment-page-row {
        margin-block: 40px 0px;
        flex-wrap: wrap;
    }
    .payment-right-col {
        width: 100%;
        flex: 0 0 100%;
        margin-left: 0;
        padding: 0px;
    }
    .payment-left-col {
        width: 100%;
        flex: 0 0 100%; order:2; margin-top:62px;
    }
    .payment-left-inner img { width:100%;}
    .payment-left-text {
        padding: 24px;
    }
    .payment-left-text h3 {
        font-size: 24px;
        margin-bottom: 16px;
        line-height: 30px;
    }
    .payment-left-text ul {
        row-gap: 16px;
    }
    .payment-left-text ul li {
        gap: 7px;
        font-size: 14px;
        line-height: 18px;
        align-items: center;
        font-family: var(--fontfamilyMed);
        color: #181818;
    }
    .payment-left-text ul li svg {
        min-width: 22px;
        width: 22px;
        margin-top: 0px;
    }
    .payment-right-col h1 {
        font-size: 24px;
        text-align:center;
        line-height: 30px;
    }
        .subscription-page .payment-right-col h1 {
        font-size: 23px;
    }
    .payment-right-col .form-group { margin-bottom:24px;}
    .subscription-plan-col {
        padding-top: 0px;
    }
    .subscription-plan-header {
        text-align: left;
        margin-bottom: 8px;
    }
    .subscription-plan-header h3 {
        font-size: 20px;margin-bottom: 4px; line-height:24px
    }
    .subscription-plan-header p {
        font-size: 14px; line-height:22px;
    }
    .select-plan {
        & label {
            padding: 20px 16px;
            column-gap: 10px;
        }
        & .plan-name h6 {
            margin-bottom: 6px;
            font-size: 16px;
            line-height: 22px;
        }
    }
    .plan-price {
        display: flex;flex-direction:column;
        align-items: end;
        align-self: start;
        column-gap: 4px;
    }
    .plan-price .plan-value {
        font-size: 24px;
        line-height: 1.25;
        margin-bottom: 4px;
    }
    .plan-price .per-month {
        font-size: 12px;
        line-height: 14.4px;
    }
    .payment-right-col .checkout-submit .submit-button {
        font-size: 14px;
    }
        .payment-right-col .checkout-submit p a {
        font-family: var(--fontfamilyMed)
    }
    .subscription-page .payment-right-col .form-group {
        margin-bottom: 16px;
    }
    .payment-page-row.subscription-page {
        margin-bottom: 0px;
    }
    .training-programs-mobile {display: block;margin-top: calc(-60px - 14vw);margin-top: -28.75vw;}
    .training-programs-content {
        /* max-width: 370px; */
        width:100%;
        padding-top: 32px;
        padding-bottom: 0;
    }
    .page-template-welcome-to-our-training-programs {
        background-image:none !important
    }
        .training-programs-content h1 {
        font-size: 32px;
        font-size: clamp(32px, 8.45vw, 56px);
        padding-right: 10px;
        line-height: 1.125;
    }
    .training-programs-content p {
        font-size: 16px; line-height:28px;
    }
    .training-programs-content p a.link-color {
        color: #9C6A39;
        font-weight: 400 !important;
        font-family: inherit !important;
    }
    .training-programs-content .elementor-button {
    display: block;
    margin-top: 32px;
    }
    .login-page-container {
    padding-block: 40px 0;
    }
    .login-with-social-account {
        width: calc(100% - 0px);
        padding-right: 0px;
    }
    .social-account-inner {
        max-width: 100%;
        row-gap: 24px;
    }
    .login-with-social-account h3 {
        margin-bottom: 0px; 
    }
    
    .login-with-emnail {
        width: calc(100% + 0px);
        padding-left: 0px;
        margin-top:45px;
        padding-top:45px;
        border-left:none;
        border-top: 1px solid #9C6A39; 
    }
    .login-with-emnail h3 {
        margin-bottom: 24px;
    }
    .login-submit p {
        margin-block: 16px 0;
    }
    .login-with-social-account .social-button {
        padding: 11px 24px;
        font-size: 14px;
    }
    .register-col h1 {
        font-size: 30px;
        line-height: 44px;
        margin-bottom: 24px;
    }
    .register-col .form-body .form-group { margin-bottom: 24px;}
    .register-col  .login-submit p { margin-top: 8px; }
    .register-page-container {
        padding-block: 40px 0px;
    }
    .my-account-sidebar {
        padding-right: 0px;
        gap: 40px;
        width: 100%;
        flex: 0 0 100%;
        min-height: auto;
        border-right: 0;
        margin-bottom: 48px;
    }
    .my-account-sidebar h3 {
        line-height: 30px;
        font-family: var(--fontfamilybold);
        font-weight: 700;
        font-size: 24px;
        position: relative;
        padding-right: 30px;
    }

.my-account-sidebar h3:after {
    content: '';
    display: block;
    position: absolute;
    background-image: url('data:image/svg+xml,<svg width="12" height="20" viewBox="0 0 12 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.3088 0.840567C11.5557 1.08748 11.6792 1.37966 11.6792 1.71711C11.6792 2.05456 11.5557 2.34674 11.3088 2.59365L4.07426 9.82822L11.3335 17.0875C11.564 17.3179 11.6792 17.606 11.6792 17.9517C11.6792 18.2974 11.5557 18.5937 11.3088 18.8406C11.0619 19.0875 10.7697 19.2109 10.4323 19.2109C10.0948 19.2109 9.80266 19.0875 9.55574 18.8406L1.25945 10.5196C1.16068 10.4208 1.09072 10.3138 1.04957 10.1986C1.00842 10.0834 0.987842 9.95991 0.987842 9.82822C0.987842 9.69653 1.00842 9.57308 1.04957 9.45785C1.09072 9.34262 1.16068 9.23563 1.25945 9.13686L9.58044 0.815875C9.81089 0.585423 10.0948 0.470196 10.4323 0.470196C10.7697 0.470196 11.0619 0.593653 11.3088 0.840567Z" fill="%231e293b"/></svg>');
    background-size: 12px 20px;
    background-position: center;
    background-repeat: no-repeat;
    width: 30px;
    height: 30px;
    inset: 0% 0 auto auto;
    transform: rotate(180deg);
    display: flex;
    align-items: center;
    justify-content: center;
}
.my-account-sidebar h3.active:after {transform: rotate(-90deg);}
    .my-account-page {
        padding-block: 48px 0px;
    }
    .bookings-container {
        padding-block: 48px 0px;
    }
    .my-account-content {
        padding-left: 0px;
    }

    .account-details-container .my-account-content {
        padding-left: 0px;
    }
    .bookings-cards {
        gap: 24px;
    }
    .b-card {
        max-width: calc(100% - 0px);
    }
    .my-account-profile {
        margin-bottom: 48px;
    }
    .my-account-content h2 {
        line-height: 30px;
        font-size: 24px;
    }
    .my-account-picture {
        margin-right: 8px;
        width: 64px;
        flex: 0 0 64px;
    }
    .my-account-name h4 {
        margin-right: 8px;
        font-size: 16px;
        line-height: 22px;
    }
     .my-account-name svg {width: 16px;height: auto;}
    .my-account-name p {
        font-size: 12px;
        line-height: 18px;
        margin-top: 6px;
    }
    .current-plans .btn { width:100%}
    .plan-card {
        padding: 20px 16px;
        column-gap: 10px;
    }
    .plan-name-col h5 {
        font-size: 16px;
        line-height: 22px;
        margin-block: 0px 5px;
    }
    .plan-price-col {
        font-size: 24px;
    }
    .plan-price-col sub {display: block;font-size: 12px;line-height: 14.4px;}
    .purchase-plan-type:not(:last-child) {
        margin-bottom: 32px;
    }
    .account-details-form {
        max-width: 100%;
    }
    .account-details-button {
        margin-top: 24px;
    }
    .account-details-button .btn { width:100%;}

    .pm-label {  gap: 8px;}
    .payment-method-check {
        padding-top: 0px;
    }
    .pm-check-content {
        padding: 16px;
        border-width: 2px;
    }
    .pmc-content { gap: 16px;}
    .pm-check-content h5 {
        font-family: var(--fontfamilyBold);
        font-weight: 700;
        font-size: 16px;
        line-height: 22px; 
    }
    .pm-name h6 {
        font-size: 16px;
        line-height: 24px;
    }
    .add-new-medthod-button { padding: 0px;}
    .add-new-medthod-button button {width: 100%;padding-inline: 20px;}
    .pm-check-icon svg { width: 24px; height: auto;}
    .add-payment-method .form-body .checkout-submit {
        margin-top: 8px;
    }
    .delivery-address-submit {
        margin-top: 24px; 
    }
    .delivery-address-submit .btn {
        width: 100%;
    }
    .payment-method-content {
        max-width: 100%;
    }
    .casa-mangas-schedule .day-tab-pane table tr td.session-profile .pf-picture {
        width: 72px;
        min-width: 72px;
        margin-right: 16px;
    }
    .day-tab-pane table tr td.session-profile .pf-name { flex-grow:1;}
        .casa-mangas-schedule .day-tab-pane table tr td.session-profile {
        padding-inline: 0px;
    }
    .day-tab-pane table tr .session-profile-button button.reserve-button {
        font-size: 14px;
        padding: 10.05px 23.5px;
        margin-left: 10px;
    } 
    .delivery-address .form-body .row-nmx.card-info .form-group.col { width: 100%;}

    .create-an-account  h1 { margin-bottom: 32px;}
    .subscription-page .form-body .total-row  .total-price {
        font-size: 20px;
        line-height: 26px;
        font-family: var(--fontfamilybold);
    }
    .subscription-page .form-body .total-row .total-title {
        font-family: var(--fontfamilyMed);
        font-size: 20px;
        line-height: 24px;
    }
    .nav.nav-tabs {
        display: none;

    }
    #choose-course-type {
        margin-bottom: 64px;
        height: 45px;
        padding: 0px;
        border-radius: 15px;
        padding: 8px 16px;
        font-size: 14px;
        color: rgb(142, 142, 142);
        border: 0;
    }
    .casa-mangas-plan-pricing {
        padding-block: 32px 0px;
    }
    .casa-mangas-plan-pricing h1 {
        font-size: 24px;
        line-height: 30px; margin-bottom: 16px;
    }
    .ph-title {
        font-size: 24px;
        line-height: 30px;
    }
    .pp-heading {
        margin-bottom: 0;
    }
.pp-description {padding-block: 24px;} 
    .tab-pane-1  .pp-description {
        overflow: auto;
        margin-inline: -24px;
        padding-top: 64px;
    }
    .tab-pane-1 .ppc-row {
        column-gap: 8px;
        padding-inline:24px;
        flex-wrap: nowrap;
        display: table;
    }

.tab-pane-1 .ppc-row > div {
    display: table-cell;
}

.tab-pane-1 .ppc-row .space-between-cards {
    min-width: 8px;
}
    
    .tab-pane-1 .pp-card {
        max-width: calc(50% - 0px);
        min-width: calc(100vw - 48px);
    }
    .pp-card { 
        padding: 32px 20px;
    }
    .pp-card .badge {
    padding: 5.5px 16px;
    line-height: 20px;
    font-size: 12px;
}
.pp-card .price {
    font-size: 32px;
    line-height: 36px;
}
.pp-card p {
    font-size: 14px;
    line-height: 22px;
}
.plan-features li {
    padding-left: 30px;
    font-size: 14px;
    line-height: 18px;
    padding-block: 2px
}
.plan-features li:not(:last-child) { margin-bottom:16px}
.pp-button {
    padding-top: 8px;
}
.pp-button .btn {
    font-size: 14px;
    line-height: 28px;
    padding: 5px 24px;
}
.pp-card .price sub {
    font-size: 16px;
    line-height: 28px; margin-left: 3px;
}
.pp-card .price { align-items: end;
    font-size: 32px;
    line-height: 36px;
    display: flex;
}
.tab-pane-2 .ppc-row {
    flex-direction: column; row-gap:32px;
}

.tab-pane-2 .ppc-row .pp-card {
    max-width: calc(100% - 0px);
}
.pp-card-with-image {
    margin-left: 0px; padding: 0;
}
.tab-pane-3 .ppc-row {
    /* min-width: calc(200vw - 72px); */
    column-gap: 8px;
    padding-inline: 24px;
    flex-wrap: nowrap;
    display: table;
}

.tab-pane-3 .ppc-row > div {
    display: table-cell;
}

.tab-pane-3 .ppc-row .space-between-cards {
    min-width: 8px;
}

.tab-pane-3 .pp-description {
    overflow: auto;
    margin-inline: -24px;
}
.tab-pane-3 .pp-card {
    text-align: left;
    padding: 32px 20px;
    min-width: calc(100vw - 48px);
}
.tab-pane-3 .pp-card .badge {
    width: auto;
}
.pp-card.private-cources-card {
    display: block;
    background: none;
    box-shadow: none;
    overflow: visible;
}

.private-cources-image {
    width: 100%;
    overflow: hidden;
    border-radius: 16px;
}

.private-cources-description {
    padding: 24px 0px 0;
    display: block;
}

.pc-list:not(:first-child) {
    margin-top: 32px;
}

.private-cources-description .pc-button {
    margin-top: 24px;
}
.private-cources-description .pc-button .btn {
    width: 100%;
}
.pc-list h3 {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: 4px;
    font-family: var(--fontfamilyMed) !important;
    font-weight: 500;
}

.plan-tab-4 .pp-description {
    padding-bottom: 0;
}
}

@media(max-width:580px) {
.day-tab-link-list {
        column-gap: 12px;
    }
    .in-person-session {
        padding-top: 32px;
    }
    .sessions-title h3 {
        font-size: 20px;
        line-height: 26px;
    }
    .day-tab-link button.tab-button {
        min-width: 64px;
        font-size: 15px;
        margin-inline: 0;
        /* min-width: 33.33%; */
        & div {
           max-width: 64px;
           padding: 16px 0px 13px;
        }
    }
    .day-tab-link {
            padding: 0px 55px;
            width: 100%;
        & button.next-button, & button.previous-button {
            border: 2px solid transparent;
            width: 40px;
            height: 40px;
            & svg { width:20px; height:20px;}
        }
    }
    .monthdate-name {
        font-size: 14px;
        line-height: 18px;
        margin-bottom: 8px;
    }
    span.day-name {
        font-size: 18px;
        line-height: 24px;
    }
    .day-tab-content {
        padding-top: 32px;
        padding-bottom: 25px;
        margin-top: 32px;
        border-top-right-radius: 24px;
        border-top-left-radius: 24px;
    }
    .day-tab-content .session-day-title {
        font-size: 24px;
        line-height: 30px;
        margin-bottom: 15px;
    }
    .checkout-time {
        display: block;
    }
    .checkout-price-date {
        margin-top:4px;
        font-size: 12px;
        line-height: 16px;
    }
    span.cht-session-time {
        font-weight: 500;
        font-size: 20px;
        line-height: 24px;
        margin-right: 4px;
    }
    .register-col h1 {
        font-size: 24px;
        line-height: 30px;
        margin-bottom: 32px;
    }
    .casa-mangas-schedule-banner {
        min-height: 76vh;
    }
}

@media(max-width: 480px) {
      .internal-page-banner {
        min-height: 57vh;
     }  
     .casa-mangas-schedule-banner {
        min-height: 76vh;
    }
}
@media(max-width:767px) and (max-height:580px) {
  .internal-page-banner {
        min-height: clamp(35)
    }
}