/*!
Theme Name: CBD
Theme URI: https://www.cbwebsitedesign.co.uk/
Author: Creative Brand Design
Author URI: https://www.cbwebsitedesign.co.uk/
Description: Creative Brand Design
Version: 21.10.24
Text Domain: cbd
*/

/* Private Pages */
.post-password-form {
    height: 70vh;
    height: 50svh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.post-password-form > p {
    width: 100%;
    text-align: center;
    font-size: 115%;
}

.post-password-form label {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
}

.post-password-form input[type=password] {
    padding: 0.75rem 1.5rem;
    background: none;
    border: 1px solid #fff;
    border-radius: 0.3rem;
}

.post-password-form input[type=submit] {
    padding: 0.75rem 1.5rem;
    background: #fff;
    border: 1px solid #fff;
    border-radius: 0.3rem;
    color: #000;
    cursor: pointer;
    font-weight: 600;
    transition: 0.3s opacity;
    margin-top: 1.5rem;
}

.post-password-form input[type=submit]:hover {
    opacity: 0.7;
}

/* Base */
[data-scroll][data-delay-12] {
    transition-delay: 1.2s
}

[data-scroll][data-delay-14] {
    transition-delay: 1.4s
}

/* Admin Bar */
.admin-bar > header.fixed {
    top: 32px;
}

.admin-bar > header .menu-overlay {
    top: 32px;
    height: calc(100vh - 32px);
}

.admin-bar > main {
    margin-top: 32px;
}

@media (max-width: 782px) {
    .admin-bar > header.fixed {
        top: 46px;
    }

    .admin-bar > header .menu-overlay {
        top: 46px;
        height: calc(100vh - 46px);
    }

    .admin-bar > main {
        margin-top: 46px;
    }
}

@media (max-width: 600px) {
    #wpadminbar {
        position: fixed;
    }
}

/* Pagination */
.pagination-block .pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
}

.pagination-block .pagination a,
.pagination-block .pagination span:not(.dots) {
    display: flex;
    justify-content: center;
    border-radius: 9999px;
    border-width: 1px;
    height: 5rem;
    width: 5rem;
    --tw-border-opacity: 1;
    border-color: rgb(18 31 65 / var(--tw-border-opacity));
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    padding: .5rem;
    transition: all .5s;
    --tw-text-opacity: 1;
    color: rgb(18 31 65 / var(--tw-text-opacity));
    font-size: 2rem;
    line-height: 4rem;
}

.pagination-block .pagination span.current, 
.pagination-block .pagination a:hover {
    --tw-border-opacity: 1;
    border-color: rgb(18 31 65 / var(--tw-border-opacity));
    --tw-bg-opacity: 1;
    background-color: rgb(18 31 65 / var(--tw-bg-opacity));
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
}

.pagination-block .pagination .prev,
.pagination-block .pagination .next {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9999px;
    border-width: 1px;
    height: 5rem;
    width: 5rem;
    --tw-bg-opacity: 1;
    background-color: rgb(18 31 65 / var(--tw-bg-opacity));
    transition: all .3s;
    --tw-border-opacity: 1;
    border-color: rgb(18 31 65 / var(--tw-border-opacity));
    padding: .4em;
    --tw-text-opacity: 1;
    color: rgb(18 31 65 / var(--tw-text-opacity));
}

.pagination-block .pagination .prev svg {
    transform: rotate(180deg);
}

.pagination-block .pagination a svg {
    height: 1.8rem;
    width: 1.8rem;
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity));
    transition: all .5s;
}

/* Gravity Forms */
.form .gform_wrapper.gravity-theme .gform_fields {
    grid-column-gap: 2.5rem;
    grid-row-gap: 2.5rem;
}

.form .gform_wrapper.gravity-theme .gfield_required_text {
    display: none;
}

.form .gform_wrapper.gravity-theme .gfield_label {
    font-size: 100%;
    font-weight: 500;
    margin-bottom: 1rem;
}

.form .gform_wrapper.gravity-theme .gfield input,
.form .gform_wrapper.gravity-theme .gfield textarea,
.form .gform_wrapper.gravity-theme .gfield select {
    border-radius: 12px;
    width: 100%;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    font-size: 100%;
    font-weight: 400;
    padding: 1.75rem 2.5rem;
    --tw-text-opacity: 1;
    border: 1px solid transparent;
    color: rgb(0 0 0 / var(--tw-text-opacity));
    line-height: 1.2;
    margin: 0;
    transition: border-color .4s ease-in-out;
}

@media (max-width: 641px) {
    .form .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
        line-height: 1.2;
        min-height: auto;
    }
}

.form .gform_wrapper.gravity-theme .gfield input::placeholder,
.form .gform_wrapper.gravity-theme .gfield textarea::placeholder,
.form .gform_wrapper.gravity-theme .gfield select::placeholder {
    --tw-text-opacity: 1;
    color: rgb(18 31 65/var(--tw-text-opacity));
    opacity: .5;
}

.form .gform_wrapper.gravity-theme .gfield input:focus,
.form .gform_wrapper.gravity-theme .gfield textarea:focus,
.form .gform_wrapper.gravity-theme .gfield select:focus {
    outline: none;
    --tw-border-opacity: 1;
    border-color: rgb(158 147 109 / var(--tw-border-opacity));
}

.form .gform_wrapper.gravity-theme .gfield select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='5' fill='none' class='w-[9px] h-[5px] relative overflow-visible'%3E%3Cpath fill='%231D3326' d='M3.9 5 0 0h1.48l3.029 4.117L7.555 0H9L5.083 5z'/%3E%3C/svg%3E");
    background-position: right 1em top 50%;
    background-repeat: no-repeat;
    background-size: .8em auto;
    cursor: pointer;
    display: block;
    padding-right: 45px;
}

.form .gform_wrapper.gravity-theme .gfield textarea.medium {
    height: 167.5px;
}

.form .gform_wrapper.gravity-theme .gchoice input {
    display: none;
}

.form .gform_wrapper.gravity-theme .gchoice label {
    position: relative;
    display: inline-block;
    max-width: 100%;
    margin: 5px 0;
    padding-left: 3rem;
    line-height: inherit;
    cursor: pointer;
}

.form .gform_wrapper.gravity-theme .gchoice label:before {
    content: '';
    display: inline-block;
    width: 2rem;
    height: 2rem;
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity));
    border-width: 1px;
    border-color: rgba(18, 31, 65, .2);
    border-radius: 3px;
    position: absolute;
    top: 0;
    left: 0;
}

.form .gform_wrapper.gravity-theme .gfield_radio label:before {
    border-radius: 50%;
}

.form .gform_wrapper.gravity-theme .gchoice label:after {
    content: '';
    display: inline-block;
    width: 1.2rem;
    height: 1.2rem;
    --tw-bg-opacity: 1;
    background-color: rgb(18 31 65 / var(--tw-bg-opacity));
    border-radius: 2px;
    position: absolute;
    top: 0.4rem;
    left: 0.4rem;
    opacity: 0;
    transition: 0.4s;
}

.form .gform_wrapper.gravity-theme .gfield_radio label:after {
    border-radius: 50%;
}

.form .gform_wrapper.gravity-theme .gchoice input:checked + label:after {
    opacity: 1;
}

.form .gform_wrapper.gravity-theme .gform_footer {
    margin: 3rem 0 0;
    padding: 0;
    justify-content: center;
}

.form .gform_wrapper.gravity-theme .gform_footer button {
    margin: 0;
}

.form .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
    border: 1px solid #c02b0a !important;
}

.form .gform_wrapper.gravity-theme .validation_message {
    border-radius: 5px;
}

/* Newsletter */
.form-newsletter .gform_wrapper.gravity-theme .gform_fields {
    grid-column-gap: 1rem;
}

.form-newsletter.gform_wrapper.gravity-theme .gform_footer {
    margin: 1.25rem 0 0;
}

.image-contain img {
    object-fit: contain;
}

.image-cover img {
    object-fit: cover;
}

@media(max-width: 768px) {
    .image-contain[data-parallax] img {
        height: 100%;
    }
}

.text-red {
    --tw-text-opacity: 1;
    color: rgb(168 0 0 /var(--tw-text-opacity));
}

header .menu-collapse>li>a {
    font-family: Gill Sans,sans-serif;
}

.testimonials-carousel .bg-pink.swiper-slide-active .testimonial-card {
    --tw-bg-opacity: 1;
    background-color: rgb(189 0 176 / var(--tw-bg-opacity));
}

.\!h-full {
    height: 100% !important;
}

/* Video Js */
body .video .vjs-has-started .vjs-big-play-button {
    opacity: 0;
    visibility: hidden;
}

body .video .vjs-big-play-button {
    border-radius: 100%;
    justify-content: center;
    align-items: center;
    margin: 0;
    transition: all .3s;
    display: flex;
    top: auto;
    bottom: 50%;
}

body .video .vjs-big-play-button {
    border-style: var(--tw-border-style);
    background-color: #0000;
    border-width: 1px;
    border-color: #0000;
    width: 7.4rem;
    height: 7.4rem;
}

.vjs-controls-disabled .vjs-big-play-button, .vjs-has-started .vjs-big-play-button, .vjs-using-native-controls .vjs-big-play-button, .vjs-error .vjs-big-play-button {
    display: none;
}

.video-js .vjs-big-play-button {
    cursor: pointer;
    opacity: 1;
    background-color: #2b333fb3;
    border: .06666em solid #fff;
    border-radius: .3em;
    width: 3em;
    height: 1.63332em;
    margin-top: -.81666em;
    margin-left: -1.5em;
    padding: 0;
    font-size: 3em;
    line-height: 1.5em;
    transition: all .4s;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 50%);
}

.video-js button {
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    text-transform: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: 0 0;
    border: none;
    text-decoration: none;
    transition: none;
    display: inline-block;
}

body .video .vjs-big-play-button:before {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
    background: #fcfcfc03;
    transition: all .3s;
}

body .video .vjs-big-play-button:before {
    content: "";
    top: calc(var(--spacing)*0);
    right: calc(var(--spacing)*0);
    bottom: calc(var(--spacing)*0);
    left: calc(var(--spacing)*0);
    --tw-outline-style: none;
    border-radius: 3.40282e38px;
    outline-style: none;
    position: absolute;
}

body .video .vjs-big-play-button .vjs-icon-placeholder {
    color: var(--color-white);
    transition: all .3s;
}

body .video .vjs-big-play-button .vjs-icon-placeholder:before {
    font-size: 5rem;
    line-height: 4;
    position: relative;
}

.vjs-icon-play:before, .video-js .vjs-play-control .vjs-icon-placeholder:before, .video-js .vjs-big-play-button .vjs-icon-placeholder:before {
    content: "";
}

body .video .video-js video {
    background-color: white;
}

.split-image figure {
    z-index: 2;
}

.split-image .svg-img {
    top: 0;
    right: 4rem;
    z-index: 1;
    width: 40rem;
}

.media-svg {
    bottom: 0;
    right: 0;
}

@media(max-width: 768px) {
    .split-image .svg-img {
        display: none;
    }
    
    .media-svg {
        display: none;
    }
}

@media(min-width: 1025px) {
    body .video .vjs-big-play-button {
        width: 12rem;
        height: 12rem;
    }
    
    .mt-60 {
        margin-top: 20rem;
    }
}

/* Snowflake */
.snowflake {
    font-size: 20px;
    position: absolute;
    top: -5vh;
    transform: translateY(0);
    transform: rotate(180deg);
    animation: 7s linear forwards snowflake
}

.snowflake img {
    width: 20px
}

@keyframes snowflake {
    to {
        transform: translateY(105vh)
    }
}

.item-collapsed-body {
    display: flex;
    gap: 5rem;
    height: 100%;
}

.item-collapsed-body .col {
    min-height: 70px;
}

.image-fit img {
    /*object-fit: contain;*/
    /*height: 100%;*/
    object-fit: cover;
    height: 100%;
    width: 100%;
    border-radius: 20px;
}

.top-left-text {
    position: absolute;
    top: 0rem;
    width: fit-content;
    left: 0rem;
    z-index: 100;
    background: white;
    color: rgb(18 31 65);
    border-top-left-radius: 20px;
}

.top-left-text .title {
    padding: 0.5rem;
    padding-left: 1rem;
}

.notepad-svg {
    width: 40rem;
}

/* Book a Tee */
#book-a-tee {
    position: relative;
    width: fit-content;
    margin: auto;
}
#book-a-tee:hover > .btn {
    --tw-bg-opacity: 1;
    background-color: rgb(18 31 65/var(--tw-bg-opacity));
    --tw-text-opacity: 1;
    box-shadow: 0 1.3rem 2.8rem 0 rgba(0, 0, 0, .09);
    color: rgb(255 255 255 / var(--tw-text-opacity));
}
#book-a-tee .dropdown {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    transition: all .4s;
    opacity: 0;
    pointer-events: none;
}
#book-a-tee:hover .dropdown {
    opacity: 1;
    pointer-events: all;
}
#book-a-tee .dropdown a {
    display: block;
    width: 100%;
    height: 40px;
    align-content: center;
    margin-top: 1rem;
    text-align: left;
    pointer-events: none;
}
#book-a-tee:hover .dropdown a {
    pointer-events: all;
}

@media(max-width: 768px) {
    .cards-comm-slider-pag .swiper-nav{
        display: flex;
        justify-content: center;
        gap: 2rem;
    }
    
    .cards-comm-slider-pag .swiper-nav .cursor-pointer{
        color: black;
        border-color: black;
    }
}

.timeline-modal {
    transition: opacity .3s,visibility .3s;
}

.timeline-modal.open {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 60;
    top: 0;
    height: 100%;
    width: 100%;
}

.size-16 {
    width: calc(.25rem*16);
    height: calc(.25rem*16);
}

.timeline-modal .modal-box {
    max-height: calc(100svh - 4rem);
    transition: transform .3s;
    overflow-y: auto;
    transform: translateY(3rem);
}

.timeline-modal.open .modal-box {
    transform: translateY(0);
}

.timeline-modal .modal-box {
    border-radius: 2rem;
    padding: 2rem;
}

.timeline-modal .modal-box .card-image {
    border-radius: 1.5rem;
}

.timeline-modal .close {
    top: 14px;
    right: 14px;
}
.timeline-modal .modal-box-inner {
  display: grid;
  grid-template-columns: 40% minmax(0,1fr);
}
.timeline-modal .modal-box-inner .content-side {
    padding: 20px;
}

@media(max-width: 1024px) {
    .timeline-modal .modal-box-inner {
      grid-template-columns: minmax(0,1fr);
          margin-top: 40px;
    }
    .timeline-modal .modal-box-inner .content-side {
        padding: 10px;
    }
}

.bg-black\/75 {
    background-color: #000000bf;
}

/*.card-comm .title {*/
/*    opacity: 0;*/
/*}*/

.card-comm {
    border-radius: 15px;
}

.card-comm .bg {
    border-radius: 15px;
}

.card-comm .title {
    transition: all 0.5s ease;   
}

/*.card-comm:hover {*/
/*    cursor: pointer;*/
/*}*/

.card-comm .inner svg {
    height: 3rem;
    width: 3rem;
    fill: white;
    position: absolute;
    right: 0;
}

.s-cards-comm.timeline .card-comm .title {
    opacity: 1;
}

.s-cards-comm.timeline .card-year.title {
    font-size: 4rem;
}

.s-cards-comm.timeline .card-title.title h3 {
    font-size: 2rem;
    line-height: 1;
}

/*.s-cards-comm.timeline .card-comm .bg-blue {*/
/*    padding: 2.5rem;*/
/*    background: rgb(18 31 65);*/
/*}*/

.pb-4 {
    padding-bottom: 2rem;
}

/*@media(min-width: 1025px) {*/
/*    .card-comm:hover .inner .title {*/
/*        display: block;*/
/*        opacity: 1;*/
/*    }*/
/*}*/

.s-image-content-revers .tabs-body .title {
    display: flex;
    gap: 2rem;
    align-items: center;
}

.s-image-content-revers .tabs-body .title svg {
    height: clamp(2.4rem,1.4vw,2.4rem);
    width: clamp(2.4rem,1.4vw,2.4rem);
    transform: rotate(0deg);
    transition: all .5s ease;
}

.s-image-content-revers .tabs-body .item-collapsed.active .title svg {
    transform: rotate(90deg);
}

.s-accordion .accordion-head .title {
    display: flex;
    gap: 2rem;
    align-items: center;
}

.s-accordion .accordion-head .title svg {
    height: clamp(2.4rem,1.4vw,2.4rem);
    width: clamp(2.4rem,1.4vw,2.4rem);
    transform: rotate(0deg);
    transition: all .5s ease;
}

.s-accordion .accordion-item.active .accordion-head .title svg {
    transform: rotate(90deg);
}

.preloader-block {
    height: 100%;
    width: 100%;
}

.preloader-block img {
    padding: 30rem;
    object-fit: contain;
}

.form .gform_fields .gfield {
    width: 100%;
}

.s-testimonials .swiper-nav, .s-course-signature-holes .swiper-nav, .s-gallery .swiper-nav, .s-team .swiper-nav {
    padding-top: 5rem;
    justify-content: center;
}

.s-testimonials .swiper-nav .prev, .s-testimonials .swiper-nav .next, .s-gallery .swiper-nav .prev, .s-gallery .swiper-nav .next, .s-team .swiper-nav .prev, .s-team .swiper-nav .next {
    color: black;
    border-color: black;
}

.s-brands .swiper-slide img {
    height: 100%;
    width: 100%;
}

.form .gform_fields .gfield_label {
    display: none;
}  

.form .gform_fields {
    display: flex;
    flex-wrap: wrap;
}

@media(max-width: 768px) {
    
    .s-simple .content.wide-space-text {
        line-height: 1;
        width: 90%;
        margin: 2rem auto 0 auto;
    }
    
    .brands-carousel .brand-card {
        width: 20rem;
    }
    
    .s-enviroment .container > div {
        display: flex;
        flex-direction: column;
        gap: 2rem;
    }
    
    .s-enviroment figure.bg {
        position: relative;
        border-radius: 8px;
        overflow: hidden;
    } 
    
    .s-enquiries-now figure {
        display: none;
    }
}

.cards-comm-grid .card-comm figure.bg .overlay-gradient {
    background: linear-gradient(180deg,transparent,rgba(18,31,65,0.9) 45%);
}

.cards-comm-slider .card-comm figure.bg .overlay-gradient {
    background: linear-gradient(180deg,transparent,rgba(18,31,65,0.9) 0%);
    /*background: rgba(18, 31, 65, 1);*/
    opacity: 0.6;
}

.s-course-signature-holes .course-card-5 .content .weather-block .item .icon {
    height: 3rem;
    width: 3rem;
}

.s-course-signature-holes .weather-block .icon svg {
    margin: 0 auto;
    width: 3rem;
    height: 3rem;
}

.s-team .swiper-slide {
    height: 65vh;
}

@media(max-width: 768px) {
    .s-team .swiper-slide {
        height: 80vh;
    }
}

.s-team .swiper-slide > div {
    height: 100%;
}

footer .social-menu svg {
    fill: white;
}

.s-brands .swiper-wrapper {
    /*justify-content: center;*/
}

.gform_submission_error {
    font-size: 2.5rem;
    margin-bottom: 1rem;
    color: red;
}

.validation_message {
    color: red;
    margin-top: 1rem;
}

.content-wrap ul {
    list-style: disc;
    margin-left: 1rem;
}

.map-block {
    height: clamp(550px, 40vw, 550px);
}

.brands-carousel .swiper-wrapper, .insta-feed .swiper-wrapper {
    transition-timing-function: linear;
}

@media(min-width: 1025px) {
    header .logo img {
        width: 10rem;
    }
}

@media(max-width: 1025px) {
    .s-sustainability .inner {
        max-width: 100%;
    }
    
    .s-simple .content.wide-space-text {
        width: 75%;
        margin: 0 auto;
    }
    
    .menu-overlay .menu-outer {
        margin-top: 5rem;
    }
    
    .s-team .swiper-slide {
        height: 40vh;
    }
}

@media(max-width: 600px) {
    header .btn.btn-small .icon {
        display: none;
    }
    header .btn.btn-small {
        min-height: 3.2rem;
    }
}

@media(max-width: 768px) {
    .s-team .swiper-slide {
        height: 100%;
    }
    
    .s-team .swiper-slide .h-\[32rem\] {
        height: 45rem;
    }
}

/* Upcoming Event Notice Block */
.upcoming-event-notice {
    position: fixed;
    bottom: 50px;
    right: 50px;
    max-width: 300px;
    background-color: rgb(18 31 65);
    color: #fff;
    padding: 15px;
    border-radius: 15px 0 0;
    font-weight: 900;
    transition: width 1s ease-in-out;
    font-family: "Kaisei Decol", sans-serif;
}
.upcoming-event-notice.active {
    width: 300px;
}
@media (max-width: 480px) {
    .upcoming-event-notice {
        width: calc(100% - 7rem);
        padding: 10px;
        margin: 0 3.5rem;
        bottom: 0;
        right: 0;
    }
    .upcoming-event-notice.active {
        width: calc(100% - 7rem);
    }
}
.upcoming-event-notice .top-line {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    margin-bottom: 1rem;
}
.upcoming-event-notice span {
    text-transform: uppercase;
    font-size: 16px;
    height: 20px;
    padding: 0 0 0 15px;
}
.upcoming-event-notice .top-line > span {
    cursor: pointer;
}
.upcoming-event-notice .top-line > span:hover {
    text-decoration: underline;
}
.upcoming-event-notice.active .top-line > span {
    cursor: unset;
}
.upcoming-event-notice.active .top-line > span:hover {
    text-decoration: none;
}
.upcoming-event-notice .top-line > span:before {
    content: "";
    position: absolute;
    height: 5px;
    width: 5px;
    background-color: #fff;
    border-radius: 100%;
    top: 7.5px;
    left: 5px;
}
.upcoming-event-notice .top-line .toggle-notice {
    /*display: none;*/
    height: 0;
    width: 0;
    opacity: 0;
    cursor: pointer;
}
.upcoming-event-notice.active .top-line .toggle-notice {
    height: 20px;
    width: 20px;
    opacity: 1;
    transition: height 0.2s 0.8s ease-in-out, width 0.2s 0.8s ease-in-out, opacity 0.5s 1s ease-in-out;
}
.upcoming-event-notice .top-line .toggle-notice span {
    height: 3px;
    margin: 5px 2px 5px 0;
    transition: all .2s;
    width: 15px;
    --tw-bg-opacity: 1;
    background-color: #fff;
    display: block;
}
.upcoming-event-notice .top-line .toggle-notice span:first-of-type {
    transform: rotate(-43deg) translateY(130%) translateX(-13%)
}
.upcoming-event-notice .top-line .toggle-notice span:nth-of-type(2) {
    transform: rotate(43deg) translateY(-130%) translateX(-13%);
}
.upcoming-event-notice p {
    height: 0px;
    opacity: 0;
    margin-bottom: 0;
    color: #fff;
    width: 80%;
    font-size: 0;
    transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out, font-size 1s ease-in-out;
}
.upcoming-event-notice.active p {
    height: 100%;
    opacity: 1;
    margin-bottom: 1rem;
    font-size: 120%;
    transition: height 0.5s ease-in-out, margin-bottom 0.5s ease-in-out, font-size 1s ease-in-out, opacity 0.5s 1s ease-in-out;
}
.upcoming-event-notice a {
    display: block;
    height: 0px;
    width: 100%;
    text-align: end;
    transition: height 0.5s ease-in-out;
}
.upcoming-event-notice.active a {
    height: 100%;
}
.upcoming-event-notice a span {
    opacity: 0;
    padding: 0;
    text-decoration: underline;
}
.upcoming-event-notice.active a span {
    opacity: 1;
    transition: opacity 0.5s 1s ease-in-out;
}

.floater {
    bottom: 3rem;
    right: 3rem;
    z-index: 40;
}

.floater .gravity-button {
    /*width: 24rem;*/
    width: 10rem;
	/*height: 24rem;*/
	height: 10rem;
	display: flex;
	align-items: center;
	justify-content: center;
	/*transform: translate(8rem, 8rem);*/
	transform: translate(0rem, 0rem);
	transition: 0.4s all;
	will-change: transform;
}

.floater .gravity-button .btn-blob {
    width: 8rem;
	height: 8rem;
    border: none;
    text-align: center;
	border-radius: 100%;
	background: rgb(18 31 65);
	transition: 0.3s background-color;
	padding: 1rem;
	will-change: transform;
}

.floater .gravity-button .btn-blob:hover,
.sticky-cta .btn-blob:hover {
    background: rgb(0 168 150);
    transform: scale(0.8);
}

.floater .gravity-button .btn-blob svg,
.sticky-cta svg {
    width: 70%;
    height: 70%;
    object-fit: contain;
    fill: #fff;
    margin: 0;
}

.floater .gravity-button:hover {
    transform: translate(0rem, 0rem) scale(0.8);
}

.floater.secondary {
    right: auto;
    left: 3rem;
}

.floater.secondary .gravity-button {
    transform: none;
    align-items: flex-end;
    justify-content: flex-start;
}

.floater.secondary .gravity-button a {
    width: auto;
    height: auto;
    color: #fff;
    font-weight: 400;
    border-radius: 2.3rem;
    padding: 1.2rem 2.4rem 1rem;
}

@media (max-width: 640px) {
    .floater {
        pointer-events: none;
    }
    .floater a {
        pointer-events: all;
    }
}

.gfield--type-choice .ginput_container {
    display: flex;
    gap: 2rem;
}

.form .gform_wrapper.gravity-theme .gfield--type-choice .ginput_container input {
    height: 16px;
    width: 16px;
}

/* Course Status */
.course-status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2rem;
    position: absolute;
    top: auto;
    bottom: -5rem;
    right: 0;
    padding: 1rem 3rem 1rem 3rem;
    background-color: rgb(0 168 150);
    border-radius: 1rem 0 0 1rem;
}

.course-status .details,
.course-status .detail {
	display: flex;
	align-items: center;
	white-space: nowrap;
	gap: 0.5rem;
}

.course-status svg {
    width: 2rem;
    height: 2rem;
    object-fit: contain;
}

.course-status .fill-white svg {
    fill: white;
}

.course-status .conditions img {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
    max-width: none;
}

@media (max-width: 1079px) {
	.course-status {
		padding: 0 1rem;
		top: 7.5rem;
		justify-content: center;
		border-radius: 0;
	}
	
	/*.course-status .details,*/
	/*.course-status .detail {*/
	/*	font-size: 0.75rem;*/
	/*}*/
	
	.course-status .conditions img {
    	height: 1.5rem;
	}
}


@media (max-width: 639px) {
    header .ticker {
        padding-bottom: 0;
    }
    header .course-status {
        text-align: center;
    }
    header .course-status small {
        font-size: 100%;
    }
    header .status-toggle {
        padding: 0.5rem 0.5rem;
        margin-top: 0.5rem;
        position: absolute;
        bottom: -3rem;
        right: 0;
        width: 100%;
    }
    header .status-toggle svg {
        width: 1.1em;
        height: 1.1em;
        fill: var(--color-purple);
    }
    header .course-status {
        opacity: 0;
        visibility: hidden;
        transform: translateY(-70%) scale(0.9) !important;
        transition: 0.2s all;
    }
    header .course-status.active {
        opacity: 1;
        visibility: visible;
        transform: translateY(-50%) scale(1) !important;
        
        padding: 0;
        top: 16.5rem;
        bottom: unset;
    }
    body:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100%;
        background: var(--color-purple);
        opacity: 0;
        pointer-events: none;
        z-index: 5;
        transition: 0.2s opacity;
    }
    body.status-open:before {
        opacity: 0.6;
    }
    .home-hero {
        padding-top: 15rem;
    }
}

@media (min-width: 640px) {
    header .status-toggle {
        display: none;
    }
}

.max-w-\[200px\] {
    max-width: 200px;
}

.course-background {
    background-color: rgba(0, 0, 0, 0.6);
    padding: 3rem;
    border-radius: 2rem;
}

.course-background form input {
    color: white;
    background-color: transparent;
    border: 1px solid gray;
    padding: 2rem;
}

.gfield--type-honeypot {
    display: none;
}

/* Instagram Feed */

.insta-feed .swiper-wrapper {
    transition-timing-function: linear;
}

.insta-feed .swiper-slide {
    height: auto;
}

.insta-feed .title svg {
    fill: #FF7A00;
}

/* Instagram Optimisation */

.insta-feed #sb_instagram .sbi_type_video .sbi_playbtn,
.insta-feed #sb_instagram .sbi_type_carousel .sbi_playbtn {
    margin-top: 0;
    margin-left: 0;
    font-size: 2.5rem;
    transform: translate(-50%, -50%);
}

.insta-feed #sb_instagram #sbi_load {
    float: none;
    display: flex;
    justify-content: center;
}

.insta-feed #sb_instagram #sbi_images,
.insta-feed #sb_instagram #sbi_images .sbi_item {
	float: none;
}

.insta-feed #sb_instagram .sbi_photo img {
    height: 100%;
    display: block !important;
    position: absolute;
    top: 0;
    left: 0;
}

.insta-feed #sb_instagram #sbi_load .sbi_follow_btn {
    margin: 3rem auto 0;
    margin-left: auto;
}

.insta-feed #sb_instagram .sbi_follow_btn a {
    position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 300;
	text-transform: uppercase;
	cursor: pointer;
	font-size: 1.5rem;
	line-height: 1.36;
	padding: 1.2rem 2.4rem 1rem;
	transition: .3s all;
	background: #fff;
	border: 1px solid var(--color-blue);
	border-radius: 2.3rem;
	pointer-events: all;
	color: var(--color-blue);
}

.insta-feed #sb_instagram .sbi_follow_btn a:hover,
.insta-feed #sb_instagram .sbi_follow_btn a:focus {
    box-shadow: none;
    color: #fff;
    background: var(--color-blue) !important;
}

.insta-feed #sb_instagram .sbi_follow_btn svg:not(:root).svg-inline--fa {
    height: 1.1em;
}

@media (min-width: 1024px) {
    .insta-feed #sb_instagram #sbi_load {
        justify-content: flex-end;
    }
    .insta-feed #sb_instagram .sbi_follow_btn svg:not(:root).svg-inline--fa {
        height: 1.5em;
    }
}

@media(min-width: 1025px) {
    .scrolled header .logo img {
        width: 10rem;
    }
}

.insta-feed .sbi_new {
    height: auto;
}

.insta-feed .sbi_photo_wrap {
    height: 100%;
}

.insta-feed .sbi_photo {
    background-image: none !important;
    height: auto;
    padding-bottom: 100%;
}

.insta-feed .sbi_photo img {
    object-fit: cover;
}

.insta-feed #sb_instagram #sbi_images {
    display: flex !important;
}

.menu-open .menu-toggle span:nth-of-type(3) {
    visibility: hidden;
    display: none;
}

.s-benefits .img-contain img {
    padding: 1px;
}

.s-team .swiper-nav .swiper-button-disabled {
    color: gray;
    border-color: gray;
    cursor: unset;
}

@media(max-width: 768px) {
    .s-course-signature-holes .swiper-wrapper.justify-center {
        justify-content: flex-start;
    }
    
    .item-collapsed.active .item-collapsed-body {
        padding-bottom: 2rem;
    }
    
    .image-fit.img-direction-rtl img {
        object-position: center
    }
    
    .floater {
        bottom: 1rem;
        right: 1rem;
    }
    
    .contact .s-padding {
        padding: clamp(3rem,2.9vw,5rem) 0;
    }
    
    .contact .s-margin {
        margin: clamp(3rem,2.9vw,5rem) 0;
    }
    
    .courses .s-our-careers.s-padding {
        padding: clamp(3rem,2.9vw,5rem) 0;
    }
    
    .courses .s-enviroment.s-margin {
        margin: clamp(3rem,2.9vw,5rem) 0;
    }
}
