/**
 * LRK public-site presentation for the parent Blocksy theme.
 *
 * This plugin-owned stylesheet is the canonical LRK presentation layer after
 * the verified Blocksy parent-theme cutover. The inactive child theme remains
 * an emergency rollback artifact and must not receive new presentation work.
 */

:root{
    --lrk-page-gutter: clamp(12px, 4vw, 24px);
    --lrk-space-1: 8px;
    --lrk-space-2: 12px;
    --lrk-space-3: 16px;
    --lrk-space-4: 24px;
    --lrk-radius-control: 10px;
    --lrk-radius-card: 16px;
    --lrk-touch-target: 44px;
    --lrk-mobile-gutter: 12px;
    --lrk-mobile-gutter-total: 24px;
    --lrk-empty-title-size: clamp(22px, 6vw, 26px);
    --lrk-mobile-page-title-size: clamp(28px, 4.5vw, 36px);
}

@media only screen and (max-width: 768px) {
    body .hero-section[data-type=type-1]{
        margin-bottom: var(--margin-bottom, 10px);
    }

    .wp-block-stackable-columns.alignfull>.stk-row:not(.alignfull){
        max-width: 100%!important;
    }
}

@media only screen and (max-width: 999.98px) {
    #header [data-device="mobile"] .ct-container,
    body .hero-section[data-type="type-2"] > [class*="ct-container"]{
        width: calc(100% - var(--lrk-mobile-gutter-total));
        max-width: none;
    }

    body .hero-section[data-type="type-2"] > [class*="ct-container"]{
        --min-height: 96px;
        padding-block: 20px;
    }

    body .hero-section .page-title{
        --theme-font-size: var(--lrk-mobile-page-title-size);
        font-size: var(--lrk-mobile-page-title-size);
        line-height: 1.15;
        overflow-wrap: anywhere;
    }
}

/* HOME PAGE */
.home [class*=ct-container]>article{
    margin: 0;
    padding: 0;
    max-width: 100%;
    width: 100%;
}

.home .entry-content .stk-block-background > div{
    max-width: 1500px!important;
}

.lrk-home--full-width,
.lrk-home--photo-cover{
    width: 100%!important;
    max-width: 100%!important;
}

.lrk-home--photo-cover{
    margin-top: 0px;
}

.home #header [data-id="account"] .ct-icon,
.home #header [data-id="cart"] .ct-icon,
.home #header [data-id="trigger"] .ct-icon{
    fill: var(--theme-palette-color-4);
}

#header [data-device="mobile"] [data-id="account"] .ct-account-item,
#header [data-device="mobile"] [data-id="trigger"]{
    min-width: var(--lrk-touch-target);
    min-height: var(--lrk-touch-target);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    color: var(--theme-palette-color-4)!important;
    background: rgb(250 250 250 / 10%)!important;
    border: 1px solid rgb(250 250 250 / 32%)!important;
    border-radius: 999px!important;
    transition:
        background-color .16s ease,
        border-color .16s ease,
        transform .16s ease;
}

#header [data-device="mobile"] [data-id="account"] .ct-account-item{
    gap: var(--lrk-space-1);
    padding-inline: var(--lrk-space-2);
    text-decoration: none;
}

#header [data-device="mobile"] [data-id="trigger"]{
    padding: 0!important;
}

#header [data-device="mobile"] [data-id="account"] .ct-icon,
#header [data-device="mobile"] [data-id="trigger"] .ct-icon{
    color: currentColor;
    fill: currentColor!important;
    opacity: 1;
    visibility: visible;
    flex: 0 0 auto;
}

#header [data-device="mobile"] [data-id="account"] .ct-account-item:focus-visible,
#header [data-device="mobile"] [data-id="trigger"]:focus-visible{
    outline: 3px solid var(--theme-palette-color-4);
    outline-offset: 3px;
}

#header [data-device="mobile"] [data-id="account"] .ct-account-item:active,
#header [data-device="mobile"] [data-id="trigger"]:active{
    background: rgb(250 250 250 / 24%)!important;
    border-color: rgb(250 250 250 / 70%)!important;
    transform: scale(.96);
}

@media only screen and (min-width: 1024px) {
    .lrk-home--photo-cover{
        min-height: max(900px, 70vh);
    }

    .lrk-home--full-width{
        position: relative!important;
    }

    .page-template-default .lrk-home--info-block{
        position: absolute!important;
        max-width: 550px;
        top: 13vh;
        left: 10vw;

        border-top-left-radius: 555px!important;
        border-top-right-radius: 555px!important;

        background: #021A51 !important;
    }

    .home .lrk-home--info-block .stk-block-heading__text{
        margin-top: 3.2em!important;
        font-size: 40px!important;
        line-height: 1.25!important;
        color: var(--theme-palette-color-4)!important;
    }

    .home #menu-main-menu > li > a,
    .home #menu-main-menu-en > li > a,
    .home .ct-header-cart .ct-cart-item .ct-label,
    .home .ct-account-item{
        color: var(--theme-palette-color-4);
    }

    .lrk--home-checkin-btn a{
        --stk-button-text-color: var(--theme-palette-color-4);
        --stk-button-background-color: var(--theme-palette-color-4);
    }

    [data-prefix="single_page"] [class*="ct-container"] > article[class*="post"]{
        border-radius: 10px;
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
}

.page-id-28880 .lrk-home--info-block img.wp-image-24458{
    display: block;
    width: auto!important;
    height: 22px!important;
    opacity: 1;
    filter: brightness(0) invert(1);
}

.page-id-28880 .lrk-home--info-block a[href$="/en/check-in/"],
.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"]{
    min-height: var(--lrk-touch-target);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    border-radius: var(--lrk-radius-card)!important;
    font-size: 20px!important;
    font-weight: 700!important;
    text-transform: none!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/check-in/"]{
    padding: var(--lrk-space-3)!important;
    color: var(--theme-palette-color-1)!important;
    background: #e8ea81!important;
    border-color: #e8ea81!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/check-in/"]::before,
.page-id-28880 .lrk-home--info-block a[href$="/en/check-in/"]::after{
    border: 0!important;
    background: #e8ea81!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"]{
    padding: var(--lrk-space-1) var(--lrk-space-3)!important;
    color: var(--theme-palette-color-4)!important;
    background: transparent!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"]::before{
    border: 2px solid var(--theme-palette-color-4)!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"]::after{
    background: transparent!important;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"] > .stk--svg-wrapper{
    display: none;
}

.page-id-28880 .lrk-home--info-block a[href$="/en/check-in/"] .stk-button__inner-text,
.page-id-28880 .lrk-home--info-block a[href$="/en/services-and-pricing/"] .stk-button__inner-text{
    font-size: 20px!important;
    font-weight: 700!important;
    text-transform: none!important;
}

@media only screen and (max-width: 600px) {
    .lrk--blog-home-divider{
        display: none;
    }

    .lrk--blog-wrapper{
        padding: 0!important;
        margin-bottom: var(--wp--preset--spacing--80)!important;
    }

    .lrk--blog-wrapper h2{
        font-size: 20px;
    }

    .lrk--blog-wrapper ul{
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--wp--preset--spacing--40);
    }

    .lrk--blog-wrapper ul img{
        aspect-ratio: 1/1;
    }

    .lrk--home-sectionh{
        margin-top: var(--wp--preset--spacing--70)!important;
    }

    .lrk-home--photo-cover{
        min-height: 230px!important;
    }

}

@media only screen and (max-width: 1024px) {
    .lrk-home--full-width{
        display: flex;
        flex-direction: column-reverse;
    }

    .home .lrk-home--info-block{
        margin-left: 0px!important;
        margin-right: 0px!important;
        width: 100%;
        border-radius: 0px!important;
    }
}

body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)).lrk-home-p-mx0{
    margin-left: 0!important;
    margin-right: 0!important;
}

/* WOO */
.wc-block-components-button__text,
.wc-block-components-button{
    border-radius: 16px;
}

#express-payment-method-payment_request .StripeElement{
    padding: 10px;
}

/* SINGULAR ITEM */
body.single-product [data-content=narrow]>article{
    --block-max-width: 960px;
}

/* Blocksy divider elements add two unrelated rules around the booking form. */
.single-product .entry-summary > .ct-product-divider{
    display: none;
}

.related.products{
    padding-bottom: 40px;
}

body:is(.woocommerce-shop, .single-product) .added_to_cart,
body .input-text.qty.text,
body .single_add_to_cart_button{
    border-radius: 16px;
}

@media only screen and (max-width: 768px) {
    .ct-woo-unauthorized .col2-set h2{
        font-size: 30px!important;
        margin-bottom: 10px!important;
    }

    body div.woocommerce-product-gallery {
        margin-bottom: 1em;
        box-shadow: 0px 0px 11px 1px #99999936;
    }
}

/* SHOP */
.wc-block-components-product-metadata__description{
    display: none;
}

body:is(.woocommerce-shop) .add_to_cart_button.ajax_add_to_cart,
body:is(.woocommerce-shop) .add_to_cart_button,
body:is(.woocommerce-shop) .added_to_cart.wc-forward{
    background-color: var(--paletteColor1);
    color: white;
}

@media (pointer: fine) {
    body:is(.woocommerce-shop) .add_to_cart_button.ajax_add_to_cart:hover,
    body:is(.woocommerce-shop) .added_to_cart.wc-forward:hover{
        background-color: var(--paletteColor2);
        color: white;
    }
}

@media only screen and (min-width: 768px) {
    [data-products=type-2] .woocommerce-loop-product__title {
        padding: 0 10px;
        line-height: 1.2;
    }
}

@media (max-width: 689.98px) {
    .related [data-products], .upsells [data-products] {
        --shop-columns: 1fr;
    }

    .related [data-products] img, .upsells [data-products] img {
        max-height: 130px;
    }
}

/* CART */
.wp-block-woocommerce-empty-cart-block{
    text-align: center;
}

.lrk-empty-cart{
    margin: var(--lrk-space-2) auto 0;
    border-radius: var(--lrk-radius-control)!important;
    min-width: 250px;
}

.woocommerce-page.woocommerce-cart .wc-block-components-product-name{
    line-height: 1.25;
    font-size: 1.3em;
}

.lrk-empty-cart a{
    font-size: 1.3em;
    color: white!important;
}

.woocommerce-cart .wc-block-components-product-name{
    font-size: 1.5em;
    font-weight: bold;
}

.woocommerce-cart .wc-block-cart__submit-button{
    font-size: 1.4em;
}

@media only screen and (max-width: 768px) {
    body.woocommerce-cart[data-prefix="single_page"] [class*="ct-container"] > article,
    body.woocommerce-account[data-prefix="single_page"] [class*="ct-container"] > article,
    body.woocommerce-checkout[data-prefix="single_page"] [class*="ct-container"] > article,
    [data-prefix="single_page"] [class*="ct-container"] > article:has(.lrk-pricing),
    [data-prefix="single_page"] [class*="ct-container"] > article:has(.lrk--team-loop){
        width: 100%;
        max-width: none;
        margin-inline: 0;
        padding: var(--lrk-space-4) var(--lrk-mobile-gutter);
        border-radius: 0;
        box-sizing: border-box;
    }

    [data-prefix="single_page"] [class*="ct-container"] > article:has(.lrk-pricing){
        background: transparent;
        padding-inline: var(--lrk-mobile-gutter);
    }

    [data-prefix="single_page"] [class*="ct-container"] > article:has(.lrk--team-loop){
        padding-block: var(--lrk-space-2);
    }

    body.woocommerce-cart[data-prefix="single_page"] [class*="ct-container"] > article,
    body.woocommerce-account[data-prefix="single_page"] [class*="ct-container"] > article,
    body.woocommerce-checkout[data-prefix="single_page"] [class*="ct-container"] > article{
        width: calc(100vw - var(--lrk-mobile-gutter-total));
        margin-inline: calc(50% - 50vw + var(--lrk-mobile-gutter));
        border-radius: var(--lrk-radius-control);
    }

    .woocommerce-cart .wp-block-woocommerce-empty-cart-block{
        width: min(100%, 420px);
        margin-inline: auto;
        padding-block: var(--lrk-space-1);
    }

    .woocommerce-cart .wp-block-woocommerce-empty-cart-block figure{
        width: clamp(72px, 22vw, 88px);
        margin: 0 auto var(--lrk-space-2);
    }

    .woocommerce-cart .wp-block-woocommerce-empty-cart-block figure img{
        display: block;
        width: 100%;
        height: auto;
    }

    .woocommerce-cart .wc-block-cart__empty-cart__title{
        margin: 0 0 var(--lrk-space-3);
        font-size: var(--lrk-empty-title-size);
        line-height: 1.15;
    }

    .woocommerce-cart .lrk-empty-cart{
        min-width: 0;
        min-height: 0;
        padding: 0;
        align-items: center;
        justify-content: center;
    }

    .woocommerce-cart .lrk-empty-cart a{
        min-height: var(--lrk-touch-target);
        padding: var(--lrk-space-1) var(--lrk-space-3);
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        border-radius: inherit;
        font-size: 16px;
        line-height: 1.2;
    }

    .wp-block-woocommerce-cart-totals-block{
        margin-bottom: 0!important;
    }

    .woocommerce-checkout .ct-container-full,
    .woocommerce-cart .ct-container-full{
        padding-bottom: 0;
    }

    .woocommerce-cart .wc-block-components-product-name{
        font-size: 1em;
        line-height: 1.15;
    }
}

/* CHECKOUT */
.wc-block-components-checkout-step__content .wc-block-components-radio-control{
    padding-bottom: 0!important;
}

@media only screen and (max-width: 768px) {
    .wc-block-components-radio-control__label{
        padding-right: 30px;
    }

    .woocommerce-checkout.woocommerce-page .wc-block-components-checkout-step--with-step-number .wc-block-components-checkout-step__title::before{
        display: inline-block;
        margin-right: 10px;
    }
}

.woocommerce-checkout.woocommerce-page .wc-block-components-checkout-step--with-step-number .wc-block-components-checkout-step__title::before {
    content: counter(checkout-step);
    background: var(--buttonHoverColor);
    color: white;

    border-radius: 100%;
    width: 30px!important;
    aspect-ratio: 1/1!important;
}

@media only screen and (min-width: 1024px) {
    .wc-block-components-address-form__address_1{
        float: right!important;
        width: calc(50% - 12px)!important;
    }

    .wc-block-components-address-form{
        margin-bottom: 3em;
    }
}

.wc-block-components-checkout-place-order-button{
    padding: 0.75em!important;
    font-size: 1.5em!important;
    min-height: auto!important;
}

.wc-block-checkout__actions.wp-block-woocommerce-checkout-actions-block{
    justify-content: flex-end;
}

.wc-block-components-checkout-place-order-button{
    cursor: pointer;
}

/* THANK YOU */
.woocommerce-order-received .woocommerce-thankyou-order-received:not(.cod),
.woocommerce-thankyou-order-details + p,
.woocommerce-customer-details{
    display: none;
}

.woocommerce-order:has(.woocommerce-thankyou-order-received)
{
    max-width: 1100px;
    margin: 0 auto;
}

.woocommerce-thankyou-order-received.cod{
    margin: 2em 0;
}

.woocommerce-thankyou-order-received.cod{
    flex-direction: column;
    align-items: baseline;
    justify-content: center;
}

.woocommerce-thankyou-order-received.cod span:not(:empty){
    font-size: 0.9em;
    margin-top: 5px;
}

/* ACCOUNT */
.woocommerce-password-strength{
    border-radius: 4px;
}

.woocommerce-password-hint{
    margin-top: 10px;
    display: block;
    max-width: 520px;
    line-height: 1.4;
}

@media only screen and (max-width: 768px) {
    body .woocommerce-LostPassword.lost_password{
        text-align: center;
        margin-top: 20px;
    }
}

.woocommerce-LostPassword.lost_password a{
    opacity: 0.5;
    color: #bf3636;
    border: 1px solid #bf3636;
    padding: 3px 16px;
    display: inline-block;
    border-radius: 16px;
    text-decoration: none;
    font-size: 12px;
    font-weight: bold;
}

.woocommerce-LostPassword.lost_password a:hover{
    opacity: 1;
    background: #bf3636;
    color: white;
}

.woocommerce-password-hint + .show-password-input{
    top: calc(50% - 48px);
}

.woocommerce-password-strength + .show-password-input{
    top: calc(50% - 25px);
}

body p#reg_passmail,
.woocommerce-privacy-policy-text p{
    opacity: 1!important;
    text-align: left!important;
    font-size: 0.8em!important;
    line-height: 1.3;
    margin-bottom: 20px;
    display: block;
}

body .ct-woo-unauthorized .col2-set h2{
    --fontSize: 32px;
}

.ct-woo-unauthorized .woocommerce-button{
    width: min(300px, 100%);
    min-width: 0;
    max-width: 100%;
    font-size: 1.2em;
    border-radius: 4px;
}

.woocommerce-orders-table__cell .woocommerce-button{
    max-width: 150px;
}

.lrk-onboarding-needed .woocommerce-MyAccount-navigation-link--dashboard,
.lrk-onboarding-needed .woocommerce-MyAccount-navigation-link--checkin,
.lrk-onboarding-needed .woocommerce-MyAccount-navigation-link--pranesimai,
.lrk-onboarding-needed .woocommerce-MyAccount-navigation-link--orders,
.lrk-onboarding-needed .woocommerce-MyAccount-navigation-link--edit-account,

.page-id-658.lrk-onboarding-needed .woocommerce-notices-wrapper,
p.order-again,
#billing_company_field,
#billing_country_field,
#billing_address_2_field,
#account_display_name + span,
.woocommerce-MyAccount-content > p,
.woocommerce-orders-table__cell .woocommerce-button:is(.pay, .cancel),
.workout-table-title[data-count="0"] small,
p:has(#account_first_name, #account_last_name, #account_display_name, #billing_email)
{
    display: none!important;
}

.woocommerce-account .hero-section{
    display: none;
}

.woocommerce-Pagination{
    margin-top: 1em;
    text-align: right;
}

.woocommerce-Pagination .woocommerce-button{
    min-width: 150px;
}

.woocommerce-MyAccount-content .woocommerce-notices-wrapper{
    width: 100%;
    max-width: 100%;
}

body .woocommerce-MyAccount-content h2{
    margin-top: 0;
    font-size: 24px;
    color: var(--theme-palette-color-1);
}

address div h4{
    margin-top: 10px;
    margin-bottom: 5px!important;
}

address div p{
    margin: 0;
}

body address div p:last-of-type{
    margin-bottom: 20px;
}

.lrk-profile-empty-notice{
    max-width: 600px;
    margin: 20px auto;
    border-radius: 4px;
    background-color: #7e7e7e0a;
    padding: 30px 15px;
    text-align: center;
}

.woocommerce-EditAccountForm.edit-account > p:last-of-type{
    text-align: right;
}

@media (min-width: 690px){
    body .ct-acount-nav {
        box-shadow: -1px 5px 18px 2px #7e7e7e21;
    }
}

@media only screen and (min-width: 768px) {
    .ct-woo-unauthorized .woocommerce-button{
        float: right;
    }

    .woocommerce-form.woocommerce-form-login.login p.form-row:not(.woocommerce-form-row){
        margin-bottom: 10px;
    }

    .woocommerce-LostPassword.lost_password{
        text-align: right;
    }

    .woocommerce-MyAccount-content{
        padding-left: 2.5em;
    }
}

/* BOOKING AND CHECKIN */
.info-block h5.stk-block-heading__text{
    font-size: 18px;
    max-width: 760px;
    line-height: 1.3;
}

/* MOBILE */
@media only screen and (max-width: 480px) {
    body .ct-account-form .ct-account-panel{
        padding: 20px 30px 30px 30px;
    }
}

@media only screen and (max-width: 768px) {
    body.admin-has-been-logged-in-as-a-user{
        padding-top: 0!important;
        margin-top: 0!important;
    }
    
    #screen-meta-links,
    .login-as-user.login-as-user-top{
        display: none;
    }

    body .ct-account-form button,
    body #registerform button,
    body .login-submit button{
        font-size: 1.152em;
        border-radius: 4px;
    }

    body .ct-account-form>ul li{
        font-size: 1em;
    }

    .ct-forgot-password{
        text-decoration: underline;
    }

    body.page-id-1694 .wp-block-spacer,
    body.page-id-658 .wp-block-spacer{
        height: 50px!important;
    }

}

/* PRICE SECTION */
.lrk-pricing .columns-3 li{
    margin-bottom: 0px;
}

.lrk-pricing .lrk-item-price-surface{
    position: relative;
}

.lrk-pricing .lrk-item-price-link{
    position: static;
}

.lrk-pricing .lrk-item-price-link::after{
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    cursor: pointer;
}

.lrk-pricing .lrk-item-price-link:focus-visible::after{
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.lrk-pricing li:hover > div{
    background: #e1e8ed40;
}

.lrk-first-element-long li:first-of-type{
    width: 100%!important;
}

/* WOO LISTING FIXES */
.lrk-book-from-credits p.price{
    display: none;
}

body.lrk-gift-mode .lrk-credit-booking-notice{
    display: none;
}

.product-type-simple.ct-default-gallery{
    padding-bottom: 0px!important;
}

.product-type-simple.ct-default-gallery .ct-woo-card-actions{
    border-bottom: 0px;
}

@media only screen and (max-width: 768px) {
    .lrk-pricing .wc-block-product h3{
        font-size: 16px!important;
    }

    .lrk-pricing .wc-block-product > div{
        min-height: 50px!important;
    }
}

/* SINGLE CLASS INFO */
.single-team .checkin,
.single-classes .checkin{
    grid-template-columns: 1fr 1fr;
}

/* TEAM */
.lrk--team-loop .wp-block-post-title{
    line-height: 1.32;
    overflow: visible;
    padding-block: .08em;
}

.lrk--team-loop .wp-block-post-title a{
    line-height: inherit;
    overflow-wrap: anywhere;
}

.lrk--team-loop .lrk_job_title{
    line-height: 1.45;
    overflow: visible;
    padding-block: .05em;
}

.lrk--team-loop .wp-block-post-featured-image{
    aspect-ratio: 1 / 1;
    border-radius: 10px;
    overflow: hidden;
}

.lrk--team-loop .wp-block-post-featured-image > a{
    display: block;
    height: 100%;
}

.lrk--team-loop .wp-block-post-featured-image img{
    display: block;
    width: 100%;
    height: 100%!important;
    object-fit: cover;
    object-position: 50% 25%;
}

@media only screen and (max-width: 768px) {
    .lrk--team-loop ul{
        grid-template-columns: 1fr 1fr !important;
        gap: var(--lrk-space-3) var(--lrk-space-2)!important;
    }

    .lrk--team-loop h3{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 2.8em;
        font-size: 17px;
        word-spacing: normal;
    }

    .lrk--team-loop .lrk_job_title{
        font-size: 12px;
        margin-top: 5px;
        color: #52647d;
    }
}

@media only screen and (max-width: 339.98px) {
    .lrk--team-loop ul{
        grid-template-columns: 1fr !important;
    }
}

@media (pointer: fine) {
    #header [data-device="mobile"] [data-id="account"] .ct-account-item:hover,
    #header [data-device="mobile"] [data-id="trigger"]:hover{
        background: rgb(250 250 250 / 18%)!important;
        border-color: rgb(250 250 250 / 56%)!important;
    }
}

.single-team .ct-featured-image:not(.alignwide):not(.alignfull) img{
    max-width: 350px;
}

.single-team{
    .checkin--block-picture,
    .checkin--block-info .trainer{
        display: none;
    }
}

[data-prefix="team_single"] .entry-header .page-title small{
    display: block;
    font-size: 50%;
    line-height: 1.4;
    padding-block: .05em;
}

/* FOOTER FORM */
#block-17,
#block-21{
    margin-top: 0!important;
}

@media only screen and (max-width: 600px) {
    footer div[data-row="top"] > .ct-container{
        display: flex;
        flex-direction: column-reverse;
    }

    .wpcf7 label:not(.wpcf7-form-control-wrap){
        text-align: left;
    }

    .wpcf7-form-control{
        width: 100%;
    }
}

@media only screen and (min-width: 768px) {
    .lrk--footer-form-top{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: var(--wp--preset--spacing--40);
    }
}

/* TOAST */
body.page .jq-toast-wrap{
    width: calc(100% - 40px);
    max-width: 400px;
}

body.page .jq-toast-single,
body.page .jq-toast-heading{
    border-radius: 6px;
    line-height: 1.25;
    font-family: inherit;
    font-size: inherit;
}

body.page .jq-toast-heading{
    font-size: 1.2em;
}

body.page .jq-has-icon{
    background-position: 25px 20px;
    box-shadow: 0px 4px 16px #00000029;

    background-size: 35px;
    padding: 20px;
    padding-left: 70px;
}

body.page .jq-icon-success{
    background-image: url('icons/booked.png');
    background-color: white;
    color: black;
}

body.page .jq-icon-info,
body.page .jq-icon-error{
    background-image: url('icons/error.png');
    background-color: var(--theme-palette-color-5);
    color: black;
}

body.page .jq-icon-info{
    background-image: url('icons/booked.png');
}

body.page .jq-toast-loader{
    top: 4px;
    left: 4px;
    height: 5px;
    max-width: calc(100% - 8px);
}


/* Woo Bookings */
table.shop_table{
    --theme-table-font-size: 16px;
}

body .wc-block-components-product-metadata{
    font-size: 100%;
}

.wc-block-components-quantity-selector:has(input[readonly]){
    display: none;
}

body .wc-block-checkout__terms.wc-block-checkout__terms--with-separator{
    padding-top: 0px;
    border-top: none;
}

.wc-block-components-payment-method-label{
    font-weight: bold;
}

body .wc-block-components-radio-control-accordion-content {
    padding: 18px;
    padding-top: 0;
}

body .wc-block-checkout__terms{
    margin-bottom: 20px;
}

body.woocommerce-page .woocommerce-thankyou-order-details li{
    margin-bottom: -1px;
}

@media screen and (min-width: 690px) {   
    body.woocommerce-page .woocommerce-thankyou-order-details {
        grid-template-columns: repeat(3, 1fr);
        margin-bottom: var(--wp--preset--spacing--60);
    }

    body.woocommerce-page .woocommerce-thankyou-order-details li:nth-child(odd) {
        border-inline-end: none;
    }

    body.woocommerce-page .woocommerce-table__product-table.product-total{
        width: 250px;
    }

}

body.single-product .lrk-appointment-from{
    font-size: 60%;
    line-height: 0.5;
    display: block;
    margin-top: var(--wp--preset--spacing--50);
}

body.single-product span.select2-dropdown.select2-dropdown--below{
    box-shadow: 0px 15px 30px -5px rgb(0 0 0 / 25%);
    border-radius: 9px;
}

body.single-product .select2-selection.select2-selection--single{
    border-radius: 10px;
    transition: background-color 0.1s ease-in;
    font-weight: bold;
}

body.single-product ul.select2-results__options li:first-child{
    border-radius: 9px 9px 0 0;
}

body.single-product ul.select2-results__options li:last-child{
    border-radius: 0 0 9px 9px;
}

.wc-block-components-form .wc-block-components-text-input input[type=email], .wc-block-components-form .wc-block-components-text-input input[type=number], .wc-block-components-form .wc-block-components-text-input input[type=password], .wc-block-components-form .wc-block-components-text-input input[type=tel], .wc-block-components-form .wc-block-components-text-input input[type=text], .wc-block-components-form .wc-block-components-text-input input[type=url], .wc-block-components-text-input input[type=email], .wc-block-components-text-input input[type=number], .wc-block-components-text-input input[type=password], .wc-block-components-text-input input[type=tel], .wc-block-components-text-input input[type=text], .wc-block-components-text-input input[type=url]{
    border-radius: 4px!important;
}

body .woocommerce-MyAccount-content .checkin-btn.button{
    font-size: 0.8em;
}

li.product.type-product span.lrk-appointment-from{
    display: none;
}

body [data-products=type-2] .product{
    padding-bottom: 0px;
}

body [data-products] .product .ct-woo-card-actions{
    border-bottom: 0;
}

body [data-products] .price {
    --theme-font-size: 18px;
}

.grecaptcha-badge{
    visibility: hidden;
}

/* STYLE UPDATE 20241216 */
body [data-products=type-2] .product{
    background: var(--theme-palette-color-1);
    box-shadow: 0px 1px 24px -8px #adc9d773;
}

.add_to_cart_button{
    text-decoration: underline!important;
}

.quantity[data-type=type-2] .ct-increase,
.quantity[data-type=type-2] .ct-decrease{
    color: var(--theme-form-text-initial-color);
}

div.quantity[data-type] input[type=number]{
    background-color: white;
    font-weight: bold;
    font-size: calc(var(--theme-form-font-size) * 1.5);
}

body.page-id-1694 .checkin--no-events p,
.wpcf7 label:not(.wpcf7-form-control-wrap),
footer p,
footer #footer-menu a,
body.single.single-team h4.stk-block-heading__text,
table.woocommerce-credits-table,
table.woocommerce-credits-table thead th span,
.woocommerce-Message,
table.woocommerce-workouts-table,
table.woocommerce-workouts-table thead th span,
table.woocommerce-orders-table,
table.woocommerce-orders-table thead th span,
.woocommerce-MyAccount-content address *,
.woocommerce-address-fields label,
.woocommerce-EditAccountForm label,
.woocommerce-EditAccountForm legend,
.wp-block-woocommerce-cart,
.ct-woo-unauthorized label,
.wc-block-cart__empty-cart__title,
.woocommerce-privacy-policy-text p,
.ct-woo-unauthorized .col2-set h2{
    color: var(--theme-palette-color-1);
}

.lrk-empty-cart a,
table.woocommerce-table--order-details,
table.woocommerce-table--order-details thead th,
.woocommerce-info, .woocommerce-error, .woocommerce-message, .woocommerce-thankyou-order-received{
    color: var(--theme-palette-color-1) !important;
}

body.single.single-team .stk-block-accordion__content .stk--inner-svg svg path{
    fill: var(--theme-palette-color-2)!important;
}

.checkin--block{
    background-color: var(--theme-palette-color-1);
}

@media screen and (min-width: 690px) {
    body .ct-acount-nav{
        margin-inline-end: 0px;
    }
}

.woocommerce-account .checkin--block{
    flex-direction: column;
}

.woocommerce-account .checkin--block-picture img{
    min-width: 60px;
    width: 60px;
}

body.woocommerce-account .checkin--block h2{
    color: inherit;
    margin-top: 20px;
}

.wpcf7 .wpcf7-submit,
.checkin--block-info .button,
.woocommerce-account .button,
.lrk-profile-empty-notice .button{
    border-radius: var(--has-classic-forms, var(--theme-form-field-border-radius, 3px));
}

body .woocommerce-Button,
.single_add_to_cart_button{
    border-radius: var(--has-classic-forms, var(--theme-form-field-border-radius, 3px))!important;
}


[data-prefix="blog"] .entry-card .entry-title,
[data-prefix="blog"] .entry-card p{
    color: var(--theme-palette-color-1);
}

@media screen and (min-width: 690px) {
    [data-prefix="blog"] .entry-card .entry-title{
        --theme-font-size: 24px;
        color: var(--theme-palette-color-1);
    }
}

form.variations_form table.variations select{
    background: white;
}

.lrk-cta-column-block > div{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.lrk-cta-column-block h2{
    font-size: clamp(22px, 2.8vw, 36px);
    line-height: 1.18;
    padding-block: .06em;
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    overflow: visible;
}

.wc-block-cart__empty-cart__title{
    margin-top: var(--wp--preset--spacing--50);
}

ul[data-products="type-2"]{
    column-gap: 40px;
}

[data-products] .product{
    --theme-border-radius: 16px;
}

.wc-block-grid__product-price{
    min-width: max-content;
}

span.select2-dropdown .select2-results__option.select2-results__option--highlighted[aria-selected],
span.select2-dropdown .select2-results__option.select2-results__option--highlighted[data-selected]{
    background-color: var(--theme-palette-color-2)!important;
}

.select2-container--default .select2-results>.select2-results__options{
    background: white;
    border-radius: 8px;
    color: var(--theme-heading-3-color);
}

span.select2-container.select2-container--open .select2-selection--single .select2-selection__rendered{
    color: white!important;
}

span.select2-container.select2-container--open .select2-selection--single .select2-selection__arrow b{
    border-top-color: white;
    border-bottom-color: white;
}

.page-id-658 #main-container .site-main{
    align-content: flex-end;
}

body .ct-woo-unauthorized .col2-set h2 {
    font-size: var(--fontSize);
}

body .entry-content details.wp-block-stackable-accordion summary > div{
    margin-left: 0!important;
    margin-right: 0!important;
    border-radius: 16px;
}

/* Rebranding updates */
.woocommerce-product-gallery .ct-media-container{
    --border-radius: 16px;
}

.woocommerce-message.warning{
    background-color: #f9f871;
}

.woocommerce-message.warning{
    display: block;
}

.woocommerce-message.warning a{
    display: block;
    margin-top: 0.2em;
    font-size: 1.1em;
    font-weight: bold;
    color: var(--theme-palette-color-1);
    text-decoration: underline;
}

/* Hiding  */
.wc-block-cart-items__row:has(.price.wc-block-components-product-price:empty) .wc-block-components-sale-badge{
    display: none;
}


.wc-block-components-checkout-step__description,
.wc-block-components-title.wc-block-components-title,
.wc-block-components-address-card__address-section,
.wc-block-components-address-card__address-section span,
#payment-method label,
#payment-method label.label{
    color: var(--stk-global-color-58463);
}

/* Blocksy's footer social box still carries one obsolete ACF shortcode as an
   encoded telephone URL. It cannot resolve in that Customizer field, so do
   not expose a dead icon/link to visitors. The real, populated phone link in
   the footer menu remains visible. */
.ct-social-box a[href^="tel:%5Bacf"]{
    display: none !important;
}
