.elementor-223478 .elementor-element.elementor-element-1170ff7{margin-top:20px;margin-bottom:0px;}.elementor-223478 .elementor-element.elementor-element-3b6a158{text-align:center;}.elementor-223478 .elementor-element.elementor-element-3b6a158 .elementor-heading-title{color:var( --e-global-color-eebc6bb );font-family:"Source Sans Pro", Trebuchet MS;font-size:66px;font-weight:600;line-height:86px;}.elementor-223478 .elementor-element.elementor-element-60add16{text-align:center;color:var( --e-global-color-eebc6bb );font-family:"Source Sans Pro", Trebuchet MS;font-size:26px;font-weight:400;line-height:34px;}.elementor-223478 .elementor-element.elementor-element-60add16 > .elementor-widget-container{margin:0px 100px 0px 100px;padding:0px 0px 0px 0px;}.elementor-223478 .elementor-element.elementor-element-642fbae{margin-top:20px;margin-bottom:0px;z-index:200000000;}.elementor-223478 .elementor-element.elementor-element-6ef4836{z-index:20000000;}.elementor-223478 .elementor-element.elementor-element-dab0e0a > .elementor-container{min-height:1000px;}.elementor-223478 .elementor-element.elementor-element-dab0e0a:not(.elementor-motion-effects-element-type-background), .elementor-223478 .elementor-element.elementor-element-dab0e0a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;background-image:url("../png/demo-page-teal-stripe-1.png");background-size:contain;}.elementor-223478 .elementor-element.elementor-element-dab0e0a{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:9px;margin-bottom:0px;z-index:20;}.elementor-223478 .elementor-element.elementor-element-dab0e0a > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-223478 .elementor-element.elementor-element-2759ff3 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-223478 .elementor-element.elementor-element-58f7f34 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-223478 .elementor-element.elementor-element-58f7f34{z-index:3;}.elementor-223478 .elementor-element.elementor-element-e3e66b3 > .elementor-widget-container{padding:0px 150px 0px 150px;}.elementor-223478 .elementor-element.elementor-element-914c8cd{margin-top:50px;margin-bottom:0px;padding:0px 100px 0px 100px;}.elementor-223478 .elementor-element.elementor-element-0756c03{text-align:center;color:var( --e-global-color-eebc6bb );font-family:"Source Sans Pro", Trebuchet MS;font-size:26px;font-weight:400;line-height:34px;}.elementor-223478 .elementor-element.elementor-element-c62d5b6 img{width:829px;max-width:100%;}.elementor-223478 .elementor-element.elementor-element-2999e33{text-align:center;color:var( --e-global-color-eebc6bb );font-family:"Source Sans Pro", Trebuchet MS;font-size:26px;font-weight:400;line-height:34px;}.elementor-223478 .elementor-element.elementor-element-e542ef6{text-align:center;color:var( --e-global-color-eebc6bb );font-family:"Source Sans Pro", Trebuchet MS;font-size:26px;font-weight:400;line-height:34px;}.elementor-223478 .elementor-element.elementor-element-7cdfa809{--spacer-size:100px;}@media(max-width:1024px){.elementor-223478 .elementor-element.elementor-element-3b6a158 .elementor-heading-title{font-size:37px;line-height:48px;}.elementor-223478 .elementor-element.elementor-element-0756c03{font-size:20px;}.elementor-223478 .elementor-element.elementor-element-2999e33{font-size:20px;}.elementor-223478 .elementor-element.elementor-element-e542ef6{font-size:20px;}.elementor-223478 .elementor-element.elementor-element-7cdfa809{--spacer-size:50px;}}@media(max-width:767px){.elementor-223478 .elementor-element.elementor-element-3b6a158{text-align:center;}.elementor-223478 .elementor-element.elementor-element-3b6a158 .elementor-heading-title{font-size:37px;line-height:48px;}.elementor-223478 .elementor-element.elementor-element-60add16{text-align:center;font-size:16px;line-height:20px;}.elementor-223478 .elementor-element.elementor-element-dab0e0a{margin-top:50px;margin-bottom:0px;}.elementor-223478 .elementor-element.elementor-element-0756c03{font-size:17px;line-height:22px;}.elementor-223478 .elementor-element.elementor-element-2999e33{font-size:17px;line-height:22px;}.elementor-223478 .elementor-element.elementor-element-e542ef6{font-size:16px;line-height:22px;}.elementor-223478 .elementor-element.elementor-element-7cdfa809{--spacer-size:20px;}}/* Start custom CSS *//* General button container styling */
#pill-button-container {
    display: flex;
    justify-content: center;
    margin: 20px auto;
    border: 2px solid #00C0CC;
    border-radius: 50px;
    overflow: hidden;
    background-color: transparent;
    max-width: fit-content;
    text-align: center;
}

/* Button styles */
.pill-button {
    background-color: transparent;
    color: black;
    padding: 10px 20px;
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 29px;
    letter-spacing: -0.44px;
    text-align: center;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease, color 0.3s ease;
    white-space: nowrap;
}

/* Style for the checkmark icon */
.pill-button .icon {
    width: 30px;
    height: 30px;
    background-image: url('../svg/selected-icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
    visibility: hidden;
}

/* Hover and selected states */
.pill-button:hover {
    background-color: #D9F6F8;
    border-color: #D9F6F8;
    color: black;
}

.pill-button.selected {
    background-color: #D9F6F8;
    border-color: #D9F6F8;
    color: black;
}

.pill-button.selected .icon {
    visibility: visible;
}

/* Left button with a separator line */
.left-button {
    border-right: 2px solid #00C0CC;
}

.pill-button.left-button.selected {
    border-right: 2px solid #00C0CC;
}

.pill-button.right-button {
    border-left: 1px solid transparent;
}

/* Typography for contact info */
#contact-info {
    text-align: center;
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 29px;
    margin-top: 20px;
    color: black;
}

#contact-info a {
    color: black;
    font-weight: bold;
    text-decoration: none;
}

#contact-info a:hover {
    color: #00C0CC;
    text-decoration: underline;
}

#contact-info p {
    margin: 5px 0;
}

/* Restore Calendly form's original width and style */
#calendly-container {
    width: auto;
    max-width: 100%;
    padding: 0;
    background-color: transparent;
}

/* Contact7 form container */
.custom-contact-form {
    width: 100%;
    max-width: 940px;
    margin: 0 auto;
}

/* Adjust margin for #classroom-text when "Contact us" is selected */
#classroom-text {
  margin-top: 20px;
  text-align: center;
  line-height: 29px;
  font-size: 22px;
  font-weight: 400;
  font-family: 'Source Sans Pro', sans-serif;
  color: #000000 !important; 
}
.pill-button.right-button.selected ~ #classroom-text {
    margin-top: 30px;
}

/* Mobile-specific button stacking */
@media (max-width: 600px) {
    #pill-button-container {
        flex-direction: column;
        max-width: 100%;
        border-radius: 25px;
    }

    .pill-button {
        flex-grow: 1;
        font-size: 18px;
        line-height: 24px;
        padding: 8px 15px;
        margin-bottom: 10px;
        width: 100%;
    }

    .pill-button .icon {
        width: 25px;
        height: 25px;
        margin-right: 5px;
    }

    #contact-info {
        font-size: 18px;
        line-height: 24px;
    }

    #contact-container,
    #calendly-container {
        max-width: 100%;
        padding: 10px;
    }

    #classroom-text {
        margin-top: 0;
        margin-bottom: 50px;
    }

    /* Fix the form fields on mobile */
    .custom-contact-form .wpcf7-form input[type="text"],
    .custom-contact-form .wpcf7-form input[type="email"],
    .custom-contact-form .wpcf7-form input[type="tel"],
    .custom-contact-form .wpcf7-form input[type="url"],
    .custom-contact-form .wpcf7-form textarea,
    .custom-contact-form .wpcf7-form select {
        width: 100% !important;

    /* Remove margins for compact form display */
    .custom-contact-form .wpcf7-form div {
        margin-bottom: 0 !important;
    }
}

/* Mobile field text alignment */
@media (max-width: 600px) {
    .custom-contact-form .wpcf7-form .input {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    .custom-contact-form .wpcf7-form input::placeholder {
        color: #555;
        opacity: 1;
    }

    .custom-contact-form .wpcf7-form .input-group {
        flex-direction: column !important;
        align-items: stretch !important;
    }
}/* End custom CSS */