  /*

Theme Name: Joffrey Ballet School
Theme URI: http://noaviv.com
Author: Noaviv
Author URI: http://noaviv.com
Description: Make all of your modifications to Pro in this child theme.
Version: 1.0.0
Template: pro

*/

/* Typography */


.page page-id-1512 .x-container.width {
width: 100%;
}
.page-id-1512 iframe {
min-height: 2000px;
}


.x-colophon .widget ul li {
	background-color: transparent !important;
  }

  .x-text.dates {
	  text-transform: uppercase;
	  font-weight: 400;
  }

/*

  Theme Name: Joffrey Ballet School
  Theme URI: http://noaviv.com
  Author: Noaviv
  Author URI: http://noaviv.com
  Description: Make all of your modifications to Pro in this child theme.
  Version: 1.0.0
  Template: pro

  */

  /* Loader */


  /* Typography */

  .entry-title:before {
	  content: "";
	  display: none;
  }

  h1, .h1 {
	  font-size: 350%;
  }

  h2, .h2 {
	  font-size: 280%
  }

  /* Blog Post */

  h1.entry-title {
	  font-family: sofia-pro;
	  text-transform: none;
	  font-weight: bold;
	  letter-spacing: -.04em;
	  font-size: 320%;
  }

  p.p-meta {
	  font-family: operetta-32, serif;
	  font-size: .95em;
  }

  /* Side Bar */

  .x-sidebar h4.h-widget {
	  font-size: 110% !important;
  }

  .x-sidebar .widget {
	  font-size: 85%;
	  background-color: #ece9e9;
	  padding: 20px;
  }

  .x-sidebar .widget ul, .x-sidebar .widget ul li {
	  background-color: transparent;
	  border: none;
  }

  /* Forms */
  .gform_next_button {
  background-color: #000 !important;
  }

  /* Yith My Account */
  .group-opener {
	  background-color: #589dc3;
	  color: #fff !important;
	  font-weight: bold !important;
	  padding-left: 26px !important;
	  border-top: 3px solid #add;
  }
  /* Buttons */
  .x-btn, .button, [type="submit"]
  {
	  background-color:#000 !important;
	  padding: 15px;
	  color: #fff;
  }
  .x-btn:hover, .button:hover, [type="submit"]:hover {
	  background-color:#9e9e9e !important;
	  padding: 15px;
	  color: #fff;
  }
  /* Button Aud Page */
  .tribe-common .tribe-common-cta {
	  font-size: 15px;
	  border-bottom: none !important;
	  background-color: #000000;
	  color: #fff !important;
	  padding: 10px
  }
  /* Categories Banner for Featured Image */
  .categbanner {
  font-size: 11pt;
  text-align:center;
  background-color: #007ea0;

  }
  .categbanner a {
  color: #fff !important;
  font-weight: bold;
  }
  .categbannerhide {
  display:none;
  }

  #signatureCanvas2, .signature-wrapper-displayonly.recipient {
	  border: 2px solid #ccc !important;
  }

  @media only screen and (max-width: 1024px) {
  .x-tabs-list {
	  flex-flow: row wrap !important;
	}
  }

.page-template-checkoutpage-new-v2 .masthead,
.page-template-checkoutpage-new-v2 .x-header-landmark {
	display: none;
}

  /* Knack Checkout */

  .page-template-checkoutpage h2 {
	  margin-top: 0px;
  }

  .page-template-checkoutpage p.total {
	  font-weight: bold;
	  border-top: 1px solid #ccc;
	  padding-top: 1em;
  }

  .page-template-checkoutpage p.item {
	  border-top: 1px solid #ccc;
	  margin: 0 0 1em;
	  padding-top: 1em;
  }

  .page-template-checkoutpage p.item .datetime {
	  text-transform: uppercase;
	  font-size: 13px;
	  letter-spacing: .04em;
	  font-weight: 400;
  }

  .page-template-checkoutpage .button {
	  text-shadow: none;
	  text-transform: uppercase;
	  font-weight: 600;
	  letter-spacing: .04em;
	  font-size: 14px;
  }

  .page-template-checkoutpage  .scrollabletextbox {
		height:300px;
		width:1000px;
		font-family: 'sofia-pro', sans-serif;
		font-size: 82%;
		overflow:scroll;
		margin-top: -40px;
	  }

  #coup-container, .coup-success {
	  font-size: .9em;
	  border: 1px solid #ccc;
	  background-color: #efefef;
	  padding: 10px 20px 3px;
	  width: auto;
	  margin-top: -10px;
	  margin-bottom: 20px;
	  max-width: 780px;
	  font-weight: 400;
  }

  .coup-success {
	  padding: 9px 20px 6px;
  }

  a.removecoup {
	  background-color: #222;
	  color: #fff;
	  padding: 5px 20px 6px;
	  text-transform: uppercase;
	  font-size: .75em;
	  letter-spacing: 1px;
	  font-weight: 600;
	  /* margin-top: -4px; */
	  display: inline-block;
	  margin-top: -2px;
	  border: 2px solid #444;
	  margin-left: 10px;
  }

  #addcoupon {
	  border: 2px solid #222;
	  background-color: #222;
	  text-transform: uppercase;
	  letter-spacing: 2px;
	  font-size: 13px;
	  font-weight: 600;
	  margin-bottom: .6em;
	  padding: 10px 15px 0px;
  }

  #addcoupon:hover {
	  background-color: #fff;
	  color: #222;
  }

  a.removecoup:hover {
	  background-color: #fff;
	  color: #222;
  }

  #loading-img {
	  position: fixed;
	  top: 0;
	  left: 0;
	  height: 100vh; /* to make it responsive */
	  width: 100vw; /* to make it responsive */
	  overflow: hidden; /*to remove scrollbars */
	  z-index: 99999; /*to make it appear on topmost part of the page */
	  display: none;
	  background-color: rgba(243, 245, 246, .8);
  }

  .x-text.dates {
	  font-size: 12px;
	  text-transform: uppercase;
	  font-weight: 400;
  }

  /* Knack Checkout */

  .page-template-checkoutpage h2 {
	  margin-top: 0px;
  }

  .page-template-checkoutpage p.total {
	  font-weight: bold;
	  border-top: 1px solid #ccc;
	  padding-top: 1em;
  }

  .page-template-checkoutpage p.item {
	  border-top: 1px solid #ccc;
	  margin: 0 0 1em;
	  padding-top: 1em;
  }

  .page-template-checkoutpage p.item .datetime {
	  text-transform: uppercase;
	  font-size: 13px;
	  letter-spacing: .04em;
	  font-weight: 400;
  }

  .page-template-checkoutpage .button {
	  text-shadow: none;
	  text-transform: uppercase;
	  font-weight: 600;
	  letter-spacing: .04em;
	  font-size: 14px;
  }

  .page-template-checkoutpage  .scrollabletextbox {
		height:300px;
		width:1000px;
		font-family: 'sofia-pro', sans-serif;
		font-size: 82%;
		overflow:scroll;
		margin-top: -40px;
	  }

  #coup-container, .coup-success {
	  font-size: .9em;
	  border: 1px solid #ccc;
	  background-color: #efefef;
	  padding: 10px 20px 3px;
	  width: auto;
	  margin-top: -10px;
	  margin-bottom: 20px;
	  max-width: 780px;
	  font-weight: 400;
  }

  .coup-success {
	  padding: 9px 20px 6px;
  }

  a.removecoup {
	  background-color: #222;
	  color: #fff;
	  padding: 5px 20px 6px;
	  text-transform: uppercase;
	  font-size: .75em;
	  letter-spacing: 1px;
	  font-weight: 600;
	  /* margin-top: -4px; */
	  display: inline-block;
	  margin-top: -2px;
	  border: 2px solid #444;
	  margin-left: 10px;
  }

  #addcoupon {
	  border: 2px solid #222;
	  background-color: #222;
	  text-transform: uppercase;
	  letter-spacing: 2px;
	  font-size: 13px;
	  font-weight: 600;
	  margin-bottom: .6em;
	  padding: 10px 15px 0px;
  }

  #addcoupon:hover {
	  background-color: #fff;
	  color: #222;
  }

  a.removecoup:hover {
	  background-color: #fff;
	  color: #222;
  }

  #loading-img {
	  position: fixed;
	  top: 0;
	  left: 0;
	  height: 100vh; /* to make it responsive */
	  width: 100vw; /* to make it responsive */
	  overflow: hidden; /*to remove scrollbars */
	  z-index: 99999; /*to make it appear on topmost part of the page */
	  display: none;
	  background-color: rgba(243, 245, 246, .8);
  }

  .x-text.dates {
	  font-size: 12px;
	  text-transform: uppercase;
	  font-weight: 400;
  }

  .gform_not_found {
	  display: none !important;
  }

/* Employee Hub Custom Styles */
.employee-hub, .aa-ra-hub {
    padding: 40px;
    max-width: 1200px; /* Limit the width of the content */
    margin: 0 auto; /* Center the entire container */
}

.employee-hub h1, .aa-ra-hub h1 {
    font-size: 36px;
    margin-bottom: 20px;
    font-weight: bold;
    color: #1e73be;
    text-align: center; /* Center the title */
}

.employee-hub input[type="text"], .aa-ra-hub input[type="text"] {
    width: 80%; /* Center and control the width of the search bar */
    padding: 15px;
    margin: 0 auto 30px auto; /* Center the search bar */
    display: block;
    font-size: 18px;
    border: 2px solid #ccc;
    border-radius: 6px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
    text-align: center;
}

.employee-hub .section, .aa-ra-hub .section {
    margin-bottom: 40px;
    background-color: #f9f9f9;
    border-radius: 10px;
    padding: 20px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    text-align: left; /* Left-align the content inside the sections */
}

.employee-hub .section h2, .aa-ra-hub .section h2 {
    font-size: 28px;
    margin-bottom: 15px;
    color: #333;
    border-bottom: 2px solid #1e73be;
    padding-bottom: 10px;
}

.employee-hub .section ul, .aa-ra-hub .section ul {
    list-style-type: none;
    padding-left: 20px; /* Prevent text from hitting the far-left edge */
}

.employee-hub .section ul li, .aa-ra-hub .section ul li {
    margin-bottom: 10px;
}

.employee-hub .section ul li a, .aa-ra-hub .section ul li a {
    color: #1e73be;
    text-decoration: none;
    font-size: 18px;
    padding: 10px 20px;
    display: inline-block;
    transition: background-color 0.3s, color 0.3s;
}

.employee-hub .section ul li a:hover, .aa-ra-hub .section ul li a:hover {
    background-color: #1e73be;
    color: white;
    border-radius: 5px;
}

/* Spacing and Alignment */
.employee-hub h2, .aa-ra-hub h2 {
    font-size: 24px;
    color: #333;
    margin-bottom: 15px;
}

@media(max-width:992px){
    body.post-custom-page-css #x-site >.x-container article.post .entry-wrap .entry-content.content {
        padding: 0px !important;
    }
}

@media(max-width:767px){
	body.post-custom-page-css #x-site >.x-container {
        width: calc(100% - 32px);
    }
    body.post-custom-page-css #x-site >.x-container article.post .entry-wrap header.entry-header h1.entry-title {
        font-size: 28px;
    }
    body.post-custom-page-css #x-site >.x-container article.post .entry-wrap .entry-content.content {
        padding: 0px !important;
    }
}

@media(max-width:1139px) and (min-width:767px){
    #programs .x-row-inner .x-promo .x-promo-image-wrap {
        height: 180px;
    }
#programs .x-row-inner .x-promo {
    height: calc(100% - 30px);
}

#programs .x-row-inner .x-promo .x-promo-content {
    position: relative;
}
#programs .x-row-inner .x-promo > .x-promo-content > a.x-btn, #programs .x-row-inner .x-promo > .x-promo-content > p > a.x-btn {
     position: unset;
     width: fit-content;
     float: none;
     padding: 8px 10px;
     display: block;
     margin-top: 0px;
}
#programs .x-row-inner .x-promo > .x-promo-content > p:has(.cylocbut) a.x-btn {
    bottom: 140px;
    width: fit-content;
    position: absolute;
}
}


/* =========================== Companies post type CSS =============================== */

a.bredpost {
    color: rgb(255, 255, 255);
    text-decoration: none;
}

a.bredclr {
    color: #111;
    text-decoration: none;
}

a.bredpost:hover {
    color: rgb(255, 255, 255);
    text-decoration: none;
}

a.bredclr:hover {
    color: #111;
    text-decoration: none;
}

@media(max-width:767px){
    .social_info_contact_info_row > .x-row-inner > .x-col {
        width: 100%;
        flex-basis: 100%;
    }
    .social_info_contact_info_row > .x-row-inner .x-col  .x-row-inner .x-col {
        margin: 10px 0;
        flex-basis: 50%;
    }
}
.customer-logos.slider {
    margin: 0px auto;
    padding-bottom: 0;
    width: calc(100% - 100px);
    border-top: 1px solid rgb(236, 233, 233);
    padding-top: 40px;
    padding-left: 60px;
    padding-right: 60px;
    min-height:120px;
    max-height:120px;
}
.footer_logos_slider {
    max-width: 100%;
  text-align:center;
}
.slider_footer_logo{
  text-align:center;
}
.customer-logos.slider .slide {
    margin-bottom: 0;
}
.slider_footer_logo img{
  max-width:160px;
  margin:0px auto;
}
body:has(.customer-logos.slider) footer .x-bar.x-bar-footer.x-bar-h .x-bar-content .x-bar-container {
    border: 0 !important;
}
.social_info_contact_info_row > .x-row-inner > .x-col:first-child > .x-row > .x-row-inner > .x-col a.x-anchor.x-anchor-button {
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media(max-width:1023px){
  .social_info_contact_info_row > .x-row-inner > .x-col:first-child > .x-row > .x-row-inner > .x-col {
    gap: 6px;
}
}

@media(max-width:410px){
  .social_info_contact_info_row > .x-row-inner > .x-col:first-child > .x-row > .x-row-inner > .x-col a.x-anchor.x-anchor-button{
    width:42px;
    height:42px;
  }
}


.x-row.x-container:has(.footer_logos_slider) {
    width: 100%;
    max-width: 100%;
    padding: 0 15px;
}
.x-section:has(.footer_logos_slider) {
    padding-bottom: 10px;
    padding-top: 40px;
}
.owl-carousel .owl-item .slider_footer_logo {
    min-height: 170px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ========================== END CSS ============================================= */
