﻿/*html:not(.no-js) [data-aos=zoom-in] { transform: scale(.9); }*/
html:not(.no-js) [data-aos=zoom-in] { transform: scale(.75); }
html {
    font-family: "Kumbh Sans", sans-serif!important;
    font-size: 17px;
    line-height: 1.6;
}

@media (max-width: 640px) {
    html { font-size: 14px; }
}

body {
    color: #7A7A7A;
    }

h1, h2, h3, h4, h5, h6, h7 {
    color: #4E61E4;
    line-height: 1.3;
}

input[type=text],
textarea,
select {
    padding: 15px;
    border-radius: 10px;
    }

.button.button--aat {
    background-color: #00AB4E;
    color: white;
    }

blockquote:before {
    content: "\f10e";
    color: #222;
    font-family: "Font Awesome 5 Pro";
    font-style: normal;
    line-height: 1em;
    text-align: center;
    width: 1em;
    font-weight: 900;
    font-size: 50px;
    margin-bottom: 20px;
    display: block;
}
blockquote {
    border-left: 2px solid var(--primary-color) !important;
    color: #1c1e27;
    font-style: italic;
    padding: 5px 10px 5px 25px !important;
    position: relative;
    -webkit-transition: .2s border ease-in-out;
    transition: .2s border ease-in-out;
    margin-bottom: 20px;
    }

.button--input {
    padding: 15px 30px;
    border-radius: 10px;
    }

.icon-container {
    display: inline-flex;
    background-color: var(--primary-color);
    color: white;
    border-radius: 9909999px;
    font-size: 2em;
    width: 4rem;
    height: 4rem;
    align-items: center;
    justify-content: center;
    }

    .icon-container.icon-container--aat {
        background-color: #00AB4E;
        }


@media (min-width: 960px) {
    .ideal-columns {
        column-count: 2;
        column-gap: 40px;
    }
}

.top-notice {
    background-color: var(--secondary-color);
    color: white;
    text-align: center;
    line-height: 1.2;
    display: flex;
    align-items: center;
    }

    .top-notice .notice {
        flex-grow: 1;
        padding: 10px 15px;
        }

        .top-notice .notice a,
        .top-notice .notice a:visited, 
        .top-notice .notice a:hover {
            color: inherit!important;
            text-decoration: underline;
            }

    .top-notice .request-a-callback {
        white-space: nowrap;
        padding: 10px 15px;
        }

    @media (max-width: 759px) {
        .top-notice .notice { padding: 5px 10px; font-size: 0.9rem; }
    }
    
    @media (max-width: 520px) {
        .top-notice .notice { margin-top: 40px; }
        .top-notice .request-a-callback { padding: 0px; }
        .top-notice .request-a-callback .button { width: 100%; margin-bottom: 3px; border-radius: 0; padding-top: 10px; padding-bottom: 10px; position: fixed; z-index: 99999; top: 0; }
    }

    

.ideal-bar {
    display: flex;
    background-color: #4E61E4;
    color: white;
    padding: 5px 10px;
    font-size: 14px;
    align-items: center;
    justify-content: center;
    }

    .ideal-bar i { font-size: 1.1rem; }

    .ideal-bar a,
    .ideal-bar a:visited,
    .ideal-bar a:hover, 
    .ideal-bar a:active {
        color: white;
        text-decoration: none;
        }

    .ideal-bar a:hover { color: #E4E9F0; }

    .ideal-bar div {
        padding: 5px 7px;
        }

    
    @media (max-width: 640px) {
        .ideal-bar div { 
            padding: 5px 0 0 0;
            font-size: 0.85rem;
        }
    }




.ideal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    }

    @media (max-width: 959px) {
        .ideal-grid {
            grid-template-columns: 1fr;
        }
    }

.ideal-divider {
    display: block;
    height: 1px;
    background-color: black;
    opacity: 0.1;
    }

.ideal-li {
    margin-top: 8px;
    margin-left: 10px;
    line-height: 1.3;
    margin-bottom: 1.3em; /* make is easier for client in editor no need to br after lists */
    }

    .ideal-li.ideal-li--muted {
        color: #979797;
        }

    ul.ideal-li { list-style-image: url("../Images/ul-bullet.png"); }
    ul.ideal-li.ideal-li--ticks { list-style-image: url("../Images/ul-tick.png"); }

    .ideal-li li { padding-left: 5px; }    
    .ideal-li li:not(:last-child) { margin-bottom: 8px; }

.pull-text {
    font-size: 1.75rem;
    color: #4E61E4;
    text-align: center;
    }



.inner-page-title {
    background-size: cover;
    background-image: url(../Images/header-background.jpg);
    height: 180px;
    }

    .inner-page-title.inner-page-title--aat { background-image: url(../Images/header-aat.jpg); }

    .inner-page-title__text {
        display: flex;
        align-items: center;
        height: 100%;
        max-width: 1340px;
        padding: 0px 20px;
        margin-left: auto;
        margin-right: auto;
        }

        .inner-page-title__text h1 { color: white; flex-grow: 1; }

    @media (max-width: 759px) {
        .inner-page-title__text { justify-content: center; }
    }

.image-and-text-row .title { 
        font-size: 1.95rem;
        color: #4E61E4;
        line-height: 1.1;
        margin-bottom: 8px;
        font-weight: normal;
        }

    .nav-bar { background-color: rgba(255, 255, 255, .30); }
    .nav-bar .nav-bar__top-level > ul > li > a, .nav-bar .nav-bar__top-level > ul > li > a:visited {  color: black; }

.ideal-vh {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    background-repeat: no-repeat;
    }

    @media (max-width: 640px) {
        .ideal-vh {
            background-attachment: scroll;
            background-position: center top;
        }

        .ideal-vh.ideal-vh--homepage { background-size: contain; }
    }




.ideal-course-hero {
    display: flex;
    align-items: center;
    padding-left: max(15%, 50px);
    padding-right: max(15%, 50px);
    }

    

    .ideal-course-hero__title {
        font-size: 2.9rem;
        color: white;
        font-weight: bold;
        max-width: 640px;
        padding-right: 100px;
        line-height: 1.25;
        text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
        }

    .ideal-course-hero__content {
        border-radius: 10px;
        -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06);
        border: 1px solid rgba(0, 0, 0, 0.06);
        font-size: 1.05rem;
        background-color: rgba(255, 255, 255, 0.85); 
        border-radius: 20px; 
        padding: 50px; 
        width: 100%; 
        max-width: 640px;
        }

        .ideal-course-hero__content__title { text-align: center; margin-top: -30px; font-size: 1.95rem; color: #4E61E4; line-height: 1.1; margin-bottom: 8px; }
        .ideal-course-hero__content__text { margin-bottom: 10px; line-height: 1.4; margin-bottom: 20px; }
        .ideal-course-hero__content__courses select { width: 100%; border: 1px solid #efefef; border-radius: 10px; padding: 10px; margin-bottom: 10px; }

    @media (max-width: 759px) {
        .ideal-course-hero { 
            flex-direction: column;
            padding-left: 20px;
            padding-right: 20px;
            text-align: center;
            align-items: end;
            margin-top: 30px;
            margin-bottom: 20px;
            justify-content:flex-end;
            }

        .ideal-course-hero__title { font-size: 1.45rem; padding: 0 0 30px 0; text-align: center; }

        .ideal-course-hero__content {
            padding: 50px 30px; 
            }

        .ideal-course-hero__content__title { font-size: 1.45rem;  }
        .ideal-course-hero__content__text{
            width: 100%;
            }
    }

.ideal-course-advantages {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    }

    .ideal-course-advantages__text { text-align: center; padding: 0 40px; }
    .ideal-course-advantages__image { padding: 0 10px; }
    .ideal-course-advantages__image img { display: block; margin: 0 auto; }

@media (max-width: 759px) {
    .ideal-course-advantages { flex-wrap: wrap; }
    .ideal-course-advantages__image { width: 50%; margin-top: 40px; }
    }

@media (min-width: 760px) {
    .ideal-course-advantages__text { order: 2; flex-grow: 1; }
    .ideal-course-advantages__image:nth-child(1) { order: 1; }
    .ideal-course-advantages__image:nth-child(2) { order: 3; }
    }

.ideal-home-banner {
    display: flex;
    align-items: center;
    padding-left: max(10%, 50px);
    padding-right: max(10%, 50px);
    }

    .ideal-home-banner__content {
        border-radius: 10px;
        -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06);
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.06);
        border: 1px solid rgba(0, 0, 0, 0.06);
        background-color: rgba(255, 255, 255, 0.6); 
        border-radius: 20px; 
        padding: 30px; 
        width: 100%; 
        max-width: 500px;
        }

        .ideal-home-banner__content__title { font-size: 1.95rem; color: #4E61E4; line-height: 1.1; margin-bottom: 8px; }
        .ideal-home-banner__content__text { margin-bottom: 10px; line-height: 1.4; margin-bottom: 20px; width: 90%; }
        .ideal-home-banner__content__courses select { width: 100%; border: 1px solid #efefef; border-radius: 10px; padding: 10px; margin-bottom: 10px; }

    @media (max-width: 759px) {
        .ideal-home-banner { 
            padding-left: 10px;
            padding-right: 10px;
            text-align: center;
            align-items: end;
            margin-bottom: 20px;
            margin-top: 275px;
            }

        .ideal-home-banner__content {
            padding: 30px 10px;
            }

        .ideal-home-banner__content__title { font-size: 1.65rem; }
        .ideal-home-banner__content__text{
            width: 100%;
            }
    }

.ideal-shape {
    position: relative;
    overflow: hidden;
    padding: 50px 0px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    color: white;
    }

    .ideal-shape::before {
        border-radius: 50%;
        position: absolute;
        background: rgba(78, 97, 228, 0.95) 0% 0% no-repeat padding-box; /* #18257d #4E61E4 */
        right: -400px;
        left: -400px;
        top: 0;
        bottom: -70px;
        content: '';
        z-index: -1;
        }
            
/*.simple-card {
    border: 1px solid red;
    padding: 20px;
    border-radius: 20px;
    background-color: #4E61E4;
    color: white;
    }*/

.row-card {
    color: white!important;
    }

.solid-container {
    background-color: #f7f7f7;
    padding: 30px;
    border-radius: 10px;
    }

.solid-row {
    background-color: red;
    }

    .solid-row.solid-row--primary { background-color: var(--primary-color); color: var(--primary-color-text); }
    .solid-row.solid-row--light { background-color: #f7f7f7; }

.blog-view__header {
    background-color: #f7f7f7;
}

.parallax-row {
    background-image: url(../Images/background-primary.jpg);
    background-attachment: fixed;
    background-size: cover;
    color: white;
    padding: 150px 0;
    line-height: 1.3;
    }

    .parallax-row.parallax-row--secondary { background-image: url(../Images/background-secondary.jpg); }
    .parallax-row.parallax-row--light { color: inherit; background-image: url(../Images/background-light.jpg); }
    .parallax-row.parallax-row--aat { color: white; background-image: url(../Images/background-aat.jpg); }

    .parallax-row .simple-card { max-width: 80%; margin: 0 auto; }
    .parallax-row .simple-card .simple-card__image { display: none; }
    .parallax-row .simple-card .simple-card__title { font-size: 1.88rem; }
    .parallax-row .simple-card .simple-card__text { font-size: 1.17rem; }

    @media (max-width: 640px) {
        .parallax-row {
            background-attachment: scroll;
            background-size: auto;
        }
    }

.student-spotlight { 
    border-radius: 20px;
    border-top: 5px solid #4E61E4;
    box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.1);
    overflow: hidden;
    text-align: center;
    }

    .student-spotlight__image { background-image: url(/Media/Images/ideal-background_fc6b79.jpg)!important; text-align: center; }
    .student-spotlight__image img { width: 300px!important; }
    .student-spotlight__content { flex: 1; padding: 20px; }
    .student-spotlight__title { color: #4E61E4; font-size: 1.17rem; margin-bottom: 5px; }
    .student-spotlight__text { font-size: 0.9rem; }  
    .student-spotlight__link { margin-top: 20px; }  
    
.student-spotlight-small { 
    border-radius: 20px;
    border-top: 5px solid #4E61E4;
    box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.1);
    overflow: hidden;
    display: flex;
    }

    .student-spotlight-small__image { width: 40%; background-size: cover; background-position: center; }
    .student-spotlight-small__image img { display: none; }
    .student-spotlight-small__content { flex: 1; padding: 20px; }
    .student-spotlight-small__title { color: #4E61E4; margin-bottom: 5px; }
    .student-spotlight-small__text { font-size: 0.9rem; }  
    .student-spotlight-small__link { margin-top: 20px; }

/* ============================================================================ */

.icb-block-panel {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    }

    .icb-block-panel .icb-block {
        background-color: #f7f7f7;
        padding: 30px;
        border-radius: 10px;
        width: calc(50% - 10px);
        }

    @media (max-width: 759px) {
        .icb-block-panel .icb-block {
            width: 100%;
            border-radius: 0;
            }
        }
    
    .icb-block-panel .title {
        font-weight: bold;
        margin-bottom: 8px;
        }

    .icb-block-panel .content {
        margin-bottom: 30px;
        }

/* ============================================================================ */

.pre-footer-communications {
}

.pre-footer-communications-link,
.pre-footer-communications-link:visited,
.pre-footer-communications-link:hover {
    display: block;
    text-align: center;
    text-decoration: none;
}

.pre-footer-communications-link-icon {
    display: block;
    position: relative;
    margin: 0px auto -37px auto;
    width: 70px;
}

.pre-footer-communications-link-content {
    padding: 45px 20px 20px 20px;
    border-radius: 5px;
    border-top: 5px solid #fd8c13;
    box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.35);
}

.pre-footer-communications-link:hover .pre-footer-communications-link-content {
    background-color: #f7f7f7;
    -webkit-transition: background-color 100ms linear;
    -moz-transition: background-color 100ms linear;
    -o-transition: background-color 100ms linear;
    -ms-transition: background-color 100ms linear;
    transition: background-color 100ms linear;
}

.pre-footer-communications-link-content-heading {
    font: 28px/1.2; /* 'Alata', arial; */
    color: #0f5aaa;
    display: block;
}

.pre-footer-communications-link-content-message {
    font: 20px/1.2; /* 'Alata', arial; */
    color: #fd8c13;
}

/* ============================================================================ */

.pre-footer-features {
    background-color: #f7f7f7;
    padding-top: 25px;
    padding-bottom: 25px;
}

.pre-footer-features-link,
.pre-footer-features-link:visited,
.pre-footer-features-link:hover {
    display: block;
    padding: 20px 10px;
    text-decoration: none;
    font: 14px; /* 'Alata', arial; */
    color: #525252;
}

.pre-footer-features-link-image {
    /*float: left;*/
    /*width: 69px;*/
    /*margin-right: 25px;*/
    }
    
    .pre-footer-features-link-image img { height: 128px; display: block; margin: 0px auto; }

.pre-footer-features-link-message {
    text-align: center;
    line-height: 1.3;
    opacity: 0.7;
}


/* ============================================================================ */

