﻿/* Additional styles added by IT*/
/**-jumbotron-*/
.page.lang--en-ca.page--home .jumbotron,
.page.lang--fr-ca.page--home .jumbotron,
.page.lang--en-us.page--home .jumbotron {
    background-color: #FBE267 !important;
}
/*--hero --*/
.jumbotron__text {
    font-size: 1rem;
    line-height: 1.25rem;
    letter-spacing: 0.02rem;
    margin-bottom: 0;
}

@media (min-width: 1024px) {
    .jumbotron__text {
        font-size: 1.5rem;
        line-height: 2rem;
    }
}

@media (min-width: 1350px) {
    .jumbotron__text {
        font-size: 1.75rem;
    }
}
/*--MX-hero--*/

.page.lang--es-mx.page--home .jumbotron {
    background-image: -webkit-image-set(url("../images/site/mx/home_1_header-1x_MX.webp") 1x,
    url("../images/site/mx/home_1_header-1x_MX.jpg") 1x,
    url("../images/site/mx/home_1_header-2x_MX.webp") 2x,
    url("../images/site/mx/home_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/mx/home_1_header-1x_MX.webp") 1x,
    url("../images/site/mx/home_1_header-1x_MX.jpg") 1x,
    url("../images/site/mx/home_1_header-2x_MX.webp") 2x,
    url("../images/site/mx/home_1_header-2x_MX.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.lang--es-mx.page--home .jumbotron {
        background-image: -webkit-image-set(url("../images/site/mx/home_1_header-1x-m_MX.webp") 1x,
        url("../images/site/mx/home_1_header-1x-m_MX.jpg") 1x,
        url("../images/site/mx/home_1_header-2x-m_MX.webp") 2x,
        url("../images/site/mx/home_1_header-2x-m_MX.jpg") 2x);
        background-image: image-set(url("../images/site/mx/home_1_header-1x-m_MX.webp") 1x,
        url("../images/site/mx/home_1_header-1x-m_MX.jpg") 1x,
        url("../images/site/mx/home_1_header-2x-m_MX.webp") 2x,
        url("../images/site/mx/home_1_header-2x-m_MX.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.lang--es-mx.page--home .jumbotron {
        background-image: -webkit-image-set(url("../images/site/mx/home_1_header-1x-t_MX.webp") 1x,
        url("../images/site/mx/home_1_header-1x-t_MX.jpg") 1x,
        url("../images/site/mx/home_1_header-2x-t_MX.webp") 2x,
        url("../images/site/mx/home_1_header-2x-t_MX.jpg") 2x);
        background-image: image-set(url("../images/site/mx/home_1_header-1x-t_MX.webp") 1x,
        url("../images/site/mx/home_1_header-1x-t_MX.jpg") 1x,
        url("../images/site/mx/home_1_header-2x-t_MX.webp") 2x,
        url("../images/site/mx/home_1_header-2x-t_MX.jpg") 2x)
    }
}

/*--center hours--*/
.ctr__dd-title {
    color: #333333;
}
 /*--employment---*/
.cta.cta--employment p.cta__text {
    
    margin: 1.65rem auto 0;
}
    @media (min-width: 1024px) {
        .cta.cta--employment p.cta__text.text-flat {
            margin: 0 auto 0;
        }
    }


/*--promotion--*/
.cta.cta--promo {
    background-color: transparent;
    margin-bottom:-50px;
}
    @media (max-width: 1023px) {
        .cta.cta--promo {
            background-color: transparent;
            padding: 1.25rem;
            margin-bottom:0;
        }
    }
.legalnote {
    font-size: 0.98rem;
    line-height: 1.3;
}
/*----*/
.stories__items .story {
    flex: 1;
}
/*----*/
.unhappyMessage {
    color: #EC0000;
    
    padding-bottom: 10px;
    padding-top: 4px;
}

.btn:focus, a:focus {
    outline-offset: 2px;
}
/*--prevent horizontal scroll bar---*/
        @media (max-width: 1023px) {
            .cta.cta--single {
                width: auto;
            }
        }
/*---
   hide center-hour in scheduler pages 
---*/
.page--scheduler .hdr__info-hours {
    display: none;
}
.page--scheduler .steps {
    background-color: #fff;
    padding: inherit;
}

    @media (min-width: 1024px) {
        .page--scheduler .steps {
            padding: inherit;
        }
    }

/*---request-appointment form---*/
/*--fix fr&mx label height--*/
body.lang--fr-ca.page.page--request-appointment .child-info .child-row label,
body.lang--es-mx.page.page--request-appointment .child-info .child-row label {
    min-height: 38px;
    display: flex;
    align-items: flex-end;
}
.page.page--request-appointment .child-info,
.page.page--request-appointment .parent-info,
.page.page--request-appointment .appointment-info {
    margin-left: auto;
    margin-right: auto;
    max-width: 874px;
}

.scheduler a.link-add {
    color: #1D7DA3;
}
.fa, .far, .fas {
    font-family: "Font Awesome 5 Free";
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
}
.fa-user-plus:before {
    content: "\00002A";
}
.icon-required {display:inline-block;}
    .icon-required:before {
        content: "* ";
        font-size: 16px;
        color: #333;
        font-weight: bold;
        padding-left: 3px;
    } 
.page.page--request-appointment .scheduler .form-group {
    margin-top:22px;
}
.page.page--request-appointment .form-row.date-row .scheduler__form-input {
    margin-bottom: 2.6em;
}
.page.page--request-appointment .form-row.date-row .form-row-inset

{
    margin-left: 0;
    margin-right: 0;
}

.page.page--request-appointment .form-row.date-row .form-col-xs-6,
.page.page--request-appointment .form-row.date-row .form-col-xs-7 {
    padding-left: 0px;
    padding-right: 0px;
}

.page.page--request-appointment .del-row {
    text-align: right;
    margin-left: -9px;
    margin-right: -9px;
    margin-right: 8px;
    a {
        display: block;
        margin-top: 0;
    }
}
@media only screen and (min-width:583px) {
    .page.page--request-appointment .del-row {
        text-align: left;
        a {
                margin-top: 62px;
            }
    }
    body.lang--fr-ca.page.page--request-appointment .del-row,
    body.lang--es-mx.page.page--request-appointment .del-row {
        a {
            margin-top: 82px;
        }
    }
    

}
@media only screen and (min-width:768px) {
    .page.page--request-appointment .child-info .fa.fa-window-close {
        width: 42px;
        height:42px;
    }
}

.form-row-divider {
    background: linear-gradient(to right, #f26b4a 1px, #f26b4a 1px) no-repeat center;
    background-size: 100% 1px;
    position: relative;
    padding: 2.6em 0 1.26em 0;
}
    .form-row-divider span {
        background: #fff;
        font-size: 16px;
        font-weight: 500;
        display: inline-block;
        color: #DA3C15;
        position: absolute;
        top: 18px;
        padding-right: 12px;
        line-height: 1.6em;
        padding: 0 12px 8px 0;
    }
.page.page--request-appointment .cta__headline a {
    color: inherit;
}
        @media (max-width: 1023px) {
            .page.page--request-appointment .cta__headline a {
                text-decoration: underline;
            }
        }
       
.page.page--request-appointment .appointment__footer .btn {
    font-size: 1.125rem;
    margin: 0 auto;
    width: 80%;
}

.page.page--request-appointment .appointment__footer input.btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.page.page--request-appointment .scheduler__form--child .scheduler__form-input .form-control,
.page.page--request-appointment .scheduler__form--dates .date-row.row-optional .scheduler__form-input .form-control {
    /*margin-bottom: 22px;*/
}

.page.page--request-appointment .child-info .child-row:not(:first-child) {
    border-top: 1px solid #BE8374;
}
   
@media only screen and (max-width:582px) {

        .form-row.date-row.row-end .form-col-xs-7 {
            border-top: 1px solid #737373;
            padding-top: 1.65em;
        }
    }

    @media only screen and (min-width:583px) and (max-width:800px) {
        .lang--en-us.page.page--request-appointment .scheduler__form.scheduler__form--dates label,
        .lang--en-ca.page.page--request-appointment .scheduler__form.scheduler__form--dates label,
        .lang--es-mx.page.page--request-appointment .scheduler__form.scheduler__form--dates label {
            min-height: 2.2em;
            display: flex;
            align-items: flex-end;
        }
    }

    @media only screen and (min-width:583px) {
        .lang--fr-ca.page.page--request-appointment .scheduler__form.scheduler__form--dates label {
            min-height: 2.2em;
            display: flex;
            align-items: flex-end;
        }
    }


    @media only screen and (min-width:583px) {
        .page.page--request-appointment .scheduler__form--dates .form-col-xs-7 {
            width: 100%
        }

        .page.page--request-appointment .form-row.date-row .form-row-inset {
            display: flex;
            gap: 1.2em;
        }

        .form-row.date-row.row-end .form-col-xs-7 {
            border-top: none;
            padding-top: 1.65em;
        }
    }


    @media only screen and (min-width:992px) {
        .page.page--request-appointment .scheduler__form--dates .form-col-xs-7 {
            width: 80%
        }
    }

    @media only screen and (min-width:1200px) {
        .page.page--request-appointment .scheduler__form--dates .form-col-xs-7 {
            width: 78%
        }
    }

    @media only screen and (min-width:1400px) {
        .page.page--request-appointment .scheduler__form--dates .form-col-xs-7 {
            width: 80%
        }
    }

    .page.page--request-appointment .scheduler__form-input.scheduler__form-input--check input {
    margin-top: 0;
    width: 24px;
    height: 24px;
    flex: 0 0 26px;
}
    
    /*--center hour--*/
    .ctr__dd-content ul {
        padding-bottom: 0.4em;
        padding-left: 0;
        list-style: none;
        font-size: 0.96rem;
    }

    .ctr__dd-content li {
        display: flex;
        justify-content: space-between;
        margin-bottom: 0.36rem;
    }

    .ctr__dd-content ul .day {
        display: inline-block;
    }

    .ctr__dd-content ul .class-hr {
        display: inline-block;
        margin-right: 6px;
    }

    .ctr__dd-content ul .timezone {
        margin-right: 6px;
    }
    /*--scheduler-footer clone--*/

    .page.page--request-appointment .appointment__footer {
        font-size: 1.25rem;
        text-align: center
    }


        .page.page--request-appointment .appointment__footer :not(span):not(.btn) {
            color: #000;
            font-weight: 700
        }


        .page.page--request-appointment .appointment__footer a:not(.btn):hover {
            color: var(--kumon-orange)
        }

    .page.page--request-appointment .appointment__footer {
        padding-bottom: 100px
    }

    @media (min-width:1024px) {
        .page.page--request-appointment .appointment__footer {
            padding-bottom: 0
        }
    }

    .page.page--request-appointment .appointment__footer .btn {
        margin-left: auto;
        margin-right: auto;
        max-width: 31.125rem
    }

    .page.page--request-appointment .appointment__footer > span {
        display: block;
        margin-top: 61px
    }
    /*--temp hide accessibility link--*/
    .footer-nav li#footer-link-item-08 {
        display: none;
    }