/*
  EZ Golf Academy — SimplyBook Widget CSS (Elite)
  Navy #0E2A47 | Gold #FFC72C | Gold Dark #E6B325 | Ink #0B1F3A
  Note: Filled using SimplyBook's provided hook selectors.
*/

#events h3 {
  color: #0B1F3A !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 6px 0 !important;
}

#events p.duration,
#events div.duration {
  color: rgba(11, 31, 58, 0.55) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  margin: 0 0 6px 0 !important;
}

#events p.description,
#events div.description {
  color: rgba(11, 31, 58, 0.82) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  margin-top: 4px !important;
}

#events .selectedEvent {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid rgba(255, 199, 44, 0.60) !important;
  box-shadow: 0 18px 44px rgba(11, 31, 58, 0.14) !important;
  padding: 18px 20px !important;
}

#events input.reserve_time_btn {
  background: linear-gradient(135deg, #FFC72C 0%, #E6B325 100%) !important;
  border: 1px solid rgba(255, 199, 44, 0.55) !important;
  color: #0B1F3A !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  padding: 11px 28px !important;
  border-radius: 999px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  cursor: pointer !important;
  box-shadow: 0 10px 22px rgba(11, 31, 58, 0.16) !important;
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease !important;
}

#events input.reserve_time_btn:hover {
  transform: translateY(-1px) !important;
  filter: brightness(0.99) !important;
  box-shadow: 0 14px 28px rgba(11, 31, 58, 0.20) !important;
}

#events input.select_another_btn {
  background: #ffffff !important;
  border: 1.5px solid rgba(14, 42, 71, 0.45) !important;
  color: #0E2A47 !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  padding: 9px 22px !important;
  border-radius: 999px !important;
  cursor: pointer !important;
  transition: background .14s ease, transform .14s ease !important;
}

#events input.select_another_btn:hover {
  background: rgba(14, 42, 71, 0.08) !important;
  transform: translateY(-1px) !important;
}

#eventForm #start_date-block-container h3,
#eventForm #timeline-container h3 {
  color: #0B1F3A !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  margin: 16px 0 10px !important;
  border-bottom: 2px solid rgba(255, 199, 44, 0.35) !important;
  padding-bottom: 6px !important;
}

#eventForm #save_button {
  background: linear-gradient(135deg, #FFC72C 0%, #E6B325 100%) !important;
  border: 1px solid rgba(255, 199, 44, 0.55) !important;
  color: #0B1F3A !important;
  font-weight: 900 !important;
  font-size: 13px !important;
  padding: 11px 28px !important;
  border-radius: 999px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.10em !important;
  cursor: pointer !important;
  box-shadow: 0 10px 22px rgba(11, 31, 58, 0.16) !important;
  transition: transform .14s ease, box-shadow .14s ease, filter .14s ease !important;
}

#eventForm #save_button:hover {
  transform: translateY(-1px) !important;
  filter: brightness(0.99) !important;
  box-shadow: 0 14px 28px rgba(11, 31, 58, 0.20) !important;
}

div.ui-widget-content {
  background: #ffffff !important;
  border: 1px solid rgba(11, 31, 58, 0.10) !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 28px rgba(11, 31, 58, 0.10) !important;
}

div.ui-widget-header {
  background: #0E2A47 !important;
  border: none !important;
  color: #ffffff !important;
  border-radius: 14px 14px 0 0 !important;
}

#timeline-container table.timeline {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 6px !important;
  font-size: 13px !important;
}

.timeline td.not_worked_time {
  background: rgba(11, 31, 58, 0.05) !important;
  color: rgba(11, 31, 58, 0.35) !important;
  border-radius: 10px !important;
}

.timeline td.free_time {
  background: rgba(255, 199, 44, 0.16) !important;
  border: 1px solid rgba(14, 42, 71, 0.22) !important;
  color: #0B1F3A !important;
  border-radius: 10px !important;
  cursor: pointer !important;
  transition: transform .12s ease, background .12s ease !important;
}

.timeline td.free_time:hover {
  background: rgba(255, 199, 44, 0.26) !important;
  transform: translateY(-1px) !important;
}

.timeline td.selected_time {
  background: #FFC72C !important;
  color: #0B1F3A !important;
  border: 1.5px solid rgba(14, 42, 71, 0.45) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 18px rgba(11, 31, 58, 0.14) !important;
}

.timeline td.reserved_time {
  background: rgba(11, 31, 58, 0.20) !important;
  color: #ffffff !important;
  border-radius: 10px !important;
}

div#loading {
  background: rgba(11, 31, 58, 0.55) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
}

/* NOTE: SimplyBook's last selector has missing # in two places in your template.
   We'll keep it functional by targeting the correct IDs explicitly. */
#start_date-block-container .zend_form dt,
#start_date-block-container .zend_form dt b,
#start_date-block-container .zend_form dd label {
  color: #0B1F3A !important;
  font-weight: 800 !important;
  font-size: 13px !important;
}

/* EZGolf unified booking typography */
body.--theme-concise .title,
body.--theme-concise .name,
body.--theme-concise .title-main,
body.--theme-concise .title-sub,
body.--theme-concise .txt,
body.--theme-concise .txt p,
body.--theme-concise .caption,
body.--theme-concise .caption p,
body.--theme-concise .read-more,
body.--theme-concise .btn,
body.--theme-concise .btn a,
body.--theme-concise label,
body.--theme-concise input,
body.--theme-concise textarea,
body.--theme-concise select,
body.--theme-concise .step_info_item,
body.--theme-concise .step_info_item * {
  font-family: "Open Sans", Arial, sans-serif !important;
}

body.--theme-concise .txt,
body.--theme-concise .txt p,
body.--theme-concise .caption,
body.--theme-concise .caption p {
  font-size: 15px !important;
  line-height: 1.55 !important;
}

body.--theme-concise .name,
body.--theme-concise .title-main {
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

body.--theme-concise .btn,
body.--theme-concise .btn a {
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

body.--theme-concise .title-sub,
body.--theme-concise .step_info_item {
  font-size: 14px !important;
  line-height: 1.35 !important;
}


/* Hide optional social-login prompt */
#sb_fb_container {
  display: none !important;
}


/* Keep coach descriptions readable and consistent on dark cards */
body.--theme-concise .tab-pd.caption .txt,
body.--theme-concise .tab-pd.caption .txt * {
  color: rgba(255, 255, 255, 0.90) !important;
  font-family: "Open Sans", Arial, sans-serif !important;
}

body.--theme-concise .tab-pd.caption .txt h1,
body.--theme-concise .tab-pd.caption .txt h2,
body.--theme-concise .tab-pd.caption .txt h3,
body.--theme-concise .tab-pd.caption .txt h4,
body.--theme-concise .tab-pd.caption .txt h5,
body.--theme-concise .tab-pd.caption .txt h6,
body.--theme-concise .tab-pd.caption .txt font,
body.--theme-concise .tab-pd.caption .txt span {
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

/* Keep the private included-session service off public category lists */
#sb_service_step_container .service-item:has(#service94) {
  display: none !important;
}

/* EZGolf three-program booking page — October 2026 */
body.--theme-concise{font-family:"Open Sans",Arial,sans-serif!important;background:#f6f7f9!important;color:#172b42!important;}
body.--theme-concise #header{border-bottom:1px solid #e2e7ee;}
body.--theme-concise #header a{color:#10243a!important;font-weight:600!important;}
body.--theme-concise #main-buttons{background-image:none!important;background-color:#10243a!important;height:150px!important;min-height:0!important;}
body.--theme-concise #main-buttons .wrapper{height:150px!important;min-height:0!important;}
body.--theme-concise #main-buttons .inner{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;}
body.--theme-concise #main-buttons .company-name{display:block!important;color:#fff!important;font-size:36px!important;font-weight:800!important;line-height:1.2!important;margin:0!important;}
body.--theme-concise #main-buttons .bar{margin:0!important;}
body.--theme-concise #main-buttons .map a{color:#fff!important;}
body.--theme-concise .btn{border-radius:8px!important;box-shadow:none!important;}
body.--theme-concise .btn a{min-height:44px;display:flex;align-items:center;justify-content:center;}
body.--theme-concise #content-view .description_contacts{display:block!important;}
body.--theme-concise #content-view .description_contacts>.col-sm-8,body.--theme-concise #content-view .description_contacts>.col-sm-4{width:100%!important;float:none!important;}
body.--theme-concise #about-us>.section-pd{padding:32px 0!important;}
body.--theme-concise #about-us>.section-pd>.title-main{display:none!important;}
body.--theme-concise .ez-welcome{margin:0 0 28px;max-width:760px;}
body.--theme-concise .ez-welcome h2{font-size:42px!important;line-height:1.15!important;font-weight:800!important;letter-spacing:-1px;margin:12px 0 16px;color:#10243a;}
body.--theme-concise .ez-eyebrow,body.--theme-concise .ez-label{font-size:11px!important;letter-spacing:1.3px;font-weight:800!important;color:#506379!important;}
body.--theme-concise .ez-intro{font-size:18px!important;line-height:1.6!important;color:#506379;}
body.--theme-concise .ez-programs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
body.--theme-concise .ez-program{background:#fff;border:1px solid #dce3eb;border-top:4px solid #f2bd36;border-radius:12px;padding:24px;display:flex;flex-direction:column;box-shadow:0 6px 20px rgba(16,36,58,.04);}
body.--theme-concise .ez-program h3{font-size:23px!important;font-weight:750!important;line-height:1.25!important;margin:8px 0 16px;}
body.--theme-concise .ez-program p{margin:0 0 16px;}
body.--theme-concise .ez-program p:last-child{margin:auto 0 0;padding-top:8px;}
body.--theme-concise .ez-detail{font-size:13px!important;color:#506379;}
body.--theme-concise a.ez-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 16px;border-radius:7px;background:#f2bd36;color:#10243a!important;font-weight:700;text-decoration:none!important;border:1px solid #f2bd36;width:100%;box-sizing:border-box;}
body.--theme-concise a.ez-cta-secondary{background:#fff;border-color:#10243a;}
body.--theme-concise a.ez-cta:hover{background:#e5ae26;}
body.--theme-concise a.ez-cta-secondary:hover{background:#edf2f7;}
body.--theme-concise a:focus-visible,body.--theme-concise button:focus-visible,body.--theme-concise input:focus-visible{outline:3px solid #b77c00!important;outline-offset:3px;}
body.--theme-concise .ez-how{margin:28px 0 0;padding:24px;background:#edf2f7;border-radius:10px;}
body.--theme-concise .ez-how h3{font-size:20px!important;font-weight:700!important;margin:0 0 12px;}
body.--theme-concise #contacts{margin-top:8px;border-top:1px solid #dce3eb;}
body.--theme-concise #contacts .info ul{display:flex;flex-wrap:wrap;gap:18px;}
@media(max-width:767px){body.--theme-concise #main-buttons,body.--theme-concise #main-buttons .wrapper{height:160px!important;}body.--theme-concise #main-buttons .inner{flex-direction:column;align-items:flex-start;gap:16px;}body.--theme-concise #main-buttons .company-name{font-size:28px!important;}body.--theme-concise .ez-welcome h2{font-size:32px!important;}body.--theme-concise .ez-programs{grid-template-columns:1fr;}body.--theme-concise #about-us>.section-pd{padding:24px 0!important;}body.--theme-concise .ez-program{padding:22px;}}

/* Keep homepage content readable on the Concise template */
body.--theme-concise #main-content{background:#f6f7f9!important;}
body.--theme-concise #about-us,body.--theme-concise #about-us .section-pd{background:transparent!important;}
body.--theme-concise .ez-program h3,body.--theme-concise .ez-program p,body.--theme-concise .ez-how h3,body.--theme-concise .ez-how p{color:#172b42!important;}
body.--theme-concise .ez-welcome h2{color:#10243a!important;}
body.--theme-concise .ez-welcome p,body.--theme-concise .ez-program .ez-detail{color:#506379!important;}
body.--theme-concise #contacts,body.--theme-concise #contacts .section-pd{background:#fff!important;border-radius:10px;}
body.--theme-concise #contacts .title-main,body.--theme-concise #contacts a,body.--theme-concise #contacts .icon{color:#172b42!important;}

body.--theme-concise #content-view{background:#f6f7f9!important;color:#172b42!important;}
body.--theme-concise #content-view .ez-welcome h2{color:#10243a!important;}
body.--theme-concise #content-view .ez-welcome p{color:#506379!important;}

@media(max-width:767px){body.--theme-concise #main-buttons .bar{display:flex!important;gap:10px!important;width:100%!important;align-items:center!important;}body.--theme-concise #main-buttons .bar .btn{flex:1!important;width:auto!important;margin:0!important;}body.--theme-concise #main-buttons .bar .btn a{font-size:12px!important;padding:10px 12px!important;min-height:44px!important;}body.--theme-concise #main-buttons .inner{padding:18px 0!important;}body.--theme-concise #main-buttons .bar .btn:only-child{flex:0 1 auto!important;}}

@media(max-width:767px){body.--theme-concise #main-buttons .wrapper{padding:0!important;align-items:center!important;}body.--theme-concise #main-buttons .inner{height:auto!important;padding:18px 0!important;gap:14px!important;}body.--theme-concise #main-buttons .company-name{padding:0!important;}body.--theme-concise #main-buttons .bar{padding:0!important;}}
/* Company Services and Programs catalog */
body.--theme-concise #content-view:has(.ez-programs),body.--theme-concise #content-view:has(.ez-programs) .section-pd{background:#f6f7f9!important;color:#172b42!important;}
body.--theme-concise #content-view:has(.ez-programs) .title-main{color:#10243a!important;}
body.--theme-concise .ez-program h4{font-size:17px!important;font-weight:750!important;color:#10243a!important;line-height:1.35!important;margin:12px 0 8px!important;}
body.--theme-concise .ez-program a:not(.ez-cta):not(.ez-cta-secondary),body.--theme-concise .ez-how a{color:#10243a!important;text-decoration:underline!important;font-weight:650!important;}
body.--theme-concise a.ez-cta-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 16px;border-radius:7px;border:1px solid #10243a;background:#fff;color:#10243a!important;font-weight:700;text-decoration:none!important;width:100%;box-sizing:border-box;line-height:1.35!important;}
body.--theme-concise .ez-program strong{color:#10243a!important;}
body.--theme-concise #main-buttons .company-name{font-size:0!important;line-height:1!important;}
body.--theme-concise #main-buttons .company-name:before{content:"";display:block;width:220px;height:125px;border-radius:0;background:transparent url("https://ezgolfacademy.com/wp-content/themes/ezgolf-academy/assets/brand/primary/ezgolf-logo-primary.png") center/contain no-repeat;}
@media(max-width:767px){body.--theme-concise #main-buttons .company-name{font-size:0!important;}body.--theme-concise #main-buttons .company-name:before{width:160px;height:96px;background-size:contain;}}

/* Keep the full EZGolf emblem and booking buttons visible on phones */
@media(max-width:767px){body.--theme-concise #main-buttons,body.--theme-concise #main-buttons .wrapper{height:190px!important;}body.--theme-concise #main-buttons .inner{gap:12px!important;padding:16px 0!important;}}

/* Center the complete emblem within the compact header */
body.--theme-concise #main-buttons .wrapper{padding:0!important;}
body.--theme-concise #main-buttons .inner{height:100%!important;}
body.--theme-concise #main-buttons .bar{padding:0!important;}
@media(max-width:767px){body.--theme-concise #main-buttons .inner{height:auto!important;}}

/* Give the three programs room in the main navigation */
@media(min-width:768px){body.--theme-concise #header .row>.col-md-3{display:none!important;}body.--theme-concise #header .row>.col-md-9{width:100%!important;}body.--theme-concise #header .header-controls{justify-content:flex-end!important;}body.--theme-concise #sb_menu_list_items_container a{font-size:13px!important;padding-left:12px!important;padding-right:12px!important;}}

/* Keep every program directly visible instead of nesting under More */
body.--theme-concise #sb_appended_menu_item{display:contents!important;}
body.--theme-concise #sb_appended_menu_item>a{display:none!important;}
body.--theme-concise #sb_appended_child_menu{display:contents!important;visibility:visible!important;opacity:1!important;}
body.--theme-concise #sb_appended_child_menu>li{display:block!important;}

@media(min-width:768px){body.--theme-concise #sb_menu_list_items_container{display:flex!important;flex-wrap:wrap!important;align-items:center!important;}body.--theme-concise #sb_appended_child_menu>li{display:inline-flex!important;width:auto!important;float:none!important;border:0!important;}body.--theme-concise #sb_appended_child_menu>li>a{width:auto!important;border:0!important;padding:14px 12px!important;}body.--theme-concise #header .nav-wrapper{width:auto!important;flex:1!important;}body.--theme-concise #header .header-controls{display:flex!important;width:100%!important;}}

@media(min-width:768px){body.--theme-concise #sb_menu_list_items_container li.menu-item{margin:0!important;padding:0!important;align-self:center!important;}body.--theme-concise #sb_menu_list_items_container li.menu-item>a{display:block!important;line-height:22px!important;padding:14px 12px!important;}}

/* Product purchase prices: readable on navy cards */
body.--theme-concise .product-item--price .badge { color:#f2bd36!important; background:transparent!important; font-size:18px!important; font-weight:800!important; }

/* Clear product details control on navy cards */
body.--theme-concise .product-item .read-more { color:#fff!important; background:#10243a!important; font-size:13px!important; line-height:24px!important; opacity:1!important; visibility:visible!important; text-indent:0!important; padding:0 8px!important; }

/* Show complete product artwork without cropping */
body.--theme-concise .product-item .user.img { display:flex!important; align-items:center!important; justify-content:center!important; background:#10243a!important; }
body.--theme-concise .product-item .user.img img { width:100%!important; height:100%!important; min-width:0!important; min-height:0!important; max-width:100%!important; object-fit:contain!important; position:static!important; transform:none!important; }

/* Booking polish — 13 October 2026 */
body.--theme-concise .ez-coach-grid,body.--theme-concise #about-us .ez-programs{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
body.--theme-concise #sb_category_step_container .category-item:has(a[href*="#book/category/3/"]){display:none!important;}
body.--theme-concise #sb_category_step_container{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
body.--theme-concise #sb_category_step_container .category-item{width:100%!important;max-width:none!important;margin:0!important;}
body.--theme-concise #sb_category_step_container .read-more,body.--theme-concise #sb_service_step_container .read-more{color:#10243a!important;background:#f2bd36!important;opacity:1!important;font-size:13px!important;font-weight:700!important;padding:4px 10px!important;border-radius:5px!important;}
body.--theme-concise .product-item .read-more{color:#fff!important;background:#10243a!important;opacity:1!important;}
@media(max-width:767px){body.--theme-concise .ez-coach-grid,body.--theme-concise #about-us .ez-programs,body.--theme-concise #sb_category_step_container{grid-template-columns:1fr!important;}}

/* Clear guest purchase form on the light page background */
body.--theme-concise .client-info-view{background:#fff!important;color:#172b42!important;border:1px solid #dce3eb!important;border-radius:12px!important;}
body.--theme-concise .client-info-view .title-main,body.--theme-concise .client-info-view .sub-title,body.--theme-concise .client-info-view label,body.--theme-concise .client-info-view p,body.--theme-concise .client-info-view a,body.--theme-concise .client-info-view .txt{color:#172b42!important;}
body.--theme-concise .client-info-view .help-block,body.--theme-concise .client-info-view [role="alert"]{color:#a52727!important;}
body.--theme-concise #content-view:has(.client-info-view) .back-btn,body.--theme-concise #content-view:has(.client-info-view) .back-btn a{color:#172b42!important;}

body.--theme-concise .wrap-client-info-view .back-button,body.--theme-concise .wrap-client-info-view .back-button .ico{color:#172b42!important;}


/* EZGolf customer-path clarity — 15 October 2026 */
body.--theme-concise #main-buttons .bar .btn:has(a[href="#book"]) {
  display: none !important;
}
body.--theme-concise #content-view:has(.sb_package_list_container) .membership-filters {
  display: none !important;
}

/* Packages page: remove unnecessary four-card filter */
body.--theme-concise #sb_package_filter_container {
  display: none !important;
}

/* Packages page: readable start dates */
body.--theme-concise .package-item .sb_start_date,
body.--theme-concise .package-item .start-date-btn {
  color: #ffffff !important;
  opacity: 1 !important;
}
body.--theme-concise .package-item .sb_start_date:hover,
body.--theme-concise .package-item .sb_start_date:focus {
  color: #f6bf32 !important;
}


/* EZGolf checkout focus — hide unrelated product upsell */
#sb_booking_content #details > #sb_product_container { display: none !important; }


/* Homepage choice icons — ASCII-safe encoding */
body.--theme-concise .ez-card-icon{display:inline-block;min-width:1.35em;vertical-align:-0.08em;font-size:1.15em;line-height:1;}
body.--theme-concise .ez-icon-swing::before{content:"\1F3CC\FE0F";}
body.--theme-concise .ez-icon-short::before{content:"\1F3AF";}
body.--theme-concise .ez-icon-bunker::before{content:"\1F3D6\FE0F";}
body.--theme-concise .ez-icon-start::before{content:"\1F937";}

/* Homepage focus — direct visitors to the problem-based choices */
body.--theme-concise:has(#about-us .ez-welcome) #main-buttons .bar .btn:has(a[href="/v2/book/"]){display:none!important;}


/* Homepage concierge navigation — keep generic catalog and junior links out of the adult first screen */
body.--theme-concise:has(#about-us .ez-welcome) li.menu-item:has(> a[href*="/page/services-and-programs/"]),
body.--theme-concise:has(#about-us .ez-welcome) li.menu-item:has(> a[href*="/page/ez-kids-golf/"]) {
  display:none!important;
}
