
/* Document Default */
@media screen {

    .text-align-left {
        text-align: left;
    }
    .text-align-right {
        text-align: right;
    }
    .text-align-center {
        text-align: center;
    }
    .text-align-justify {
        text-align: justify;
    }


    /* Header */
    header {
        position: relative;
        width: 100%;
        z-index: 10;
        background-color: inherit;
    }

    .header_content {
        position: relative;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        z-index: 10;
        max-width: 980px;
        margin: 0 auto;
    }

    .flex-gap\.2px{ gap: 2px; }
    .flex-gap\.4px{ gap: 4px; }
    .flex-gap\.6px{ gap: 6px; }
    .flex-gap\.8px{ gap: 8px; }
    .flex-gap\.10px{ gap: 10px; }
    .flex-gap\.12px{ gap: 12px; }
    .flex-gap\.16px{ gap: 16px; }
    .flex-gap\.18px{ gap: 18px; }
    .flex-gap\.20px{ gap: 20px; }
    .flex-gap\.24px{ gap: 24px; }
    .flex-gap\.32px{ gap: 32px; }
    .flex-gap\.64px{ gap: 64px; }

    h1,h2,h3,h4,h5,p{
        position: relative;
        line-height: 1.2;
        font-weight: 400;
        width: 100%;
    }

    .text-container{
        width: 100%;
        position:relative;
    }

    .pad-y\.0{
        padding-top:0px;
        padding-bottom:0px;
    }
    .pad-y\.xxs{
        padding-top:1.5%;
        padding-bottom:1.5%;
    }
    .pad-y\.xs{
        padding-top:3%;
        padding-bottom:3%;
    }
    .pad-y\.sm{
        padding-top:6%;
        padding-bottom:6%;
    }
    .pad-y\.md{
        padding-top:12%;
        padding-bottom:12%;
    }

    .pad\.0px {
        padding: 0px;
    }
    .pad\.xs {
        padding: 3%;
        padding-left: clamp(8px, 3%, 100%);
        padding-right: clamp(8px, 3%, 100%);
    }

    .pad-y\.8px{
        padding: 8px 0;
    }
    
    .pad\.12px,
    .span.pad\.12px,
    .button > span.pad\.12px{
        padding: 12px;
    }

    .line-height\:1{
        line-height: 1;
    }
    .line-height\:1\.1{
        line-height: 1.1;
    }
    .line-height\:1\.2{
        line-height: 1.2;
    }
    .line-height\:1\.3{
        line-height: 1.3;
    }

    /* Text Sizes */
    .text-size\.48px {
        font-size: clamp(1.5rem, 5vw, 48px); /* Large title */
    }
    .text-size\.36px {
        font-size: clamp(1.5rem, 4vw, 36px); /* Medium title */
    }
    .text-size\.24px {
        font-size: clamp(1.125rem, 3vw, 24px); /* Small title */
    }
    
    /* Subtitles */
    .text-size\.20px {
        font-size: clamp(18px, 2.5vw, 20px); /* Large subtitle */
    }
    .text-size\.18px {
        font-size: clamp(16px, 2vw, 18px); /* Medium subtitle */
    }
    /* Body Text */
    .text-size\.16px {
        font-size: 16px; /* Small subtitle */
    }
    .text-size\.15px {
        font-size: 15px; /* Small subtitle */
    }
    .text-size\.14px {
        font-size: 14px; /* Large body text */
    }
    .text-size\.13px {
        font-size: 13px; /* Large body text */
    }
    .text-size\.12px {
        font-size: 12px; /* Medium body text */
    }
    .text-size\.11px {
        font-size: 11px; /* Small body text */
    }
    .text-size\.10px {
        font-size: 10px; /* Small body text */
    }
    .text-size\.9px {
        font-size: 9px; /* Small body text */
    }
    .text-size\.8px {
        font-size: 8px; /* Small body text */
    }
    .text-style-italic {
        font-style: italic;
    }
    .text-weight-bold {
        font-weight: bold;
    }
    .text-decoration-underline {
        text-decoration: underline;
    }

    .text-transform-upper {
        text-transform: uppercase;
    }

    .blockquote {
        position: relative;
        font-weight: 300;
        &:before, &:after {
            content: '\201C';
            font-family: 'Sanchez';
            color: rgba(204, 204, 204, 0.3);
            font-size: 9rem;
            display: block;
            position: absolute;
            top: -12px;
            z-index: -1;
            left: -4px;
            line-height: 1;
        }
        &:after {
            content: '\201D';
            top: calc(100% - 40px);
            left: auto;
            right: -1px;
        }
    }
    .blockquote_content{
        padding: 4px 16px;
    }
    .blockquote_footer{
        padding: 0px 17px;
    }

    .ul_list {
        padding: 0 8px;
        list-style-position: inside;
    }
    .ul_list li{
        list-style-position: inside;
        font-size: inherit;
    }
    .ul_list.ul_style_check li{
        list-style: none;
        display: table-row;
    }
    .ul_list.ul_style_check {
        list-style: none;
        list-style-position: outside;
        list-style-position: inside;
    }
    .ul_list.ul_style_check > li::before {
        content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" width="12px" height="12px"><g fill="green"><path d="M48.54,15.35,22.16,41.73a5,5,0,0,1-7.08,0L1.47,28.11A5,5,0,0,1,8.54,21L18.62,31.11,41.46,8.27a5,5,0,0,1,7.08,7.08Z"/></g></svg>');
        display: table-cell;
        text-align: right;
        padding-right: 9px;
        touch-action: none;
        user-select: none;
        pointer-events: none;
    }

    button > span {
        width: 100%;
    }

    .call_to_action_form {
        position: relative;
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .call_to_action_form_content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 0;
    }

    .pseudo_background {
        width: 100%;
        height: 90%;
        background: var(--background-color);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }
    .pseudo_background.height\.80\%{
        height: 80%;
    }

    .header_book_image {
        margin-top: 0;
        max-width: 575px;
    }

    /* Video Iframe */
    .header_video_container {
        position: relative;
        margin: 0;
        width: 100%;
        max-width: 600px;
        border: 0 solid #000;
        background: #000;
        border-radius: 0;
        transition: width .3s, padding-top .3s, border-width .3s, border-radius .3s
    }

    /* Referral Form */
    .header_referral_form {
        --bg_form_hue : 280;
        --bg_form_sat : 7%;
        --bg_form_lns : 16%; 
        --bg_form_lns_input : 26%;
        --bg_form_lns_placeholder : 90%;
        --color_form_sat : 100%;
        --font_color : white;
        --font_color_disclaimer : white;
        --bg_input_color: hsla(0, 100%, 100%, 0.1);
        position: relative;
        scroll-margin-top: 70px;
        background: hsl(var(--bg_form_hue), var(--bg_form_sat), var(--bg_form_lns));
        width: 100%;
        max-width: 600px;
        border-radius: 0;
        margin: 0;
        -webkit-box-shadow: 0 0 18px -6px #000000;
        box-shadow: 0 0 18px -6px #000000;
        border: 1px solid rgba(255, 255, 255, .1);
        color: var(--background-dark-label);
        transition: width .3s, border-radius .3s, margin .3s;
    }

    .call_to_action_form_header {
        padding: 16px 16px 0px 16px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
        color: var(--font_color);
    }

    .header_form_body {
        padding: 16px
    }

    .header_form_body p {
        padding: 4px;
        font-size: 14px;
        color: white;
    }

    .header_form_content{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .header_form_footer .disclaimer{
        display: block;
        padding: 16px 0;
        color : var(--font_color_disclaimer);
        opacity: 0.6;
    }
    .header_form_footer {
        padding: 0px 16px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        gap:16px;
    }

    .header_form_footer .btn_flex_group {
        min-width: 100%;
        max-width: 100%;
        width: 100%;
    }
    .btn_app_group {
        width: 100%;
    }

    .header_form_footer .btn_app_group svg,
    .header_form_footer .btn_flex_group svg {
        border: 2px solid #333;
        border-radius: 6px;
    }

    .header_form_footer .btn_app_group a:hover svg,
    .header_form_footer .btn_flex_group a:hover svg {
        border-color: var(--active-color);
    }

    .modal_body.pad_16 {
        padding: 16px;
    }

    .modal_body .pad_t_8 {
        padding-top: 8px;
    }

    .modal {
        color: #b2b2b2;
    }

    .modal h3 {
        font-size: 13px;
        text-transform: uppercase;
    }

    .modal .subtitle {
        margin: 8px 0;
    }

    .modal_body_footer {
        border-top: 1px solid black;
        margin: 16px -16px 0 -16px;

    }

    .modal_body_footer.pad_y16 {
        padding: 16px;
    }

    .modal .button {
        font-size: 16px;
        margin-bottom: 16px;
    }

    .modal .button.mrg_0 {
        margin: 0;
    }

    .header_appointments {
        flex: 1;
        padding: 16px 0;
        color: white;
    }

    .modal_appointment_datetime_label {
        background-color: transparent;
        padding: 8px 16px;
        color: white;
        font-weight: bold;
        border-radius: 6px;
        text-align: center;
    }

    .modal_available_times {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        width: 100%;
        margin-top: 16px;
        gap: 8px;
    }


    .modal_available_time_item {
        background-color: black;
        width: 140px;
        padding: 8px;
        text-align: center;
        border-radius: 6px;
        font-weight: bold;
        cursor: pointer;
    }

    .modal_available_time_item:hover {
        background-color: #0783fe;
        color: white;
    }

    .eval_container {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        background: black;
        padding: 8px;
        border-radius: 6px;
        cursor: pointer;
    }

    .eval_container:hover {
        background: #0783fe;
    }

    .eval_container._selected_eval {
        background-color: blue;
    }

    .select_time_container {
        flex: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }

    .select_time {
        border: 1px solid #1c1a1d;
        padding: 8px 16px;
        border-radius: 6px;
        min-width: 118px;
        text-align: center;
    }

    .select_time.full {
        width: 100%;
        text-align: center;
    }

    .eval_container._selected_eval .select_time,
    .eval_container:hover .select_time {
        border-color: #d8d8d8;
        color: white;
    }

    .eval_container._selected_eval .select_time {
        font-weight: bold;
    }

    .eval_date {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-end;
        background: #1c1a1d;
        border: 2px solid #1c1a1d;
        border-radius: 6px;
        gap: 4px;
        padding: 4px 8px;
        width: 80px;
    }

    .eval_date .month,
    .eval_date .year {
        color: #b2b2b2;
        font-size: 12px;
        font-weight: bold;
        text-align: center;
    }

    /* .eval_date .month{
        padding: 2px;
    } */
    .eval_date .day {
        font-size: 30px;
        font-weight: bold;
        text-align: center;
    }

    .eval_container._selected_eval .eval_date,
    .eval_container:hover .eval_date {
        color: white;
    }

    /* Buttons */
    .button {
        --bg_hue       : 233;
        --bg_sat       : 100%;
        --bg_lns       : 72%;
        --bg_lns_hover : 52%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        background: hsl(var(--bg_hue), var(--bg_sat), var(--bg_lns));
        color: white;
        min-height: 38px;
        min-width: 38px;
        border: none;
        font-weight: 600;
        border-radius: 6px;
        cursor: pointer;
        width: 100%
    }
    .button > span {
        padding: 8px 16px;
    }
    .button:hover {
        opacity: 0.8;
        /* background: hsl(var(--bg_hue), var(--bg_sat), var(--bg_lns_hover)); */
    }
    .button.btn\.100\%{
        width: 100%;
    }

    .btn_flex_group {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8px;
        max-width: 320px
    }

    .btn_app_group {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8px;
        max-width: 400px;
        padding-bottom:16px;
    }

    .btn_app_group a,
    .btn_flex_group a {
        font-size: 0;
    }

    .content_padding {
        padding: 0 8%
    }

    .btn_icon_flex {
        display: inline-flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .btn_icon_flex span {
        display: block;
    }

    .btn_icon_group {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0px;
    }

    .btn_title {
        font-size: 24px;
        font-weight: bold;
    }

    .btn_subtitle {
        font-size: 16px;
        font-weight: 400;
    }

    /* Section Defaults */
    section {
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        background-color: inherit;
    }

    .section_even{
        background-color: white;
    }
    .section_odd {
        color: #000;
        background: var(--background-color);
    }

    .section_dark {
        background: black
    }

    .section_dark h2 {
        color: white
    }

    .section_content {
        position: relative;
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        top: 32px;
        opacity: 0;
        transition: top .7s, opacity .7s;
        will-change: left, opacity;
    }
    .section_content.section_center{
        align-items: center;
    }
    .section_content.fit-content {
        max-width: fit-content;
    }

    .section_heading.section_content {
        margin-bottom: 4%;
        font-size: 28px;
    }

    .section_content.animate {
        top: 0px;
        opacity: 1;
    }

    .section_content h2::after {
        content: "";
        position: absolute;
        bottom: -4px;
        left: 0;
        height: 3px;
        background: blue;
        z-index: 0;
        width: 0px;
        transition: width .7s;
        will-change: width;
    }

    .section_content h2.center{
        align-self: center;
        text-align: center;
    }

    .section_content h2.center::after,
    .section_content h2.text-align-center::after {
        content: "";
        position: absolute;
        bottom: -4px;
        left: 50%;
        transform: translateX(-50%);
        height: 3px;
        background: blue;
        z-index: 0;
        width: 0px;
        transition: width .7s;
        will-change: width;
    }
    .section_content h2.text-align-right::after {
        content: "";
        position: absolute;
        bottom: -4px;
        left: auto;
        right: 0;
        height: 3px;
        background: blue;
        z-index: 0;
        width: 0px;
        transition: width .7s;
        will-change: width;
    }

    .section_content.animate h2::after,
    .section_content.animate h2.text-align-center::after,
    .section_content.animate h2.text-align-right::after {
        width: 50px;
    }


    .custom_image,
    .section_images {
        position: relative;
    }

    .custom_image,
    .section_images img {
        overflow: hidden;
        outline: 4px solid rgba(0, 0, 0, .1);
        -webkit-box-shadow: 0 0 40px -15px #000000;
        box-shadow: 0 0 40px -15px #000000;
        font-size: 0
    }

    .section_images img {
        border-radius: 8px;
    }

    .custom_image.img_placeholder{
        background-image: url('/frontend/static/images/editor_image_placeholder.png');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 25% auto;
    }

    .custom_image_wrapper {
        flex:1;
        width: 100%;
    }

    .custom_image {
        position: relative;
        opacity: 0;
        scale: 0.5;
        transition: opacity .6s, scale .6s;
        will-change: opacity, scale;
        border-radius: 6px;
    }

    .custom_image.animate {
        opacity: 1;
        scale: 1;
    }

    /* LANDSCAPE ASPECT RATIOS */
    .ar_LS_16_9 {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* 16:9 landscape */
    overflow: hidden;
    }
    

    .ar_LS_4_3 {
        position: relative;
        width: 100%;
        padding-top: 75%; /* 4:3 landscape */
        overflow: hidden;
    }
    .ar_LS_20_13 {
        position: relative;
        width: 100%;
        padding-top: 65%; /* 20:13 landscape */
        overflow: hidden;
    }

    .ar_LS_21_9 {
        position: relative;
        width: 100%;
        padding-top: 42.86%; /* 21:9 landscape */
        overflow: hidden;
    }

    .ar_LS_3_2 {
        position: relative;
        width: 100%;
        padding-top: 66.67%; /* 3:2 landscape */
        overflow: hidden;
    }

    /* PORTRAIT ASPECT RATIOS */
    .ar_PT_16_9 {
        position: relative;
        width: 100%;
        padding-top: 177.78%; /* 9:16 portrait */
        overflow: hidden;
    }

    .ar_PT_4_3 {
        position: relative;
        width: 100%;
        padding-top: 133.33%; /* 3:4 portrait */
        overflow: hidden;
    }

    .ar_PT_3_2 {
        position: relative;
        width: 100%;
        padding-top: 150%; /* 2:3 portrait */
        overflow: hidden;
    }

    .ar_1_1 {
        position: relative;
        width: 100%;
        padding-top: 100%; /* 1:1 (square, same for both orientations) */
        overflow: hidden;
    }
    .ar_circle {
        position: relative;
        border-radius: 9999px;
        width: 100%;
        padding-top: 100%; /* 1:1 (square, same for both orientations) */
        overflow: hidden;
    }

    /* Custom Aspect Ratios */
    .ar_custom_landscape {
        position: relative;
        width: 100%;
        padding-top: var(--custom-landscape-aspect-ratio, 50%); /* Default custom landscape */
        overflow: hidden;
    }

    .ar_custom_portrait {
        position: relative;
        width: 100%;
        padding-top: var(--custom-portrait-aspect-ratio, 150%); /* Default custom portrait */
        overflow: hidden;
    }

    /* Ensures images fit their containers */
    .ar_LS_16_9 img,
    .ar_LS_4_3 img,
    .ar_LS_21_9 img,
    .ar_LS_20_13 img,
    .ar_LS_3_2 img,
    .ar_PT_16_9 img,
    .ar_PT_4_3 img,
    .ar_PT_3_2 img,
    .ar_1_1 img,
    .ar_circle img,
    .ar_custom_landscape img,
    .ar_custom_portrait img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover; /* Adjust fit as needed */
    }

    .section_content li .title {
        font-weight: bold;
        font-size: 14px;
    }

    ul.ul_ {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 10px;
    }

    ul.ul_ li:before {
        display: inline;
    }

    /* Section Double Today */

    /* Section Join Today */
    .section_join_today.content_padding {
        padding: 0 4%
    }

    .section_join_today {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        gap: 24px
    }

    .section_join_today_data {
        width: 100%;
        flex: 1;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 4%
    }

    .section_join_today_counter {
        position: relative;
        background: #0783fe;
        width: 100%;
        padding-bottom: 36%;
        border-radius: 6px;
        overflow: hidden;
        text-align: center
    }

    .section_join_today_counter.happy_clients {
        position: relative;
        background: #0783fe url('/frontend/static/images/site/happy_clients.jpg') center center no-repeat;
        background-size: auto;
        box-shadow: inset 0 0 0 2000px rgba(54, 154, 255, .9);
        background-size: cover;
        color: white;
        left: -20px;
        opacity: 0;
        transition: left .5s, opacity .5s;
        will-change: left, opacity;
    }

    .section_join_today_counter.happy_clients.animate {
        left: 0px;
        opacity: 1;
    }

    .section_join_today_counter.fat_loss {
        position: relative;
        background: #0783fe url('/frontend/static/images/site/fat_loss.jpg') center center no-repeat;
        background-size: auto;
        box-shadow: inset 0 0 0 2000px rgba(54, 154, 255, .9);
        background-size: cover;
        color: white;
        right: -20px;
        opacity: 0;
        transition: right .5s, opacity .5s;
        will-change: right, opacity;
    }

    .section_join_today_counter.fat_loss.animate {
        right: 0px;
        opacity: 1;
    }

    .section_join_today_counter_content {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%
    }

    .section_join_today_counter_content .counter {
        font-size: 24px;
        font-weight: 600
    }

    .section_join_today_counter_content h3 {
        font-size: 13px;
        font-weight: 600
    }

    .section_join_today_counter.content_grid {
        min-height: 120px;
    }

    .section_join_today_counter.content_grid .icon {
        display: inline-block;
        width: 27px;
    }

    .section_join_today_counter.content_grid h2 {
        font-size: 20px;
        text-transform: uppercase;
    }

    /* Section 70% */

    /* Section Success Stories */
    .section_70p {
        width: 70%;
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }

    .section_success_stories {
        width: 100%;
        flex: 1;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }

    /* Image Carousel */
    .carousel {
        position: relative;
        max-width: 100vw;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        padding: 24px 0;
        overflow-y: hidden;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: 0 8px;
        left: 90%;
        transition: left .5s;
        will-change: left;
        margin: 0 auto;
    }

    .carousel.animate {
        left: 0%;
    }

    .carousel_item {
        position: relative;
        margin: 8px;
        padding: 4px;
        min-width: 278px;
        max-width: 320px;
        -webkit-box-shadow: -1px 12px 22px -26px rgb(0 0 0 / 75%);
        box-shadow: -1px 12px 32px -26px rgb(0 0 0 / 75%);
        scroll-snap-align: start;
        background: black;
        border-radius: 6px;
        font-size: 0;
        list-style: none;
        overflow: hidden;
        border-radius: 6px;
    }
    .carousel_item.placeholder {
        background: #ccc;
    }

    .crop_transformation_pictures .carousel_item {
        position: relative;
        overflow: hidden;
        width: 270px;
        min-width: 270px;
        max-width: 270px;
        height: 232px;
        border: 3px solid black;
    }

    .crop_transformation_pictures picture {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: auto;
    }


    /* Section Reviews */
    .section_erafit_bg {
        background: black url('/frontend/static/images/signup/app/erafit_bg.jpg');
        background-position-x: 0;
        background-position-y: 0;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .8);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%
    }

    .section_erafit_bg .section_content h2 {
        font-size: 32px;
    }


    .section_review_container {
        background: black url('/frontend/static/images/site/reviews_bg_ls_all.jpg');
        background-position-x: 0;
        background-position-y: 0;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .5);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .section_review_container.section_review_container_oc {
        background-image: url('/frontend/static/images/www/oc_bg_image.jpg');
    }

    .section_reviews {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 32px
    }

    .section_reviews_group {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 16px
    }

    .section_reviews_group .icon svg {
        width: 34px
    }

    .section_reviews_group .yelp,
    .section_reviews_group .google,
    .section_reviews_group .facebook {
        display: block;
        width: 202px;
        max-width: 240px;
        text-decoration: none;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        gap: 8px;
        border: 1px solid black;
        border-top-width: 3px;
        padding: 8px 16px;
        border-radius: 6px;
        background: white
    }

    .section_reviews_group .yelp {
        position: relative;
        color: #c1272d;
        border-color: #c1272d;
        opacity: 0;
        top: 40px;
        transition: opacity .6s, top 1s;
        will-change: opacity;
        z-index: 0;
    }

    .section_reviews_group .yelp.animate {
        opacity: 1;
        top: 0;
    }

    .section_reviews_group .google {
        position: relative;
        color: #34a853;
        border-color: #34a853;
        z-index: 10;
        opacity: 0;
        top: 40px;
        transition: opacity .6s, top 1s;
        will-change: opacity;
    }

    .section_reviews_group .google.animate {
        opacity: 1;
        top: 0;
    }

    .section_reviews_group .facebook {
        position: relative;
        color: #475993;
        border-color: #475993;
        opacity: 0;
        top: 40px;
        transition: opacity .6s, top 1.5s;
        will-change: opacity;
        z-index: 0;
    }

    .section_reviews_group .facebook.animate {
        opacity: 1;
        top: 0;
    }

    .section_reviews_group .icon {
        width: 40px;
        font-size: 0
    }

    .section_reviews_group .title {
        font-weight: 600;
        font-size: 14px
    }

    .review_stars {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: flex-start
    }

    .review_stars .star {
        display: block;
        width: 14px;
        margin-right: 4px
    }

    .review_stars .score {
        font-weight: 600
    }

    .custom_section {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: clamp(32px, 7%, 100px); /* Minimum 32px, grows to 7% of the container, and maxes out at 100px */
    }

    .LS\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS\:flex-direction\.row{
        flex-direction: row;
    }
    .LS\:flex-direction\.col{
        flex-direction: column;
    }
    .LS\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .custom_section .section_images {
        flex: 1;
        width: 100%;
    }

    .custom_section .section_content_wrapper {
        flex: 1;
        width: 100%;
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
    }

    /* Section Featues */
    .section_features {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 32px
    }


    .section_features .section_images {
        width: 60%;
        display: flex;
        flex-direction: row;
        align-self: center;
        justify-content: center;
    }

    .section_features .section_content {
        width: 40%
    }

    /* Section Training Plans */
    .trainig_plan_float_main {
        position: relative;
        opacity: 0;
        width: 90%;
        transition: opacity .6s, width .6s;
        will-change: opacity, width;
    }

    .trainig_plan_float_main.animate {
        opacity: 1;
        width: 100%;
    }

    img.trainig_plan_float_right {
        width: 20%;
        position: absolute;
        top: 50%;
        left: 0%;
        opacity: 0;
        transform: translate(0, -50%);
        transition: top .3s ease-out, left .3s ease-out, opacity .3s ease-out;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, left;
    }

    img.trainig_plan_float_right.animate {
        left: -6%;
        opacity: 1;
    }

    img.trainig_plan_float_left {
        width: 20%;
        position: absolute;
        top: 50%;
        right: 0%;
        opacity: 0;
        transform: translate(0, -50%);
        transition: top .3s ease-out, right .3s ease-out, opacity .3s ease-out;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, right;
    }

    img.trainig_plan_float_left.animate {
        right: -6%;
        opacity: 1;
    }

    /* Section Nutrition Plans */
    .nutrition_plan_float_main {
        position: relative;
        width: 90%;
        transition: opacity .6s, width .6s;
        will-change: opacity, width
    }

    .nutrition_plan_float_main.animate {
        opacity: 1;
        width: 100%
    }

    img.nutrition_plan_float_bottom {
        width: 60%;
        position: absolute;
        opacity: 0;
        top: 87%;
        left: 6%;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, top, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, left
    }

    img.nutrition_plan_float_bottom.animate {
        opacity: 1;
        top: 67%
    }

    img.nutrition_plan_float_main_right {
        width: 20%;
        position: absolute;
        top: 50%;
        right: -20%;
        opacity: 0;
        transform: translate(0, -50%);
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, left
    }

    img.nutrition_plan_float_main_right.animate {
        right: -5%;
        opacity: 1
    }

    /* Section Check-in */
    .check_in_main {
        position: relative;
        opacity: 0;
        width: 90%;
        transition: opacity .6s, width .6s;
        will-change: opacity, width
    }

    .check_in_main.animate {
        opacity: 1;
        width: 100%
    }

    img.check_in_bottom {
        width: 53%;
        position: absolute;
        top: 114%;
        right: 5%;
        opacity: 0;
        transform: translateY(-50%);
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, top, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, right
    }

    img.check_in_bottom.animate {
        top: 94%;
        right: 5%;
        opacity: 1
    }

    img.check_in_left {
        width: 20%;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translate(0, -50%);
        opacity: 0;
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, left
    }

    img.check_in_left.animate {
        left: -6%;
        opacity: 1
    }

    /* Section Community */
    .community_main {
        position: relative;
        width: 90%;
        opacity: 0;
        transition: opacity .6s, width .6s;
        will-change: opacity, width
    }

    .community_main.animate {
        opacity: 1;
        width: 100%
    }

    img.community_right {
        width: 20%;
        position: absolute;
        top: 50%;
        right: 0;
        opacity: 0;
        transform: translate(0, -50%);
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, right
    }

    img.community_right.animate {
        right: -6%;
        opacity: 1
    }

    /* Section Other Features */


    img.other_features_center {
        position: relative;
        top: 0;
        width: 32%;
        opacity: 1;
        outline: 4px solid rgba(255, 255, 255, .3);
        z-index: 9;
        transition: opacity .6s, width .6s;
        will-change: opacity, width;
        background: black;
    }

    .other_features_center.animate {
        opacity: 1;
        width: 42%;
    }

    .other_features_main {
        position: absolute;
        width: 26%;
        top: 49.5%;
        left: 40%;
        transform: translateY(-50%);
        transition-property: left, width;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: left, width;
        background: black;
    }

    img.other_features_main.animate {
        left: 0%;
        width: 36%;
    }

    .other_features_right {
        position: absolute;
        width: 26%;
        top: 49.5%;
        left: 40%;
        transform: translateY(-50%);
        transition-property: left, width;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: left, width;
        background: black;
    }

    img.other_features_right.animate {
        left: 65%;
        width: 36%;
    }

    /* Section Devices */
    img.devices {
        outline: none;
        box-shadow: none
    }

    img.devices_desktop {
        position: absolute;
        width: 50%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        opacity: 0;
        transition-property: width, opacity;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: width, opacity;
    }

    img.devices_desktop.animate {
        width: 90%;
        opacity: 1;
    }

    img.devices_laptop {
        position: absolute;
        width: 70%;
        bottom: -3%;
        right: -25%;
        opacity: 0;
        transition-delay: 300ms;
        transition-property: right, opacity;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: right, opacity;
    }

    img.devices_laptop.animate {
        right: -15%;
        opacity: 1;
    }

    img.devices_tablet {
        position: absolute;
        width: 30%;
        bottom: -3%;
        left: -17%;
        opacity: 0;
        transition-delay: 300ms;
        transition-property: left, opacity;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: left, opacity;
        z-index: 5;
    }

    img.devices_tablet.animate {
        left: -7%;
        opacity: 1;
    }

    img.devices_phone {
        position: absolute;
        width: 20%;
        bottom: -6%;
        left: 0%;
        opacity: 0;
        transition-delay: 500ms;
        transition-property: left, opacity;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: left, opacity;
        z-index: 10;
    }

    img.devices_phone.animate {
        left: 15%;
        opacity: 1;
    }

    .faq_container {
        max-width: 100%;
    }

    .faq_heading {
        --bg_hue: 233;
        --bg_sat: 100%;
        --bg_lns: 72%;
        background: hsl(var(--bg_hue), var(--bg_sat), var(--bg_lns));
        color: white;
        border-radius: 6px;
        transition: border-radius 0.3s linear;
    }
    .faq_heading h3{
        padding: 8px 16px;
    }

    .faq_heading:hover {
        opacity: 0.8;
    }

    .faq_content {
        background: #eee;
        display: flex;
        flex-direction: column;
        gap: 8px;
        max-height: 0;
        opacity: 0;
        visibility: hidden;
        transition: max-height 0.3s linear, opacity 0.3s ease, visibility 0s linear 0.3s;
        border-radius: 0px 0 6px 6px;
    }
    .section_odd .faq_content{
        background: white;
    }

    .faq_item.open .faq_heading {
        border-radius: 6px 6px 0px 0;
    }

    .faq_item.open .faq_content {
        max-height: 800px;
        /* approximate max height */
        opacity: 1;
        visibility: visible;
        transition: max-height 0.3s linear, opacity 0.3s ease, visibility 0s linear 0.3s;
    }

    .faq_item {
        position: relative;
        margin-bottom: 4px;
        cursor: pointer;
    }

    .faq_content_inner {
        display: flex;
        flex-direction: column;
        gap: 14px;
    }

    .faq_content_inner p {
        padding: 16px;
    }
}

/* Landscape XXS */
/* For small phones eg.: iPhone 5 */
@media screen and (orientation:landscape) and (max-width: 692px) {

    .LS_XXS\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS_XXS\:flex-direction\.row{
        flex-direction: row;
    }
    .LS_XXS\:flex-direction\.col{
        flex-direction: column;
    }
    .LS_XXS\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }
    .LS_XXS\:flex-gap\.2px{ gap: 2px; }
    .LS_XXS\:flex-gap\.4px{ gap: 4px; }
    .LS_XXS\:flex-gap\.6px{ gap: 6px; }
    .LS_XXS\:flex-gap\.8px{ gap: 8px; }
    .LS_XXS\:flex-gap\.10px{ gap: 10px; }
    .LS_XXS\:flex-gap\.12px{ gap: 12px; }
    .LS_XXS\:flex-gap\.16px{ gap: 16px; }
    .LS_XXS\:flex-gap\.18px{ gap: 18px; }
    .LS_XXS\:flex-gap\.20px{ gap: 20px; }
    .LS_XXS\:flex-gap\.24px{ gap: 24px; }
    .LS_XXS\:flex-gap\.32px{ gap: 32px; }
    .LS_XXS\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .LS_XXS\:pad-t\.32px{ padding-top: 32px;}

    .header_efa h1 {
        text-align: center;
        font-size: 33px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 20px;
        margin-top: 16px;
    }


    /* Header */
    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    .header_book_image {
        margin-top: 4%;
    }

    /* Referral Form */
    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .section_join_today_counter_content .counter {
        font-size: 32px;
        font-weight: 600
    }

    .section_join_today_counter_content h3 {
        font-size: 16px;
        font-weight: 600
    }

    /* Section Features */
    .section_features {
        flex-direction: column
    }

    .section_features .section_images,
    .section_features .section_content {
        width: 90%
    }





}


/* Landscape XS */
@media screen and (orientation:landscape) and (min-width: 693px) and (max-width:926px) {

    .LS_XS\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS_XS\:flex-direction\.row{
        flex-direction: row;
    }
    .LS_XS\:flex-direction\.col{
        flex-direction: column;
    }
    .LS_XS\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .LS_XS\:flex-gap\.2px{ gap: 2px; }
    .LS_XS\:flex-gap\.4px{ gap: 4px; }
    .LS_XS\:flex-gap\.6px{ gap: 6px; }
    .LS_XS\:flex-gap\.8px{ gap: 8px; }
    .LS_XS\:flex-gap\.10px{ gap: 10px; }
    .LS_XS\:flex-gap\.12px{ gap: 12px; }
    .LS_XS\:flex-gap\.16px{ gap: 16px; }
    .LS_XS\:flex-gap\.18px{ gap: 18px; }
    .LS_XS\:flex-gap\.20px{ gap: 20px; }
    .LS_XS\:flex-gap\.24px{ gap: 24px; }
    .LS_XS\:flex-gap\.32px{ gap: 32px; }
    .LS_XS\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .LS_XS\:pad-t\.32px{ padding-top: 32px;}

    /* Header */
    .header_title {
        padding: 3%;
    }

    .header_custom h1,
    .header_default h1 {
        font-size: 28px;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 22px;
    }

    .header_book_image {
        margin-top: 4%;
    }

    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px;
    }

    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s;
    }

    .header_efa h1 {
        text-align: center;
        font-size: 33px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 20px;
        margin-top: 16px;
    }


    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .section_reviews_group {
        flex-direction: row
    }

    /* Section Reviews */
    .section_review_container {
        padding: 12% 0
    }

    /* Section Features */
    .section_features {
        gap: 10%
    }

    .section_features .section_images {
        width: 50%
    }

    .section_features .section_content {
        width: 50%
    }
}

/* Landscape SM */
@media screen and (orientation:landscape) and (min-width:927px) and (max-width:1112px) {

    .LS_SM\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS_SM\:flex-direction\.row{
        flex-direction: row;
    }
    .LS_SM\:flex-direction\.col{
        flex-direction: column;
    }
    .LS_SM\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .LS_SM\:flex-gap\.2px{ gap: 2px; }
    .LS_SM\:flex-gap\.4px{ gap: 4px; }
    .LS_SM\:flex-gap\.6px{ gap: 6px; }
    .LS_SM\:flex-gap\.8px{ gap: 8px; }
    .LS_SM\:flex-gap\.10px{ gap: 10px; }
    .LS_SM\:flex-gap\.12px{ gap: 12px; }
    .LS_SM\:flex-gap\.16px{ gap: 16px; }
    .LS_SM\:flex-gap\.18px{ gap: 18px; }
    .LS_SM\:flex-gap\.20px{ gap: 20px; }
    .LS_SM\:flex-gap\.24px{ gap: 24px; }
    .LS_SM\:flex-gap\.32px{ gap: 32px; }
    .LS_SM\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .LS_SM\:pad-t\.32px{ padding-top: 32px;}

    /* Header */
    .header_title {
        padding: 4%;
    }

    .header_custom h1,
    .header_default h1 {
        font-size: 28px;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 22px;
    }

    .call_to_action_form_content {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 16px;
        padding: 0 4%;
    }

    .header_video_container {
        margin-bottom: 0;
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8%
    }

    .section_join_today_counter {
        padding-bottom: 30%
    }

    /* Section Review */
    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 12% 0
    }

    /* Section Features */
    .section_features {
        gap: 10%
    }

    .section_features .section_images {
        width: 50%
    }

    .section_features .section_content {
        width: 50%
    }

}

/* Landscape MD */
@media screen and (orientation:landscape) and (min-width:1113px) and (max-width:1366px) {

    .LS_MD\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS_MD\:flex-direction\.row{
        flex-direction: row;
    }
    .LS_MD\:flex-direction\.col{
        flex-direction: column;
    }
    .LS_MD\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .LS_MD\:flex-gap\.2px{ gap: 2px; }
    .LS_MD\:flex-gap\.4px{ gap: 4px; }
    .LS_MD\:flex-gap\.6px{ gap: 6px; }
    .LS_MD\:flex-gap\.8px{ gap: 8px; }
    .LS_MD\:flex-gap\.10px{ gap: 10px; }
    .LS_MD\:flex-gap\.12px{ gap: 12px; }
    .LS_MD\:flex-gap\.16px{ gap: 16px; }
    .LS_MD\:flex-gap\.18px{ gap: 18px; }
    .LS_MD\:flex-gap\.20px{ gap: 20px; }
    .LS_MD\:flex-gap\.24px{ gap: 24px; }
    .LS_MD\:flex-gap\.32px{ gap: 32px; }
    .LS_MD\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .LS_MD\:pad-t\.32px{ padding-top: 32px;}

    .button {
        width: auto;
    }

    /* Header */
    .header_title {
        padding: 3%;
        max-width: 1070px;
    }

    .header_custom h1 {
        font-size: 32px;
    }

    .header_default h1 {
        font-size: 32px;
        margin-bottom: 4%;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 26px;
    }

    .call_to_action_form_content {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 16px;
        padding: 0 4%;
    }

    .header_video_container {
        margin-bottom: 0;
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    .header_efa {
        max-width: 1070px;
    }

    .header_efa h1 {
        text-align: center;
        font-size: 48px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 24px;
        margin-top: 16px;
    }

    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8%
    }

    .section_join_today_counter {
        padding-bottom: 30%
    }

    /* Section Reviews */
    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 12% 0
    }

    /* Section Features */
    .section_features {
        gap: 10%
    }

    .section_features .section_images {
        width: 55%
    }

    .section_features .section_content {
        width: 45%
    }
}

/* Landscape LG */
@media screen and (orientation:landscape) and (min-width:1367px) {

    .LS_LG\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .LS_LG\:flex-direction\.row{
        flex-direction: row;
    }
    .LS_LG\:flex-direction\.col{
        flex-direction: column;
    }
    .LS_LG\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .LS_LG\:flex-gap\.2px{ gap: 2px; }
    .LS_LG\:flex-gap\.4px{ gap: 4px; }
    .LS_LG\:flex-gap\.6px{ gap: 6px; }
    .LS_LG\:flex-gap\.8px{ gap: 8px; }
    .LS_LG\:flex-gap\.10px{ gap: 10px; }
    .LS_LG\:flex-gap\.12px{ gap: 12px; }
    .LS_LG\:flex-gap\.16px{ gap: 16px; }
    .LS_LG\:flex-gap\.18px{ gap: 18px; }
    .LS_LG\:flex-gap\.20px{ gap: 20px; }
    .LS_LG\:flex-gap\.24px{ gap: 24px; }
    .LS_LG\:flex-gap\.32px{ gap: 32px; }
    .LS_LG\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .LS_LG\:pad-t\.32px{ padding-top: 32px;}

    .button {
        width: auto;
    }

    /* Header */
    .header_title {
        padding: 3% 0;
        max-width: 1194px;
    }

    .header_custom h1 {
        font-size: 36px;
    }

    .header_default h1 {
        font-size: 36px;
        margin-bottom: 4%;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 28px;
    }

    .call_to_action_form_content {
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 16px;
        padding: 0 4%;
    }

    .header_efa {
        max-width: 1070px;
    }

    .header_efa h1 {
        text-align: center;
        font-size: 48px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 24px;
        margin-top: 16px;
    }

    /* Video Iframe */
    .header_video_container {
        margin-bottom: 0;
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    /* Referral Form */
    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .content_padding,
    .section_join_today.content_padding {
        padding: 0
    }

    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center;
        gap: 8%
    }

    .section_join_today_counter {
        padding-bottom: 30%
    }

    /* Section Reviews */
    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 10% 0
    }

    /* Section Features */
    .section_features {
        gap: 10%
    }

    .section_features .section_images {
        width: 55%
    }

    .section_features .section_content {
        width: 45%
    }
}

/* CSS Mobile First for portrait mode */
@media screen and (orientation:portrait) {

    .PT\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT\:flex-direction\.row{
        flex-direction: row;
    }
    .PT\:flex-direction\.col{
        flex-direction: column;
    }
    .PT\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT\:flex-gap\.2px{ gap: 2px; }
    .PT\:flex-gap\.4px{ gap: 4px; }
    .PT\:flex-gap\.6px{ gap: 6px; }
    .PT\:flex-gap\.8px{ gap: 8px; }
    .PT\:flex-gap\.10px{ gap: 10px; }
    .PT\:flex-gap\.12px{ gap: 12px; }
    .PT\:flex-gap\.16px{ gap: 16px; }
    .PT\:flex-gap\.18px{ gap: 18px; }
    .PT\:flex-gap\.20px{ gap: 20px; }
    .PT\:flex-gap\.24px{ gap: 24px; }
    .PT\:flex-gap\.32px{ gap: 32px; }
    .PT\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT\:pad-t\.32px{ padding-top: 32px;}

    .section_features.nutrition_plans,
    .section_features.community {
        flex-direction: column-reverse;
    }

    /* Header */
    .header_default h1 {
        margin-bottom: 5%;
    }


    .section_review_container {
        background: black url('/frontend/static/images/site/reviews_bg_pt_xs.jpg');
        background-position-x: 0%;
        background-position-y: 0%;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .5);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%;
    }

    /* Section Training Plans */
    .section_features {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 32px;
    }

    .section_features .section_images,
    .section_features .section_content {
        width: 100%;
    }

    /* Section Nutrition Plans */
    img.nutrition_plan_float_bottom {
        width: 60%;
        position: absolute;
        opacity: 0;
        top: 50%;
        left: -15%;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, top, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, left;
    }

    img.nutrition_plan_float_bottom.animate {
        opacity: 1;
        left: -5%;
        top: 50%;
    }

    /* Section Check-in */
    img.check_in_bottom {
        width: 53%;
        position: absolute;
        top: 74%;
        right: 5%;
        opacity: 0;
        transform: translateY(-50%);
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, top, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, right
    }

    img.check_in_bottom.animate {
        top: 74%;
        right: -6%;
        opacity: 1;
    }

}

/* Portrait XXS */
/* For small phones eg.: iPhone 5 */
@media screen and (orientation:portrait) and (max-width: 374px) {
    
    .PT_XXS\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT_XXS\:flex-direction\.row{
        flex-direction: row;
    }
    .PT_XXS\:flex-direction\.col{
        flex-direction: column;
    }
    .PT_XXS\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT_XXS\:flex-gap\.0px{ gap: 0px; }
    .PT_XXS\:flex-gap\.2px{ gap: 2px; }
    .PT_XXS\:flex-gap\.4px{ gap: 4px; }
    .PT_XXS\:flex-gap\.6px{ gap: 6px; }
    .PT_XXS\:flex-gap\.8px{ gap: 8px; }
    .PT_XXS\:flex-gap\.10px{ gap: 10px; }
    .PT_XXS\:flex-gap\.12px{ gap: 12px; }
    .PT_XXS\:flex-gap\.16px{ gap: 16px; }
    .PT_XXS\:flex-gap\.18px{ gap: 18px; }
    .PT_XXS\:flex-gap\.20px{ gap: 20px; }
    .PT_XXS\:flex-gap\.24px{ gap: 24px; }
    .PT_XXS\:flex-gap\.32px{ gap: 32px; }
    .PT_XXS\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT_XXS\:pad-t\.32px{ padding-top: 32px;}
}

/* Portrait XS */
@media screen and (orientation:portrait) and (min-width: 375px) and (max-width:599px) {

    .PT_XS\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT_XS\:flex-direction\.row{
        flex-direction: row;
    }
    .PT_XS\:flex-direction\.col{
        flex-direction: column;
    }
    .PT_XS\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT_XS\:flex-gap\.2px{ gap: 2px; }
    .PT_XS\:flex-gap\.4px{ gap: 4px; }
    .PT_XS\:flex-gap\.6px{ gap: 6px; }
    .PT_XS\:flex-gap\.8px{ gap: 8px; }
    .PT_XS\:flex-gap\.10px{ gap: 10px; }
    .PT_XS\:flex-gap\.12px{ gap: 12px; }
    .PT_XS\:flex-gap\.16px{ gap: 16px; }
    .PT_XS\:flex-gap\.18px{ gap: 18px; }
    .PT_XS\:flex-gap\.20px{ gap: 20px; }
    .PT_XS\:flex-gap\.24px{ gap: 24px; }
    .PT_XS\:flex-gap\.32px{ gap: 32px; }
    .PT_XS\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT_XS\:pad-t\.32px{ padding-top: 32px;}

    /* Video Iframe */
    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    /* Referral Form */
    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .section_join_today {
        gap: 32px
    }
}

/* Portrait SM */
@media screen and (orientation:portrait) and (min-width:600px) and (max-width:799px) {

    .PT_SM\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT_SM\:flex-direction\.row{
        flex-direction: row;
    }
    .PT_SM\:flex-direction\.col{
        flex-direction: column;
    }
    .PT_SM\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT_SM\:flex-gap\.2px{ gap: 2px; }
    .PT_SM\:flex-gap\.4px{ gap: 4px; }
    .PT_SM\:flex-gap\.6px{ gap: 6px; }
    .PT_SM\:flex-gap\.8px{ gap: 8px; }
    .PT_SM\:flex-gap\.10px{ gap: 10px; }
    .PT_SM\:flex-gap\.12px{ gap: 12px; }
    .PT_SM\:flex-gap\.16px{ gap: 16px; }
    .PT_SM\:flex-gap\.18px{ gap: 18px; }
    .PT_SM\:flex-gap\.20px{ gap: 20px; }
    .PT_SM\:flex-gap\.24px{ gap: 24px; }
    .PT_SM\:flex-gap\.32px{ gap: 32px; }
    .PT_SM\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT_SM\:pad-t\.32px{ padding-top: 32px;}

    .section_70p {
        width: 100%;
    }

    .header_efa h1 {
        text-align: center;
        font-size: 38px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 20px;
    }

    .header_efa p {
        text-align: center;
        font-size: 22px;
        margin-top: 16px;
    }

    /* Header */
    .header_custom h1 {
        font-size: 28px;
    }

    .header_default h1 {
        font-size: 28px;
        margin-bottom: 4%;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 22px;
    }

    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    .header_book_image {
        margin-top: 4%;
    }

    /* Referral Form */
    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    .section_review_container {
        background: black url('/frontend/static/images/site/reviews_bg_pt_md.jpg');
        background-position-x: 0;
        background-position-y: 0;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .5);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%
    }

    /* Section Features */
    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 16% 0
    }
}

/* Portrait MD */
@media screen and (orientation:portrait) and (min-width:800px) and (max-width:1023px) {

    .PT_MD\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT_MD\:flex-direction\.row{
        flex-direction: row;
    }
    .PT_MD\:flex-direction\.col{
        flex-direction: column;
    }
    .PT_MD\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT_MD\:flex-gap\.2px{ gap: 2px; }
    .PT_MD\:flex-gap\.4px{ gap: 4px; }
    .PT_MD\:flex-gap\.6px{ gap: 6px; }
    .PT_MD\:flex-gap\.8px{ gap: 8px; }
    .PT_MD\:flex-gap\.10px{ gap: 10px; }
    .PT_MD\:flex-gap\.12px{ gap: 12px; }
    .PT_MD\:flex-gap\.16px{ gap: 16px; }
    .PT_MD\:flex-gap\.18px{ gap: 18px; }
    .PT_MD\:flex-gap\.20px{ gap: 20px; }
    .PT_MD\:flex-gap\.24px{ gap: 24px; }
    .PT_MD\:flex-gap\.32px{ gap: 32px; }
    .PT_MD\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT_MD\:pad-t\.32px{ padding-top: 32px;}

    .header_efa h1 {
        text-align: center;
        font-size: 48px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 24px;
        margin-top: 16px;
    }

    .section_features.nutrition_plans,
    .section_features.community {
        flex-direction: row;
    }

    .button {
        width: auto;
    }

    /* Header */
    .header_custom h1 {
        font-size: 28px;
    }

    .header_default h1 {
        font-size: 28px;
        margin-bottom: 4%;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 22px;
    }

    /* Video Iframe */
    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px
    }

    .header_book_image {
        margin-top: 4%;
    }

    /* Referral Form */
    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s
    }

    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    /* Section Reviews */
    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 16% 0
    }

    .section_review_container {
        background: black url('/frontend/static/images/site/reviews_bg_pt_md.jpg');
        background-position-x: 0;
        background-position-y: 0;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .5);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%
    }

    /* Section Features */
    .section_features {
        flex-direction: row;
        gap: 8%
    }

    .section_features .section_images {
        width: 50%
    }

    .section_features .section_content {
        width: 50%
    }

    /* Section Nutrition Plans */
    img.nutrition_plan_float_bottom {
        width: 60%;
        position: absolute;
        opacity: 0;
        top: 87%;
        left: 6%;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, top, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, left
    }

    img.nutrition_plan_float_bottom.animate {
        opacity: 1;
        top: 67%;
        left: 6%
    }

    /* Section Check-in */
    img.check_in_bottom {
        width: 53%;
        position: absolute;
        top: 114%;
        right: 5%;
        opacity: 0;
        transform: translateY(-50%);
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, top, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, right
    }

    img.check_in_bottom.animate {
        top: 94%;
        right: 5%;
        opacity: 1
    }
}

/* Portrait LG */
@media screen and (orientation:portrait) and (min-width:1024px) {

    .PT_LG\:flex-direction\.row-reverse{
        flex-direction: row-reverse;
    }
    .PT_LG\:flex-direction\.row{
        flex-direction: row;
    }
    .PT_LG\:flex-direction\.col{
        flex-direction: column;
    }
    .PT_LG\:flex-direction\.col-reverse{
        flex-direction: column-reverse;
    }

    .PT_LG\:flex-gap\.2px{ gap: 2px; }
    .PT_LG\:flex-gap\.4px{ gap: 4px; }
    .PT_LG\:flex-gap\.6px{ gap: 6px; }
    .PT_LG\:flex-gap\.8px{ gap: 8px; }
    .PT_LG\:flex-gap\.10px{ gap: 10px; }
    .PT_LG\:flex-gap\.12px{ gap: 12px; }
    .PT_LG\:flex-gap\.16px{ gap: 16px; }
    .PT_LG\:flex-gap\.18px{ gap: 18px; }
    .PT_LG\:flex-gap\.20px{ gap: 20px; }
    .PT_LG\:flex-gap\.24px{ gap: 24px; }
    .PT_LG\:flex-gap\.32px{ gap: 32px; }
    .PT_LG\:flex-gap\.64px{ gap: 64px; }

    /* PADDING */
    .PT_LG\:pad-t\.32px{ padding-top: 32px;}

    .header_book_image {
        margin-top: 4%;
    }

    .header_efa {
        max-width: 830px;
    }

    .header_efa h1 {
        text-align: center;
        font-size: 48px;
    }

    .header_efa h2 {
        color: red;
        text-align: center;
        font-size: 22px;
    }

    .header_efa p {
        text-align: center;
        font-size: 24px;
        margin-top: 16px;
    }

    .section_features.nutrition_plans,
    .section_features.community {
        flex-direction: row;
    }

    .button {
        width: auto;
    }

    /* Header */
    .header_custom h1 {
        font-size: 32px;
    }

    .header_default h1 {
        font-size: 32px;
        margin-bottom: 4%;
    }

    .header_custom h2,
    .header_default h2 {
        font-size: 28px;
    }

    .header_video_container {
        margin-bottom: 0;
        width: calc(100% - 8%);
        border-width: 4px;
        background: #000;
        border-radius: 6px;
    }

    .header_referral_form {
        width: calc(100% - 8%);
        border-radius: 8px;
        transition: width .3s, border-radius .3s, margin .3s;
    }

    /* Section Join Today */
    .section_join_today {
        flex-direction: row;
        align-items: center;
        justify-content: center
    }

    /* Section Reviews */
    .section_review_container {
        background: black url('/frontend/static/images/site/reviews_bg_pt_md.jpg');
        background-position-x: 0;
        background-position-y: 0;
        box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, .5);
        background-repeat: repeat;
        background-attachment: scroll;
        background-size: auto;
        background-attachment: fixed;
        background-position: center;
        background-repeat: no-repeat;
        background-size: 100%
    }

    .section_reviews_group {
        flex-direction: row
    }

    .section_review_container {
        padding: 12% 0
    }

    /* Section Features */
    .section_features {
        flex-direction: row;
        gap: 10%
    }

    .section_features .section_images {
        width: 50%
    }

    .section_features .section_content {
        width: 50%
    }

    /* Section Nutrition Plans */
    img.nutrition_plan_float_bottom {
        width: 60%;
        position: absolute;
        opacity: 0;
        top: 87%;
        left: 6%;
        outline: 4px solid rgba(255, 255, 255, .25);
        transition-delay: 150ms;
        transition-property: opacity, top, left;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, left
    }

    img.nutrition_plan_float_bottom.animate {
        opacity: 1;
        top: 67%;
        left: 6%
    }

    /* Section Check-in */
    img.check_in_bottom {
        width: 53%;
        position: absolute;
        top: 114%;
        right: 5%;
        opacity: 0;
        transform: translateY(-50%);
        outline: 4px solid rgba(255, 255, 255, .3);
        transition-delay: 150ms;
        transition-property: opacity, top, right;
        transition-timing-function: ease-out;
        transition-duration: .6s;
        will-change: opacity, top, right
    }

    img.check_in_bottom.animate {
        top: 94%;
        right: 5%;
        opacity: 1
    }
}