/* scoped: si-private-instruction-PrivatePricingSection */

  .pricing-section:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    /* The GHL widget sizes itself, so the section grows instead of clipping. */
    min-height: 569px;
    background-image: url('/bg4.webp');
    background-size: cover;
    background-position: center;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    display: flex;
    flex-direction: row;
    box-sizing: border-box;
  }

  .pricing-left:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: 0 80px;
    gap: 20px;
    box-sizing: border-box;
  }

  .pricing-title:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-family: 'Afacad', sans-serif;
    font-weight: 700;
    font-size: 40px;
    line-height: 100%;
    text-transform: uppercase;
    color: #272727;
    margin: 0;
  }

  .pricing-underline:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 60px;
    height: 4px;
    background: #272727;
  }

  .pricing-price:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-family: 'Afacad', sans-serif;
    font-weight: 700;
    font-size: 30px;
    line-height: 100%;
    color: #D62121;
    margin: 0;
  }

  .pricing-addon:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-family: 'Afacad', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 100%;
    text-transform: uppercase;
    color: #272727;
    margin: 0;
  }

  .pricing-note:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 341px;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    color: #272727;
    margin: 0;
  }

  .pricing-right:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 50%;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 64px 24px;
    box-sizing: border-box;
  }

  /* GHL booking widget. form_embed.js sets the iframe height to match its
     content, so the card grows rather than clipping the calendar. Kept wide
     enough that the widget lays the calendar and time slots out side by side
     instead of stacking them into a very tall column.
     Minimum 660px: this calendar's description has an unbreakable line that
     needs 656px, and anything narrower gives the widget its own horizontal
     scrollbar. Measured, not guessed. */
  .booking-card:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    max-width: 660px;
    min-height: 409px;
    height: auto;
    background: #FFFFFF;
    border-radius: 8px;
    padding: 0;
    box-sizing: border-box;
    overflow: hidden;
    /* A plain block wrapper around a single self-sizing iframe; flex here
       bought nothing and only complicated form_embed.js's measurement pass. */
    display: block;
  }

  .booking-embed:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    min-height: 409px;
    height: auto;
    border: none;
    display: block;
    overflow: hidden;
  }



  /* Who can book. Sits between the price and the booking calendar so it is
     read before anyone picks a time. Solid brand red with white text (5.3:1
     contrast) so it reads as a rule, not fine print. */
  .pricing-eligibility:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    max-width: 460px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 16px 12px 12px;
    border-radius: 8px;
    background: #D62121;
    box-shadow: 0 4px 12px rgba(214, 33, 33, 0.25);
    box-sizing: border-box;
  }
  .pricing-eligibility-icon:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    flex-shrink: 0;
    color: #FFFFFF;
    margin-top: 1px;
  }
  .pricing-eligibility-text:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 145%;
    color: #FFFFFF;
  }
  .pricing-eligibility-title:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-family: 'Afacad', sans-serif;
    font-weight: 700;
    font-size: 17px;
    line-height: 115%;
    text-transform: uppercase;
    color: #FFFFFF;
  }
  html.is-mobile .pricing-eligibility:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    max-width: none;
  }
  html.is-mobile .pricing-eligibility-title:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-size: 15px;
  }
  html.is-mobile .pricing-eligibility-text:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-size: 13px;
  }

  html.is-mobile .pricing-section:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    height: auto;
    flex-direction: column;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
  }

  html.is-mobile .pricing-left:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    padding: 60px 40px;
    align-items: flex-start;
    gap: 16px;
  }

  html.is-mobile .pricing-title:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-size: 22px;
  }

  html.is-mobile .pricing-note:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
  }

  html.is-mobile .pricing-right:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    padding: 0 40px 40px;
    box-sizing: border-box;
    justify-content: flex-start;
  }

  html.is-mobile .booking-card:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    max-width: 100%;
    min-height: 640px;
    height: auto;
  }

  html.is-mobile .booking-embed:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    width: 100%;
    min-height: 640px;
  }

  html.is-mobile .pricing-addon:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    margin-top: -10px;
  }

  html.is-mobile .pricing-underline:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    margin-top: 8px;
    margin-bottom: 8px;
  }

  html.is-mobile .pricing-price:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *), html.is-mobile .pricing-addon:where(.si-private-instruction-PrivatePricingSection, .si-private-instruction-PrivatePricingSection *){
    font-family: 'Afacad', sans-serif;
    font-weight: 700;
    font-size: 15px;
    line-height: 100%;
    text-transform: uppercase;
    letter-spacing: 0;
  }
