/* Open Squash brand */
@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@500;600;700&family=Poppins:wght@400;500;600&display=swap');

body.--theme-minimal, .sb-layout, .sb-widget, .booking-page {
  background-color: #fce6d2 !important;
  font-family: 'Poppins', Arial, sans-serif !important;
}

/* Hero -> Boast Blue (replaces orange court image) */
#main-buttons { background-image: none !important; background: #002d78 !important; }
#main-buttons h1, #main-buttons h2, #main-buttons .business-name { color: #ffffff !important; }

h1, h2, h3, h4, .sb-title, .page-title, .service-name {
  font-family: 'Kanit', sans-serif !important; color: #002d78 !important; letter-spacing: .3px;
}

.btn, a.btn, button.btn, .btn.custom, .btn--action, .btn--sign-up {
  background: #002d78 !important; background-image: none !important; border: 2px solid #002d78 !important;
  color: #fff !important; font-family: 'Kanit', sans-serif !important; font-weight: 700 !important;
  border-radius: 999px !important; letter-spacing: .4px; box-shadow: none !important;
}
.btn:hover, a.btn:hover, .btn--action:hover, .btn--sign-up:hover {
  background: #16403e !important; border-color: #16403e !important; color: #fff !important;
}

/* Hero Book Now -> Electric Green on the blue hero */
.btn.book, .btn.book.custom { background: #8fdaaf !important; border-color: #8fdaaf !important; color: #16403e !important; }
.btn.book:hover { background: #fff !important; border-color: #fff !important; color: #002d78 !important; }

/* Hamburger -> Electric Green with Boast Blue bars */
.nav-trigger.toggle-mnu { background: #8fdaaf !important; background-image: none !important; }
.nav-trigger.toggle-mnu span, .nav-trigger.toggle-mnu i,
.nav-trigger.toggle-mnu:before, .nav-trigger.toggle-mnu:after { background: #002d78 !important; color: #002d78 !important; }

a, .day, .weekday, .sb-day { color: #002d78 !important; }
#events input.reserve_time_btn, .reserve_time_btn {
  background: #002d78 !important; border-radius: 999px !important; color: #fff !important; font-family: 'Kanit', sans-serif !important;
}
#events .selectedEvent, .selected-time, .is-selected { background: #8fdaaf !important; color: #16403e !important; }

/* --- Touch-up: kill theme red + tan --- */
.title-small, .title-big, .sb-title-small { color: #002d78 !important; }
.date.today, .date.selected, td.today, .ui-datepicker-today a, .calendar .today {
  background: #002d78 !important; color: #ffffff !important; border-radius: 50% !important;
}
.weeks-name, .weeks-name *, .weeks-date .sunday, .weeks-date .saturday { color: #002d78 !important; }
.fa-sign-in-alt, [class*="sign-in"] { color: #002d78 !important; }
.provider-name, .service-name, .item-container__title { color: #002d78 !important; }

/* --- Hero logo (Open Squash badge) --- */
#main-buttons::before{content:'';display:block;width:150px;height:150px;margin:0 auto 14px;background:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJYAAACWCAYAAAA8AXHiAAADKklEQVR42u3dy3UjMQxEUTePYnE+E8pE4lCcj5OxF7ObjX/ND1D3BWBL4OsCSOpIT08AAAAAgFwuJfjHy9vr+x1/5+/zHzVNFOsugQgXLtYukdJFu8hEMmI1kqm7ZBeZSEasEKE6CDZI5T1HJ1aiUJXT6yIUwaLEIlRtwQapzF/tE4tQfdJrkEp6tRWLVP1qeSmC1tgqsUjVu8aDVORqIRapMuQapCJXabFIlSXXIBW5SopFqky5BqnIVUosUmXLNUhFrtK7QmQxqjwBqJVag1SYsXaDVJixhmYsnDtjSSupJbGwRK5xiuHQCkkltbRCFEssaSW1JBZqJJa0kloSCzUSS1pJLYmFGoklraSWxEK9XSHwGX5QaOOWvCJf/QYbYpGMWASrI5cZa2Lxk3+7kFgE2ze8d4r1nYucVMeRUowTkiMpuSJa4UkLmiKXGQvE6pIQCanlHGsjlefXXw/vkFw/eSiIBTOW1CIWJBaweFdYcdcyo7X8X4cV/6N6rSVW2DHBqjoQC2aszu222+5wWPDcI4FtwzvMbj996LRCaIUgFogF3M+j0zA5a/e24uRdYtlVQSusI3C3h4JYIFb3Wa5THRTIfDhFLIlFKq0QxEJwWhELxJJWtXbGj+5RferRQPdbgiEVQCyyE8tCZifop2J1ub54eXt9372oSW3ZlQ6hpmyIzFikmsLD0hNKKyRUiTYosch0RmIpYDbfOSEwvGMKxMJ+sXzWWxuUWKjVCqWWtJJYqDW8Sy1pNS2xyAWtEMvDg1g4L7G0Q2k1LbHIBa0Qy8JinPJC0EeqWxOLXNAKMT0cxqkvDHWlmpJY5CKVVohaM5bUyk6rqYlFrlypprdCcmVKtWTGIleeVMuGd3JlSbV0V0iuHKmWikWuHKmWi0WuDKm2iEWujFqPtDdMqjUcsbi+xabfg3tMapCrVycYCkKq1oklvXo9lEenBMHqJv3x7YdcNUeHMnMNwWrNo+UG5lTBqm1uyu7EkgSruGMuv8XvLFjlI5g2Z0ddBOtyntfyULKaZB0Ph9ufdp8qWfebhrhrlJ2iJV1buZ+7WTp3ngAAAAAAAFP4AKERu4/tjtvXAAAAAElFTkSuQmCC') center/contain no-repeat;}
#main-buttons{display:flex !important;flex-direction:column;align-items:center;justify-content:center;}

/* --- Side menu drawer + calendar weekend headers --- */
.nav-wrapper{background:#002d78 !important;background-image:none !important;}
.nav-wrapper .menu-item, .nav-wrapper a, .nav-wrapper .menu-item span{color:#ffffff !important;}
.nav-wrapper .menu-item.active, .nav-wrapper .menu-item.active a{color:#8fdaaf !important;}
.name.is-holiday, .is-holiday, .weeks-name .is-holiday{color:#002d78 !important;}
.prev-month, .next-month, [class*="month-switch"]{color:#002d78 !important;}

/* --- Side menu: stronger specificity to beat theme --- */
html body .nav-wrapper, html body .nav-wrapper.clearfix, .nav-wrapper.menu-in, .nav-wrapper.active, div.nav-wrapper.menu-in.active { background: #002d78 !important; background-image: none !important; }
html body .name.is-holiday, body .weeks-name .is-holiday, .inner .name.is-holiday { color: #002d78 !important; }

/* --- Remaining orange icons: hamburger + login --- */
.nav-trigger, .toggle-mnu { background:#8fdaaf !important; background-image:none !important; }
.nav-trigger span, .toggle-mnu span, .nav-trigger .icon-bar, .nav-trigger b, .nav-trigger i { background:#002d78 !important; }
.fa-sign-in-alt, [class*='sign-in'], .login-btn i, .b-login i, a.login i, .header-login i { color:#002d78 !important; }
.b-login, .login-btn, a.login { color:#002d78 !important; }

/* --- Hero subtitle + all 3 hamburger bars blue --- */
#main-buttons::after{content:'Lessons & Clinics';display:block;margin-top:18px;color:#ffffff;font-family:'Kanit',sans-serif;font-weight:500;font-size:19px;letter-spacing:2px;text-transform:uppercase;opacity:.95;}
.nav-trigger span, .nav-trigger span::before, .nav-trigger span::after, .toggle-mnu span, .toggle-mnu span::before, .toggle-mnu span::after { background:#002d78 !important; }

/* --- Subtitle under Book Now (attach to button) --- */
#main-buttons::after{content:'' !important;}
.btn.book{position:relative !important;overflow:visible !important;}
.btn.book::after{content:'Lessons & Clinics';position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);white-space:nowrap;color:#ffffff;font-family:'Kanit',sans-serif;font-weight:500;font-size:18px;letter-spacing:2px;text-transform:uppercase;}

/* --- Subtitle stronger override --- */
a.btn.book.custom::after, .btn.book.custom::after, .btn.book::after{content:'Lessons & Clinics' !important;position:absolute !important;top:calc(100% + 14px) !important;left:50% !important;transform:translateX(-50%) !important;white-space:nowrap !important;color:#ffffff !important;font-family:'Kanit',sans-serif !important;font-weight:500 !important;font-size:18px !important;letter-spacing:2px !important;text-transform:uppercase !important;display:block !important;background:none !important;}

/* --- Provider 'Select' label + button text white on blue --- */
.btn-bar, .tab-pd .btn-bar, .btn .btn-bar { color: #ffffff !important; }
.bg-selected, .time.selected, .timeline .selected, .selectedEvent { color: #ffffff !important; }

/* --- Links inside buttons must be white (not the blue link color) --- */
.btn a, .btn.select a, .btn.select.custom a, .select.custom a, .btn-bar a { color: #ffffff !important; }

/* --- Today/selected date number (higher specificity) --- */
.date.today a.day-on, .date.today a.sb-available-date, .date.selected a.day-on, .date.selected a.sb-available-date, .date.today a.day-on.sb-available-date, .date.selected a.day-on.sb-available-date { color: #ffffff !important; }

/* --- Time-picker modal pills (.hour-row): fix invisible text on hover/selected --- */
.hour-row:hover, .hour-row.selected, .hour-row.active, .hour-row.is-selected, .hour-row.checked {
  background: #002d78 !important;
}
.hour-row:hover .time, .hour-row:hover .end-time, .hour-row:hover span, .hour-row:hover div,
.hour-row.selected .time, .hour-row.selected .end-time, .hour-row.selected span, .hour-row.selected div,
.hour-row.active .time, .hour-row.active .end-time, .hour-row.active span, .hour-row.active div,
.hour-row.is-selected .time, .hour-row.is-selected .end-time, .hour-row.is-selected span, .hour-row.is-selected div,
.hour-row.checked .time, .hour-row.checked .end-time, .hour-row.checked span, .hour-row.checked div {
  color: #8fdaaf !important;
}

/* --- Time modal pills (a.sb-cell): readable text on hover/selected --- */
#time_classes_time_container a.sb-cell:hover,
#time_classes_time_container a.sb-cell.selected,
#time_classes_time_container a.sb-cell.active,
#time_classes_time_container a.sb-cell.checked,
.classes-modal a.sb-cell:hover, .classes-modal a.sb-cell.selected, .classes-modal a.sb-cell.active {
  background: #002d78 !important;
  color: #8fdaaf !important;
}
#time_classes_time_container a.sb-cell:hover span, #time_classes_time_container a.sb-cell:hover .end-time,
#time_classes_time_container a.sb-cell.selected span, #time_classes_time_container a.sb-cell.selected .end-time,
#time_classes_time_container a.sb-cell.active span, #time_classes_time_container a.sb-cell.active .end-time,
.classes-modal a.sb-cell:hover span, .classes-modal a.sb-cell.selected span, .classes-modal a.sb-cell.active span {
  color: #8fdaaf !important;
}

/* Profile overview labels/values readable on Boast Blue background */
.overview .label, .overview .label b { color: #8FDAAF !important; }
.overview .txt { color: #FCE6D2 !important; }

/* Book a Court buttons: keep link text readable over forced-blue link color */
a[href*="fidi.opensquash.org"] { color: #FCE6D2 !important; }
a[href*="bryantpark.opensquash.org"] { color: #002D78 !important; }

/* Calendar timeline: tame solid-blue hover so coach name & slots stay readable */
#sb_time_classes_container .provider-col a.sb-cell.free:hover, #sb_time_classes_container .provider-col a.sb-cell.free.hovered { background: rgba(0,45,120,0.12) !important; color: #002D78 !important; }

/* Packages: Starts-from date link readable on white card */
.btn.start-date-btn a, .btn.start-date-btn .sb_start_date, .start-date-btn a, .start-date-btn .sb_start_date { color: #002D78 !important; }


/* Lesson time-slot pills: readable on navy hover/selected */
.time-slot a.sb-cell:hover, .time-slot a.sb-cell.hovered, .time-slot a.sb-cell.selected, .time-slot a.sb-cell.choosen, .time-slot a.sb-cell.chosen, .time-slot a.sb-cell.active, a.sb-cell.free:hover { background-color: #002D78 !important; color: #FCE6D2 !important; border-color: #002D78 !important; }
