/*!
Theme Name: Camp Cognita
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: A Dedicated Theme for Cognita Schools Camps
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: camp-cognita
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Camp Cognita is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/* Fix WPBakery full width row horizontal scroll */

.btn-primary {
   background-color: #ED1C24;
   border-color: #ED1C24;
   color: #fff; 
}

.btn-primary:hover {
   background-color: #ED1C24;
   border-color: #ED1C24;
   color: #fff; 
}

.btn-secondary {
   background-color: #464547;
   border-color: #464547;
   color: #fff; 
}

.btn-secondary:hover {
   background-color: #464547;
   border-color: #464547;
   color: #fff; 
}

.btn {
    font-size: 14px;
    padding: 14px 20px;
}

.header-abs {
    position: absolute;
    top: 0;
}

.header-rlt {
    position: relative;
    top: 0;
}

/* .header-abs + .wrapper {
    padding-top: 120px; 
}
 */

html{
    overflow-x: hidden;
}

a, a:active, a:hover {
    text-decoration: none;
}

.main-header a{
    color: #fff;
}

header .phc {
    float: left;
    margin-right: 20px;
}

#hamburger {
    box-sizing: border-box;
    display: none;
    top: 15px;
    z-index: 99999;
    height: 25px;
    color: #000;
    line-height: 45px;
    text-transform: uppercase;
    width: 33px;
    float: left;
}

#hamburger span, #hamburger:after, #hamburger:before {
    -webkit-transition: none .5s ease .5s;
    transition: none .5s ease .5s;
    -webkit-transition-property: transform,top,bottom,left,opacity;
    transition-property: transform,top,bottom,left,opacity;
        background: #fff;
    content: "";
    display: block;
    width: 33px;
    height: 5px;
    position: absolute;
    border: 1px solid #fff;
        top: 10px;
}

.logo {
    display: block;
    width: 111px;
    height: 152px;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 999;
    position: relative;
}

header .navigation-bar {
    /* background: rgba(55,57,58,0.7) !important; */
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background: none !important;
}

.country-flag-wraper .country-dropdown {
    position: relative;
    display: inline-block;
    
}

.country-flag-wraper .dropdown-menu.open {
    display: block;
}

.country-flag-wraper .dropdown-btn {
    display: flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    border: none;
    cursor: pointer;
    font-size: 14px;
    color: #fff;
}

.country-flag-wraper .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    border: 1px solid #ddd;
    list-style: none;
    padding: 5px 0;
    margin: 5px 0 0;
    display: none;
    min-width: 180px;
    z-index: 999;
}

.country-flag-wraper .dropdown-menu li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    cursor: pointer;
}

.country-flag-wraper .dropdown-menu li:hover {
    background: #f5f5f5;
}

.country-flag-wraper .dropdown-menu img {
    width: 20px;
}

.top-menu {
    width: 80.3%;
    margin: 0;
    padding: 0;
}

.top-text a:hover {
    border-bottom: 1px solid #ED1C24;
}

.icon.phone {
    margin-right: 10px;
    float: left;
}

.top-text .login {
    float: right;
    font-size: 12pt;
}

.top-text .login a {
    color: #fff;
    margin: 0 10px;
}

.navbar {
    width: 100%;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background: 0 0;
    border: 0;
}

.navbar-nav {
    width: 100%;
    margin: 0;
    float: left;
}

ul.navbar-nav .menu-item a, ul.navbar-nav .menu-item a.active {
    color: #fff;
    margin: 0 15px;
    padding-left: 0!important;
    padding-right: 0!important;
    padding-bottom: 0;
    font-weight: 500;
}

.navbar-nav>.active>a, .navbar-nav>.active>a:focus, .navbar-nav>.active>a:hover {
    color: #fff;
    background: 0 0;
    border-bottom: 4px solid #ED1C24;
}

.navbar-nav li .sub-menu {
    list-style: none;
    background: #ED1C24;
    padding: 6px;
    display: none;
    position: absolute;
}

.navbar-nav li:hover .sub-menu {
    display: block;
}

.logged-in .login-menu {
    display: block !important;
}

.login-menu {
    display: none;
}

.logged-in .logout-menu {
    display: none !important;;
}

.join-camp-menu a::before {
    content: "\f6bb" !important;
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
    display: inline-block;
    margin-right: 4px;
    font-size: 16px;
}

/***************FOR VIDEO*****************/

.video-bg {
    z-index: 1;
    position: relative;
    background: #fff;
    width: 100%;
    height: 100%;
    max-height: 600px;
    min-height: 600px;
    overflow: hidden;
}

.video-bg::before{
    content: "";
    background: rgba(0,0,0,.2);
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    /* max-height: 600px; */
}

.video-bg iframe,
.video-bg video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 100vh;
    transform: translate(-50%, -50%);
    object-fit: cover;
    pointer-events: none;
}

.wrapper {
    width: 100%;
    overflow: hidden;
}

/******BANNER text*******/

p.banner-heading {
    font-size: 30px;
    margin: 0;
}

p.banner-date {
    font-size: 28px;
    margin: 0;
}

p.banner-btn a {
    min-width: 150px;
    padding: 8px;
}

.container.banner-text.position-absolute {
    inset: 0;
    z-index: 1;
    height: 100%;
    justify-content: center;
    align-items: end;
    display: flex;
    padding-bottom: 75px;
}

p.banner-btn a.btn:hover {
    background: #ED1C24;
    border-color: #ED1C24;
}

.wrapper .banner-image-container {
    height: 800px;
    max-height: 430px;
    overflow: hidden;
}

/*****BREADCRUMBS SECTION******/

.breadcrumbs a:hover{ 
color: #646464;
}

.before-breadcrumb-text.float-start {
    margin-right: 5px;
}

/******BODY CONTENT******/

.container.content h1 {
    font-size: 34px;
    font-weight: 300;
    color: #ccc;
    line-height: normal;
}

.page-header {
    text-align: center;
    text-transform: uppercase;
    border: 0;
    margin:0px 0 20px;
    text-align: left;
}

.content-block h2 {
    font-size: 22pt;
    line-height: 30pt;
    color: #ED1C24;
}

.woocommerce-form-login .btn-danger {
    color: #fff;
    background: #ED1C24;
}

.woocommerce-form-login .lost-password {
    color: #ED1C24;
}

/********FOOTER CSS******/

footer .title {
    font-size: 16pt;
    line-height: 140%;
    border-bottom: 1px solid #fff;
    padding: 0 0 6px;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 10px;
}

footer a {
    color: #fff;
}

footer a:hover {
    border-bottom: 1px solid #fff;
}

footer .icon {
    float: left;
    margin: 0 7px 0 0;
    width: 40px;
    height: 40px;
    text-indent: -999px;
}

footer .total {
    margin: 0;
    padding-top: 15px;
    font-weight: 300;
}

.footer a{
    color: #fff;
}

footer .icon.fb {
    background: url(../images/icons.png)no-repeat;
}

footer .icon.instagram {
    background: url(../images/icons.png)no-repeat -60px 0;
}

footer .icon.twitter {
    background: url(../images/icons.png)no-repeat -120px 0;
}

footer .icon.tiktok {
    background: url(../images/icons.png)no-repeat -174px 0;
}

/************RESPONISVE CSS***********/

@media (min-width: 1200px) {
    .container {
        width: 980px;
    }
}
@media (min-width: 768px) {
    .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important;
    }
}

#footer .wp-social-link a svg {
    fill: #fff;
    height: 36px;
    width: 36px;
}

.container-fluid.black-background-logo{background:#37393a;width:100%;max-width:100%}

.container-fluid.gradinet-background-logo{background:linear-gradient(90deg,#0570b7 0,#1a8f9c 51%,#1ba87d 100%);width:100%;max-width:100%}

.container-fluid.white-background-logo{background:#fff;width:100%;max-width:100%}

footer.section.pb-0 .container-fluid{position:relative}

.component.single-img.footer-cog-logo{padding-top:20px;text-align:center;padding-bottom:20px}

.footer-cog-logo img.img-fluid.cognita-logo.w-100{height:100%;max-height: 26px;width:auto!important}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper .wpb_text_column.wpb_content_element > .wpb_wrapper p {
    position: relative;
    margin-top: -60px;
    margin-bottom: 10px;
}

.holiday-new-row .text li {
    line-height: 26px;
}

.top-logo {
    width: 14% !important;
    margin: 0;
    padding: 0;
}

.vc_row.wpb_row.vc_row-fluid.testimonial::before {
    background: url(/wp-content/uploads/sites/31/2026/01/testimonials-bg-red-1.png);
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    content: "";
    background-size: contain;
    inset: 0;
    width: 100%;
    height: 350px;
    background-position: top;
    top: -30px;
}

ul#menu-top-menu {
    list-style: none;
    display: flex;
    margin: 0;
}

.sg-advantage .content p
{
    margin: 10px 0 25px;
}

.holiday-camps h2 {
    color: #ed1c24;
}

.camp-asis--singapore-container.holiday-camps {
    background: radial-gradient(#767676, #464547);
}

.text ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.text ul li {
  margin: 0;
  padding: 0;
  text-align:center;
}

.text ul li a{
    color:#464547;
}

.campasia-singapore video{
max-width: 100%;
    display: flex;
    object-fit: cover;
    height: 300px !important;
}

.welcome.left-border::after {
    left: 0;
    bottom: -10px;
    transform: translateX(0);
}

.campasia-singapore .wpb_wrapper p {
    line-height: 35px!important;
}

.wrapper.position-relative::before {
      content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 55px;
    width: 100%;
    background-image: url("/wp-content/uploads/sites/31/2026/01/clouds_831e05.png");
    background-repeat: repeat-x;
    background-size: auto 100%;
    background-position: bottom;
    z-index: 1;
    pointer-events: none;
}

.menu-home-icon a::before {
    content: "\f6bb" !important;  /* Home icon */
    font-family: 'Font Awesome 6 Free';
    font-weight: 900; /* solid style */
    display: inline-block;
    margin-right: 0;
    font-size: 18px !important;
}

.menu-home-icon a span {
    display: none !important;
}

.logged-in .my-account-menu {
    display: block !important;
}

.my-account-menu,.logged-in .register-menu, .logged-in .login-menu {
    display: none;
}

section.vc_section.map-section{
    position: relative;
    left: -219.5px;
    box-sizing: border-box;
    width: 1585px;
    max-width: 1585px;
    padding-left: 219.5px;
    padding-right: 219.5px;
    background-image: url(/wp-content/uploads/sites/31/2026/01/map-bg-2.png);
    background-size: cover;
    background-blend-mode: lighten;
background-color: rgb(255 255 255 / 92%) ;
}

footer#footer  .widget.widget_block b:first-child, footer#footer .widget.widget_block .body-small {
    font-size: 21px;
    text-transform: uppercase;
    font-weight: normal;
    padding-bottom: 6px;
    display: inline-block;
}

footer#footer .widget.widget_block {
    line-height: 22px;
}

#footer b.rs-office {
    display: block;
    margin-top: 10px;
    font-size: 19px;
    margin-bottom: 3px;
}

#footer ul.wp-block-social-links {
    list-style: none;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 4px;
    padding: 0;
    margin: 0;
    margin-top: 5px;
}

#footer ul.wp-block-social-links li {
    display: inline-block;
}

#footer ul.wp-block-social-links li a {
    display: flex;
    background: #00000052;
    border-radius: 100%;
    width: 35px;
    height: 35px;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
    padding: 5px;
}

#footer ul.wp-block-social-links li a:hover {
    border: none;
    background: #000000b3;
    transition: all 0.3s ease;
}

#footer ul.wp-block-social-links li a svg {
    fill: #fff;
}

body, p {
    font-family: Oswald !important;
    line-height: 29px !important;
    font-weight: 300 !important;
    font-style: normal !important;
    font-size: 18px !important;
}

header .top-logo img {
    max-height: 130px!important;
    max-width: 231px!important;
    bottom: 20px;
    position: relative;
}

header .top-logo a {
    text-align: center;
}

.welcome {
    position: relative; /* required for ::after */
    text-align: center;
}

.h4_wel::after
{
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background-color: #ED1C24;
}

.welcome::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px; /* space below text */
    transform: translateX(-50%);
    width: 60px;
    height: 3px;
    background-color: #ED1C24;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper {
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.5);
    height: auto;
    margin-top: 60px;
    min-height: 357px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper figure img {
    position: relative;
    top: -60px;
    border-radius: 100%;
    box-shadow: 0 0 9px #00000036;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper figure .vc_single_image-wrapper {
    height: 25px;
}

.holiday-camps ul li a:hover {
    color: #ED1C24;
    transition: all 0.3s ease;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper .wpb_single_image {
    margin-bottom: 25px;
    padding-left:5px;
    padding-right:5px;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper p:last-child {
    padding-bottom: 25px;
    margin-top: 10px;
    padding-left: 5px;
    padding-right: 5px;
    line-height: 20px!important;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper p:first-child {
    margin-bottom: 0;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper p:first-child span {
    font-size: 20px;
}

.map-wrapper iframe {
  width: 100%;
  height: 350px;
  border-radius: 15px;
  box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

.sg-video .wpb_wrapper p {
    margin: 0;
}
@media (min-width: 1200px) {
    .container {
     width: 1140px !important;
    }
    .header-wrapper .container {
    width: 980px;
}
.testionials-section >.vc_row.wpb_row.vc_row-fluid.testimonial.vc_custom_1768910938496 {
    overflow: visible;
}
.camp-asis--singapore-container.holiday-camps .vc_column_container>.vc_column-inner {
    padding-left: 5px;
    padding-right: 5px;
}
}
@media (max-width:1199px){
.shiftnav--scroll-top header.header.fixed-top.header-wrapperheader-1, .shiftnav--scroll-down header.header.fixed-top.header-wrapperheader-1 {
    top: 0;
    background: #ffffff !important;
    width: 100%;
    max-width: 100%!important;
    transition: all 0.3s ease;
}
.shiftnav--scroll-down header.header.fixed-top.header-wrapperheader-1 {
    background: #ffffffed!important;
    transition: all 0.3s ease;
}
}

.map-card {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0,0,0,0.12);
    transition: transform 0.3s ease;
}

.map-card:hover {
    transform: translateY(-6px);
}

.map-card iframe {
    width: 100%;
    height: 360px;
    border: 0;
}

.vc_row.wpb_row.vc_row-fluid.testimonial {
    position: relative;
}

#sp-testimonial-free-wrapper-89 .sp-testimonial-free-section .testimonial-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #ED1C24;
}

#sp-testimonial-free-wrapper-89 .sp-testimonial-free-section .testimonial-nav-arrow {
    background: transparent;
    border: none;
    color: #ff00006e;
}

ul.ubermenu-submenu.ubermenu-submenu-id-256.ubermenu-submenu-type-auto.ubermenu-submenu-type-stack li a {
    font-size: 15px;
    text-transform: revert;
    color: #464547;
}

/******FAQ PAGE CSS********/

.faq-content .vc_toggle_title {
    background: #f0f0f0;
    padding-top: 16px;
    padding-bottom: 16px;
    border-radius: 5px;
    border: 1px solid #cccccc;
}

.faq-content .vc_toggle_size_md.vc_toggle_default i.vc_toggle_icon, .faq-content .vc_toggle_default.vc_toggle_active .vc_toggle_icon {
    margin-right: 15px;
    left: unset;
    right: 0;
    background: #464547;
    border: none;
    width: 16px;
    height: 2px;
}

.faq-content .vc_toggle_size_md.vc_toggle_default i.vc_toggle_icon:before, .faq-content .vc_toggle_size_md.vc_toggle_default i.vc_toggle_icon:after, .vc_toggle_size_md.vc_toggle_default.vc_toggle_active i.vc_toggle_icon:after {
    background: #464547;
    width: 2px;
    height: 16px;
    border: none;
}

.faq-content .vc_toggle_size_md.vc_toggle_default h4{
    color:#ED1C24;
    font-size: 18px;
}

.content .faq-content p {
    margin-bottom: 10px;
}

.faq-content .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    margin-top: 0;
}

/********/

.country-flag-icon {
    width: 100%;
    max-width: 30px;
}

.programme-content h3 {
   color: #ED1C24;
    text-align: left;
    font-family: Oswald;
    font-weight: 400;
    font-style: normal;
    font-size: 26px;
    margin-bottom: 10px;
}

.programme-content p {
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 14px;
  color: #333;
}

.teacher-card h5 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
}

.teacher-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
}

.teachers-section {
  background: #f9f9f9;
  padding: 28px;
  border-radius: 16px;
}

.teachers-section h4 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 24px;
  font-family: 'Oswald', sans-serif;
}

/* Teacher card */

/* Teacher image */

.teacher-card img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

.teachers-section img.vc_single_image-img.attachment-thumbnail {
    border-radius: 100%;
    overflow: hidden;
    border: 1px solid #dfdfdf;
}

/* Info — see grouped .teacher-card h5, .teacher-card1 h5, .teacher-info h5 below */

/* Mobile */

.vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-title>a {
    color: #ED1C24 !important;
}

.term-excerpt a {
    color: #ED1C24;
    font-weight: 500;
    text-decoration: none;
}

.ajax-loader {
    position: fixed;
    inset: 0;
    background: rgba(8, 8, 8, 0.5);
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
}

.modal-box {
    max-width: 520px;
    border-radius: 10px;
}

.term-row {
    padding: 8px 0;
    border-bottom: 1px dashed #ddd;
}

.term-row:last-child {
    border-bottom: 0;
}

.accordion-button {
    background: #f8f9fa;
    font-weight: 600;
}

.accordion-button:not(.collapsed) {
    background: #fff;
    color: #dc3545;
}

.camp-row {
    transition: all .2s ease;
}

.camp-row:hover {
    background: #fafafa;
}

.accordion-item {
    border-radius: 8px;
    overflow: hidden;
}

.custom-cart-page .card {
    border-radius: 14px;
}

.camper-card {
    background: #ffffff;
}

.cart-summary {
    background: #f8fafc;
}

.custom-cart-page small {
    font-size: 13px;
}

.badge {
    font-size: 11px;
}

.page-numbers {
    display: flex;
    list-style: none;
    padding-left: 0;
    gap: 5px;
}

.page-numbers li a,
.page-numbers li span {
    display: block;
    padding: 8px 14px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    color: #000;
}

.page-numbers li .current {
    background: #e60000;
    color: #fff;
    border-color: #e60000;
}

/*Choose a Maal*/

.additional-product .card.h-100.addon-card{    display: flex;
    justify-content: flex-start;
    flex-direction: row;
}

.additional-product.card-body{
    display: flex;
    justify-content: flex-start;
    flex-direction: row;
    align-items: center;
}

.additional-product .card.h-100.addon-card img {
    max-width: 100%;
    object-fit: contain;
    width: auto;
}

/*********/
.register-garvity-form form#gform_1 {
    background: #f8f9fa;
    padding: 15px;
}
.register-garvity-form  div#gform_fields_1 {
    row-gap: 12px!important; 
}
/******MAKE A BoOKING****/

.woocommerce-MyAccount-content select#selected_camper {
    max-width: 479px!important;
    margin: 0 auto;
}

.woocommerce-MyAccount-content ul#menu-my-account li {
    padding: 8px 11px;
}

.woocommerce-MyAccount-content h2.fw-bold {
    font-size: 45px;
    text-transform: uppercase;
    color: #464547;
}

.woocommerce-MyAccount-content h2.fw-bold + p.text-danger {
    font-size: 29px!important;
    font-weight: 500!important;
    margin: 40px 0!important;
}

.woocommerce-MyAccount-content h4.fw-bold {
    font-size: 24px;
    line-height: 33px;
    color: #464547;
}

.woocommerce-MyAccount-content .card-img-overlay h5 {
    font-size: 24px;
    position: relative;
    width: 100%;
    text-align: center;
    line-height: normal;
    padding-bottom: 12px;
}

.woocommerce-MyAccount-content .card-img-overlay h5::before {
    border-bottom: 1px solid #fff;
    position: absolute;
    content: "";
    width: 100%;
    inset: 0;
}

.woocommerce-MyAccount-content a.select-camp-btn {
    margin: 0 auto;
}

.woocommerce-MyAccount-content h5.fw-bold.text-center.mb-3 {
    font-size: 24px;
    line-height: normal;
    color: #464547;
}

.woocommerce-MyAccount-content table.table.table-bordered{
    border-top:0px;
}

.woocommerce-MyAccount-content table.table.table-bordered th {
    font-weight: bold;
    font-size: 18px;
    color: #464547;
    background: none;
    border-left: 0px;
    border-right: 0px;
}

.woocommerce-MyAccount-content table.table.table-bordered td{
    border-left: 0px;
    border-right: 0px;
}

.woocommerce-MyAccount-content table.table.table-bordered tr{
    border-top: 0px;
}

/*********************/

/****CART PAGE*****/

form.custom-cart-form table.table.table-bordered {
    margin-top: 0;
}

.woocommerce h2 {
    color: #ED1C24;
    font-size: 29px;
    line-height: 40px;
    font-weight: 300!important;
    border: none!important;
    margin-bottom: 0!important;
    padding: 0!important;
}

.woocommerce .custom-cart-page h5 {
    font-size: 24px;
    color: #656565;
    font-weight: normal!important;
    border: none!important;
}

.cart-top-table .fa {
    color: #ed1c24;
    font-size: 25px;
}

.table-responsive.cart-top-table td, .table-responsive.cart-top-table td small, .table-responsive.cart-totals td, .table-responsive.cart-normalitem-table td,.table-responsive.cart-insurance-table td {
    font-weight: normal!important;
    border: none;
    vertical-align: middle;
    font-size: 18px;
    color: #464547;
}

.table-responsive.cart-top-table td small{
    font-size: 16px;
}

.table-responsive.cart-top-table tr:first-child, .table-responsive.cart-totals tr:first-child {
    border-top: none;
}

.table-responsive.cart-top-table tr:last-child, .table-responsive.cart-totals tr:last-child {
    border-bottom: none;
}

.table-responsive.cart-top-table tr td:last-child, .table-responsive.cart-insurance-table tr td:last-child, .table-responsive.cart-normalitem-table tr td:last-child {
    font-weight: 700!important;
    font-size: 18px;
    text-align: right;
}

.cart-coupon button.btn.btn-primary {
    border-color: #ed1c24;
    background: #ed1c24;
    opacity: 1;
}

.table-responsive.cart-totals td {
    font-size: 22px;
}

.table-responsive.cart-totals tr td:last-child {
    text-align:right;
}

.table-responsive.cart-totals tr.total td {
    color: #ed1c24;
}

form.custom-cart-form a.btn.btn-secondary {
    margin-left: auto;
    margin-right: 20px;
    margin-top: 40px;
    font-size: 18px;
    transition: background 03s ease;
}

form.custom-cart-form a.btn.btn-secondary:hover{
    Opacity:0.85;
    background: #464547;
}

form.custom-cart-form button#confirm-order-btn {
    margin-top: 40px;
    font-size: 18px;
    transition: background 03s ease;
}

form.custom-cart-form button#confirm-order-btn:hover{
    Opacity:0.85;
    background:  #ed1c24;
}

.cart-coupon.mt-4 small.text-success {
    font-size: 20px;
}

.offcanvas-body h6.border-bottom.pb-2.mb-3 {
    font-size: 24px;
    font-weight: normal!important;
    border: none!important;
}

.cart-header span.cart-title {
    font-size: 29px;
    font-weight: normal;
    color: #ED1C24;
}

.offcanvas-body .cart-header {
    border: none;
}

.cart-header span.close-cart {
    font-size: 45px;
    font-weight: normal;
    color: #ED1C24;
}

.cart-header {
    border: none;
}

strong.sub-heading, strong.sub-heading small.text-muted.d-block {
    width: 100%;
    display: flex!important;
    font-size: 16px;
    font-weight: 600;
    flex-wrap: wrap;
    color: #464547!important;
}

.offcanvas-body .small, .offcanvas-body  small.text-muted.d-block {
    border-bottom: 1px solid #dee2e6;
    padding: 5px 0;
    font-size: 14px;
    color: #464547!important;
}

.offcanvas-body .mb-3.pb-2.border-bottom {
    border: none!important;
}

.offcanvas-body a.btn.btn-primary.w-100 {
    font-size: 18px;
}

.offcanvas-body.p-3 .d-flex.justify-content-between.mb-3 {
    font-size: 22px;
    color: #ED1C24;
}

.offcanvas-body a.btn.btn-primary {
    font-size: 18px;
    background: #ED1C24;
    transition: all 0.3s ease;
}

.offcanvas-body a.btn.btn-primary:hover{
    opacity:0.85;
}

.d-flex.justify-content-between.small.ps-3.mt-1 {
    padding-left: 0!important;
}

/****CHILDREN PAGE******/

div#gv-view-1465-1 .gv-search {
    display: flex;
}

.gv-search-box.gv-search-box-submit {
    justify-content: flex-end;
    min-width: unset!important;
}

.gv-widget-search .gv-search-box.gv-search-box-submit{
    width: auto!important;
}

.gv-search p,
input#gv_search_1465, .gv-search label {
    width: 100%;
}

table.gv-table-view th {
    background: #ed1c24;
}

table.gv-table-view th span {
    color: #fff;
}

table.gv-table-view td{
    color: #464547;
}

table.gv-table-view td a  {
    color: #ed1c24;
}

table.gv-table-view th#gv-field-4-edit_link {
    width: auto!important;
}

button.pum-trigger.popmake-1468.btn-primary.p-2 {
    border: none;
    min-width: 120px;
    height: 40px;
    border-radius: 3.2px;
    transition: background 03s ease;
}

button.pum-trigger.popmake-1468.btn-primary:hover {
    opacity: 0.85;
}

table.gv-table-view tfoot {
    display: none;
}

table.gv-table-view tbody tr:last-child{
    border: none;
}

.gv-search-box.gv-search-box-submit input.button.gv-search-button{
    background: #ed1c24;
    border: none;
    color: #fff;
    min-width: 120px;
    height: 35px;
    border-radius: 3.2px;
    transition: all 0.3s ease;
}

.gv-search-box.gv-search-box-submit input.button.gv-search-button:hover, .gform-footer.gform_footer.top_label input.gform_button.button:hover{
    opacity: 0.85;
}

.gform-footer.gform_footer.top_label input.gform_button.button {
    font-size: 18px!important;
    min-width: 120px!important;
    height: 40px!important;
    transition: all 0.3s ease;
    margin-left:auto!important;
     background: #ed1c24!important;
}

.gform-footer.gform_footer.top_label input.gform_button.button:hover {
     opacity: 0.85;
}

/*****CHILDREN ADD FORM******/

.gform_fields.top_label.description_below.validation_below {
    row-gap: 12px;
}

.gform_fields.top_label.description_below.validation_below .gfield_radio {
    display: flex!important;
    flex-direction: row;
}

fieldset.gfield.gfield--type-checkbox.gfield--type-choice.gfield--input-type-checkbox.gfield--width-full.field_sublabel_below.gfield--no-description.field_description_below {
     grid-column: span 6!important;
}

.gform-theme--framework .gfield--type-choice .gfield_checkbox {
    flex-direction: row!important;
    flex-wrap: wrap;
}

fieldset.gfield.gfield--type-checkbox.gfield--type-choice.gfield--input-type-checkbox.gfield--width-full.field_sublabel_below {
    display: flex;
}

fieldset.gfield.gfield--type-checkbox.gfield--type-choice.gfield--input-type-checkbox.gfield--width-full.field_sublabel_below.gfield--has-description .gfield_description {
    margin-block-start: 0px;
}

/*****************/

/*******Acoount menu header options CSS***/

.menu-top-menu-container  ul#menu-top-menu li:nth-child(3) a {
    padding-left: 0;
}

.menu-top-menu-container ul#menu-top-menu li:nth-child(3) a::after {
    padding: 5px;
    width: 20px;
    height: 20px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-right: 10px;
}

/***************************/

/******MY ACCOUNT FOMR********/

form.woocommerce-EditAccountForm.edit-account .card.shadow-sm, .woocommerce-MyAccount-content .card-body  {
    background: #f8f9fa;
}

form.woocommerce-EditAccountForm.edit-account input, form.woocommerce-EditAccountForm.edit-account select, .woocommerce-MyAccount-content input, .woocommerce-MyAccount-content select {
    border: 2px solid #b0b0b0;
    border-radius: 3.2px;
    color: #646464;
}

form.woocommerce-EditAccountForm.edit-account h4.mb-4.text-center, .woocommerce-MyAccount-content .card-body h4 {
    font-size: 24px;
    text-align: left!important;
    color: #ED1C24;
    font-weight: 300!important;
}

form.woocommerce-EditAccountForm.edit-account label.form-label, .woocommerce-MyAccount-content label.form-label {
    color: #656565;
    margin-bottom: 0;
}

form.woocommerce-EditAccountForm.edit-account .btn, .woocommerce-MyAccount-content .btn {
    font-size: 16px;
    border-radius:3.2px;
    padding: 7px 20px;
    background: #ED1C24;
}

form.woocommerce-EditAccountForm.edit-account:hover .btn, .woocommerce-MyAccount-content .btn:hover{
    background: #464547!important;
    border-color: #464547;
}

.woocommerce-MyAccount-content .btn{
    max-width: fit-content;
    float: right;
    margin-inline-start: auto;
}

form.woocommerce-EditAccountForm.edit-account input:focus, form.woocommerce-EditAccountForm.edit-account select:focus, .woocommerce-MyAccount-contentinput input:focus, .woocommerce-MyAccount-content select:focus {
   box-shadow: inset 0 1px 2px rgba(0, 0, 0, .075),0 0 0 .25rem #ED1C2440
}

.vc_tta-panel-body {
    background-color: #ffffff !important;
}

.discovery-mix-card .vc_column-inner > .wpb_wrapper {
    background: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border-radius: 10px;
    box-shadow: 0 0px 25px rgb(0 0 0 / 8%);
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.discovery-mix-card .vc_column-inner > .wpb_wrapper::before {
    background: #ed1c24;
    width: 100%;
    height: 66px;
    content: "";
    position: absolute;
    top: 0;
    z-index: -1;
}

.main-header .header-wrapper {
    width: 90%;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: center;
    position: relative;
    background: none;
}

/*******************************/

/*******************************/

.ubermenu-main .ubermenu-submenu .ubermenu-item-header > .ubermenu-target span {
    border-bottom: 1px solid #ed1c24;
    padding-bottom: 0;
}

/*********************/

form.woocommerce-form.woocommerce-form-login.login label, form.woocommerce-form.woocommerce-form-login.login label {
    text-align: left;
    width: 100%;
    color: #464547;
    font-weight: normal!important;
}

ul#menu-my-account {
    margin: 0;
    padding: 0;
}

/**********************/

/******RESPONSIVE CSS*****/

@media screen and (max-width: 480px) {
.home .wrapper .banner-image-container {
    height: 140px;
    background-position: -500px !important;
}
}
@media (max-width: 567px){

.booking-page .accordion-body.p-2 {
overflow-x: hidden;
} 
}
@media screen and (max-width: 767px) {
    .campasia-singapore video {
        height: auto !important;
    }
    #shiftnav-toggle-main {
    margin: 26px 23px 0 0 !important;
}
.register-garvity-form label {
    justify-content: start!important;
    max-width: unset!important;
    text-align: left!important;
}
.register-garvity-form label {
    max-width: unset;
    text-align: left;
    justify-content: end;
}
.gform_wrapper.gform_validation_error .gfield_error:not(.gfield--type-address):not(.gfield--type-password):not(.gfield--type-name) {
    display: flex!important;
}
.register-garvity-form .gfield, .register-garvity-form .gfield .ginput_complex.ginput_container span {
    flex-direction: column!important;
    align-items: flex-start!important;
}
}
@media screen and (max-width: 576px){

    .wrapper.position-relative::before {
    background-size: auto 71%;
}
    #shiftnav-toggle-main {
    margin: 26px 20px 0 0!important;
}
    header .top-logo a {
    text-align: left;
}
    .shiftnav-open.shiftnav-open-right div#shiftnav-toggle-main {
    margin-right: 0!important;
}
ul#menu-my-account {
    flex-direction: column;
    gap: 10px;
}
    footer#footer figure.wp-block-image.size-large img {
    max-width: 80px;
}
    footer#footer .row .col-sm-12:nth-child(3) {
    position: relative;
    margin-top: -71px;
}
    footer#footer .row .col-sm-12:nth-child(1), footer#footer .row .col-sm-12:nth-child(2) {
    width: auto;
    display: flex;
    flex: 1 1;
}
    .component.single-img.footer-cog-logo {
    padding-top: 10px;
    padding-bottom: 10px;
}
    .footer-cog-logo img.img-fluid.cognita-logo.w-100 {
    max-height: 22px;
}
    .body-small.keep-in-touch, .contact-ft {
    margin-top: 20px;
}
    footer#footer .widget.widget_block {
    font-size: 16px;
}
    footer#footer .widget.widget_block b:first-child, footer#footer .widget.widget_block .body-small, #footer b.rs-office {
    font-size: 18px;
}
}

/***CAMPS AVAILABILITY******/

.week-card.text-center {
    position: relative;
    border: 1px solid #7e7e7e;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    font-size: 16px;
    box-sizing: border-box;
    overflow: hidden;
}

.cart-top {
    background: #7e7e7e;
    height: 110px;
    margin: 0 0 65px 0;
    justify-content: flex-start;
    align-items: center;
    display: flex;
    flex-direction: column;
    width: 100%;
}

.week-location {
    background: #14b1e7;
    color: #fff;
    width: 100%;
}

.week-location a {
    color: #fff;
}

.price-circle {
    position: absolute;
    margin: auto;
    height: 80px;
    width: 80px;
    z-index: 1;
    top: 76px;
    background: #fff;
    border-radius: 100%;
    font-size: 18px;
    color: #7e7e7e;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: inset 0 0 4px #00000094, 0 0 8px #00000033;
    border: 1px solid #c1c1c1;
    font-weight: bold;
}

.age-row {
    border: 1px solid #c4c4c4;
    border-left: 0;
    border-right: 0;
    width: 96%;
    box-sizing: border-box;
    font-size: 15px;
}

.week-card.text-center a.btn.btn-danger.btn-sm.mt-2 {
    padding: 3px 14px;
    padding-bottom: 6px;
    background: #ED1C24;
    border-color: #ED1C24;
    font-size: 16px;
    margin: 15px 0!important;
    display: block;
}

/****25-feb-2026***/

.shiftnav .top-shift-nav ul#menu-top-menu-1 li.login-menu.cart-menu.menu-item a {
    padding-left: 0;
}

.shiftnav  ul#menu-top-menu-1 {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
      list-style-type: none;
}

.shiftnav .top-shift-nav {
    display: flex;
    flex-direction: column;
    padding: 10px 10px 10px 26px!important;
    background: #ED1C24!important;
}

.shiftnav  ul#menu-top-menu-1 li a {
    font-size: 16px;
    line-height: normal;
    color: #fff;
}

ul#menu-main-menu li:first-child {
    display: none;
}

.country-flag-wraper .dropdown-btn img {
    width: 20px;
    height: auto;
    border-radius: 100%;
}

/***24-feb-2026***/

table.table.spring-camps.table-bordered td {
    border-right: 0px;
    border-left: 0px;
    font-size: 20px;
    color: #464547!important;
}

button.accordion-button.fw-semibold {
    color: #dc3545;
    font-size: 28px;
    font-weight: normal!important;
    background:none;
    box-shadow:none;
}

table.table.spring-camps.table-bordered h6 {
    font-size: 20px;
    font-weight: 400!important;
    color: #dc3545;
    line-height: 27px;
    
}

table.table.spring-camps.table-bordered small.text-muted.d-block {
    color: #464547;
}

button.btn.btn-sm.btn-danger.open-camp-modal {
    padding-top: 7px;
    padding-bottom: 7px;
    min-width: 120px;
}

.booking-page.container.my-4 .accordion-item.mb-2 {
    border: none;
}

#weekCollapse1spring-camps .accordion-body.p-2 {
    padding: 0!important;
}

h2#weekHeading1spring-camps button.accordion-button.fw-semibold, h2#weekHeading1spring-camps button.accordion-button.fw-semibold.collapsed{
    padding-left: 0px;
}

h2#weekHeading1spring-camps button.accordion-button.fw-semibold.collapsed {
    box-shadow: none!important;
    border-bottom: 1px solid #dee2e6;
    background: none;
}

table.table.spring-camps.table-bordered {
    margin-bottom: 0;
}

.table-responsive:last-child table.table.spring-camps.table-bordered {
    margin-bottom: 1rem;
}

.camp-season {
    margin-bottom: 30px;
}

#additional-product .card.h-100.addon-card img {
    max-width: 300px;
    width: auto;
}

section#additional-product .card-body {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

section#additional-product .card-body h6, section#additional-product .card-body select, section#additional-product .card-body p {
    flex: 1;
}

section#additional-product .card-body h6 {
    font-size: 20px;
    color: #ED1C24;
    line-height: normal;
}

section#bus-service h3, #friend-requests h3, .page-template-extras-page .title-section h1, .page-template-booking-page .title-section h1, .woocommerce-cart  .title-section h1, .woocommerce-cart .page-header h1, #additional-product h3, #meal h3 {
    color: #ED1C24;
    font-size: 29px;
    line-height: normal;
    text-transform: uppercase;
}

/***********/

@media (max-width: 959px) {

    ul.shiftnav-top-login {
        padding-left: 25px;
        list-style-type: none;
    }

    ul.shiftnav-top-login li a {
        color: #464547;
        padding-top: 15px;
        padding-bottom: 15px;
        display: flex;
    }

   ul.shiftnav-top-login li.login-menu.cart-menu.menu-user a {
    padding-left: 0;
    }
    

}

.text-red {
color: #ED1C24;
}

.text-dark-grey {
color: #464547;
}

.availability-grid .danger {
    color: #ED1C24;
}

.availability-grid .warn {
    color: #ff8000;
}

.availability-grid .ok {
    color: #2c8700;
}

.select-camp-table .location-text {
     text-transform: capitalize;
}

.availability-grid .group-icon-sec {
    position: relative;
    top: 100px;
}

.cart-top-table .location,.widget_shopping_cart_content .location {
    text-transform: capitalize;
}

.login-custom {
  position: relative;
  display: flex;
}

.toggle-password {
   position: absolute;
 right: 10px;
 top: 2px;
  cursor: pointer;
  font-size: 18px;
}

input[type="password"]::-ms-reveal,
input[type="password"]::-ms-clear {
    display: none;
}

.ginput_container_password {
    position: relative;
}

.woocommerce-MyAccount-content .select-booking-btn {
    margin: 0 auto;
}

a.woocommerce-button.button.invoice.order-actions-button {
        color: #fff;
    background: #ED1C24;
    font-size: 14px;
    padding: 14px 20px;
        padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.card-title {
    color: #464547;
    text-align: center;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
}

.card-title a {
    color: #464547 !important;
    text-align: center;
    font-family: 'Oswald', sans-serif;
    font-weight: 400;
    font-style: normal;
}

.add-to {
    background: none;
}

/**********/

.add-to a {
    background: #464547;
    padding: 14px 20px;
    display: block;
    margin-bottom: 5px;
}

button.woocommerce-Button.button {
    color: #fff;
    background: #ED1C24;
    font-size: 14px;
    padding: 14px 20px;
    border-color: #ED1C24;
}

button.woocommerce-Button.button.disabled {
    font-size: 14px;
    padding: 14px 20px;
}

.lost_reset_password button.show-password-input {
    position: absolute;
    right: 10px;
    top: 15px;
    transform: translateY(-50%);
    background: transparent;
    border: 0;
    padding: 0;
    margin: 0;
    width: 24px;
    height: 24px;
    cursor: pointer;
    z-index: 5;
    font-size: 0; /* Hide any default text/icon */
    line-height: 1;
}

.lost_reset_password button.show-password-input::before {
    content: "\f06e"; /* fa-eye */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 18px;
    color: #666;
    display: block;
    line-height: 24px;
    text-align: center;
}

button.show-password-input.display-password::before {
    content: "\f070"; /* fa-eye-slash */
}

.lost_reset_password .password-input {
    position: relative;
}

.lost_reset_password .woocommerce-Input {
    width: 100%;
}

.content .child-heading-row td {
    background: #f8f8f8;
    font-weight: 700;
    color: #ED1C24;
    border-top: 2px solid #ddd;
}

.table td,
.table th {
    vertical-align: middle;
}

.waiting-list {
    font-size: 14px;
    padding: 7px 6px;
    background: #ED1C24;
    color: #fff;
    border: 1px solid #ED1C24;
    border-radius: 4px;
    margin: 10px 2px;
}

/* =========================
   WooCommerce Single Product
   Final Refined CSS
========================= */

.single-product main.site-main {
    max-width: 1320px;
    margin: 0 auto;
    padding: 40px 24px 80px;
}

/* Breadcrumb */

.single-product .woocommerce-breadcrumb {
    margin-bottom: 24px;
    font-size: 13px;
    line-height: 1.6;
    color: #7b8493;
}

.single-product .woocommerce-breadcrumb a {
    color: #1f4b8f;
    text-decoration: none;
}

.single-product .woocommerce-breadcrumb a:hover {
    text-decoration: underline;
}

/* Main layout */

.single-product div.product {
    display: block !important;
    overflow: hidden;
    margin-top: 10px;
}

.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary {
    float: none;
    margin: 0;
}

/* Left gallery */

.single-product div.product .woocommerce-product-gallery {
    float: left !important;
    width: 48% !important;
    margin: 0 4% 0 0 !important;
    background: #fff;
    border: 1px solid #e8edf3;
    border-radius: 22px;
    padding: 22px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
    position: static !important;
}

.single-product .woocommerce-product-gallery__wrapper {
    border-radius: 18px;
    overflow: hidden;
    background: #f8f5f0;
}

.single-product .woocommerce-product-gallery__image {
    border-radius: 18px;
    overflow: hidden;
}

.single-product .woocommerce-product-gallery__wrapper img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}

.single-product .woocommerce-product-gallery__trigger {
    top: 16px !important;
    right: 16px !important;
    background: #fff !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
}

.single-product .flex-control-thumbs {
    display: flex;
    gap: 10px;
    margin-top: 14px !important;
    padding: 0;
}

.single-product .flex-control-thumbs li {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e5e7eb;
    background: #fff;
    transition: 0.2s ease;
}

.single-product .flex-control-thumbs li:hover {
    border-color: #c5d0dc;
}

/* Right summary */

.single-product div.product .summary {
    float: right !important;
    width: 48% !important;
    margin: 0 !important;
    background: #fff;
    border: 1px solid #e8edf3;
    border-radius: 22px;
    padding: 32px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}

.single-product .product_title.entry-title {
    margin: 0 0 10px;
    font-size: 40px;
    line-height: 1.1;
    font-weight: 700;
    color: #0f172a;
    letter-spacing: -0.02em;
}

.single-product div.product p.price,
.single-product div.product span.price {
    margin: 0 0 18px;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    color: #111827;
}

.single-product .woocommerce-product-details__short-description {
    margin-bottom: 24px;
    font-size: 15px;
    line-height: 1.8;
    color: #5b6472;
}

.single-product .woocommerce-product-details__short-description p:last-child {
    margin-bottom: 0;
}

/* Variation form */

.single-product form.variations_form {
    margin-top: 18px;
}

.single-product table.variations {
    width: 100%;
    margin: 0 0 22px;
    border: 0;
}

.single-product table.variations tbody,
.single-product table.variations tr,
.single-product table.variations th,
.single-product table.variations td {
    display: block;
    width: 100%;
    padding: 0;
    border: 0;
}

.single-product table.variations tr {
    margin-bottom: 18px;
}

.single-product table.variations th.label {
    margin-bottom: 8px;
}

.single-product table.variations th.label label {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    color: #111827;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.single-product table.variations td.value {
    position: relative;
}

.single-product table.variations select {
    width: 100%;
    min-height: 52px;
    border: 1px solid #d7dee8;
    border-radius: 14px;
    padding: 0 16px;
    background: #fff;
    font-size: 15px;
    color: #111827;
    outline: none;
    box-shadow: none;
    transition: all 0.2s ease;
}

.single-product table.variations select:hover {
    border-color: #bcc8d6;
}

.single-product table.variations select:focus {
    border-color: #1f4b8f;
    box-shadow: 0 0 0 3px rgba(31, 75, 143, 0.10);
}

.single-product .reset_variations {
    margin-top: 8px;
    display: inline-block;
    font-size: 13px;
    color: #1f4b8f;
    text-decoration: none;
}

.single-product .reset_variations:hover {
    text-decoration: underline;
}

/* Variation details */

.single-product .single_variation_wrap {
    margin-top: 16px;
    padding-top: 18px;
    border-top: 1px solid #edf1f5;
}

.single-product .woocommerce-variation-description,
.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-availability {
    margin-bottom: 10px;
    color: #374151;
}

.single-product .woocommerce-variation-price .price {
    font-size: 24px !important;
    margin-bottom: 8px !important;
}

.single-product .stock {
    display: inline-block;
    margin: 6px 0 14px;
    padding: 7px 14px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 700;
}

.single-product .stock.in-stock {
    background: #ecfdf3;
    color: #027a48;
}

.single-product .stock.out-of-stock {
    background: #fef3f2;
    color: #b42318;
}

/* Quantity + Add to cart row */

.single-product .variations_button,
.single-product form.cart {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.single-product .quantity {
    margin: 0 !important;
}

.single-product .quantity .qty {
    width: 92px;
    min-width: 92px;
    min-height: 50px;
    border: 1px solid #d7dee8;
    border-radius: 12px;
    text-align: center;
    font-size: 16px;
    font-weight: 700;
    background: #fff;
    color: #111827;
    padding: 0 12px;
    box-shadow: none;
}

.single-product .quantity .qty:focus {
    outline: none;
    border-color: #1f4b8f;
    box-shadow: 0 0 0 3px rgba(31, 75, 143, 0.10);
}

/* Theme button style */

.single-product .single_add_to_cart_button.button,
.single-product .single_add_to_cart_button.alt {
    min-height: 50px;
    padding: 0 28px;
    border: 1px solid #333 !important;
    border-radius: 12px;
    background: #333 !important;
    color: #fff !important;
    font-size: 15px;
    font-weight: 600;
    box-shadow: none !important;
    transition: all 0.2s ease;
    position: static !important;
}

.single-product .single_add_to_cart_button.button:hover,
.single-product .single_add_to_cart_button.alt:hover {
    background: #222 !important;
    border-color: #222 !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
}

.single-product .single_add_to_cart_button.button.disabled,
.single-product .single_add_to_cart_button.button:disabled,
.single-product .single_add_to_cart_button.alt.disabled,
.single-product .single_add_to_cart_button.alt:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    background: #999 !important;
    border-color: #999 !important;
    color: #fff !important;
}

/* Meta */

.single-product .product_meta {
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid #edf1f5;
    font-size: 13px;
    color: #7b8493;
}

.single-product .product_meta > span {
    display: block;
    margin-bottom: 8px;
}

.single-product .product_meta a {
    color: #1f4b8f;
    text-decoration: none;
}

.single-product .product_meta a:hover {
    text-decoration: underline;
}

/* Tabs */

.single-product .woocommerce-tabs.wc-tabs-wrapper {
    clear: both !important;
    display: block !important;
    width: 100% !important;
    margin-top: 36px !important;
    background: #fff;
    border: 1px solid #e8edf3;
    border-radius: 22px;
    padding: 24px 28px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
    position: relative;
    z-index: 1;
}

.single-product .woocommerce-tabs ul.tabs {
    display: flex;
    gap: 18px;
    margin: 0 0 22px;
    padding: 0 0 12px;
    border-bottom: 1px solid #edf1f5;
    list-style: none;
    position: relative;
    z-index: 2;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
    display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
    display: inline-block;
    padding: 8px 0;
    font-size: 14px;
    font-weight: 700;
    color: #6b7280;
    text-decoration: none;
    position: relative;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
    color: #13294b;
}

.single-product .woocommerce-tabs ul.tabs li.active a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -13px;
    width: 100%;
    height: 3px;
    border-radius: 999px;
    background: #1f4b8f;
}

.single-product .woocommerce-Tabs-panel h2 {
    font-size: 24px;
    margin-bottom: 16px;
    color: #111827;
}

.single-product .woocommerce-Tabs-panel p {
    font-size: 15px;
    line-height: 1.9;
    color: #5b6472;
}

/* Product attributes table */

.single-product .woocommerce-product-attributes {
    border: 1px solid #edf1f5;
    border-radius: 16px;
    overflow: hidden;
}

.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td {
    padding: 14px 16px;
    border-bottom: 1px solid #edf1f5;
}

.single-product .woocommerce-product-attributes tr:last-child th,
.single-product .woocommerce-product-attributes tr:last-child td {
    border-bottom: 0;
}

/* Reviews form */

.single-product #reviews {
    margin-top: 10px;
}

.single-product #review_form_wrapper {
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid #edf1f5;
}

.single-product .comment-form input,
.single-product .comment-form textarea,
.single-product .comment-form select {
    width: 100%;
    border: 1px solid #d7dee8;
    border-radius: 14px;
    padding: 12px 14px;
}

.single-product .comment-form textarea {
    min-height: 140px;
}

.single-product .comment-form .submit {
    min-height: 48px;
    padding: 0 24px;
    border: 0;
    border-radius: 12px;
    background: #13294b;
    color: #fff;
    font-weight: 700;
}

/* Related */

.single-product section.related {
    margin-top: 42px;
}

.single-product section.related > h2 {
    font-size: 28px;
    margin-bottom: 20px;
    color: #111827;
}

/* Mobile */

@media (max-width: 991px) {
    .single-product main.site-main {
        padding: 28px 16px 60px;
    }

    .single-product div.product .woocommerce-product-gallery,
    .single-product div.product .summary {
        float: none !important;
        width: 100% !important;
        margin: 0 0 24px !important;
    }

    .single-product div.product .summary {
        padding: 24px 22px;
    }

    .single-product div.product .woocommerce-product-gallery,
    .single-product .woocommerce-tabs.wc-tabs-wrapper {
        padding: 22px;
    }

    .single-product .product_title.entry-title {
        font-size: 30px;
    }

    .single-product div.product p.price,
    .single-product div.product span.price {
        font-size: 24px;
    }

    .single-product .variations_button,
    .single-product form.cart {
        flex-direction: column;
        align-items: stretch;
    }

    .single-product .quantity .qty,
    .single-product .single_add_to_cart_button.button,
    .single-product .single_add_to_cart_button.alt {
        width: 100%;
    }

    .single-product .woocommerce-tabs ul.tabs {
        gap: 14px;
        flex-wrap: wrap;
    }
}

.single-product .ppc-button-wrapper {
    display: none;
}

/* =========================
   WooCommerce Single Product End
========================= */

.woocommerce-lost-password .show-password-input {
    display: block !important;
}

.show-password-input {
    display: none !important;
}

.waiting-list:hover {
    background: #ED1C24;
    color: #fff;
    font-weight: 500;
    background: #ED1C24;
    border-color: #ED1C24;
}

/******10 April 2026 CSS Starts****/

input.datepicker.gform-datepicker.mdy.datepicker_no_icon.gdatepicker-no-icon.hasDatepicker.initialized {
    width: 100%;
}

.page-template-merchandise-page .card.h-100.shadow-sm.border-0.text-center img {
    width: 100%;
    object-fit: cover;
}

.slider_space .flexslider {
    margin-bottom: 10px;
}

.btn-book-now a {

    border: 2px solid #464547 !important;
    transition: background 0.3s ease !important;
    background: none !important;
    font-size: 16px;
    text-transform: uppercase;
    padding-top: 9px;
    font-weight: 400;
    padding-bottom: 9px;
}

.btn-book-now a:hover {
    background: #464547 !important;
    border: 2px solid #464547 !important;
    color: #fff !important;
}

form.woocommerce-form.woocommerce-form-login.login .login-custom label {
    min-width: 116px;
    max-width: fit-content;
    text-align: right;
    padding-right: 10px;
}

.reg1 .wpb_wrapper {
    background: #F8F9FA;
    min-height: 78px;
    padding: 10px;
}

.mail-list .wpb_wrapper {
    background: #F8F9FA;
    min-height: 63px;
    padding: 10px;
}

/**Login PAge CSS ENDS**/

/** Perk Page Starts ***/

table.nice-table thead tr th {
    background: #ED1C24;
    color: #fff;
}

.content table.nice-table td {
    border-bottom: 1px solid #ccc;
}

table.nice-table tbody tr td {
    background: #fff;
}

.brand-icons .vc_column-inner>.wpb_wrapper {
    border: 1px solid #646464;
    text-align: center;
    margin-bottom: 20px;
    padding: 30px;
}

.brand-icons .vc_column-inner>.wpb_wrapper button.vc_general, .cantonment-bottom .vc_column-inner>.wpb_wrapper button.vc_general {
    border: 1px solid #ED1C24 !important;
    color: #ED1C24 !important;
    background: none !important;
    font-size: 16px;
    text-transform: uppercase;
    padding-top: 9px;
    padding-bottom: 9px;
}

.brand-icons .vc_column-inner>.wpb_wrapper button.vc_general:hover {
    background: #ED1C24 !important;
    color: #fff !important;
}

.brand-icons .wpb_single_image img {
    max-width: 100px;
}

.cantonment-top strong {
    color: #ed1c24;
}

.cantonment-top a, .cantonment-bottom a {
    color: #ed1c24;
}

.full-width-img img {
    width: 100%;
}

.cantonment-bottom .flex-direction-nav a {
    opacity: 1;
}

.cantonment-bottom .flexslider .flex-direction-nav .flex-next {
    right: 10px;
}

.cantonment-bottom .flexslider .flex-direction-nav .flex-prev {
    left: 10px;
}

/** Perk Page Ends ***/

ol.flex-control-nav.flex-control-paging {
    display: none;
}

.teacher-card1.stem_teacher figure.wpb_wrapper.vc_figure {
    width: 200px;
    height: 200px;
}

.breadcrumbs {
    padding: 10px 10px 20px 10px !important;
    font-size: 12pt;
}

.country-flag-wraper {
    float: left;
    margin-bottom: 10px !important;
}

span.age-red {
    color: #ED1C24;
}

/***css present in file****/

.country-dropdown .dropdown-btn {
    display: flex;
    align-items: center;
    gap: 6px;
    position: relative;
}

.country-dropdown .dropdown-btn::after {
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 14px;
    margin-top: 3px;
    margin-left: 0px;
}

/****REPLACE but don't add important****/

.main-header {
    width: 100%;
    z-index: 999;
    padding: 35px 0;
    padding-top: 120px;
}

.discovery-mix-card .vc_column-inner>.wpb_wrapper {
    background: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    border-radius: 10px;
    box-shadow: 0 0px 25px rgb(0 0 0 / 8%);
    position: relative;
    z-index: 0;
    overflow: hidden;
}

.discovery-mix-card .vc_column-inner>.wpb_wrapper::before {
    background: #ed1c24;
    width: 100%;
    height: 66px;
    content: "";
    position: absolute;
    top: 0;
    z-index: -1;
}

.camp-asis-container.sg-advantage .wpb_wrapper p {
    font-size: 17px !important;
}

a.ubermenu-target.ubermenu-item-layout-default.ubermenu-item-layout-text_only {
    padding-left: 5px;
    padding-top: 5px !important;
    padding-bottom: 7px;
}

/*******************************/

/**** Replace in Html class="banner-image-container" but don't add important **/

.menu-top-menu-container li:not(:last-child)::after {
    content: "|";
    margin-left: 0;
}

.banner-image-container {
    max-height: 280px !important;
}

/*******************************/

.camp-details-parent .camp-table-headings .vc_column-inner {
    padding-top: 0 !important;
}

.camp-details-parent .first-row .vc_column-inner {
    padding-top: 15px !important;
}

.stamford p, .australian p {
    margin: 0;
}

.main-header .collapse.navbar-collapse nav {
    border: 1px solid #fff;
    border-left: 0px;
    border-right: 0px;
}

.wrapper.position-relative::after {
    z-index: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, #000000a1 29%, transparent 61%);
    position: absolute;
    content: "";
    inset: 0;
}

.discovery-mix-activity .image-wrapper {
    max-height: 260px;
    max-width: 304px;
    height: 100%;
    width: 100%;
    overflow: hidden;
}

.discovery-mix-activity .image-wrapper img {
    height: 260px;
    object-fit: cover;
    width: 100%;
    object-position: center;
}

.our_teacher .teachers-section .vc_row.wpb_row.vc_inner.vc_row-fluid {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 0 15px #0000000d;
    margin-bottom: 15px;
    padding-top: 15px;
    padding-bottom: 15px;
}

.our_teacher .teachers-section .vc_row.wpb_row.vc_inner.vc_row-fluid:last-child {
    margin-bottom: 0;
}

.our_teacher .vc_col-sm-3 .vc_column-inner {
    padding-right: 0;
}

.our_teacher .teachers-section .programme-content {
    margin: 0;
}

.our_teacher .vc_col-sm-3 .vc_column-inner .vc_figure {
    border-radius: 100%;
    overflow: hidden;
    border: 1px solid #dfdfdf;
}

.our_teacher .teachers-section .programme-content .wpb_wrapper p {
    font-size: 17px !important;
    margin-top: 0;
    line-height: 26px !important;
}

.btn-book-now button {
    background: none !important;
    border: 2px solid #464547 !important;
    transition: background 0.3s ease !important;
}

.btn-book-now button:hover {
    background: #464547 !important;
    border: 2px solid #464547 !important;
    color: #fff !important;
}

.btn-book-now-dis button {
    background: #464547 !important;
    border: 2px solid #464547 !important;
    transition: background 0.3s ease !important;
    color: #fff !important;
}

.btn-book-now-dis button:hover {
    background: none !important;
    border: 2px solid #464547 !important;
    color: #464547 !important;
}

.ubermenu .ubermenu-item.ubermenu-active .ubermenu-submenu-drop {
    padding: 15px;
}

.ubermenu .ubermenu-item.ubermenu-active .ubermenu-submenu-drop.ubermenu-submenu-align-full_width {
    display: flex;
    justify-content: space-between;
}

/**Remove important and Replace in style.css***/

footer {
    color: #fff;
    background: #ED1C24 !important;
}

.breadcrumbs a {
    color: #ED1C24 !important;
}

.ubermenu-main .ubermenu-submenu .ubermenu-item-header>.ubermenu-target span {
    border-bottom: 1px solid #ed1c24;
    padding-bottom: 0;
}

/*********************/

.btn-deafult a {
    background: #464547 !important;
    border: 2px solid #464547 !important;
    transition: background 0.3s ease !important;
    color: #fff !important;
}

.btn-deafult a:hover {
    background: none !important;
    border: 2px solid #464547 !important;
    color: #464547 !important;
}

.container.content {
    margin-bottom: 0px !important;
}

form.woocommerce-form.woocommerce-form-login.login .mb-3 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
}

.online-booking .wpb_wrapper .woocommerce form, form.woocommerce-form.woocommerce-form-login.login {
    max-width: 480px !important;
}

.online-booking .wpb_wrapper .woocommerce form .col-sm-11, form.woocommerce-form.woocommerce-form-login.login .col-sm-11 {
    width: 100%;
    text-align: unset;
    margin: 0;
    padding-left: 131px;
}

form.woocommerce-form.woocommerce-form-login.login .col-sm-11 input {
    border: 2px solid #b0b0b0;
    border-radius: 4px;
}

.form-control:focus {
    box-shadow: none !important;
}

.container.content h1.vc_custom_heading.vc_do_custom_heading:first-child {
    margin-top: 10px;
}

.availability-grid h5.fw-bold.text-danger {
    font-size: 21px;
    font-weight: normal!important;
    line-height: normal;
}

.week-card.text-center .cart-top .week-header {
    color: #fff;
}

.woo-password {
    position: relative;
    width: 100%;
}

/**********************/

/******RESPONSIVE CSS*****/

@media only screen and (max-width: 1024px) {
    .logo {
        margin-left: 0 !important;
        top: 0 !important;
    }

    .vc_row.wpb_row.vc_row-fluid.testimonial::before {
        background-size: 100% 350px;
        top: 0;
    }

    .testimonial>.vc_column_container>.vc_column-inner {
        padding-top: 20px;
    }

    .vc_row.wpb_row.vc_row-fluid.testimonial::before {
        background-size: 100% 392px;
        height: 400px;
    }

}
@media screen and (min-width: 960px) and (max-width: 1024px) {
    #shiftnav-toggle-main {
        display: none;
    }

    .ubermenu-main .ubermenu-item-level-0>.ubermenu-target {
        font-size: 16px !important;
    }

    .holiday-new-row .wpb_column.vc_column_container.vc_col-sm-1\/5 {
        margin-top: 30px;
    }
}
@media screen and (max-width: 991px) {
    header .top-logo img {
        max-height: 110px !important;
        bottom: 0px;
    }
}
@media screen and (max-width: 959px) {
    .shiftnav.shiftnav-shiftnav-main ul.shiftnav-menu li.menu-item > .shiftnav-submenu-activation.shiftnav-submenu-activation-open {
    color: #464547!important;
}
#menu-main-menu.shiftnav-menu .sub-menu.sub-menu-1.shiftnav-sub-active.shiftnav-sub-active-current li.menu-item .shiftnav-submenu-activation.shiftnav-submenu-activation-open i.fa, #menu-main-menu.shiftnav-menu .sub-menu.sub-menu-1.shiftnav-sub-active li.menu-item .shiftnav-submenu-activation.shiftnav-submenu-activation-close i.fa {
    color: #464547!important;
}
ul#menu-main-menu li.menu-home-icon:first-child {
    display: none;
}
        .shiftnav-open.shiftnav-open-right div#shiftnav-toggle-main {
        margin-right: 0 !important;
    }

    /*#menu-main-menu .sub-menu.shiftnav-sub-active.shiftnav-sub-active-current li.menu-item .shiftnav-submenu-activation {*/
    /*    height: 100% !important;*/
    /*    width: 50px !important;*/
    /*}*/

    ul#menu-main-menu li.menu-home-icon {
        display: none;
    }

    ul#menu-main-menu li:first-child {
        display: block;
    }

    li.current-menu-ancestor.current-menu-parent.menu-item-has-children .fa, li.shiftnav-active .fa {
        color: #fff;
    }

    li.menu-item.menu-item-type-post_type.menu-item-object-page.current-menu-item.menu-item-has-children.shiftnav-sub-accordion.shiftnav-depth-0 .fa {
        color: #fff;
    }

    li.menu-item.menu-item-type-post_type.menu-item-object-page.current-menu-item.menu-item-has-children.shiftnav-sub-accordion.shiftnav-depth-0>ul>li .fa {
        color: #464547;
    }

    nav.shiftnav-nav a {
        color: #464547;
    }

    .logo {
        height: 112px;
    }

    .top-menu, .top-text {
        display: none;
    }

    .shiftnav--scroll-down header.main-header, .shiftnav--scroll-up header.main-header {
        background: #fffffffa !important;
        position: fixed;
        transition: all 0.3s ease;
        box-shadow: 0 0 25px #00000026;
    }

    .main-header {
        padding-top: 40px !important;
    }

    .wrapper .banner-image-container {
        height: 200px;
    }

    #shiftnav-toggle-main {
        margin: 50px 40px 0 0 !important;
    }
}
@media screen and (max-width: 768px) {
    .body-small.keep-in-touch {
        margin-top: 25px;
    }

    .main-header {
        padding-top: 25px !important;
        padding-bottom: 25px;
    }

    .top-logo {
        width: auto !important;
    }
}
@media screen and (max-width: 767px) {
    .availability-grid .group-icon-sec {
    top: unset;
}
    .login-custom {
        flex-direction: column;
    }

    form.woocommerce-form.woocommerce-form-login.login .login-custom label {
        text-align: left;
    }

    .container.content h1.vc_custom_heading.vc_do_custom_heading:first-child {
        font-size: 20px !important;
        margin-bottom: 0px;
    }

    #shiftnav-toggle-main .shiftnav-toggle-burger, #shiftnav-toggle-main.shiftnav-toggle-main-entire-bar:before {
        padding: 11px 14px !important;
    }

    .wrapper .banner-image-container {
        height: 140px;
    }

    .main-header {
        padding-top: 15px !important;
        padding-bottom: 15px;
    }

    ul#menu-my-account li {
        justify-content: center;
        align-items: center;
        text-align: center;
        line-height: normal;
    }

    figure {
        margin: 0 0 20px;
    }

    .keep-in-touch, .contact-ft {
        margin-top: 25px;
    }

    .super-swim-img {
        margin-bottom: 0px;
    }

    .teacher-card .vc_column-inner {
        min-height: unset !important;
    }

    .faq-heading.red-heading {
        padding: 0;
    }

    h2.vc_custom_heading.vc_do_custom_heading, h1.vc_custom_heading.vc_do_custom_heading {
        font-size: 26px !important;
        line-height: 30px !important;
    }

    h2.welcome {
        font-size: 27px !important;
        line-height: 31px !important;
    }

    .container.content>.wpb-content-wrapper .vc_row.wpb_row.vc_row-fluid+.vc_row.wpb_row.vc_row-fluid {
        padding-top: 10px !important;
    }

    #shiftnav-toggle-main {
        margin: 26px 70px 0 0 !important;
    }

    header .top-logo img, .logo {
        max-height: 70px !important;
        text-align: left !important;
    }

    .vc_row.wpb_row.vc_row-fluid.testimonial::before {
        display: none;
    }

    .vc_row.wpb_row.vc_inner.vc_row-fluid.holiday-new-row .vc_column_container {
        margin-top: 30px;
    }
}

.top-text {
    color: #fff;
    font-size: 16px;
    margin-top: 22px;
}
div#payment button {
    margin-bottom: 10px;
    background: #ED1C24;
    font-size: 16px;
    border-radius: 3.2px;
    padding: 7px 20px;
    color: #fff;
    border-color: #ED1C24;
}

.camp-season small.text-muted.d-block {
    text-transform: capitalize;
}

/* ----- */

.gv-button-delete {
    display: none !important;
}

.bus-service-info {
  padding-left: 20px;
}

.bus-service-info li {
  margin-bottom: 10px;
  line-height: 29.6px;
  font-size: 18px;
  font-weight: 300;
}

.bus-service-info a {
  color: #ED1C24;
  text-decoration: none;
}

.bus-service-info a:hover,
.bus-service-info a:focus {
  color: #f10707;
}

.teacher-card,
.teacher-card1 {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  transition: transform .3s ease;
}

.teacher-card:hover,
.teacher-card1:hover {
  transform: translateX(6px);
}

.teacher-card img,
.teacher-card1 img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

.teacher-card h5,
.teacher-card1 h5,
.teacher-info h5 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
  font-family: 'Oswald', sans-serif;
}

.teacher-card h5 span,
.teacher-card1 h5 span,
.teacher-info h5 span {
  font-weight: 400;
  color: #777;
  margin-left: 6px;
}

.teacher-card p,
.teacher-card1 p,
.teacher-info p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
  margin: 0;
}

.teacher-card .vc_column-inner {
    box-shadow: 0 0 10px #0000002e;
    padding: 20px;
    border-radius: 10px;
    min-height: 440px;
}

.teacher-card .wpb_text_column.wpb_content_element.programme-content {
  margin-bottom: 0;
}

#multi-xperience .vc_column-inner{
    min-height: 617px;
}

#young-adventurers .vc_column-inner{
    min-height: 300px;
}

#parkour .vc_column-inner{
    min-height: 328px;
}

#drama-academy .vc_column-inner{
    min-height: 712px;
}

#passion-art .vc_column-inner{
    min-height: 665px;
}

#junior-medic .vc_column-inner{
    min-height: 298px;
}

#kidz-economy .vc_column-inner{
    min-height: 561px;
}

#creative-coding .vc_column-inner{
    min-height: 335px;
}

#robotics-makerspace .vc_column-inner{
    min-height: 610px;
}

.teacher-card1 .vc_column-inner {
  box-shadow: 0 0 10px #0000002e;
  padding: 20px;
  border-radius: 10px;
}

.teacher-card1 .wpb_text_column.wpb_content_element.programme-content {
  margin-bottom: 0;
}

.teacher-card1.stem_teacher .wpb_wrapper {
  display: flex;
}

.teacher-card1.stem_teacher .stem_content .wpb_wrapper {
  display: flex;
  flex-direction: column;
}

.teacher-card1.stem_teacher .stem_image {
  margin-right: 30px;
}

.teacher-card1.stem_teacher .stem_image figure.wpb_wrapper.vc_figure img {
  width: 100%;
  height: 100%;
}

.teacher-card1.stem_teacher .stem_image figure.wpb_wrapper.vc_figure .vc_box_border_grey {
    height: auto;
    width: 100%;
}

.content table {
  width: 100%;
  margin: 40px 0 10px;
}

.content table th {
  padding: 5px 10px;
  border-bottom: 3px solid #f10707;
  color: #656565;
  font-weight: 400;
  font-family: Oswald;
}

.content table td {
  font-weight: 300;
  padding: 15px 10px;
  border-bottom: 1px solid #656565;
}

table.nice-table td,
table.nice-table thead td {
  font-weight: 400;
  color: #464547;
  padding: 8px;
  font-family: Oswald;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc;
}

table.nice-table tr.blue td {
  color: #fff;
  background: #153b5a;
}

table.nice-table {
    background: #f8f8f8!important;
    margin: 10px 0;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    font-size: 14px;
    line-height: 1.3em;
}

table.nice-table td {
    font-weight: 400;
    color: #464547;
    padding: 8px;
    font-family:oswald;
}

.visual-image .vc_single_image-wrapper {
  box-shadow: 0 0 10px #0000001a;
  border-radius: 10px;
  overflow: hidden;
  padding: 15px;
}

.visual-image .vc_single_image-wrapper img {
  border-radius: 5px;
}

.vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-title > a {
  color: #ED1C24 !important;
}

.video-multi video {
    display: flex;
    object-fit: cover;
    height: 300px !important;
}

.video-multi-gym video {
  display: flex;
  object-fit: cover;
  height: 397px !important;
}

.super_basketball video {
  display: flex;
  object-fit: cover;
  height: 228px !important;
}

.our_teacher video {
  display: flex;
  object-fit: cover;
  height: 350px !important;
}

.gymnastics span {
  font-size: 18px;
  color: #ED1C24;
  font-family: Oswald;
  font-weight: 400;
  font-style: normal;
}
@media (max-width: 600px) {
  .teacher-card,
  .teacher-card1 {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

.page-header h1 {
    color: #ED1C24 !important;
}

.weekly-camp {
    background: #000;
    transform: skew(-20deg);
    display: inline-block;
    color: #fff;
    padding: 6px 10px;
    margin-left: 10px;
}

.holiday-camps .holiday-new-row .vc_column-inner > .wpb_wrapper {
  min-height: 166px !important;
}

.cart-menu > a::after {
    display: inline-flex;
    justify-content: center;
}

ul#menu-top-menu li:nth-child(2) a {
    padding: 0;
    margin-right: 15px;
}


.programme-content h3 {
color: #ED1C24;
    text-align: left;
    font-family: Oswald;
    font-weight: 400;
    font-style: normal;
}

.teachers-section {
  background: #f9f9f9;
  padding: 24px;
  border-radius: 16px;
}

.teachers-section h4 {
  font-size: 22px;
  margin-bottom: 20px;
}

.teacher-card1 h5 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
}

.teacher-card1 h5 span {
  font-weight: 400;
  color: #777;
}

.teacher-card1 p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
}

/* Teacher card */
.teacher-card1 {
  display: flex;
  align-items: flex-start;
  gap: 18px;
}

/* Teacher image */
.teacher-card1 img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Info */
.teacher-info h5 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
  font-family: 'Oswald', sans-serif;
}

.teacher-info h5 span {
  font-weight: 400;
  color: #777;
  margin-left: 6px;
}

.teacher-info p {
  font-size: 14px;
  line-height: 1.6;
  color: #444;
  margin: 0;
}

/* Hover effect */
.teacher-card1 {
  transition: transform .3s ease;
}

.teacher-card1:hover {
  transform: translateX(6px);
}

/* Mobile */

@media (max-width: 600px) {
  .teacher-card1 {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

.content table th {
    padding: 5px 10px;
    border-bottom: 3px solid #f10707;
    color: #656565;
    font-weight: 400;
    font-family:oswald;
}

table.nice-table td, table.nice-table thead td {
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
}

.vc_tta-color-grey.vc_tta-style-classic .vc_tta-panel .vc_tta-panel-title>a {
    color: #ED1C24 !important;
}

.teacher-card1.stem_teacher .stem_image figure.wpb_wrapper.vc_figure img {
    width: 225px;
    height: 100%;
}

 
.teacher-card h5 span {
  font-weight: 400;
  color: #777;
}

/* Teacher card */
.teacher-card {
  display: flex;
  align-items: flex-start;
  gap: 18px;
}

/* Teacher image */
.teacher-card img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
  box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}
/* Hover effect */
.teacher-card {
  transition: transform .3s ease;
}

 
.teacher-card:hover {
  transform: translateX(6px);
}
 
/* Mobile */

@media (max-width: 600px) {
  .teacher-card {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}
.teacher-card .vc_column-inner {
    box-shadow: 0 0 10px #0000002e;
    padding: 20px;
    border-radius: 10px;
    min-height: 335px;
}
.gymnastics span
{
font-size: 18px;
    color: #ED1C24;
    text-align: left;
    font-family: Oswald;
    font-weight: 400;
    font-style: normal;
}

.teacher-card .vc_column-inner {
    box-shadow: 0 0 10px #0000002e;
    padding: 20px;
    border-radius: 10px;
    min-height: 676px;
}
.ubermenu .ubermenu-item.ubermenu-active .ubermenu-submenu-drop.ubermenu-submenu-align-full_width {
    background: #fff;
}