/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* ========= Global CSS =========== */
strong {
    font-weight: 500 !important;
}

span.weekHead {
    font-size: 22px;
    font-weight: 500 !important;
}

.defaultIcon .elementor-icon {
    display: flex;
}

.courseTabs .e-n-tabs .e-n-tabs-heading {
    display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.courseTabs .e-n-tabs .e-n-tab-title[aria-selected="true"],
.courseTabs .e-n-tabs .e-n-tab-title:hover {
    background-color: #437BBE !important;
}

/* ============ Attendance =========== */

/* Remove default bullets from main list only */
.policyList > ul {
    list-style: none;
    padding-left: 0;
}

/* Add tick only to FIRST LEVEL li */
.policyList > ul > li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 6px;
    font-weight: 500;
}

/* Tick icon */
.policyList > ul > li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 5px; /* better alignment than 50% */
    width: 18px;
    height: 18px;
    background: url(./image/tick.png) no-repeat center;
    background-size: contain;
}

/* ===== NESTED LIST ===== */
.policyList > ul > li > ul {
    list-style: none;          /* remove default bullet */
    padding-left: 0;
  margin-top: 8px;
  margin-left: -8px;
}

.policyList > ul > li > ul > li {
    position: relative;
    padding-left: 18px;
    font-weight: 400;          /* slightly lighter than main */
    margin-bottom: 4px;
}

/* Hollow circle bullet */
.policyList > ul > li > ul > li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    border: 2px solid #777;    /* grey circle */
    border-radius: 50%;
}

.textContent .policyListBullet ul {
    padding: 0 !important;
}

.textContent .policyListBullet ul + p {
    margin-top: 5px;
}

.textContent .policyListBullet ul li {
    position: relative;
    list-style: none;
    padding-left: 12px;
    margin-bottom: 2px;
    text-align: left;
}

.textContent .policyListBullet ul li::before {
    content: '•';
    position: absolute;
    font-size: 16px;
    color: #5c5c5c;
    top: 0;
    left: 0;
}

/* =========== contact form ========= */

.contactForm .elementor-shortcode .gform_wrapper .gform_fields {
    column-gap: 15px;
    row-gap: 30px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield .gfield_required {
    display: none;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield label {
    font-size: 16px;
    line-height: 16px;
    font-weight: 500;
    letter-spacing: 0.08px;
    margin-bottom: 8px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"]),
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select {
    background-color: transparent;
    border: none;
    border-bottom: 1px solid #5c5c5c;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    appearance: none;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    letter-spacing: 0.08px;
    color: #5C5C5C;
    opacity: 0.7;
    padding-bottom: 5px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea {
    --gf-local-height: 60px;
    padding-top: 5px;
    resize: none;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"]):focus,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea:focus,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select:focus,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"]):focus-visible,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea:focus-visible,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select:focus-visible,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"]):focus-within,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea:focus-within,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select:focus-within {
    outline: none;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields select {
    appearance: none;        /* Standard */
    -webkit-appearance: none; /* Chrome, Safari */
    -moz-appearance: none;    /* Firefox */
    background: none;         /* Remove default background */
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"])::placeholder,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea::placeholder,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select option.gf_placeholder{
    font-size: 16px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 0.08px;
    color: #5C5C5C;
    opacity: 0.7;
} 

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent {
    display: flex;
    column-gap: 20px !important;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .ginput_container.ginput_container_consent input {
    border: 1px solid rgba(11, 37, 76, 0.1);
    background-color: #D9D9D9;
    border-radius: 100%;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent {
    width: 60%;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent input {
    top: 16px;
    padding: 0;
    margin-top: 5px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent .gform-field-label {
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.08px;
    font-weight: 400;
    color: #5C5C5C;
    padding-left: 12px;
    opacity: 0.7;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .gfield_description {
    float: inline-end;
    margin: 0;
    border: none;
    padding: 0;
    width: 40%;
    font-family: 'Poppins', sans-serif;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.08px;
    font-weight: 400;
    color: #5C5C5C;
    opacity: 0.7;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_footer {
    margin: 0;
}

.contactForm .elementor-shortcode .gform_footer .gform_button {
    padding: 22px 55px !important;
    background-color: #437BBE !important;
    border-radius: 60px !important;
    border: none !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    font-family: 'Poppins', sans-serif !important;
    color: #fff !important;
    box-shadow: 0 30px 50px 0 rgba(67, 123, 190, 0.3) !important;
    border: 1px solid transparent !important;
    transition: all 0.4s ease !important;
}

.contactForm .elementor-shortcode .gform_footer .gform_button:hover {
    color: #437BBE !important;
    box-shadow: 0 30px 50px 0 rgba(67, 123, 190, 0.6) !important;
    background-color: #fff !important;
    border: 1px solid #0B254C !important;
}

/* =========== contact form ========== */

@media(max-width: 1200px) {

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent {
        flex-direction: column;
        row-gap: 12px;
    }

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent {
        width: 100%;
    }

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent .gform-field-label {
        margin: 0;
        margin-left: 10px;
        padding: 0;
    }

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .gfield_description {
        float: none;
        width: 100%;
    }
}

@media(max-width: 1024px) {

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields {
    column-gap: 15px;
    row-gap: 20px;
}

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"]),
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select {
    font-size: 14px;
    line-height: 14px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields input:not([type="submit"])::placeholder,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields textarea::placeholder,
.contactForm .elementor-shortcode .gform_wrapper .gform_fields select option.gf_placeholder{
    font-size: 14px;
    line-height: 14px;
} 

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .ginput_container_consent .gform-field-label {
    font-size: 14px;
    line-height: 24px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_fields .gfield--input-type-consent .gfield_description {
    font-size: 14px;
    line-height: 24px;
}

.contactForm .elementor-shortcode .gform_wrapper .gform_footer {
  margin-top: 10px;
}

.contactForm .elementor-shortcode .gform_footer .gform_button {
    font-size: 14px !important;
    padding: 18px 45px !important;
}

}

@media(max-width: 767px) {
    .courseTabs .e-n-tabs .e-n-tab-title[aria-selected="true"],
.courseTabs .e-n-tabs .e-n-tab-title:hover {
    margin: 0 !important;
}

    .courseTabs .e-n-tabs .e-n-tab-title:not(:first-child){
    margin: 0 !important;
}

    .contactForm .elementor-shortcode .gform_wrapper .gform_fields {
    column-gap: 15px;
    row-gap: 15px;
}

.contactForm .elementor-shortcode .gform_footer .gform_button {
    font-size: 14px !important;
    padding: 18px 45px !important;
    width: 100% !important;
}

    .policyList > ul > li {
        padding-left: 22px;
    }

    .policyList > ul > li::before {
        top: 4px;
  width: 14px;
  height: 14px;
    }

    .policyList > ul > li > ul > li {
        padding-left: 15px;
    }

     .policyList > ul > li > ul > li::before {
    top: 11px !important;
    width: 8px;
    height: 8px;
  }
}

@media only screen and (min-width: 1536px) and (max-width: 1600px) {
    html body {
        zoom: 0.80;
        zoom: 80%;
    }

    html body .bannerSec {
        zoom: 1.10 !important;
        zoom: 110% !important;
    }

    html body.error404 {
        zoom: unset !important;
    }


}

@media only screen and (min-width: 1440px) and (max-width: 1535px) {
    html {
        zoom: 0.85;
        zoom: 85%;
    }
    html body .bannerSec {
        zoom: 1.15 !important;
        zoom: 115% !important;
    }
}

@media only screen and (min-width: 1201px) and (max-width: 1439px) {
    html {
        zoom: 0.75;
        zoom: 75%;
    }
    html body .bannerSec {
        zoom: 1.25 !important;
        zoom: 125% !important;
    }
}
