/*
    Theme Name: Sperling Starter
    Theme URI: https://www.sperlinginteractive.com
    Description: Sperling Interactive WordPress Starter Theme
    Version: 1.0
    Author: Sperling Interactive
  Theme URI: https://www.sperlinginteractive.com
*/

/*------------------------------------*\
    

\*------------------------------------*/

/* global box-sizing */

*,
*:after,
*:before {
    box-sizing: border-box;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
* {
    min-width: 0;
    min-height: 0;
}
/* html element 62.5% font-size for REM use */

html {
    font-size: 62.5%;
    scroll-behavior: smooth;
}

body {
    color: #444;
    font: 300 11px/1.4 Helvetica, Arial, sans-serif;
}

/* clear */

.clear:before,
.clear:after {
    content: " ";
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    zoom: 1;
}

img {
    max-width: 100%;
    vertical-align: bottom;
    height: auto;
}

/* Lightspeed Lazy load fade in */

img[data-lazyloaded] {
    opacity: 0;
}

img.litespeed-loaded {
    -webkit-transition: opacity 0.5s linear 0.2s;
    -moz-transition: opacity 0.5s linear 0.2s;
    transition: opacity 0.5s linear 0.2s;
    opacity: 1;
}

a {
    text-decoration: none;
}

a:hover {
}

a:focus {
    outline: 0;
}

a:hover,
a:active {
    outline: 0;
}

input:focus {
    border: 1px solid #04a4cc;
    outline: 0;
}

p,
ul,
ol {
    font-size: 1.9rem;
    font-family: news-gothic-std, sans-serif;
    font-weight: 400;
}

h1 {
    font-size: 3.6rem;
    font-family: calder-dark-grit, sans-serif;
}

h2 {
    font-size: 3.2rem;
    font-family: calder-dark-grit, sans-serif;
}

h3 {
    font-size: 2.8rem;
    font-family: calder-dark-grit, sans-serif;
}

h4 {
    font-size: 2.4rem;
    font-family: calder-dark-grit, sans-serif;
}

h5 {
    font-size: 2rem;
    font-family: calder-dark-grit, sans-serif;
}

h6 {
    font-size: 1.6rem;
    font-family: calder-dark-grit, sans-serif;
}

blockquote {
    margin: 25px 0;
    padding: 25px 0 25px 5vw;
    font-style: italic;
    border-top: 1px solid;
    border-bottom: 1px solid;
    font-weight: 700;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/

/* wrapper */

.wrapper {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    min-height: 100vh;
    position: relative;
    width: 100%;
    max-width: 2560px;
    overflow: hidden;
    justify-content: space-between;
}

.container {
    max-width: 1600px;
    align-self: center;
    flex: 1 auto;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 20px;
}

.container.thin {
    max-width: 1300px;
}

/* header */

.header {
    box-shadow: 0px 3px 6px #00000029;
    opacity: 1;
    backdrop-filter: blur(42px);
    -webkit-backdrop-filter: blur(42px);
    padding: 20px 0px;
}

.logo-img {
    backface-visibility: hidden;
    height: 165px;
}

/* nav */

.nav {
    height: 100%;
}

.nav a:hover,
.nav li.current-menu-item a,
.nav li.current_page_item a {
    color: #faa21d;
}

.nav ul {
    display: flex;
    justify-content: flex-end;
    list-style: none;
    align-items: center;
    height: 100%;
}

.nav ul li {
    margin-left: 4vw;
}

.nav a {
    font-family: calder-dark;
    color: #1c4981;
    font-size: 2.2rem;
    transition: 0.3s ease;
    position: relative;
}

.nav a:after {
    content: "";
    /* position: absolute;
    left: 0px;
    bottom: -10px; */
    display: block;
    width: 0%;
    height: 3px;
    background-color: #faa21d;
    transition: 0.3s ease;
    margin: 0px auto;
}

.nav a:hover:after,
.nav li.current-menu-item a:after,
.nav li.current_page_item a:after {
    width: 50%;
}

/* HOME */

.container.container-fluid {
    width: 100%;
    padding: 0px;
    max-width: 100%;
}

.hero .columns {
    margin: 0px auto;
}

.hero .column {
    padding: 0px;
}

.hero img {
    width: 100%;
}

.hero {
}

.hero-slider-inner {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    height: 80vh;
    position: relative;
    min-height: 700px;
}

.hero-slider-inner .slick-list,
.hero-slider-inner .slick-track {
    height: 100%;
}

.hero-slider-inner .slick-slide {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.hero-content {
    text-align: center;
    color: white;
    z-index: 3;
    position: absolute;
    line-height: 1.2;
    /* margin-top: -21vw;
    margin-bottom: 8%; */
    width: 100%;
    transform: translateY(-50%) translateZ(0) !important;
    top: 50%;
}

.hero-content em {
    font-family: braisetto, script;
    font-weight: 700;
    font-style: normal;
    font-size: 10rem;
}

.hero-content p {
    font-family: calder-dark;
    font-size: 5rem;
    margin: 0px;
}

.slick-dots li button:before {
    display: none;
}

.slick-dots li button {
    width: 20px;
    height: 5px;
    background-color: #f8b331;
    border-radius: 10px;
    opacity: 0.5;
    transition: 0.3s ease;
}

.slick-dots li button:hover,
.slick-dots li.slick-active button {
    opacity: 1;
}

.hero-slider .slick-slide {
    position: relative;
    z-index: 1;
}

.hero-slider .slick-slide:before {
    content: "";
    display: block;
    position: absolute;
    left: 0px;
    bottom: 0px;
    width: 100%;
    height: 75%;
    z-index: 2;
    background: rgb(2, 0, 36);
    background: linear-gradient(0deg, rgba(2, 0, 36, 1) 0%, rgba(2, 0, 36, 0.5) 35%, rgba(255, 255, 255, 0) 100%);
}

.bullets-list {
    margin-bottom: 25px;
}

.hero-slider {
    position: relative;
}

.hero-slider-inner:after {
    content: "";
    position: absolute;
    right: -10%;
    bottom: -10vw;
    background-image: url(./img/sun-img.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 47vw;
    height: 45vw;
    z-index: 4;
    -webkit-animation: rotate-center 10.6s linear infinite alternate forwards;
    animation: rotate-center 10.6s linear infinite alternate forwards;
}

.programs-title {
    background-color: #f0f0f0;

    padding: 25px 0px;
}

.programs-title h3 {
    text-transform: uppercase;
    color: #1c4981;
    text-align: center;
    font-size: 5rem;
    margin: 20px 0px;
}

.mg-top-25 {
    margin-top: 25px !important;
}

.mg-bot-25 {
    margin-bottom: 25px !important;
}

.no-padding {
    padding: 0px !important;
}

.no-margin {
    margin: 0px !important;
}

.programs-list .image-box img {
    width: 100%;
    position: relative;
    z-index: 1;
}

.programs-list .image-box {
    width: 100%;
    height: 100%;
    position: relative;
}

.programs-list .content-general-box {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: rgba(28, 73, 129, 0.6);
    text-align: center;
    color: white;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
    transition: 0.5s ease;
    opacity: 1;
    visibility: visible;
    /* -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg); */
}

.programs-list .content-additional-box {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: rgba(249, 162, 29, 0.9);
    text-align: left;
    color: #06264d;
    display: flex;
    flex-direction: column;
    justify-content: center;
    visibility: hidden;
    transition: 0.5s ease;
    opacity: 0;
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
    padding: 20px;
    z-index: 0;
}

.programs-list .flipper:hover .content-additional-box {
    z-index: 2;
    opacity: 1;
    visibility: visible;
}

.flipper img {
    visibility: hidden;
}

.programs-list .flipper .flipping-box {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 100%;
}

.programs-list .image-box {
    padding: 30px 0px;
}

.complete-registration-view,
.complete-registration-view p {
    font-size: 1.6rem;
}

.complete-registration-view strong {
    color: #1c4981!important;
}

.page-template-template-complete-registration h1,
.page-template-template-complete-registration h2,
.page-template-template-complete-registration h3 {
    color: #1c4981!important;
}

/* .content-genera-box-inner,
.content-additional-box-inner {
    -webkit-transform: rotateY(-180deg);
    transform: rotateY(-180deg);
} */

/* .programs-list .flipper .flipping-box .content-general-box,
.programs-list .flipper .flipping-box .content-additional-box {
    -webkit-animation: flip-vertical-right 0.4s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: flip-vertical-right 0.4s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
} */

.programs-list .flipper:hover .flipping-box {
    -webkit-animation: flip-vertical-left 0.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) both;
    animation: flip-vertical-left 0.7s cubic-bezier(0.455, 0.03, 0.515, 0.955) both;
}

.programs-list .flipper:hover .content-general-box {
    opacity: 0;
    z-index: 0;
    visibility: hidden;
}

.programs-list .button-box {
    display: flex;
    justify-content: space-between;
}

.button {
    color: #1c4981;
    font-size: 16px;
    border: 3px dashed #1c4981;
    background-color: rgba(255, 255, 255, 0.4);
    text-align: center;
    font-family: calder-lc-grit, sans-serif;
    font-size: 1.4rem;
    text-transform: uppercase;
    padding: 15px 25px;
    transition: 0.3s ease;
    display: inline-block;
    vertical-align: top;
}

.button:hover {
    background-color: #1c4981;
    color: white;
}

.simple-button {
    color: #1c4981;
    font-size: 16px;
    border: 2px solid #1c4981;
    background-color: rgba(255, 255, 255, 0.4);
    text-align: center;
    font-family: calder-lc-grit, sans-serif;
    font-size: 1.4rem;
    text-transform: uppercase;
    padding: 10px 15px;
    transition: 0.3s ease;
    display: inline-block;
    vertical-align: top;
    margin-top: 10px;
}

.simple-button:hover {
    background-color: #1c4981;
    color: white;
}

.programs-list .button-box .button {
    max-width: 160px;
    display: block;
    width: 157px;
    padding: 13px 0px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 15px;
}

.content-additional-box p {
    font-size: 2.5rem;
    margin-top: 0px;
}

.content-general-box-inner h3 {
    font-size: 2.2rem;
}

.content-additional-box-inner h3 {
    font-size: 2.2rem;
}

.content-additional-box p {
    font-size: 2rem;
}

/* ABOUT SECTIOn */

.about-section {
    position: relative;
}

.about-section .image-box img {
    width: 100%;
    position: relative;
}

.about-section .image-box:before {
    background-image: url("./img/sun-white.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    width: 338px;
    height: 338px;
    position: absolute;
    left: -175px;
    bottom: 0px;
    z-index: 1;
    -webkit-animation: rotate-center-full 50.6s linear infinite alternate forwards;
    animation: rotate-center-full 50.6s linear infinite alternate forwards;
}

.about-section:after {
    content: "";
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 0;
    width: 58.33333%;
    height: 100%;
    background-color: #1876a1;
}

.section-content-box {
    position: relative;
    z-index: 1;
    max-width: 900px;
    padding-left: 12%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

.about-section,
.about-section p {
    color: white;
}

.about-section h1 {
    font-size: 6.9rem;
    color: white;
    margin-bottom: 5px;
    margin-top: 0px;
}

.about-section .section-content-box a {
    color: #faa21d;
}

.about-section .section-content-box a.button {
    color: white;
    border: 3px dashed white;
}

.about-section .button-box {
    margin-top: 15px;
}
.home-testimonial-slider {
    padding: 0 30px;
    width: 100%;
    max-width: 100%;
}
p.testimonial {
    color: #1c4981;
    font-style: italic;
    font-size: clamp(1.6rem, 2vw, 2rem);
}

p.author {
    font-weight: 800;
    color: #1c4981;
    font-size: clamp(1.6rem, 2vw, 2rem);
}
.yellow-col {
    background: #fef7eb;
}
.testimonial-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #fef7eb;
    padding-bottom: 30px;
}
.testimonial-col img {
    width: 90px;
    margin-left: 30px;
}
/* HOME END */

/* ABOUT PAGE */

.about-section.page-default .image-box:before {
    display: none;
}

.about-section.page-default .section-content-box,
.about-section.page-default:after {
    background-color: #1c4981;
}

.about-section.page-default h1 {
    display: inline-block;
    vertical-align: middle;
}

.about-section.page-default h1:after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url("./img/title-arrow.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 233px;
    height: 74px;
    margin-left: 25px;
}

.about-section.reverted-about:after {
    content: "";
    position: absolute;
    left: 0px;
    right: initial;
    top: 0px;
    z-index: 0;
    width: 58.33333%;
    height: 100%;
    background-color: #1876a1;
}

.about-section.reverted-about .section-content-box {
    max-width: 975px;
    margin-left: auto;
    padding-left: 5%;
    padding-right: 7%;
}

.about-section.reverted-about h3 {
    font-family: braisetto, script;
    font-weight: 700;
    font-size: 7rem;
    margin-bottom: 0px;
    margin-top: 0px;
}

.default-program-list {
}

.about-section .image-box {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
}

/* ABOUT PAGE END */

/* CANCELATION PAGE */

.flex-container {
    display: flex;
    align-items: center;
}

.cancelation-policy h3 {
    color: #1c4981;
    font-family: braisetto, script;
    font-weight: 700;
    text-align: right;
    font-size: 7rem;
    margin: 0px 0px;
    line-height: 1;
}

.cancelation-policy span {
    background-image: url("./img/title-arrow.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 233px;
    height: 74px;
    transform: rotate(180deg);
    margin-right: 15px;
}

.cancelation-policy {
    margin: 20px 0px;
}

.cancelation-policy p {
    color: #244f85;
}

.insert-form .button-box {
    text-align: center;
    margin: 50px 0px;
}

.insert-form {
    box-shadow: 0px 3px 6px #00000029;
    border: 1px solid #707070;
}

/* CANCELATION PAGE END */

/* CONTACT PAGE */

.contact-page {
    background-color: #1c4981;
    color: white;
    padding: 100px 0px;
}

.contact-page a {
    color: #faa21d;
}

.contact-page h1 {
    font-size: 6.9rem;
    margin-top: 0px;
}

.contact-content {
    padding-right: 15%;
}

.contact-page input,
.contact-page textarea {
    color: #1c4981;
    padding: 30px 25px !important;
    font-size: 1.5rem !important;
    transition: 0.3s ease !important;
    border-radius: 0px !important;
}

.contact-page textarea {
    height: 250px !important;
}

::placeholder {
    color: #1c4981 !important;
}

.frm_form_1_container .frm_primary_label,
.frm_form_2_container .frm_primary_label {
    display: none !important;
}

.frm_submit {
    text-align: right;
}

.contact-page .button {
    color: white !important;
    font-size: 16px !important;
    border: 3px dashed white !important;
    background-color: rgba(255, 255, 255, 0.4) !important;
    text-align: center !important;
    font-family: calder-lc-grit, sans-serif !important;
    font-size: 1.7rem !important;
    text-transform: uppercase !important;
    padding: 21px 36px !important;
    transition: 0.3s ease !important;
    display: inline-block !important;
    vertical-align: top !important;
    box-shadow: none !important;
    border-radius: 0px !important;
}

.contact-page .button:hover {
    background-color: #1c4981 !important;
    color: white !important;
}

/* CONTACT PAGE END */

/* PROGRAM PAGE */

.program-hero-image {
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 600px;
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.program-hero-image .columns {
    width: 100%;
}

.program-hero-image h1 {
    color: white;
    font-size: 5rem;
    padding: 50px;
}

.program-hero-image .program-title {
    background-color: rgba(28, 73, 129, 0.85);
}

.program-copy p,
.program-copy ul,
.program-copy li {
    font-size: 1.9rem;
    color: #1c4981;
}

.program-copy h3 {
    color: #1c4981;
    font-family: braisetto, script;
    font-size: 7rem;
    margin-bottom: 0px;
    margin-top: 0px;
}

.program-copy-content {
    padding-right: 100px;
}

.mg-bot-100 {
    margin-bottom: 100px !important;
}

.slide-content {
    background-color: #1c4981;
    text-align: center;
    color: white;
    padding: 25px 15%;
    position: relative;
}

.slide-content p {
    color: white;
}

.slide-content button {
    position: absolute;
    left: 15px;
    top: 50%;
    margin-top: -27px;
    background: none;
    outline: none;
    box-shadow: none;
    border: none;
    transition: 0.3s ease;
}

.slide-content button.next {
    right: 15px;
    left: initial;
}

.slide-content button i {
    color: white;
    font-size: 55px;
    transition: 0.3s ease;
}

.slide-content button:hover i {
    color: #faa21d;
}

.slide-content button.slick-disabled {
    pointer-events: none;
}

.slide-content button.slick-disabled i {
    color: grey;
}

.program-copy .slick-dots {
    bottom: -40px;
}

.mg-bot-50 {
    margin-bottom: 50px !important;
}

.program-price {
    position: relative;
    padding: 40px 0px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.program-price:before {
    content: "";
    background-color: #1876a1;
    opacity: 0.84;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    z-index: 2;
}

.program-price .container {
    position: relative;
    z-index: 3;
}

.program-price .price-box span {
    background-image: url(./img/title-arrow-white.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 233px;
    height: 74px;
    transform: rotate(180deg);
    margin-right: 25px;
}

.program-price .price-box {
    display: flex;
    align-items: center;
}

.program-price .price-box {
    color: white;
    font-family: calder-dark, sans-serif;
    font-size: 2rem;
}

.program-price .button-box {
    text-align: center;
}

.program-price .button-box .button {
    color: white;
    font-family: calder-dark, sans-serif;
    border-color: white;
    width: 56%;
    display: inline-block;
    vertical-align: middle;
    padding-top: 3%;
    padding-bottom: 3%;
    font-size: 3.5rem;
    background-color: rgba(255, 255, 255, 0.2);
}

.program-price .button-box .button:hover {
    background-color: #1c4981;
}

.program-price .button-box .button i {
    margin-left: 6%;
}

/* PROGRAM PAGE END */

.search-page a.search-bg {
    width: 100%;
    height: 300px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
}

a.search-bg-with-none-thumbnail {
}

.search-page h2 a,
#post-404 h2 a {
    color: #1c4981;
    transition: 0.3s ease;
}

.search-page h2 a:hover,
#post-404 h2 a:hover {
    color: #faa21d;
}

/* sidebar */

.sidebar {
}

/* footer */

.footer {
    background: #faa21d;
    padding: 50px 0px;
    box-shadow: 0px 3px 6px #00000029;
}

.pagination {
    font-size: 1.6rem;
}

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    height: auto;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

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

.custom-flex-box,
.social-list {
    display: flex;
    justify-content: end;
}

.footer .nav ul {
    border-bottom: 2px dashed white;
    margin-bottom: 35px;
}

.footer .nav a {
    color: white;
}

.footer .nav a:hover,
.footer .nav li.current-menu-item a,
.footer .nav li.current_page_item a {
    color: #1c4981;
}

.footer .nav a:hover:after,
.footer .nav li.current-menu-item a:after,
.footer .nav li.current_page_item a:after {
    background-color: #1c4981;
}

.copyright {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    color: white;
    font-size: 16px;
}

.copyright a {
    color: white;
    text-decoration: underline;
    transition: 0.3s ease;
}

.copyright a:hover {
    text-decoration: none;
    color: #1c4981;
}

.social-list {
    list-style: none;
    padding-left: 10px;
}

.social-list li {
    margin-left: 10px;
}

.social-list li i {
    color: white;
    font-size: 30px;
    transition: 0.3s ease;
}

.social-list li a:hover i {
    color: #1c4981;
}

header {
    position: relative;
    z-index: 100;
}

.nav ul li {
    position: relative;
}

ul.sub-menu {
    max-width: 300px;
    display: block;
    padding-left: 0px;
    position: absolute;
    top: 35px;
    left: -25%;
    background-color: white;
    height: 0px;
    padding: 0px 0px;
    width: 150%;
    overflow: hidden;
    transition: 0.3s ease;
}

li.menu-item-has-children:hover ul.sub-menu {
    height: auto;
    padding: 15px 0px;
    transition: 0.3s ease;
}

ul.sub-menu li {
    margin-left: 0px;
    padding: 0px 15px;
    margin: 10px 0px;
    text-align: center;
}

ul.sub-menu li a {
    font-size: 1.5rem;
}

.footer ul.sub-menu {
    display: none !important;
}

.nav li.current_page_item ul.sub-menu a {
    color: #1c4981;
}

.nav li.current_page_item ul.sub-menu a:hover {
    color: #faa21d;
}

.nav li.current_page_item ul.sub-menu a:after {
    width: 50%;
}

.nav li.current_page_item ul.sub-menu a:hover:after {
    width: 50%;
}

.nav li.current_page_item ul.sub-menu a:after {
    width: 0;
}

.slick-dotted.slick-slider {
    margin-bottom: 0px;
}

.contact-content.waitlist-content {
    padding-right: 0px;
    max-width: 800px;
    margin: 0px auto;
}

@media screen and (max-width: 1024px) {
    #responsive-menu-pro-container #responsive-menu-pro ul.responsive-menu-pro-submenu-depth-1 a.responsive-menu-pro-item-link {
        padding-left: 5% !important;
    }
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/
div#frm_field_24_container .frm_opt_container {
    position: relative;
}

div#frm_field_24_container.disabled .frm_opt_container:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #ffffff9c;
    z-index: 1;
}

div#frm_field_52_container .frm_opt_container {
    position: relative;
}

div#frm_field_52_container.disabled .frm_opt_container:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #ffffff9c;
    z-index: 1;
}

form#password-protect-program {
    font-size: 1.6rem;
    display: flex;
}

#password-protect-program input[type="submit"] {
    background: #1c4981;
    color: white;
    border: 0;
    padding: 10px;
}

.password-box {
    background: #1c498117;
    padding: 20px;
    border: 1px solid #1c498142;
    border-radius: 10px;
}

.password-box p {
    font-weight: bold;
    font-size: 1.6rem;
}

.password-box :first-child {
    margin-top: 0;
}

.password-box :last-child {
    margin-bottom: 0;
}

.owed-today-price {
    padding: 20px;
    border: solid 2px #faa21d;
}

.hide-me {
    display: none!important;
}



/*------------------------------------*\
    IMAGES
\*------------------------------------*/

/*------------------------------------*\
    ACF GOOGLE MAP
\*------------------------------------*/

.acf-map {
    width: 100%;
    height: 100%;
    min-height: 400px;
    max-height: 600px;
    border: #ccc solid 1px;
    margin: 20px 0;
}

/* Fixes potential theme css conflict. */

.acf-map img {
    max-width: inherit !important;
}

/* CSS ANIMATION */

/* ----------------------------------------------
 * Generated by Animista on 2022-2-2 10:45:48
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation rotate-center
 * ----------------------------------------
 */

@-webkit-keyframes rotate-center {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(-20deg);
        transform: rotate(-20deg);
    }
}

@keyframes rotate-center {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

    100% {
        -webkit-transform: rotate(-20deg);
        transform: rotate(-20deg);
    }
}

@-webkit-keyframes rotate-center-full {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

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

@keyframes rotate-center-full {
    0% {
        -webkit-transform: rotate(0);
        transform: rotate(0);
    }

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

/**
 * ----------------------------------------
 * animation flip-vertical-left
 * ----------------------------------------
 */

@-webkit-keyframes flip-vertical-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(-180deg);
        transform: rotateY(-180deg);
    }
}

@keyframes flip-vertical-left {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(-180deg);
        transform: rotateY(-180deg);
    }
}

/**
 * ----------------------------------------
 * animation flip-vertical-right
 * ----------------------------------------
 */

@-webkit-keyframes flip-vertical-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }
}

@keyframes flip-vertical-right {
    0% {
        -webkit-transform: rotateY(0);
        transform: rotateY(0);
    }

    100% {
        -webkit-transform: rotateY(180deg);
        transform: rotateY(180deg);
    }
}

.BBFormSection {
    margin: 0px auto !important;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width: 320px) {
    .hero-content em {
        font-size: 5rem;
    }

    .hero-content p {
        font-size: 4rem;
    }

    .hero-content {
        line-height: 1.3;
        /* margin-top: -83vw;
        margin-bottom: 27%; */
    }

    .logo-img {
        height: 100px;
    }

    .hero-slider-inner {
        height: 60vh;
        min-height: 400px;
    }

    .programs-title h3,
    .section-content-box h3 {
        font-size: 3.9rem;
    }

    .programs-list .button-box {
        flex-wrap: wrap;
    }

    .programs-list .button-box .button {
        width: 100%;
    }

    .about-section:after {
        display: none;
    }

    .section-content-box {
        padding: 25px 15px;
        background-color: #1876a1;
        width: 100%;
        max-width: 100%;
    }

    .custom-flex-box {
        flex-direction: column-reverse;
        text-align: center;
    }

    .social-list {
        justify-content: center;
    }

    .about-section.reverted-about .section-content-box {
        max-width: 100%;
    }

    .about-section .image-box:before {
        width: 238px;
        height: 238px;
        left: -125px;
    }

    .program-hero-image h1 {
        font-size: 4rem;
    }

    .flex-container span,
    .price-box span {
        display: none;
    }

    .cancelation-policy h3 {
        font-size: 6rem;
    }

    .program-price .button-box .button {
        font-size: 2.5rem;
    }

    .about-section h1,
    .contact-page h1 {
        font-size: 4.9rem;
    }

    .about-section.page-default h1:after {
        display: none;
    }

    .program-copy-content {
        padding-right: 0px;
    }

    /* .programs-list .flipper .flipping-box {
        height: auto;
    } */
}

@media only screen and (min-width: 480px) {
    /* .programs-list .flipper .flipping-box {
        height: 450px;
    } */
}

@media only screen and (min-width: 600px) {
    .hero-content {
        /* margin-top: -75vw;
        margin-bottom: 27%; */
    }
}

@media only screen and (min-width: 769px) {
    .logo-img {
        height: 165px;
    }

    .logo {
        text-align: left;
    }

    .hero-slider-inner {
        height: 80vh;
        min-height: 700px;
    }

    .programs-title h3 {
        font-size: 5rem;
    }

    .programs-list .button-box {
        flex-wrap: initial;
    }

    .custom-flex-box {
        flex-direction: inherit;
        text-align: right;
        align-items: center;
    }

    .social-list {
        justify-content: end;
    }

    .about-section .image-box:before {
        width: 338px;
        height: 338px;
        left: -175px;
    }

    .program-hero-image h1 {
        font-size: 5rem;
    }

    .flex-container span,
    .price-box span {
        display: block;
    }

    .cancelation-policy h3 {
        font-size: 7rem;
    }

    .program-price .button-box .button {
        font-size: 3.5rem;
    }

    .about-section h1,
    .contact-page h1 {
        font-size: 5rem;
    }

    .about-section.page-default h1:after {
        display: inline-block;
    }

    /* .programs-list .flipper .flipping-box {
        height: auto;
    } */
}

@media only screen and (min-width: 900px) {
    .hero-content {
        /* margin-top: -61vw; */
    }

    .hero-content em {
        font-size: 10rem;
    }

    .hero-content p {
        font-size: 5rem;
    }
}

@media only screen and (min-width: 1024px) {
    .about-section:after {
        display: block;
    }

    .section-content-box {
        padding-left: 12%;
    }

    .about-section h3 {
        font-size: 5rem;
        margin-bottom: 0px;
    }

    .section-content-box {
        max-width: 1095px;
    }

    .about-section.reverted-about .section-content-box {
        max-width: 1095px;
        margin-left: auto;
        padding-left: 5%;
        padding-right: 7%;
    }

    .hero-content {
        /* margin-top: -55vw; */
    }

    .program-copy-content {
        padding-right: 100px;
    }
}

@media only screen and (min-width: 1140px) {
    .hero-content {
        /* margin-top: -50vw; */
    }

    .content-general-box-inner h3 {
        font-size: 1.5rem;
    }

    .content-additional-box-inner h3 {
        font-size: 1.5rem;
    }

    .content-additional-box p {
        font-size: 1.3rem;
    }

    /* .programs-list .button-box .button,
    .programs-list .button-box {
        display: block;
    } */
    .programs-list .button-box .button {
        padding: 9px 0px;
    }
}

@media only screen and (min-width: 1280px) {
    .hero-content {
        /* margin-top: -40vw; */
    }

    .content-additional-box p {
        font-size: 1.5rem;
    }
}

@media only screen and (min-width: 1480px) {
    .hero-content {
        /* margin-top: -37vw; */
    }

    .programs-list .button-box .button {
        max-width: 160px;
        font-size: 1.4rem;
    }

    .content-additional-box p {
        font-size: 1.7rem;
    }
}

@media only screen and (min-width: 1700px) {
    .hero-content {
        /* margin-top: -26vw; */
        /* margin-bottom: 8%; */
    }

    .hero-content em {
        font-size: 10rem;
    }

    .hero-content p {
        font-size: 5rem;
    }

    .content-general-box-inner h3 {
        font-size: 2.2rem;
    }

    .content-additional-box-inner h3 {
        font-size: 2.2rem;
    }

    .content-additional-box p {
        font-size: 2rem;
    }

    .programs-list .button-box .button {
        padding: 13px 0px;
    }

    .content-additional-box p {
        font-size: 2rem;
    }
}

@media only screen and (min-width: 1740px) {
}

@media only screen and (max-width: 1770px) {
    .about-section .image-box:before {
        display: none;
    }
}

@media only screen and (max-width: 1023px) {
    .about-section .image-box:before {
        display: block;
    }
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-webkit-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-moz-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

.sticky {
}

.bypostauthor {
}

/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print {
    * {
        background: transparent !important;
        box-shadow: none !important;
        color: #000 !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }

    .nav,
    .sidebar,
    .home-slider,
    #respond {
        display: none;
    }

    @page {
        margin: 2cm;
    }
}
