/*--image & font path modified by IT--*/

:root {
    --kumon-lt-blue: #6dcff6;
    --kumon-blue: #3d59a8;
    --kumon-variant-blue: #3e59a8;
    --kumon-purple: #8061ab;
    --kumon-dark-purple: #3d336b;
    --kumon-green: #33b8a6;
    --kumon-dark-green: #1b8577;
    --kumon-yellow: #fae366;
    --kumon-orange: #f26b4a;
    --kumon-dark-orange: #e27353;
    --kumon-pink: #fac9d1;
    --neutral-gray: #facad2;
    --neutral-light: #fff;
    --neutral-dark: #000;
    --neutral-dark-gray: #f8f5f5;
    --neutral-dark2: #707070;
    --footer-blue: #519cc9
}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
    border: 0;
    font-size: 100%;
    font: inherit;
    margin: 0;
    padding: 0;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

body {
    line-height: 1
}

ol, ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

    blockquote:after, blockquote:before, q:after, q:before {
        content: "";
        content: none
    }

table {
    border-collapse: collapse;
    border-spacing: 0
}

*, :after, :before {
    box-sizing: border-box
}

html {
    height: 100%
}

body {
    display: grid;
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 16px;
    grid-template-rows: 1fr auto;
    overflow: auto
}

@font-face {
    font-family: Futura PT;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/FuturaPT.eot);
    src: url(../fonts/FuturaPT.eot?#iefix) format("embedded-opentype"),url(../fonts/FuturaPT.woff) format("woff"),url(../fonts/FuturaPT.woff) format("woff2"),url(../fonts/FuturaPT.ttf) format("truetype")
}

@font-face {
    font-family: Futura PT;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/FuturaPT.eot);
    src: url(../fonts/FuturaPT.eot?#iefix) format("embedded-opentype"),url(../fonts/FuturaPT.woff) format("woff"),url(../fonts/FuturaPT.woff) format("woff2"),url(../fonts/FuturaPT.ttf) format("truetype")
}

@font-face {
    font-family: Futura PT;
    font-style: normal;
    font-weight: 800;
    src: url(../fonts/FuturaBold.eot);
    src: url(../fonts/FuturaBold.eot?#iefix) format("embedded-opentype"),url(../fonts/FuturaBold.woff) format("woff"),url(../fonts/FuturaBold.woff) format("woff2"),url(../fonts/FuturaBold.ttf) format("truetype")
}

@font-face {
    font-family: Futura PT;
    font-style: normal;
    font-weight: 900;
    src: url(../fonts/FuturaExtraBold.eot);
    src: url(../fonts/FuturaExtraBold.eot?#iefix) format("embedded-opentype"),url(../fonts/FuturaExtraBold.woff) format("woff"),url(../fonts/FuturaExtraBold.woff) format("woff2"),url(../fonts/FuturaExtraBold.ttf) format("truetype")
}

@font-face {
    font-family: Fira Sans;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/FiraSans-Regular.eot);
    src: url(../fonts/FiraSans-Regular.eot?#iefix) format("embedded-opentype"),url(../fonts/FiraSans-Regular.woff) format("woff"),url(../fonts/FiraSans-Regular.woff) format("woff2"),url(../fonts/FiraSans-Regular.ttf) format("truetype")
}

@font-face {
    font-family: Fira Sans;
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/FiraSans-Medium.eot);
    src: url(../fonts/FiraSans-Medium.eot?#iefix) format("embedded-opentype"),url(../fonts/FiraSans-Medium.woff) format("woff"),url(../fonts/FiraSans-Medium.woff) format("woff2"),url(../fonts/FiraSans-Medium.ttf) format("truetype")
}

@font-face {
    font-family: Fira Sans;
    font-style: normal;
    font-weight: 600;
    src: url(../fonts/FiraSans-Book.eot);
    src: url(../fonts/FiraSans-Book.eot?#iefix) format("embedded-opentype"),url(../fonts/FiraSans-Book.woff) format("woff"),url(../fonts/FiraSans-Book.woff) format("woff2"),url(../fonts/FiraSans-Book.ttf) format("truetype")
}

@font-face {
    font-family: Fira Sans;
    font-style: normal;
    font-weight: 600;
    src: url(../fonts/FiraSans-Bold.eot);
    src: url(../fonts/FiraSans-Bold.eot?#iefix) format("embedded-opentype"),url(../fonts/FiraSans-Bold.woff) format("woff"),url(../fonts/FiraSans-Bold.woff) format("woff2"),url(../fonts/FiraSans-Bold.ttf) format("truetype")
}

strong {
    font-weight: 700
}

h1 {
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 2rem;
    margin: .625rem 0 1.25rem
}

h2 {
    font-size: 1.688rem;
    line-height: 2.125rem;
    margin-bottom: .625rem
}

h3 {
    line-height: 1.375;
    margin: .625rem 0
}

h3, li, p {
    font-size: 1.125rem
}

li, p {
    line-height: 1.813rem;
    margin-bottom: .625rem
}

h3.hdr-loc-title {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.375rem;
    font-weight: 800;
    margin-top: 0
}

.hdr__info-hours {
    text-decoration: underline
}

.scheduler p.txt-message-em {
    background: #fdf3b6;
    border: 1px solid #ff962d;
    color: #222;
    font-size: .92rem;
    font-weight: 600;
    line-height: 1.4em;
    margin: 0 auto .6em;
    padding: .6em
}

.scheduler .confirmation-details p.txt-message-em {
    margin-bottom: 1.25em
}

.confirm-block p.txt-message-em {
    background: #fdf3b6;
    border: 1px solid #ff962d;
    color: #222;
    font-size: .88rem;
    font-weight: 600;
    line-height: 1.25em;
    margin: .3em auto .6em;
    padding: .15em .3em
}

p.txt-message-em:empty {
    display: none
}

.hide-dates-large {
    display: block !important
}

.show-dates-large-inline {
    display: none !important
}

.hide-dates-large-inline {
    display: inline-block !important
}

@media only screen and (min-width:767px) {
    .scheduler .select-a-day .txt-message-em {
        max-width: 74%
    }
}

@media only screen and (min-width:1024px) {
    .show-dates-large {
        display: block !important
    }

    .show-dates-large-inline {
        display: inline-block !important
    }

    .hide-dates-large, .hide-dates-large-inline {
        display: none !important
    }
}

.scheduler .dates-controls {
    margin-bottom: 50px;
    text-align: center
}

    .scheduler .dates-controls .select-another a {
        color: #85868a;
        font-family: Fira Sans;
        font-size: 16px;
        font-weight: 200;
        text-decoration: underline
    }

        .scheduler .dates-controls .select-another a i {
            color: #85868a;
            font-size: 24px;
            margin-right: 10px
        }

.need-assistance {
    color: #737373;
    font-family: Fira Sans;
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 60px;
    text-align: center
}

    .need-assistance a {
        color: #3379b1;
        text-decoration: underline
    }

.days {
    margin-left: -7px;
    margin-right: -7px;
    text-align: center
}

@media only screen and (min-width:1024px) {
    .days {
        margin-bottom: 50px
    }
}

.days a.arrows {
    background-color: #ee5d74;
    border-radius: 35px;
    color: #fff;
    display: inline-block;
    font-size: 50px;
    height: 70px;
    line-height: 70px;
    margin-bottom: 40px;
    margin-left: 20px;
    margin-right: 20px;
    text-align: center;
    vertical-align: bottom;
    width: 70px
}

    .days a.arrows:hover {
        background-color: #b24657
    }

    .days a.arrows i.fas {
        line-height: 70px;
        padding-right: 5px
    }

        .days a.arrows i.fas.fa-chevron-left {
            padding-right: 5px
        }

        .days a.arrows i.fas.fa-chevron-right {
            padding-left: 5px
        }

.scheduler .dates-controls a.arrows {
    background-color: #ee5d74;
    border-radius: 25px;
    color: #fff;
    display: inline-block;
    font-size: 35px;
    height: 50px;
    line-height: 50px;
    margin-bottom: 10px;
    margin-left: 8px;
    margin-right: 8px;
    text-align: center;
    vertical-align: bottom;
    width: 50px
}

    .scheduler .dates-controls a.arrows:hover {
        background-color: #b24657
    }

.scheduler .dates-controls i.fas {
    line-height: 50px
}

    .scheduler .dates-controls i.fas.fa-chevron-left {
        padding-right: 4px
    }

    .scheduler .dates-controls i.fas.fa-chevron-right {
        padding-left: 4px
    }

.days .day {
    background-color: #f1f1f1;
    border-radius: 5px;
    color: #85868a;
    cursor: pointer;
    display: inline-block;
    height: 122px;
    margin-bottom: 20px;
    margin-left: 7px;
    margin-right: 7px;
    width: 120px
}

    .days .day .day-of-week {
        background-color: #ee5d74;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        color: #fff;
        font-family: Fira Sans;
        font-size: 18px;
        font-weight: 700;
        line-height: 33px;
        text-align: center;
        text-transform: uppercase
    }

    .days .day .date {
        font-family: Futura Bold,Arial,Helvetica,sans-serif;
        font-size: 60px;
        line-height: 66px;
        text-align: center
    }

    .days .day .month {
        font-family: Fira Sans;
        font-size: 16px;
        font-weight: 700;
        text-align: center;
        text-transform: uppercase
    }

    .days .day.active, .days .day:hover {
        background-color: #fdb92d;
        color: #fff
    }

        .days .day.active .day-of-week, .days .day:hover .day-of-week {
            background-color: #c89325
        }

.calendar {
    background-color: #f1f1f1;
    border-radius: 6px;
    flex-basis: 50%;
    margin: 20px;
    padding: 15px
}

@media only screen and (max-width:1023px) {
    .calendar {
        flex-basis: 75%
    }
}

@media only screen and (max-width:583px) {
    .calendar {
        flex-basis: 100%
    }
}

.calendar table {
    font-family: Fira Sans;
    width: 100%
}

    .calendar table td {
        color: #85868a;
        font-size: 16px;
        padding: 7px;
        text-align: center
    }

    .calendar table tr.month td {
        font-family: Futura Bold,Arial,Helvetica,sans-serif;
        font-size: 20px;
        padding-bottom: 13px;
        padding-top: 13px;
        text-align: center;
        text-transform: uppercase
    }

    .calendar table tr.day-ow td {
        font-weight: 500;
        padding-bottom: 13px;
        padding-top: 13px;
        width: 14.2857142857%
    }

    .calendar table tr.dates td {
        padding-left: 10px;
        padding-right: 10px
    }

        .calendar table tr.dates td a {
            border-radius: 5px;
            color: #85868a;
            display: block;
            font-weight: 500;
            line-height: 40px;
            text-align: center;
            text-decoration: none
        }

            .calendar table tr.dates td a.active, .calendar table tr.dates td a:hover {
                background-color: #fdb92d;
                color: #f1f1f1
            }

.calendar .arrows {
    background-color: #ee5d74;
    border-radius: 24px;
    color: #f1f1f1;
    display: inline-block;
    font-size: 14px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    width: 24px
}

    .calendar .arrows:hover {
        background-color: #b24657
    }

.select-a-time .buttons, .times {
    margin-bottom: 50px
}

.times {
    text-align: center;
    vertical-align: top
}

    .times .time-col {
        display: inline-block;
        margin-left: 20px;
        margin-right: 20px;
        max-width: 320px;
        vertical-align: top;
        width: 100%
    }

        .times .time-col .time {
            background-color: #f1f1f1;
            border-radius: 5px;
            color: #85868a;
            cursor: pointer;
            font-family: Fira Sans;
            font-size: 26px;
            font-weight: 700;
            line-height: 65px;
            margin-bottom: 15px;
            text-align: center
        }

            .times .time-col .time.active, .times .time-col .time:hover {
                background-color: #fdb92d;
                color: #fff
            }

.child-info, .parent-info {
    clear: both;
    margin-left: auto;
    margin-right: auto;
    max-width: 874px
}

.child-info {
    margin-bottom: 40px
}

.form-row, .form-row-inset {
    clear: both;
    overflow: auto;
    overflow: hidden
}

.form-row-inset {
    margin-left: -9px;
    margin-right: -9px
}

.form-col-xs-10, .form-col-xs-12, .form-col-xs-2, .form-col-xs-3, .form-col-xs-4, .form-col-xs-5, .form-col-xs-6, .form-col-xs-7, .form-col-xs-8 {
    float: left;
    padding-left: 9px;
    padding-right: 9px;
    width: 100%
}

.form-row-inset.inset-pair-off .form-col-pair-optional {
    display: none
}

.form-row-inset.inset-pair-off .form-col-xs-8.form-col-pair {
    width: 100% !important
}

.link-add {
    display: inline-block;
    margin: 5px 0
}

.form-col-xs-1 {
    float: left;
    padding-left: 9px;
    padding-right: 9px;
    width: 100%
}

.child-info.info-step2 .fa.fa-window-close {
    color: #737373;
    font-size: 32px
}

    .child-info.info-step2 .fa.fa-window-close:hover {
        color: #026687;
        text-decoration: none
    }

.child-info.info-step2 .del-row {
    text-align: right
}

.form-offset-xs-1 {
    margin-left: 0
}

.form-col-6 {
    float: left;
    padding-left: 9px;
    padding-right: 9px;
    width: 50%
}

@media only screen and (min-width:583px) {
    .sr-visible-sm {
        clip: rect(0,0,0,0);
        border: 0;
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        white-space: nowrap;
        width: 1px
    }

    .form-col-xs-12 {
        width: 100%
    }

    .form-col-xs-12, .form-col-xs-6 {
        float: left;
        padding-left: 9px;
        padding-right: 9px
    }

    .form-col-xs-6 {
        width: 50%
    }

    .form-col-xs-3 {
        float: left;
        padding-left: 9px;
        padding-right: 9px;
        width: 25%
    }

    .form-col-xs-5 {
        padding-right: 0;
        width: 41.6%
    }

    .child-info.info-step2 .form-col-xs-3 {
        padding-left: 6px;
        padding-right: 0;
        width: 22%
    }

    .child-info.info-step2 .form-col-xs-1 {
        float: left;
        padding-left: 4px;
        padding-right: 0;
        width: 6%
    }

    .child-info.info-step2 .fa.fa-window-close {
        color: #737373;
        font-size: 32px
    }

    .form-col-xs-8 {
        width: 66.66666667%
    }

    .form-col-xs-7, .form-col-xs-8 {
        float: left;
        padding-left: 9px;
        padding-right: 9px
    }

    .form-col-xs-7 {
        width: 58.3333333%
    }

    .form-col-xs-5 {
        width: 41.66666667%
    }

    .form-col-xs-4, .form-col-xs-5 {
        float: left;
        padding-left: 9px;
        padding-right: 9px
    }

    .form-col-xs-4 {
        width: 33.3333333%
    }

    .scheduler .form-row .form-row-inset .form-col-xs-4 {
        padding-right: 2px
    }

    .form-col-xs-2 {
        width: 16.6666667%
    }

    .form-col-xs-10, .form-col-xs-2 {
        float: left;
        padding-left: 9px;
        padding-right: 9px
    }

    .form-col-xs-10 {
        width: 83.3333333%
    }

    .form-offset-xs-1 {
        margin-left: 8.3333333%
    }

    .form-col-xs-5 .form-row-inset .form-col-xs-5 {
        width: 43%
    }

    .child-info.info-step2 .form-col-xs-2 {
        padding-left: 0;
        padding-right: 0;
        padding-top: 4px;
        width: 8%
    }
}

.scheduler .required {
    color: #737373;
    font-size: 14px;
    padding-right: 12px;
    padding-top: 5px;
    text-align: right
}

.scheduler .red {
    color: #d53a52;
    padding-right: .3em
}

.scheduler .form-group {
    margin-bottom: 12px;
    width: 100%
}

.form-row.consent .alertbox {
    margin-top: 4px
}

.scheduler input[type=email], .scheduler input[type=telephone], .scheduler input[type=text], .scheduler select {
    border: 1px solid #748a93;
    color: #333;
    font-size: 1.15rem;
    height: 50px
}

.scheduler textarea.form-control {
    border: 1px solid #919191;
    color: #333;
    font-size: 1.15rem
}

.scheduler input[type=email]:focus, .scheduler input[type=telephone]:focus, .scheduler input[type=text]:focus, .scheduler select:focus {
    border: 2px solid #4897d5;
    box-shadow: none;
    outline: 0
}

.scheduler select {
    font-size: 15px;
    padding: 3px 6px
}

.scheduler textarea#additional-comments {
    border: 2px solid #c2c2c2;
    color: #737373;
    font-size: 18px;
    margin-bottom: 30px;
    margin-top: 30px
}

.scheduler label {
    color: #666;
    font-weight: 500
}

.scheduler .form-label {
    font-size: .82rem
}

.scheduler input[type=checkbox] + label {
    font-size: 15px;
    line-height: 1.3em;
    padding-left: 6px;
    position: relative;
    vertical-align: top
}

.scheduler .parent-info input[type=checkbox] {
    display: inline-block;
    margin-top: 0
}

.scheduler input[type=checkbox] + label div.small-info {
    margin-top: 5px
}

.set-checkbox {
    padding-left: 24px;
    padding-top: 2px;
    position: relative
}

    .set-checkbox input[type=checkbox] {
        height: 20px;
        left: 2px;
        position: absolute;
        top: 3px;
        width: 20px
    }

.parent-info .set-checkbox input[type=checkbox] {
    top: 0
}

    .parent-info .set-checkbox input[type=checkbox]:focus {
        outline: 2px dotted #4897d5;
        outline-offset: 0;
        top: 2px
    }

.alert-info {
    background: transparent;
    border: none;
    margin: auto;
    max-width: 874px
}

.alert-container {
    background: #fdecee;
    border: 1px solid #d0011b;
    margin: 0 9px;
    padding: .8em
}

.alert-info h2.header {
    color: #111;
    font-size: 1.25rem;
    text-align: left
}

.alert-info ul {
    list-style: none;
    padding-left: 0
}

.alert-info li {
    cursor: pointer;
    margin: .5em 0
}

.link-alert {
    color: #d30035
}

    .link-alert:hover {
        color: #d30035;
        cursor: pointer;
        text-decoration: underline
    }

    .link-alert:focus {
        color: #d30035;
        cursor: pointer;
        outline: 2px dotted #177397;
        outline-offset: 2px
    }

.scheduler input:not([type=checkbox]).form-control.has-alert, .scheduler select.has-alert, .scheduler textarea.has-alert {
    border-color: #d30035
}

.scheduler .set-checkbox input[type=checkbox].has-alert {
    outline: 2px solid #d30035;
    top: 2px
}

.scheduler .button {
    background-color: #fff;
    border: 4px solid #509800;
    color: #509800;
    display: block;
    font-family: Futura ExtraBold,Arial,Helvetica,sans-serif;
    font-size: 18px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4px;
    max-width: 650px;
    padding: 14px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: normal;
    width: 100%
}

    .scheduler .button:hover {
        background-color: #8bc34d;
        color: #fff
    }

    .scheduler .button.purple {
        background-color: #fff;
        border: 4px solid #cd3594;
        color: #cd3594
    }

        .scheduler .button.purple:focus, .scheduler .button.purple:hover {
            background-color: #cd3594;
            color: #fff
        }

        .scheduler .button.purple:focus {
            outline: 2px dotted #cd3594;
            outline-offset: 2px
        }

    .scheduler .button.blue {
        background-color: #fff;
        border: 4px solid #15a0b6;
        color: #15a0b6
    }

        .scheduler .button.blue:focus, .scheduler .button.blue:hover {
            background-color: #15a0b6;
            color: #fff
        }

    .scheduler .button.green:hover {
        background-color: #8bc34d;
        color: #fff
    }

    .scheduler .button.green:focus {
        outline: 2px dotted #8bc34d;
        outline-offset: 2px
    }

    .scheduler .button.yellow {
        background-color: #fff;
        border: 4px solid #f86505;
        color: #f86505
    }

        .scheduler .button.yellow:hover {
            background-color: #f86505;
            color: #fff
        }

        .scheduler .button.yellow:focus {
            outline: 2px dotted #f86505;
            outline-offset: 2px
        }

    .scheduler .button.disabled {
        border: 4px solid gray;
        color: gray
    }

        .scheduler .button.disabled:hover {
            background-color: #fff;
            border: 4px solid gray;
            color: gray
        }

.scheduler input#btnNext.button.st-disabled {
    background: #fb9a5b url(../images/site/btn-loading2.gif) no-repeat 2% 50%;
    background-size: 32px;
    color: #fff;
    cursor: not-allowed;
    pointer-events: none
}

.scheduler input#btnNext.button.yellow.st-disabled {
    background: #fb9a5b url(../images/site/btn-loading2.gif) no-repeat 2% 50%;
    color: #fdf4ef
}

.scheduler input#btnNext.button.green.st-disabled {
    background: #adcf86 url(../images/site/btn-loading2.gif) no-repeat 2% 50%;
    color: #ddf5c2
}

.scheduler input#btnNext.button.purple.st-disabled {
    background: #d854a6 url(../images/site/btn-loading2.gif) no-repeat 2% 50%;
    color: #f8d1e9
}

.scheduler .form-submit {
    margin-bottom: 50px;
    margin-top: 50px
}

.greenbar {
    border-top: 2px solid #8bc34d;
    margin-bottom: 20px;
    margin-top: 10px
}

.addchild-row {
    margin-bottom: 10px;
    margin-top: 10px
}

#addchild {
    color: #85868a;
    font-size: 14px;
    font-weight: 500;
    padding-left: 15px
}

    #addchild i {
        color: #8bc34d;
        font-size: 20px;
        padding-left: 5px;
        padding-right: 5px
    }

.small-info {
    color: #737373;
    font-size: 14px;
    font-weight: 500
}

    .small-info a {
        color: #1d78c1;
        text-decoration: underline
    }

    .small-info.center {
        text-align: center
    }

.align-right {
    text-align: right
}

.scheduler .countDown {
    background-color: #f1f1f1;
    border-radius: 5px;
    margin-left: 1em;
    margin-right: .5em;
    margin-top: 1em;
    padding: 42px 10px
}

    .scheduler .countDown.top {
        margin-bottom: 30px
    }

    .scheduler .countDown .time {
        color: #85868a;
        font-size: 45px
    }

    .scheduler .countDown .time, .scheduler .countDown .time-info {
        font-family: Futura Bold,Arial,Helvetica,sans-serif;
        text-align: center
    }

    .scheduler .countDown .time-info {
        color: #6d6c6c;
        font-size: 16px;
        margin-top: 10px
    }

.confirm-details, .confirm-details-2, .confirm-top {
    margin-left: auto;
    margin-right: auto;
    max-width: 827px
}

.confirm-details {
    display: flex;
    flex-direction: row-reverse
}

    .confirm-details .confirm-details-col {
        flex-basis: 68%;
        padding-right: 30px
    }

    .confirm-details .timer {
        flex-basis: 32%
    }

        .confirm-details .timer .countDown {
            border-radius: 5px
        }

.scheduler .txt-alert {
    color: red;
    display: none
}

.scheduler .header-note, .scheduler .txt-note {
    color: #666;
    font-size: .92rem
}

.scheduler .header-note {
    font-weight: 400
}

.scheduler .txt-btn-btm {
    margin-top: 1.8em
}

    .scheduler .txt-btn-btm + .txt-btn-btm {
        margin-top: .1em
    }

@media only screen and (max-width:767px) {
    .confirm-details {
        display: block
    }

    .scheduler .countDown {
        MARGIN-LEFT: 0;
        margin-bottom: .6em;
        margin-right: 0
    }

    .small-info.center {
        margin-top: 2em
    }

    .confirm-details .confirm-details-col {
        padding-right: 0
    }
}

.scheduler h3 {
    font-family: Futura ExtraBold,Arial,Helvetica,sans-serif;
    font-size: 32px;
    text-align: center
}

.scheduler h4 {
    color: #737373;
    font-family: Fira Sans;
    font-size: 18px;
    font-weight: 500;
    text-align: center
}

.scheduler.confirm h3 {
    color: #c75a9e
}

    .scheduler.confirm h3.type {
        font-size: 16px;
        text-align: left
    }

.scheduler.confirm h4 {
    margin-bottom: 40px;
    margin-top: 10px
}

.confirm-block {
    border-bottom: 2px solid #e7e7e8;
    font-size: 20px;
    line-height: 25px;
    padding-bottom: 30px;
    padding-top: 30px
}

div.confirm-block:last-child {
    border-bottom: none
}

.confirm-details-2 div.confirm-block:first-child {
    border-top: 2px solid #e7e7e8
}

.scheduler.confirm i {
    color: #c75a9e
}

.scheduler.confirm .confirm-block type i {
    font-size: 18px
}

.scheduler.confirm .confirm-block {
    color: #737373
}

    .scheduler.confirm .confirm-block .type {
        color: #737373;
        font-family: Fira Sans;
        font-size: 18px;
        margin-bottom: 10px;
        text-align: left
    }

    .scheduler.confirm .confirm-block > a {
        color: #3379b1;
        float: right;
        font-size: 18px;
        text-decoration: none
    }

    .scheduler.confirm .confirm-block a i {
        color: #3379b1
    }

    .scheduler.confirm .confirm-block a:hover, .scheduler.confirm .confirm-block a:hover i {
        color: #c75a9e
    }

.scheduler.confirmed {
    margin-left: auto;
    margin-right: auto;
    max-width: 755px
}

.confirmation-details {
    color: #333;
    margin-top: 60px
}

.confirmation-details-copy {
    font-weight: 500;
    min-height: 8em
}

.confirmation-details .add-to-calendar a {
    color: #377db5;
    text-decoration: underline
}

a.add-to-calendar {
    border: 4px solid #15a0b6;
    color: #15a0b6;
    display: block;
    float: right;
    font-family: Fira Sans;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 10px;
    margin-left: 10px;
    min-width: 115px;
    padding: 20px;
    text-align: center;
    text-decoration: none
}

    a.add-to-calendar i {
        display: block;
        font-size: 30px
    }

    .confirmation-email, a.add-to-calendar:hover {
        background-color: #15a0b6;
        color: #fff
    }

.confirmation-email {
    border-radius: 5px;
    line-height: 26px;
    margin-top: 20px;
    padding: 20px 30px;
    text-align: center
}

    .confirmation-email i {
        display: inline-block;
        font-size: 24px;
        margin-right: 10px;
        padding-bottom: 2px;
        vertical-align: middle
    }

.confirmation-passed {
    color: #85868a;
    font-size: 14px
}

.confirmation-get-ready, .confirmation-passed {
    margin-bottom: 30px;
    margin-top: 30px;
    padding: 30px
}

.confirmation-get-ready {
    background-color: #f1f1f1;
    border-radius: 5px
}

.confirmation-passed h3 {
    color: #666;
    font-family: Fira Sans,arial,helvetica,sans-serif;
    font-size: 18px
}

.confirmation-passed .fa-exclamation-triangle {
    color: #e1b400;
    font-size: 24px
}

.confirmation-get-ready p {
    margin-bottom: 5px
}

.confirmation-get-ready h3 {
    color: #333;
    font-family: Fira Sans;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 10px;
    text-align: left
}

.confirmation-buttons {
    margin-bottom: 60px;
    margin-top: 20px;
    text-align: center
}

    .confirmation-buttons .button {
        display: inline-block;
        margin-bottom: 20px;
        margin-left: 20px;
        margin-right: 20px;
        max-width: 250px
    }

.child-info .child-row:not(:first-child) {
    border-top: 1px solid #ddd;
    padding-top: 1em
}

@media only screen and (max-width:1200px) {
    .scheduler h2 {
        font-size: 36px
    }
}

@media only screen and (max-width:1024px) {
    .days {
        margin-left: auto;
        margin-right: auto;
        max-width: 555px;
        text-align: center
    }
}

@media only screen and (max-width:767px) {
    .days {
        max-width: 555px
    }

    .times .time-col {
        max-width: 230px
    }
}

@media only screen and (max-width:582px) {
    .scheduler h2 {
        font-size: 34px;
        margin-top: 20px
    }

    .scheduler .steps {
        margin-bottom: 1.2em;
        margin-top: 20px
    }

        .scheduler .steps li > div {
            margin-left: 6px;
            margin-right: 6px
        }

    .days {
        margin-left: auto;
        margin-right: auto;
        max-width: 414px;
        text-align: left;
        text-align: center
    }

    .times .time-col {
        margin-left: 5px;
        margin-right: 5px;
        width: calc(50% - 20px)
    }

    .child-info .child-row {
        margin-bottom: 20px
    }

    .hide-xs {
        display: none
    }

    .show-xs {
        display: block
    }
}

body.no-scroll {
    overflow: hidden
}

#form-modal-overlay, .form-modal-overlay {
    background-color: rgba(0,0,0,.3);
    bottom: 0;
    display: none;
    height: 100%;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 2000
}

    #form-modal-overlay.active, .form-modal-overlay.active {
        display: table
    }

div.form-modal-holder {
    display: table-cell;
    text-align: center;
    vertical-align: middle
}

div.form-modal {
    background-color: #fff;
    box-shadow: 0 0 10px #000;
    margin-left: auto;
    margin-right: auto;
    max-height: 100vh;
    max-width: 600px;
    overflow-y: auto;
    position: relative;
    width: 100%
}

@media (max-width:767px) {
    div.form-modal {
        margin-left: 30px;
        margin-right: 30px;
        max-width: calc(100% - 60px);
        width: calc(100% - 60px)
    }
}

div.form-modal a.close {
    position: absolute;
    right: 28px;
    text-shadow: 0 0 5px #000;
    top: 28px
}

div.form-modal div.form-modal-title {
    background-color: #28a57c
}

    div.form-modal div.form-modal-title h1 {
        color: #fff;
        font-family: Futura ExtraBold,Arial,Helvetica,sans-serif;
        font-size: 36px;
        margin: 0;
        padding-bottom: 37px;
        padding-top: 52px
    }

div.form-modal div.form-modal-details {
    background-image: url(../images/down_triangle.png);
    background-position: top;
    background-repeat: no-repeat;
    background-size: 41px auto;
    padding-top: 45px
}

    div.form-modal div.form-modal-details .message {
        color: #666;
        font-size: 16px;
        font-weight: 400;
        line-height: 20px;
        padding: 20px
    }

    div.form-modal div.form-modal-details .buttons {
        margin-bottom: 30px;
        padding-left: 10px;
        padding-right: 10px
    }

        div.form-modal div.form-modal-details .buttons .button {
            background-color: #fff;
            border: 4px solid #28a57c;
            color: #28a57c;
            display: inline-block;
            font-family: Futura ExtraBold,Arial,Helvetica,sans-serif;
            font-size: 18px;
            margin: 17px;
            max-width: 210px;
            padding: 14px;
            text-align: center;
            text-decoration: none;
            text-transform: uppercase;
            width: 100%
        }

            div.form-modal div.form-modal-details .buttons .button.invert, div.form-modal div.form-modal-details .buttons .button:hover {
                background-color: #28a57c;
                color: #fff
            }

                div.form-modal div.form-modal-details .buttons .button.invert:hover {
                    background-color: #fff;
                    color: #28a57c
                }

.error-pagetop {
    background: #fffdf3;
    border: 2px solid #eb021d;
    margin: .3em auto 0;
    max-width: 860px;
    min-height: 3em;
    padding: .6em;
    text-align: center
}

.error-title {
    color: #eb021d;
    font-size: 1.4rem;
    font-weight: 700
}

.error-pagetop .txt-alert {
    color: #e5001b;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.3em
}

.sr-only {
    clip: rect(1px,1px,1px,1px) !important;
    border: 0 !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important
}

.scheduler .select-a-time .buttons {
    margin: 0 auto 50px;
    max-width: 650px;
    text-align: center
}

    .scheduler .select-a-time .buttons .txt-alert:empty {
        display: none
    }

    .scheduler .select-a-time .buttons .button {
        margin-top: .15em
    }

div.form-modal {
    max-height: 96vh
}

    div.form-modal div.form-modal-title h1 {
        padding-top: 30px
    }

    div.form-modal div.form-modal-details {
        padding-top: 22px
    }

    div.form-modal div.form-modal-title {
        position: relative
    }

.i-btn-close {
    position: absolute;
    right: 1em;
    top: 1em
}

    .i-btn-close .fa-times {
        color: #fff;
        font-size: 2rem
    }

div.form-modal div.form-modal-details .buttons .button {
    margin: 6px 0;
    max-width: 320px
}

.tb-title {
    display: inline-block
}

.tb {
    margin: 0 4px;
    padding: 6px 8px
}

a.txt-btn-close {
    border: 2px solid #ccc;
    color: #666;
    display: inline-block;
    font-size: 18px;
    margin-bottom: 16px;
    padding: 8px 22px
}

@media only screen and (min-width:582px) {
    div.form-modal div.form-modal-details .buttons {
        align-items: center;
        display: flex;
        justify-content: space-around
    }

        div.form-modal div.form-modal-details .buttons .button {
            margin: 0;
            max-width: 240px
        }
}

.time-label {
    display: inline-block;
    font-family: Fira Sans
}

.h1-alert {
    color: #1b98d2;
    font-family: futura-pt,sans-serif;
    font-size: 2rem;
    font-style: normal;
    font-weight: 800;
    margin: 0 0 16px;
    text-align: center
}

    .h1-alert i.fa-alert {
        padding-right: .2em
    }

.card-message {
    margin: auto;
    max-width: 26em;
    padding: 1.6em
}

    .card-message p {
        color: #666;
        font-family: fira sans,verdana,helvetica,sans-serif;
        font-size: 1.3rem;
        line-height: 1.5;
        margin-bottom: 1em
    }

.k-calendar {
    border-style: solid;
    border-width: 1px;
    display: inline-block;
    line-height: 1.42857143;
    overflow: hidden;
    padding: 0;
    position: relative
}

    .k-calendar .k-link {
        color: inherit;
        outline: 0;
        text-decoration: none
    }

    .k-calendar .k-action-link {
        text-decoration: underline
    }

    .k-calendar .k-state-focused, .k-calendar .k-state-focused.k-state-selected {
        box-shadow: none
    }

    .k-calendar table {
        border-spacing: 0;
        border-width: 0;
        float: left;
        margin: 0;
        outline: 0;
        padding: 0;
        table-layout: fixed
    }

    .k-calendar td, .k-calendar th {
        background: 0 0;
        border: 0 solid;
        border-color: inherit;
        color: inherit;
        cursor: default;
        font-weight: 400;
        padding: 0;
        text-align: center
    }

    .k-calendar .k-header {
        border-bottom-style: solid;
        border-bottom-width: 1px;
        padding: 2px;
        position: relative;
        text-align: center;
        z-index: 1
    }

        .k-calendar .k-header .k-link {
            border-radius: 4px;
            border-style: solid;
            border-width: 0;
            display: inline-block;
            padding: 4px
        }

    .k-calendar .k-nav-next, .k-calendar .k-nav-prev {
        box-sizing: content-box;
        height: 1.42857143em;
        position: absolute;
        top: 2px;
        width: 1.42857143em
    }

        .k-calendar .k-nav-next .k-icon, .k-calendar .k-nav-prev .k-icon {
            vertical-align: text-top
        }

    .k-calendar .k-nav-prev {
        left: 2px
    }

    .k-calendar .k-nav-next {
        right: 2px
    }

    .k-calendar .k-nav-fast {
        box-sizing: border-box;
        margin: auto;
        width: 75%
    }

    .k-calendar .k-footer {
        clear: both;
        position: relative;
        text-align: center
    }

        .k-calendar .k-footer > .k-state-disabled, .k-calendar .k-nav-today {
            border-radius: 0;
            border-width: 0;
            display: block;
            padding: .5em
        }

            .k-calendar .k-nav-today:hover {
                text-decoration: underline
            }

    .k-calendar .k-calendar-view {
        height: 17em;
        width: 17em
    }

    .k-calendar.k-week-number .k-calendar-view {
        width: 19.42857143em
    }

    .k-calendar .k-content {
        background-color: transparent;
        width: 100%
    }

        .k-calendar .k-content th {
            border-bottom-width: 1px;
            box-sizing: border-box;
            padding: .25em 2px
        }

        .k-calendar .k-content td {
            border-radius: 4px
        }

            .k-calendar .k-content td.k-alt {
                border-radius: 0;
                width: 2.42857143em
            }

        .k-calendar .k-content .k-link {
            border-radius: 4px;
            box-sizing: border-box;
            display: block;
            line-height: 1.42857143;
            margin: auto;
            padding: .5em
        }

    .k-calendar .k-month .k-link {
        height: 2.42857143em;
        width: 2.42857143em
    }

    .k-calendar .k-month th {
        height: 2.42857143em
    }

    .k-calendar .k-decade .k-link, .k-calendar .k-year .k-link {
        height: 4.28571429em;
        line-height: 3.28571429em;
        width: 4.28571429em
    }

    .k-calendar .k-century .k-link {
        height: 4.28571429em;
        line-height: 1.64285714em;
        text-align: left;
        white-space: normal;
        width: 4.28571429em
    }

    .k-calendar .k-animation-container .k-content {
        height: 100%
    }

.k-week-number {
    width: 19.42857143em
}

.k-calendar-range {
    line-height: 1.42857143;
    text-align: left;
    width: auto
}

    .k-calendar-range .k-calendar-header {
        padding: 8px 16px
    }

        .k-calendar-range .k-calendar-header .k-button {
            background: 0 0 !important;
            border-color: transparent !important;
            box-shadow: none !important;
            color: inherit;
            transition: color .2s ease-in-out
        }

            .k-calendar-range .k-calendar-header .k-button.k-state-active, .k-calendar-range .k-calendar-header .k-button.k-state-hover, .k-calendar-range .k-calendar-header .k-button:active, .k-calendar-range .k-calendar-header .k-button:hover, .k-calendar-range .k-calendar-header .k-button:hover.k-state-active, .k-calendar-range .k-calendar-header .k-button:hover:active {
                color: inherit
            }

            .k-calendar-range .k-calendar-header .k-button:after, .k-calendar-range .k-calendar-header .k-button:before {
                display: block
            }

            .k-calendar-range .k-calendar-header .k-button.k-state-focused:after, .k-calendar-range .k-calendar-header .k-button:focus:after {
                box-shadow: inset 0 0 0 2px currentColor;
                opacity: .12
            }

            .k-calendar-range .k-calendar-header .k-button.k-state-disabled, .k-calendar-range .k-calendar-header .k-button[disabled], .k-state-disabled .k-calendar-range .k-calendar-header .k-button {
                pointer-events: none
            }

        .k-calendar-range .k-calendar-header:after {
            clear: both;
            content: "";
            display: block
        }

    .k-calendar-range .k-calendar-nav {
        float: right
    }

    .k-calendar-range .k-calendar-view {
        height: auto;
        min-height: 17em;
        text-align: center;
        white-space: nowrap;
        width: auto
    }

    .k-calendar-range.k-week-number .k-calendar-view {
        width: auto
    }

    .k-calendar-range .k-content {
        background-color: transparent;
        color: inherit;
        display: inline-table;
        float: none;
        height: auto;
        padding: 0 16px 8px;
        text-align: center;
        vertical-align: top;
        width: auto
    }

        .k-calendar-range .k-content td, .k-calendar-range .k-content th {
            background-color: transparent;
            background-image: none;
            border-width: 0;
            color: inherit;
            padding: 0;
            text-align: inherit;
            vertical-align: middle
        }

        .k-calendar-range .k-content th {
            font-size: 12px;
            line-height: 1.5;
            opacity: .5;
            padding: .5em 0;
            text-transform: uppercase
        }

        .k-calendar-range .k-content td {
            border-radius: 4px
        }

            .k-calendar-range .k-content td.k-alt {
                opacity: .5
            }

        .k-calendar-range .k-content .k-link {
            border-radius: 4px;
            box-sizing: border-box;
            line-height: inherit;
            min-height: 0;
            padding: .5em
        }

        .k-calendar-range .k-content .k-meta-header, .k-calendar-range .k-content .k-month-header {
            font-size: 12px;
            line-height: 1.5;
            margin: 0 16px;
            opacity: .5;
            padding: .5em 8px;
            text-align: left;
            text-transform: uppercase
        }

        .k-calendar-range .k-content td.k-range-start {
            border-bottom-right-radius: 0;
            border-top-right-radius: 0
        }

        .k-calendar-range .k-content td.k-range-mid {
            border-radius: 0
        }

        .k-calendar-range .k-content td.k-range-end {
            border-bottom-left-radius: 0;
            border-top-left-radius: 0
        }

        .k-calendar-range .k-content td.k-range-split-end, .k-calendar-range .k-content td.k-range-split-start {
            position: relative
        }

            .k-calendar-range .k-content td.k-range-split-end:after, .k-calendar-range .k-content td.k-range-split-start:after {
                bottom: 1px;
                content: "";
                display: block;
                position: absolute;
                top: 1px;
                width: 5px
            }

            .k-calendar-range .k-content td.k-range-split-start:after {
                left: -5px;
                right: auto
            }

            .k-calendar-range .k-content td.k-range-split-end:after {
                left: auto;
                right: -5px
            }

        .k-calendar-range .k-content td.k-weekend {
            background-color: transparent
        }

    .k-calendar-range .k-state-selected {
        background: 0 0;
        border-color: transparent;
        color: inherit
    }

    .k-calendar-range .k-state-focused, .k-calendar-range .k-state-focused.k-state-selected {
        box-shadow: none
    }

    .k-calendar-range td.k-state-disabled {
        opacity: .5
    }

        .k-calendar-range td.k-state-disabled .k-link {
            color: inherit
        }

    .k-calendar-range .k-footer .k-nav-today {
        display: block;
        height: auto;
        padding: 8px 16px;
        width: auto
    }

.k-widget.k-daterangepicker {
    border: 0;
    box-shadow: none
}

.k-calendar-monthview .k-content .k-link {
    width: 2.42857143em
}

.k-calendar-monthview .k-content tbody tr {
    height: 2.42857143em
}

.k-calendar-yearview .k-content {
    margin: 0 -1px
}

    .k-calendar-yearview .k-content .k-link {
        height: 4.28571429em;
        line-height: 3.25;
        width: 4.28571429em
    }

.k-calendar-decadeview .k-content {
    margin: 0 -1px
}

    .k-calendar-decadeview .k-content .k-link {
        height: 4.28571429em;
        line-height: 3.25;
        width: 4.28571429em
    }

.k-calendar-centuryview .k-content {
    margin: 0 -1px
}

    .k-calendar-centuryview .k-content .k-link {
        height: 4.28571429em;
        line-height: 1.625;
        padding: .5em;
        text-align: left;
        white-space: normal;
        width: 4.28571429em
    }

.k-rtl .k-calendar-range {
    text-align: right
}

    .k-rtl .k-calendar-range .k-calendar-nav {
        float: left
    }

.k-scrollview {
    display: block;
    outline: 0;
    overflow: hidden;
    position: relative
}

ul.k-scrollview-wrap {
    cursor: default;
    height: 100%;
    list-style-type: none;
    margin: 0;
    padding: 0;
    position: absolute;
    width: 100%
}

    ul.k-scrollview-wrap img {
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none
    }

    ul.k-scrollview-wrap > li {
        display: inline-block;
        left: 0;
        overflow: hidden;
        position: absolute;
        top: 0
    }

div.k-scrollview-wrap {
    white-space: nowrap
}

    div.k-scrollview-wrap > [data-role=page] {
        display: inline-block;
        min-height: 1px;
        vertical-align: top
    }

.k-scrollview-nav-wrap {
    bottom: 15px;
    height: 20px;
    left: 10px;
    overflow: hidden;
    position: absolute;
    right: 10px
}

.k-scrollview-nav {
    display: block;
    list-style: none;
    margin: 0;
    overflow-x: scroll;
    overflow-y: hidden;
    padding: 5px 0 0;
    pointer-events: auto;
    text-align: center;
    white-space: nowrap
}

    .k-scrollview-nav > li.k-link {
        border-radius: 50%;
        border-style: solid;
        border-width: 1px;
        box-sizing: content-box;
        cursor: pointer;
        display: inline-block;
        height: 8px;
        margin: 0 20px;
        padding: 0;
        pointer-events: all;
        position: relative;
        vertical-align: top;
        width: 8px
    }

        .k-scrollview-nav > li.k-link:before {
            content: "";
            display: block;
            height: 20px;
            left: 50%;
            position: absolute;
            top: 50%;
            transform: translate(-50%,-50%);
            width: 28px
        }

.k-scrollview-next, .k-scrollview-prev {
    cursor: pointer;
    display: table;
    height: 60%;
    overflow: hidden;
    padding: 0;
    position: absolute;
    text-decoration: none;
    top: 20%;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none
}

.k-scrollview-prev {
    left: 0
}

.k-scrollview-next {
    right: 0
}

    .k-scrollview-next span, .k-scrollview-prev span {
        display: table-cell;
        font-size: 4.5em;
        font-weight: 400;
        margin: 0;
        padding: 0;
        position: static;
        vertical-align: middle
    }

.k-scrollview-elements {
    width: 100%
}

.k-scrollview-animation {
    transition-duration: .3s;
    transition-timing-function: ease-in-out
}

.k-i-arrowhead-e:before {
    content: "\e014"
}

.k-i-arrowhead-w:before {
    content: "\e016"
}

@supports (-webkit-user-select:none) {
    div.k-scrollview ul.k-scrollview-wrap li > * {
        pointer-events: auto
    }
}

@supports not (-webkit-user-select:none) {
    div.k-scrollview ul.k-scrollview-wrap li > * {
        pointer-events: none
    }
}

.k-calendar {
    background-color: #fff;
    border-color: #dedee0;
    color: #515967
}

    .k-calendar > .k-header {
        background-color: #f3f3f4;
        background-image: url(textures/highlight.png);
        background-image: none,linear-gradient(180deg,hsla(0,0%,100%,.2) 0,hsla(0,0%,100%,0));
        border-color: #dedee0;
        color: #535b6a
    }

    .k-calendar .k-alt, .k-calendar th {
        background-color: #f5f5f5;
        border-color: #dedee0;
        color: #515967
    }

    .k-calendar .k-other-month, .k-calendar .k-weekend {
        background-color: transparent
    }

    .k-calendar .k-other-month {
        color: #cbcbcf
    }

    .k-calendar .k-out-of-range {
        pointer-events: none;
        visibility: hidden
    }

    .k-calendar .k-today .k-link {
        box-shadow: inset 0 0 0 1px #1984c8;
        color: #1984c8
    }

    .k-calendar td.k-state-hover .k-link {
        background-color: #9ea8b9;
        border-color: #bebec3;
        color: #263248
    }

    .k-calendar td.k-state-hover .k-link, .k-calendar td.k-state-selected .k-link {
        background-image: url(textures/highlight.png);
        background-image: none,linear-gradient(180deg,hsla(0,0%,100%,.2) 0,hsla(0,0%,100%,0))
    }

    .k-calendar td.k-state-selected .k-link {
        background-color: #1984c8;
        border-color: #1a87cd;
        color: #fff
    }

    .k-calendar td.k-state-focused .k-link {
        box-shadow: inset 0 0 2px 1px #1984c8
    }

    .k-calendar .k-footer .k-nav-today {
        color: #1984c8
    }

        .k-calendar .k-footer .k-nav-today:hover {
            color: #1778b6
        }

.k-calendar-range {
    background-color: #fff;
    border-color: #dedee0;
    color: #515967
}

    .k-calendar-range th {
        background-color: transparent;
        color: inherit;
        text-transform: uppercase
    }

    .k-calendar-range td.k-state-hover .k-link {
        background-color: #9ea8b9;
        border-color: #bebec3;
        color: #263248
    }

    .k-calendar-range td.k-state-selected .k-link {
        background-color: #1984c8;
        border-color: #1a87cd;
        color: #fff
    }

    .k-calendar-range td.k-state-focused .k-link {
        box-shadow: inset 0 0 2px 1px #1984c8
    }

    .k-calendar-range td.k-range-end, .k-calendar-range td.k-range-mid, .k-calendar-range td.k-range-start {
        background-image: linear-gradient(transparent 1px,rgba(25,132,200,.3) 0,rgba(25,132,200,.3) calc(100% - 1px),transparent calc(100% - 1px))
    }

.k-edge .k-calendar-range td.k-range-end, .k-edge .k-calendar-range td.k-range-mid, .k-edge .k-calendar-range td.k-range-start, .k-ie .k-calendar-range td.k-range-end, .k-ie .k-calendar-range td.k-range-mid, .k-ie .k-calendar-range td.k-range-start {
    background-color: rgba(25,132,200,.3);
    background-image: none
}

.k-calendar-range td.k-range-split-start:after {
    background-image: linear-gradient(270deg,rgba(25,132,200,.3),transparent)
}

.k-calendar-range td.k-range-split-end:after {
    background-image: linear-gradient(90deg,rgba(25,132,200,.3),transparent)
}

.k-calendar-range .k-footer .k-nav-today {
    background: 0 0;
    color: #1984c8
}

.k-scrollview-nav > li.k-link {
    background-clip: padding-box;
    background-color: #f3f3f4;
    border-color: #c3c3c8
}

    .k-scrollview-nav > li.k-link.k-primary {
        background-color: #1984c8;
        border-color: #2578ad
    }

.k-scrollview-elements {
    color: #fff
}

.k-scrollview-next, .k-scrollview-prev {
    -webkit-tap-highlight-color: transparent;
    background: transparent;
    color: inherit;
    opacity: .7;
    outline-width: 0;
    text-shadow: rgba(0,0,0,.3) 0 0 15px
}

    .k-scrollview-next:hover, .k-scrollview-prev:hover {
        color: #fff;
        opacity: 1
    }

        .k-scrollview-next:hover span:before, .k-scrollview-prev:hover span:before {
            background-color: transparent
        }

.calendars {
    display: flex;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 970px
}

    .calendars .calendar {
        background-color: #fdfdfd;
        border-radius: 6px;
        flex-basis: 100%;
        margin: 0 0 20px;
        padding: 0 8px
    }

.k-calendar .k-content {
    margin-bottom: 1em
}

.k-calendar .k-calendar-view {
    height: auto;
    overflow: hidden;
    position: relative;
    width: 100%;
    z-index: 1
}

.k-calendar td.k-state-selected .k-link {
    border: none
}

.k-calendar .k-header .k-link.k-state-hover {
    background: none;
    opacity: 1
}

.k-calendar .k-header .k-link .k-icon {
    background-color: #ee5d74;
    border-radius: 24px;
    color: #f1f1f1;
    display: inline-block;
    font-size: 14px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    width: 24px
}

.k-calendar .k-header .k-link.k-state-hover .k-icon {
    background-color: #b24657
}

.k-calendar .k-header .k-link.k-nav-fast:focus {
    border-color: #3379b1;
    outline: 2px dotted #3379b1;
    outline-offset: -2px
}

.k-calendar .k-header .k-link:focus .k-icon {
    outline: 2px dotted #af0822;
    outline-offset: 2px
}

.k-i-arrow-60-left:before {
    content: "\f053";
    font-family: Font Awesome\ 5 Free;
    font-weight: 900
}

.k-i-arrow-60-right:before {
    content: "\f054";
    font-family: Font Awesome\ 5 Free;
    font-weight: 900
}

.k-calendar th, .k-calendar > .k-header {
    background-color: transparent
}

.k-calendar .k-month th {
    border-bottom-width: 0;
    height: auto
}

.calendar table td {
    padding: 1px 2px
}

.k-calendar .k-link {
    color: #f86505;
    font-size: 24px;
    font-weight: 400
}

.k-calendar .k-month .k-link {
    width: auto
}

.k-state-disabled, .k-state-disabled .k-link {
    color: #cbcbcf
}

.k-calendar .k-content .k-link {
    padding: .15em .3em
}

.k-calendar .k-month .k-link {
    height: 1.65em
}

.k-calendar .k-today .k-link, .k-calendar td.k-state-focused .k-link, .k-calendar td.k-state-hover .k-link, .k-calendar td.k-state-selected .k-link {
    background-color: #fdb92d;
    background-color: #f86505;
    background-image: none;
    border: none;
    box-shadow: inset 0 0 0 0 #fdfdfd;
    color: #fff;
    font-size: 24px;
    font-weight: 400;
    width: auto
}

.k-calendar td.k-state-focused .k-link {
    border: none
}

.k-calendar td .k-link:focus {
    background-color: transparent;
    color: #333
}

.k-calendar td.k-state-hover .k-link {
    box-shadow: none
}

.k-calendar .k-header .k-link {
    color: #666;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 20px;
    font-weight: 800;
    padding-bottom: 13px;
    padding-top: 13px;
    text-align: center;
    text-transform: uppercase
}

.k-calendar .k-today .k-link {
    background-color: inherit;
    box-shadow: none;
    color: #f86505
}

.k-state-disabled.k-today .k-link {
    color: #cbcbcf
}

@media only screen and (min-width:576px) {
    .calendars .calendar {
        flex-basis: 72%;
        margin: 0 20px 20px
    }

    .calendar table td {
        padding: 7px 2px
    }
}

@media only screen and (min-width:940px) {
    .calendars .calendar {
        flex-basis: 65%
    }
}

.k-calendar td.k-other-month .k-link {
    display: none
}

.k-calendar td.k-other-month {
    height: 0
}

.days {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center
}

.select-timeslot {
    padding: 0
}

#time-items, .time-slots {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.times .time-col {
    max-width: 640px
}

    .time-slots .radio-set, .times .time-col .time {
        flex: 0 0 48%;
        max-width: 300px
    }

.time-slots .radio-set {
    position: relative
}

.time-label {
    background-color: #f1f1f1;
    border-radius: 5px;
    color: #85868a;
    cursor: pointer;
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 15px;
    text-align: center;
    width: 100%
}

    .time-label .dt-time {
        display: block;
        font-size: 23px;
        font-weight: 700;
        height: 30px;
        line-height: 52px
    }

    .time-label .dt-location {
        display: inline-block;
        font-size: .82rem;
        font-weight: 700;
        height: 22px
    }

    .time-label:hover .dt-location, .time-label:hover .dt-time {
        color: #f86505
    }

input.radio-tab:focus + .time-label {
    outline: 2px dashed #f86505;
    outline-offset: 2px
}

input.radio-tab:checked + .time-label {
    background: #f86505;
    color: #fff;
    outline: none
}

    input.radio-tab:checked + .time-label:hover .dt-location, input.radio-tab:checked + .time-label:hover .dt-time {
        color: #fff
    }

.time-slots .radio-set input.radio-tab {
    left: 1em;
    left: -99999rem;
    position: absolute;
    top: 25%
}

@media only screen and (max-width:582px) {
    .times .time-col {
        margin-left: 5px;
        margin-right: 5px;
        width: 100%
    }
}

@media only screen and (max-width:767px) {
    .times .time-col {
        max-width: 520px
    }
}

@media only screen and (max-width:582px) {
    .times .time-col {
        width: 95%
    }
}

.cal-wrapper {
    margin: auto;
    max-width: 80%
}

.cal-options ul {
    padding: 0;
    width: auto
}

.cal-options li {
    list-style: none;
    margin-bottom: .6em
}

    .cal-options li i {
        padding-right: 12px
    }

li a.btn-addto {
    border: 1px solid #ddd;
    display: block;
    font-family: arial,helvetica,sans-serif;
    font-size: 18px;
    font-weight: 400;
    padding: .63em .8em;
    text-decoration: none
}

a.btn-addto:hover {
    background: #fdfdf8;
    text-decoration: underline
}

div.form-modal div.form-modal-header.title-bg-clear {
    background: transparent
}

.form-modal-header .i-btn-close .fa-times {
    color: #333
}

.form-modal-main {
    padding: 1.6em
}

h1.modal-title-sm {
    color: #333;
    font-size: 18px;
    padding: 1em 0
}

html[lang=en] [data-lang=en], html[lang=fr] [data-lang=fr] {
    text-decoration: underline
}

.nav__link.btn {
    background-color: var(--kumon-purple);
    margin: 0 auto 2.5rem;
    max-width: calc(100% - 80px)
}

    .nav__link.btn:hover {
        background-color: var(--kumon-dark-purple)
    }

@media (min-width:1024px) {
    .nav__link.btn {
        display: none
    }
}

.nav.-open .nav__menu {
    display: block;
    opacity: 1;
    pointer-events: all
}

    .nav.-open .nav__menu a {
        opacity: 1;
        transition: opacity .25s ease-in-out .25s
    }

.nav__toggle {
    display: none
}

.nav__label {
    align-items: center;
    display: flex;
    height: 50px;
    margin-right: 1rem;
    position: absolute;
    top: 35px
}

@media (min-width:1024px) {
    .nav__label {
        position: relative;
        top: unset
    }
}

.nav__menu {
    background-color: #fff;
    left: 0;
    min-height: calc(100vh - 120px);
    opacity: 0;
    padding-bottom: 1.875rem;
    padding-top: 0;
    pointer-events: none;
    position: absolute;
    text-align: left;
    top: 140px;
    transition: opacity .4s ease-in-out;
    width: 100%;
    z-index: 1000
}

    .nav__menu, .nav__menu .nav__hamburger {
        display: none
    }

@media (min-width:1024px) {
    .nav__menu {
        border-left: 1px solid #999;
        border-right: 1px solid #999;
        left: 30px;
        min-height: 100%;
        padding-top: 90px;
        top: 0;
        width: 300px
    }

        .nav__menu .nav__hamburger {
            display: block;
            padding-left: 15px
        }
}

@media screen and (min-width:102.375rem) {
    .nav__menu {
        left: calc(50vw - 51.1875rem + 30px)
    }
}

.nav__menu ul {
    margin: 0 auto;
    width: 80%
}

    .nav__menu ul li {
        margin-bottom: .5rem;
        margin-top: .5rem
    }

@media (min-width:768px) {
    .nav__menu ul li {
        line-height: 1.25em
    }
}

.nav__menu ul li:first-child {
    border-top: 1px solid #fff;
    margin-top: 0;
    padding-top: 1rem
}

.nav__menu ul li.-block {
    border-top: 0;
    display: block;
    margin-bottom: 0;
    margin-top: 20px
}

    .nav__menu ul li.-block a {
        background-color: var(--kumon-purple);
        border: none;
        color: #fff;
        font-family: Futura PT,Helvetica,Arial,sans-serif;
        font-size: 1.1rem;
        font-weight: 800;
        padding: 1.4375rem 1rem
    }

        .nav__menu ul li.-block a.active, .nav__menu ul li.-block a:focus, .nav__menu ul li.-block a:hover {
            background-color: var(--kumon-dark-purple)
        }

@media (min-width:1024px) {
    .nav__menu ul li.-block a.active, .nav__menu ul li.-block a:focus, .nav__menu ul li.-block a:hover {
        text-decoration: underline
    }
}

.nav__menu ul li.-white {
    border: 1px solid #ccc;
    margin-top: 10px
}

    .nav__menu ul li.-white a {
        background: #fff;
        color: #da1f95;
        font-weight: 800
    }

        .nav__menu ul li.-white a:hover {
            color: #fff;
            font-weight: 700
        }

@media (min-width:1024px) {
    .nav__menu ul li.active, .nav__menu ul li:focus, .nav__menu ul li:hover {
        font-weight: 700
    }
}

.nav__menu ul a {
    border-bottom: 1px solid var(--kumon-dark-purple);
    color: var(--kumon-dark-purple);
    display: block;
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    opacity: 0;
    padding-bottom: 1rem;
    padding-top: .5rem;
    text-decoration: none;
    transition: opacity .4s ease-in-out
}

@media (min-width:768px) {
    .nav__menu ul a {
        display: block
    }
}

@media (min-width:1024px) {
    .nav__menu ul a {
        font-size: 1.1rem;
        opacity: 1;
        padding-left: 1.375rem;
        padding-right: 1.375rem
    }
}

.nav__menu ul a:focus, .nav__menu ul a:hover {
    font-weight: 700
}

.nav__hamburger {
    background: none;
    border: none
}

    .nav__hamburger:focus, .nav__hamburger:hover {
        cursor: pointer
    }

    .nav__hamburger #bottom, .nav__hamburger #top {
        transition: stroke-dashoffset .5s cubic-bezier(.4,0,.2,1)
    }

    .nav__hamburger #middle {
        opacity: 1;
        transition: opacity .5s cubic-bezier(.4,0,.2,1)
    }

    .nav__hamburger .line {
        fill: none;
        stroke: var(--kumon-purple);
        stroke-miterlimit: 10;
        stroke-width: 1.75px
    }

    .nav__hamburger path {
        stroke-dasharray: 25 45;
        stroke-dashoffset: 0
    }

    .nav__hamburger.x #middle {
        opacity: 0
    }

    .nav__hamburger.x #bottom, .nav__hamburger.x #top {
        stroke-dashoffset: -45
    }

.skip-link {
    background-color: var(--kumon-purple);
    color: #fff;
    display: block;
    left: 0;
    padding: 10px;
    position: fixed;
    text-align: center;
    text-decoration: none;
    top: 0;
    transform: translateY(-40px);
    width: 100vw;
    z-index: 1000
}

    .skip-link:focus {
        transform: translateY(0)
    }

.row {
    display: flex;
    flex-wrap: wrap
}

[class^=col-] {
    flex-basis: 100%
}

@media (min-width:768px) {
    .col-1 {
        flex: 0 0 8.3333333333%
    }

    .col-offset-1 {
        margin-left: 8.3333333333%
    }

    .col-2 {
        flex: 0 0 16.6666666667%
    }

    .col-offset-2 {
        margin-left: 16.6666666667%
    }

    .col-3 {
        flex: 0 0 25%
    }

    .col-offset-3 {
        margin-left: 25%
    }

    .col-4 {
        flex: 0 0 33.3333333333%
    }

    .col-offset-4 {
        margin-left: 33.3333333333%
    }

    .col-5 {
        flex: 0 0 41.6666666667%
    }

    .col-offset-5 {
        margin-left: 41.6666666667%
    }

    .col-6 {
        flex: 0 0 50%
    }

    .col-offset-6 {
        margin-left: 50%
    }

    .col-7 {
        flex: 0 0 58.3333333333%
    }

    .col-offset-7 {
        margin-left: 58.3333333333%
    }

    .col-8 {
        flex: 0 0 66.6666666667%
    }

    .col-offset-8 {
        margin-left: 66.6666666667%
    }

    .col-9 {
        flex: 0 0 75%
    }

    .col-offset-9 {
        margin-left: 75%
    }

    .col-10 {
        flex: 0 0 83.3333333333%
    }

    .col-offset-10 {
        margin-left: 83.3333333333%
    }

    .col-11 {
        flex: 0 0 91.6666666667%
    }

    .col-offset-11 {
        margin-left: 91.6666666667%
    }

    .col-12 {
        flex: 0 0 100%
    }

    .col-offset-12 {
        margin-left: 100%
    }
}

.container, .container-fluid, .container-lg, .container-narrow, .container-wide, .cos, .cta.cta--about .cta__content, .cta.cta--columns, .cta.cta--employment .cta__content, .cta.cta--single, .ctr__content, .fees__content, .hdr__mast, .intro__content, .jumbotron__content, .mt__content, .page.page--request-appointment .scheduler, .page.page--scheduler .scheduler, .steps__content, .stories__content {
    margin-left: auto;
    margin-right: auto;
    width: 100%
}

@media (max-width:399px) {
    .container {
        max-width: 80%
    }
}

.container {
    max-width: 370px
}

.container-narrow, .container-wide, .cos, .cta.cta--about .cta__content, .cta.cta--columns, .cta.cta--employment .cta__content, .cta.cta--single, .ctr__content, .fees__content, .hdr__mast, .intro__content, .jumbotron__content, .mt__content, .page.page--request-appointment .scheduler, .page.page--scheduler .scheduler, .steps__content, .stories__content {
    max-width: calc(100% - 80px)
}

@media (min-width:576px) {
    .container {
        max-width: 546px
    }
}

@media (min-width:768px) {
    .container {
        max-width: 738px
    }
}

@media (min-width:1024px) {
    .container {
        max-width: 994px
    }

    .container-narrow, .cos, .cta.cta--about .cta__content, .cta.cta--columns, .cta.cta--employment .cta__content, .cta.cta--single, .ctr__content, .fees__content, .intro__content, .mt__content, .page.page--request-appointment .scheduler, .page.page--scheduler .scheduler, .steps__content, .stories__content {
        max-width: 90.4375rem;
        padding-left: 40px;
        padding-right: 40px
    }

    .container-wide, .hdr__mast, .jumbotron__content {
        max-width: 102.375rem;
        padding-left: 40px;
        padding-right: 40px
    }
}

@media (min-width:1350px) {
    .container, .container-lg {
        max-width: 1320px
    }
}

.clearfix:after, .clearfix:before, .container-fluid:after, .container-fluid:before, .container:after, .container:before, .row:after, .row:before {
    content: " ";
    display: table
}

.clearfix:after, .container-fluid:after, .container:after, .row:after {
    clear: both
}

.hdr {
    background-color: #fff;
    padding-top: 1.5rem;
    width: 100%;
    z-index: 1
}

@media (min-width:1024px) {
    .hdr {
        padding-top: 3rem
    }
}

.hdr__mast {
    text-align: center;
    width: 100%
}

@media (min-width:1024px) {
    .hdr__mast {
        align-items: center;
        display: flex;
        justify-content: flex-start;
        padding-bottom: 1.875rem
    }
}

.hdr__logo {
    display: block;
    margin: 0 auto;
    max-width: 11rem;
    padding-bottom: 1rem;
    padding-top: 1rem;
    width: 100%
}

@media (min-width:1024px) {
    .hdr__logo {
        margin: 0;
        max-width: 14.0625rem;
        padding-bottom: 1.125rem;
        padding-top: 0;
        text-align: left
    }
}

.hdr__logo img {
    height: auto;
    width: 100%
}

.hdr__title {
    font-size: 1.375rem;
    font-weight: 800;
    margin: 0
}

@media (min-width:1024px) {
    .hdr__title {
        font-family: Futura PT,Helvetica,Arial,sans-serif;
        font-size: 1.5rem;
        font-weight: 900;
        text-align: left
    }
}

.hdr__aside {
    margin-left: auto
}

.hdr__info {
    margin-bottom: 2.125rem;
    margin-top: 2.125rem
}

@media (min-width:1024px) {
    .hdr__info {
        justify-self: end;
        margin-bottom: 0;
        margin-top: 0;
        text-align: right
    }
}

.hdr__info > * {
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    line-height: 1.75rem;
    margin: 0 auto;
    max-width: 70%
}

@media (min-width:1024px) {
    .hdr__info > * {
        max-width: 100%
    }
}

.hdr__info a {
    color: #000;
    text-decoration: none
}

    .hdr__info a:hover {
        text-decoration: underline
    }

.hdr__info-lang {
    margin-bottom: 10px
}

.hdr__info-address span {
    display: block;
    line-height: 0;
    opacity: 0
}

@media (min-width:1024px) {
    .hdr__info-address span {
        display: inline;
        line-height: inherit;
        opacity: 1
    }

    .hdr__info-phone a {
        font-weight: 700
    }

    .hdr__info-hours a {
        text-decoration: underline
    }
}

.hdr__info-social {
    align-items: center;
    display: flex;
    gap: .6875rem;
    justify-content: center;
    margin-top: .625rem
}

    .hdr__info-social li {
        margin: 0
    }

@media (min-width:1024px) {
    .hdr__info-social {
        justify-content: flex-end
    }
}

.jumbotron {
    align-items: center;
    background-color: #333;
    background-position: 100% 100%;
    background-repeat: no-repeat;
    background-size: auto 14.8125rem;
    display: flex;
    height: auto;
    justify-content: flex-start;
    padding-bottom: 14.8125rem;
    position: relative;
    text-align: center;
    width: 100%
}

@media (min-width:768px) {
    .jumbotron--inverse .jumbotron__content {
        color: #fff
    }

    .jumbotron {
        background-size: auto 375px;
        height: 375px;
        padding-bottom: 0;
        text-align: left
    }
}

@media (min-width:1024px) {
    .jumbotron {
        background-size: auto 450px;
        height: 450px
    }
}

@media (min-width:1350px) {
    .jumbotron {
        background-position: 100%;
        background-size: auto 614px;
        height: 614px
    }
}

.jumbotron__content {
    color: var(--kumon-dark-purple);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-weight: 800;
    padding-bottom: 55px
}

@media (max-width:767px) {
    .jumbotron__content {
        background: #fff;
        margin-left: 0;
        min-width: 100vw;
        width: 100vw
    }
}

.jumbotron__inner {
    margin: 0 auto;
    max-width: 650px;
    padding: 0 40px
}

@media (min-width:768px) {
    .jumbotron__inner {
        margin: 0;
        max-width: 50%;
        padding: 0
    }
}

@media (min-width:1024px) {
    .jumbotron__inner {
        max-width: 50%
    }
}

@media (min-width:1350px) {
    .jumbotron__inner {
        max-width: 710px
    }
}

@media (min-width:1600px) {
    .jumbotron__inner {
        max-width: 725px
    }
}

.jumbotron__preheadline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1rem;
    letter-spacing: .0625rem;
    margin-bottom: 1.25rem;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .jumbotron__preheadline {
        font-size: 1.5rem
    }
}

@media (min-width:1350px) {
    .jumbotron__preheadline {
        font-size: 1.75rem;
        line-height: 1.75rem
    }
}

.jumbotron__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.625rem;
    font-weight: 800;
    line-height: 1.875rem;
    margin-bottom: 1.75rem;
    margin-top: 0
}

@media (min-width:1024px) {
    .jumbotron__headline {
        font-size: 2.75rem;
        line-height: 3rem
    }
}

@media (min-width:1350px) {
    .jumbotron__headline {
        font-size: 3rem;
        line-height: 3.5rem
    }
}

.jumbotron__text {
    font-size: 1rem;
    letter-spacing: .02rem;
    line-height: 1.25rem;
    margin-bottom: 0
}

@media (min-width:1024px) {
    .jumbotron__text {
        font-size: 1.5rem
    }
}

@media (min-width:1350px) {
    .jumbotron__text {
        font-size: 1.75rem;
        line-height: 1.75rem
    }
}

.jumbotron__text small {
    font-size: .5rem;
    vertical-align: top
}

@media (min-width:1024px) {
    .jumbotron__text small {
        font-size: .75rem
    }
}

@media (min-width:1350px) {
    .jumbotron__text small {
        font-size: .875rem
    }
}

.jumbotron + .cta {
    margin-top: -2.1875rem
}

    .jumbotron + .cta.cta--single {
        margin-top: -4.375rem
    }

@media (max-width:1023px) {
    .jumbotron + .cta.cta--single {
        margin-left: auto;
        margin-right: auto;
        max-width: calc(100vw - 80px);
        width: calc(100vw - 80px)
    }
}

.page.page--home .jumbotron {
    background-image: -webkit-image-set(url("../images/site/home_1_header-1x.webp") 1x,url("../images/site/home_1_header-1x.jpg") 1x,url("../images/site/home_1_header-2x.webp") 2x,url("../images/site/home_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/home_1_header-1x.webp") 1x,url("../images/site/home_1_header-1x.jpg") 1x,url("../images/site/home_1_header-2x.webp") 2x,url("../images/site/home_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--home .jumbotron {
        background-image: -webkit-image-set(url("../images/site/home_1_header-1x-m.webp") 1x,url("../images/site/home_1_header-1x-m.jpg") 1x,url("../images/site/home_1_header-2x-m.webp") 2x,url("../images/site/home_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/home_1_header-1x-m.webp") 1x,url("../images/site/home_1_header-1x-m.jpg") 1x,url("../images/site/home_1_header-2x-m.webp") 2x,url("../images/site/home_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--home .jumbotron {
        background-image: -webkit-image-set(url("../images/site/home_1_header-1x-t.webp") 1x,url("../images/site/home_1_header-1x-t.jpg") 1x,url("../images/site/home_1_header-2x-t.webp") 2x,url("../images/site/home_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/home_1_header-1x-t.webp") 1x,url("../images/site/home_1_header-1x-t.jpg") 1x,url("../images/site/home_1_header-2x-t.webp") 2x,url("../images/site/home_1_header-2x-t.jpg") 2x)
    }
}

.page.page--about .jumbotron {
    background-image: -webkit-image-set(url("../images/site/about_1_header-1x.webp") 1x,url("../images/site/about_1_header-1x.jpg") 1x,url("../images/site/about_1_header-2x.webp") 2x,url("../images/site/about_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/about_1_header-1x.webp") 1x,url("../images/site/about_1_header-1x.jpg") 1x,url("../images/site/about_1_header-2x.webp") 2x,url("../images/site/about_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--about .jumbotron {
        background-image: -webkit-image-set(url("../images/site/about_1_header-1x-m.webp") 1x,url("../images/site/about_1_header-1x-m.jpg") 1x,url("../images/site/about_1_header-2x-m.webp") 2x,url("../images/site/about_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/about_1_header-1x-m.webp") 1x,url("../images/site/about_1_header-1x-m.jpg") 1x,url("../images/site/about_1_header-2x-m.webp") 2x,url("../images/site/about_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--about .jumbotron {
        background-image: -webkit-image-set(url("../images/site/about_1_header-1x-t.webp") 1x,url("../images/site/about_1_header-1x-t.jpg") 1x,url("../images/site/about_1_header-2x-t.webp") 2x,url("../images/site/about_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/about_1_header-1x-t.webp") 1x,url("../images/site/about_1_header-1x-t.jpg") 1x,url("../images/site/about_1_header-2x-t.webp") 2x,url("../images/site/about_1_header-2x-t.jpg") 2x)
    }
}

.page.page--employment .jumbotron {
    background-image: -webkit-image-set(url("../images/site/employment_1_header-1x.webp") 1x,url("../images/site/employment_1_header-1x.jpg") 1x,url("../images/site/employment_1_header-2x.webp") 2x,url("../images/site/employment_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/employment_1_header-1x.webp") 1x,url("../images/site/employment_1_header-1x.jpg") 1x,url("../images/site/employment_1_header-2x.webp") 2x,url("../images/site/employment_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--employment .jumbotron {
        background-image: -webkit-image-set(url("../images/site/employment_1_header-1x-m.webp") 1x,url("../images/site/employment_1_header-1x-m.jpg") 1x,url("../images/site/employment_1_header-2x-m.webp") 2x,url("../images/site/employment_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/employment_1_header-1x-m.webp") 1x,url("../images/site/employment_1_header-1x-m.jpg") 1x,url("../images/site/employment_1_header-2x-m.webp") 2x,url("../images/site/employment_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--employment .jumbotron {
        background-image: -webkit-image-set(url("../images/site/employment_1_header-1x-t.webp") 1x,url("../images/site/employment_1_header-1x-t.jpg") 1x,url("../images/site/employment_1_header-2x-t.webp") 2x,url("../images/site/employment_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/employment_1_header-1x-t.webp") 1x,url("../images/site/employment_1_header-1x-t.jpg") 1x,url("../images/site/employment_1_header-2x-t.webp") 2x,url("../images/site/employment_1_header-2x-t.jpg") 2x)
    }
}

.page.page--reading .jumbotron {
    background-image: -webkit-image-set(url("../images/site/reading_1_header-1x.webp") 1x,url("../images/site/reading_1_header-1x.jpg") 1x,url("../images/site/reading_1_header-2x.webp") 2x,url("../images/site/reading_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/reading_1_header-1x.webp") 1x,url("../images/site/reading_1_header-1x.jpg") 1x,url("../images/site/reading_1_header-2x.webp") 2x,url("../images/site/reading_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--reading .jumbotron {
        background-image: -webkit-image-set(url("../images/site/reading_1_header-1x-m.webp") 1x,url("../images/site/reading_1_header-1x-m.jpg") 1x,url("../images/site/reading_1_header-2x-m.webp") 2x,url("../images/site/reading_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/reading_1_header-1x-m.webp") 1x,url("../images/site/reading_1_header-1x-m.jpg") 1x,url("../images/site/reading_1_header-2x-m.webp") 2x,url("../images/site/reading_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--reading .jumbotron {
        background-image: -webkit-image-set(url("../images/site/reading_1_header-1x-t.webp") 1x,url("../images/site/reading_1_header-1x-t.jpg") 1x,url("../images/site/reading_1_header-2x-t.webp") 2x,url("../images/site/reading_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/reading_1_header-1x-t.webp") 1x,url("../images/site/reading_1_header-1x-t.jpg") 1x,url("../images/site/reading_1_header-2x-t.webp") 2x,url("../images/site/reading_1_header-2x-t.jpg") 2x)
    }
}

.page.page--math .jumbotron {
    background-image: -webkit-image-set(url("../images/site/math_1_header-1x.webp") 1x,url("../images/site/math_1_header-1x.jpg") 1x,url("../images/site/math_1_header-2x.webp") 2x,url("../images/site/math_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/math_1_header-1x.webp") 1x,url("../images/site/math_1_header-1x.jpg") 1x,url("../images/site/math_1_header-2x.webp") 2x,url("../images/site/math_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--math .jumbotron {
        background-image: -webkit-image-set(url("../images/site/math_1_header-1x-m.webp") 1x,url("../images/site/math_1_header-1x-m.jpg") 1x,url("../images/site/math_1_header-2x-m.webp") 2x,url("../images/site/math_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/math_1_header-1x-m.webp") 1x,url("../images/site/math_1_header-1x-m.jpg") 1x,url("../images/site/math_1_header-2x-m.webp") 2x,url("../images/site/math_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--math .jumbotron {
        background-image: -webkit-image-set(url("../images/site/math_1_header-1x-t.webp") 1x,url("../images/site/math_1_header-1x-t.jpg") 1x,url("../images/site/math_1_header-2x-t.webp") 2x,url("../images/site/math_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/math_1_header-1x-t.webp") 1x,url("../images/site/math_1_header-1x-t.jpg") 1x,url("../images/site/math_1_header-2x-t.webp") 2x,url("../images/site/math_1_header-2x-t.jpg") 2x)
    }
}

.page.page--request-appointment .jumbotron {
    background-image: -webkit-image-set(url("../images/site/request-appointment_1_header-1x.webp") 1x,url("../images/site/request-appointment_1_header-1x.jpg") 1x,url("../images/site/request-appointment_1_header-2x.webp") 2x,url("../images/site/request-appointment_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/request-appointment_1_header-1x.webp") 1x,url("../images/site/request-appointment_1_header-1x.jpg") 1x,url("../images/site/request-appointment_1_header-2x.webp") 2x,url("../images/site/request-appointment_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--request-appointment .jumbotron {
        background-image: -webkit-image-set(url("../images/site/request-appointment_1_header-1x-m.webp") 1x,url("../images/site/request-appointment_1_header-1x-m.jpg") 1x,url("../images/site/request-appointment_1_header-2x-m.webp") 2x,url("../images/site/request-appointment_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/request-appointment_1_header-1x-m.webp") 1x,url("../images/site/request-appointment_1_header-1x-m.jpg") 1x,url("../images/site/request-appointment_1_header-2x-m.webp") 2x,url("../images/site/request-appointment_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--request-appointment .jumbotron {
        background-image: -webkit-image-set(url("../images/site/request-appointment_1_header-1x-t.webp") 1x,url("../images/site/request-appointment_1_header-1x-t.jpg") 1x,url("../images/site/request-appointment_1_header-2x-t.webp") 2x,url("../images/site/request-appointment_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/request-appointment_1_header-1x-t.webp") 1x,url("../images/site/request-appointment_1_header-1x-t.jpg") 1x,url("../images/site/request-appointment_1_header-2x-t.webp") 2x,url("../images/site/request-appointment_1_header-2x-t.jpg") 2x)
    }
}

.page.page--esl .jumbotron {
    background-image: -webkit-image-set(url("../images/site/esl_1_header-1x.webp") 1x,url("../images/site/esl_1_header-1x.jpg") 1x,url("../images/site/esl_1_header-2x.webp") 2x,url("../images/site/esl_1_header-2x.jpg") 2x);
    background-image: image-set(url("../images/site/esl_1_header-1x.webp") 1x,url("../images/site/esl_1_header-1x.jpg") 1x,url("../images/site/esl_1_header-2x.webp") 2x,url("../images/site/esl_1_header-2x.jpg") 2x)
}

@media screen and (max-width:767px) {
    .page.page--esl .jumbotron {
        background-image: -webkit-image-set(url("../images/site/esl_1_header-1x-m.webp") 1x,url("../images/site/esl_1_header-1x-m.jpg") 1x,url("../images/site/esl_1_header-2x-m.webp") 2x,url("../images/site/esl_1_header-2x-m.jpg") 2x);
        background-image: image-set(url("../images/site/esl_1_header-1x-m.webp") 1x,url("../images/site/esl_1_header-1x-m.jpg") 1x,url("../images/site/esl_1_header-2x-m.webp") 2x,url("../images/site/esl_1_header-2x-m.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .page.page--esl .jumbotron {
        background-image: -webkit-image-set(url("../images/site/esl_1_header-1x-t.webp") 1x,url("../images/site/esl_1_header-1x-t.jpg") 1x,url("../images/site/esl_1_header-2x-t.webp") 2x,url("../images/site/esl_1_header-2x-t.jpg") 2x);
        background-image: image-set(url("../images/site/esl_1_header-1x-t.webp") 1x,url("../images/site/esl_1_header-1x-t.jpg") 1x,url("../images/site/esl_1_header-2x-t.webp") 2x,url("../images/site/esl_1_header-2x-t.jpg") 2x)
    }
}

footer {
    background-color: var(--kumon-variant-blue);
    color: var(--neutral-light);
    min-height: 250px;
    padding: 2rem 0;
    position: relative;
    text-align: center
}

@media (min-width:1024px) {
    footer {
        margin-top: 6.25rem
    }
}

.footer-social {
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    margin-top: 1rem
}

.footer-social-title {
    text-transform: uppercase
}

.footer-social ul {
    align-items: flex-start;
    display: flex;
    gap: .5rem;
    justify-content: center;
    list-style: none;
    padding: 1rem
}

nav.footer-nav li, nav.footer-nav ul {
    padding-bottom: 1rem
}

nav.footer-nav li {
    line-height: 1.25em
}

.footer-nav a, .footer-social a {
    color: var(--neutral-light);
    text-decoration: none
}

.copyright, .disclaimer {
    margin-bottom: 1rem;
    margin-top: 1rem
}

@media (min-width:1024px) {
    .footer-nav ul {
        align-items: center;
        -moz-column-gap: 2rem;
        column-gap: 2rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center
    }

        .footer-nav ul li {
            margin-bottom: 0
        }

        .footer-nav ul a {
            font-size: 1rem
        }

            .footer-nav ul a:hover {
                text-decoration: underline
            }

    .copyright, .disclaimer {
        font-size: 1rem
    }
}

.cta {
    position: relative;
    z-index: 2
}

    .cta.cta--columns {
        align-items: stretch;
        display: grid;
        grid-template-columns: 1fr;
        grid-template-rows: 1fr 1fr;
        padding-left: 0;
        padding-right: 0
    }

@media (min-width:1024px) {
    .cta.cta--columns {
        grid-template-columns: repeat(2,1fr);
        grid-template-rows: 1fr
    }
}

.cta.cta--columns > * {
    color: #fff;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    padding: 1.5rem 0;
    text-align: center
}

@media (min-width:1024px) {
    .cta.cta--columns > * {
        padding: 3.4375rem 0
    }
}

.cta.cta--columns .cta__content {
    background-color: var(--kumon-variant-blue)
}

    .cta.cta--columns .cta__content > * {
        font-family: Futura PT,Helvetica,Arial,sans-serif;
        line-height: 3.3125rem
    }

.cta.cta--columns .cta__headline {
    font-size: 2.5rem;
    font-weight: 800;
    letter-spacing: -.1rem;
    line-height: 100%
}

@media (min-width:1024px) {
    .cta.cta--columns .cta__headline {
        font-size: 4rem
    }
}

.cta.cta--columns .cta__text {
    font-size: 1rem;
    font-weight: 800;
    line-height: 150%;
    margin-bottom: 0
}

@media (min-width:1024px) {
    .cta.cta--columns .cta__text {
        font-size: 1.5625rem;
        line-height: 100%
    }
}

.cta.cta--columns .cta__link {
    align-items: center;
    background-color: var(--kumon-dark-purple);
    display: flex;
    font-size: 2rem;
    font-weight: 800;
    justify-content: center;
    letter-spacing: .0625rem;
    text-decoration: none;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .cta.cta--columns .cta__link {
        font-size: 4rem;
        letter-spacing: -.08125rem
    }
}

.cta.cta--columns .cta__link:hover {
    background-color: var(--kumon-purple)
}

.cta.cta--columns .cta__link span {
    text-decoration: underline
}

.cta.cta--single {
    padding-bottom: 1.875rem;
    padding-top: 1.875rem
}

@media (max-width:1023px) {
    .cta.cta--single {
        background-color: var(--kumon-orange);
        margin-left: auto;
        margin-right: auto;
        max-width: 100vw;
        width: 100vw
    }

        .cta.cta--single.cta--purple {
            background-color: var(--kumon-dark-purple)
        }
}

@media (min-width:1024px) {
    .cta.cta--single {
        background-color: transparent;
        margin-left: auto;
        margin-right: auto
    }

        .cta.cta--single.cta--purple .cta__content {
            background-color: var(--kumon-dark-purple)
        }

            .cta.cta--single.cta--purple .cta__content .btn:hover {
                background-color: var(--kumon-purple)
            }
}

.cta.cta--single .cta__content {
    padding: 0;
    text-align: center;
    width: 100%
}

@media (min-width:1024px) {
    .cta.cta--single .cta__content {
        align-items: center;
        background-color: var(--kumon-orange);
        display: grid;
        gap: 34px;
        grid-template-columns: 1fr 200px;
        padding: 4.6875rem 6.25rem;
        text-align: left
    }
}

.cta.cta--single .cta__headline {
    color: #fff;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.75rem;
    font-weight: 800;
    line-height: 100%;
    margin: 0 1.25rem 1.25rem
}

@media (min-width:1024px) {
    .cta.cta--single .cta__headline {
        font-size: 2.5rem;
        line-height: 3rem;
        margin: 0
    }
}

.cta.cta--single .btn {
    font-size: 1.125rem;
    margin: 0 auto;
    width: 80%
}

@media (min-width:1024px) {
    .cta.cta--single .btn {
        width: 100%
    }
}

.cta.cta--center {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2,auto);
    text-align: center
}

@media (min-width:1024px) {
    .cta.cta--center {
        align-items: stretch;
        grid-template-columns: repeat(2,50%);
        grid-template-rows: 1fr
    }
}

.cta.cta--center .cta__content {
    background-color: var(--kumon-purple);
    display: flex;
    flex-direction: column;
    grid-row: 2;
    height: 100%;
    justify-content: center;
    padding: 2.5rem
}

@media (min-width:1024px) {
    .cta.cta--center .cta__content {
        grid-column: 2;
        grid-row: 1;
        padding: 6.25rem 15%
    }
}

.cta.cta--center .cta__content.cta__content--left {
    background-color: var(--kumon-blue);
    grid-row: 1
}

@media (min-width:1024px) {
    .cta.cta--center .cta__content.cta__content--left {
        grid-column: 1
    }
}

.cta.cta--center .cta__headline {
    color: #fff;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    line-height: 100%;
    margin: 0
}

@media (min-width:1024px) {
    .cta.cta--center .cta__headline {
        font-size: 2.5rem
    }
}

.cta.cta--center .cta__text {
    color: #fff;
    font-size: 1.25rem;
    line-height: 100%;
    line-height: 2.25rem;
    margin: 1.75rem auto
}

@media (min-width:1024px) {
    .cta.cta--center .cta__text {
        font-size: 1.25rem
    }
}

.cta.cta--center .cta__text strong {
    display: none;
    font-weight: 700
}

@media (min-width:1024px) {
    .cta.cta--center .cta__text strong {
        display: block
    }
}

.cta.cta--center .cta__media {
    grid-column: 1;
    grid-row: 1;
    height: 18.75rem
}

@media (min-width:1024px) {
    .cta.cta--center .cta__media {
        grid-column: 1;
        grid-row: 1;
        height: 100%
    }
}

.cta.cta--center .cta__media img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center right;
    object-position: center right;
    width: 100%
}

.cta.cta--center .btn {
    font-size: 1.125rem;
    margin: 2.1875rem auto 0;
    width: 90%
}

@media (min-width:1024px) {
    .cta.cta--center .btn {
        width: 100%
    }
}

.cta.cta--about {
    background: var(--kumon-lt-blue);
    margin-top: 3.125rem;
    overflow: hidden;
    padding-bottom: 3.875rem;
    padding-top: 3.25rem;
    position: relative;
    text-align: center
}

@media (min-width:1024px) {
    .cta.cta--about {
        margin-top: 0
    }

        .cta.cta--about:after, .cta.cta--about:before {
            content: "";
            display: block;
            position: absolute
        }

        .cta.cta--about:before {
            background-image: url(../images/site/shapes/Shapes-Spiral-Purple.svg);
            height: 344px;
            right: -170px;
            top: -177px;
            width: 344px
        }

        .cta.cta--about:after, .cta.cta--about:before {
            background-repeat: no-repeat;
            background-size: contain
        }

        .cta.cta--about:after {
            background-image: url(../images/site/shapes/Shapes-Quarters-Purple.svg);
            bottom: -195px;
            height: 390px;
            left: -58px;
            width: 300px
        }
}

.cta.cta--about .cta__headline {
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.875rem;
    font-weight: 700
}

.cta.cta--about .cta__headline, .cta.cta--about .cta__text {
    color: var(--kumon-dark-purple);
    padding-left: 2.5rem;
    padding-right: 2.5rem
}

.cta.cta--about .cta__text {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2.5rem;
    font-weight: 800;
    line-height: 3.375rem;
    margin-top: 1.25rem
}

.cta.cta--about .btn {
    margin: 3.125rem auto 0;
    max-width: 80%
}

@media (min-width:1024px) {
    .cta.cta--about .btn {
        max-width: 590px
    }
}

.cta.cta--employment {
    background: var(--kumon-blue);
    color: #fff
}

@media (min-width:1024px) {
    .cta.cta--employment {
        text-align: center
    }
}

.cta.cta--employment .cta__content {
    padding-bottom: 3.125rem;
    padding-top: 3.125rem
}

@media (min-width:1024px) {
    .cta.cta--employment .cta__content {
        padding-bottom: 8.125rem;
        padding-top: 8.125rem
    }
}

.cta.cta--employment .cta__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    margin: 0
}

@media (min-width:1024px) {
    .cta.cta--employment .cta__headline {
        font-size: 3.125rem
    }
}

.cta.cta--employment .cta__text {
    font-size: 1.125rem;
    margin: 2.8125rem auto 0
}

@media (min-width:1024px) {
    .cta.cta--employment .cta__text {
        font-size: 1.25rem;
        line-height: 2.25rem;
        max-width: 80%
    }
}

.cta.cta--employment .cta__text a {
    color: #fff;
    font-weight: 700;
    text-decoration: none
}

    .cta.cta--employment .cta__text a:hover {
        text-decoration: underline
    }

@media (min-width:1024px) {
    .cta.cta--employment .cta__text br + br {
        display: none
    }

    .mt {
        overflow: hidden;
        padding-bottom: 122px;
        padding-top: 122px
    }

        .mt:nth-of-type(odd) .mt__column--text {
            grid-column: 2
        }

        .mt:nth-of-type(odd) .mt__column--media {
            grid-column: 1
        }

        .mt:nth-of-type(odd) .mt__shape {
            left: -85px;
            right: unset
        }
}

.mt:nth-of-type(2n) {
    background: var(--neutral-dark-gray)
}

    .mt:nth-of-type(2n).mt--light-orange .mt__pretitle, .mt:nth-of-type(2n).mt--light-orange .mt__title, .mt:nth-of-type(2n).mt--orange .mt__pretitle, .mt:nth-of-type(2n).mt--orange .mt__title {
        color: var(--kumon-variant-blue)
    }

@media (min-width:1024px) {
    .mt:nth-of-type(odd) + .cos {
        margin-top: -122px
    }
}

.mt.mt--orange .mt__pretitle, .mt.mt--orange .mt__title {
    color: var(--kumon-dark-orange)
}

.mt.mt--light-orange .mt__pretitle, .mt.mt--light-orange .mt__title {
    color: var(--kumon-orange)
}

.mt.mt--green .mt__pretitle, .mt.mt--green .mt__title {
    color: var(--kumon-variant-blue)
}

.mt.mt--purple .mt__pretitle, .mt.mt--purple .mt__title {
    color: var(--kumon-purple)
}

.mt.mt--left {
    padding-bottom: 0;
    padding-top: 70px
}

@media (min-width:1024px) {
    .mt.mt--left .mt__content {
        max-width: 102.375rem
    }
}

@media (max-width:1023px) {
    .mt.mt--left .mt__media {
        height: calc(100vw - 80px)
    }

        .mt.mt--left .mt__media img {
            -o-object-position: center top;
            object-position: center top
        }
}

.mt.mt--right {
    padding-bottom: 0;
    padding-top: 70px
}

@media (min-width:1024px) {
    .mt.mt--right .mt__content {
        max-width: 102.375rem
    }
}

@media (max-width:1023px) {
    .mt.mt--right .mt__media {
        height: calc(100vw - 80px)
    }

        .mt.mt--right .mt__media img {
            -o-object-position: center top;
            object-position: center top
        }
}

.mt.mt--bio {
    background: none;
    overflow: visible;
    padding-bottom: 40px
}

@media (min-width:1024px) {
    .mt.mt--bio + .mt--bio {
        padding-top: 0
    }

    .mt.mt--bio {
        padding-bottom: 122px;
        padding-top: 122px
    }
}

.mt.mt--bio .mt__content {
    display: grid;
    padding-top: 0
}

.mt.mt--bio .mt__column--text {
    grid-column: 1;
    grid-row: 2
}

@media (min-width:1024px) {
    .mt.mt--bio .mt__column--text {
        grid-column: 1;
        grid-row: 1;
        padding-right: 0
    }
}

.mt.mt--bio .mt__column--media {
    grid-column: 1;
    grid-row: 1
}

@media (max-width:1023px) {
    .mt.mt--bio .mt__column--media {
        margin: 0
    }
}

@media (min-width:1024px) {
    .mt.mt--bio .mt__column--media {
        grid-column: 2;
        grid-row: 1
    }
}

.mt.mt--bio .mt__media {
    height: 260px;
    margin-bottom: 42px;
    margin-top: 40px;
    width: calc(100vw - 80px)
}

@media (min-width:1024px) {
    .mt.mt--bio .mt__media {
        height: auto;
        margin: 0 auto;
        max-width: 580px;
        width: 100%
    }
}

.mt.mt--bio .mt__media img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center center;
    object-position: center center
}

@media (min-width:1024px) {
    .mt.mt--bio .mt__shape {
        left: -85px;
        right: unset
    }
}

.mt__content {
    padding-top: 2.5rem
}

@media (min-width:1024px) {
    .mt__content {
        align-items: center;
        display: grid;
        gap: 3rem;
        grid-template-columns: repeat(2,1fr);
        grid-template-rows: 1fr;
        padding-top: 0
    }
}

.mt__column--text {
    padding-right: 0
}

@media (min-width:1024px) {
    .mt__column--text {
        grid-column: 1;
        grid-row: 1;
        padding-right: 5%
    }
}

.mt__column--media {
    margin: 2.5rem -2.5rem 0
}

@media (min-width:1024px) {
    .mt__column--media {
        grid-column: 2;
        grid-row: 1;
        margin: 0;
        position: relative
    }
}

.mt__pretitle {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.1875rem;
    font-weight: 800;
    line-height: 1.375rem;
    margin: 0
}

@media (min-width:1024px) {
    .mt__pretitle {
        font-size: 1.5625rem;
        line-height: 2.25rem
    }
}

.mt__title {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    line-height: 2.125rem;
    margin: .5625rem 0 .875rem
}

@media (min-width:1024px) {
    .mt__title {
        font-size: 2.5rem;
        line-height: 3.125rem;
        padding-right: 0
    }
}

.mt__text {
    font-size: 1.125rem;
    line-height: 1.8125rem;
    margin: 0
}

@media (min-width:1024px) {
    .mt__text {
        font-size: 1.25rem;
        line-height: 2.25rem
    }
}

.mt__text a {
    color: #000;
    font-weight: 700;
    text-decoration: none
}

    .mt__text a:hover {
        text-decoration: underline
    }

.mt .btn {
    margin-top: 3rem;
    width: 100%
}

@media (min-width:1024px) {
    .mt .btn {
        width: 80%
    }
}

.mt__shape {
    display: none;
    pointer-events: none
}

@media (min-width:1024px) {
    .mt__shape {
        display: block;
        height: 270px;
        position: absolute;
        right: -120px;
        top: -100px;
        width: 270px
    }
}

.mt__media {
    height: 260px;
    margin: 0 auto;
    max-width: 100vw;
    width: 100vw
}

@media (min-width:768px) {
    .mt__media {
        height: 400px
    }
}

@media (min-width:1024px) {
    .mt__media {
        height: 100%;
        width: 100%
    }
}

.mt__media img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    width: 100%
}

.mt__read-more {
    color: #000;
    display: block;
    font-weight: 700;
    margin-top: 20px;
    text-decoration: none
}

    .mt__read-more:hover {
        text-decoration: underline
    }

@media (min-width:1024px) {
    .mt__truncated--open + .mt__column--media {
        align-self: flex-start
    }
}

.cos {
    padding-bottom: 46px;
    padding-top: 46px;
    text-align: center
}

@media (min-width:1024px) {
    .cos {
        padding-bottom: 122px;
        padding-top: 122px
    }
}

.cos__headline {
    color: var(--kumon-variant-blue);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    margin: 0 0 1.875rem;
    text-transform: uppercase
}

@media (min-width:1024px) {
    .cos__headline {
        font-size: 2rem
    }
}

.cos__items {
    display: grid;
    gap: 2.0625rem;
    grid-template-columns: 1fr
}

@media (min-width:1024px) {
    .cos__items {
        gap: 3rem;
        grid-template-columns: repeat(3,1fr)
    }
}

.co__media {
    margin: 0 auto;
    width: 8.75rem
}

@media (min-width:1024px) {
    .co__media {
        width: 9.6875rem
    }
}

.co__media img {
    height: auto;
    width: 100%
}

.co__title {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.125rem;
    font-weight: 800;
    margin: .375rem 0 1.25rem
}

@media (min-width:1024px) {
    .co__title {
        font-size: 1.25rem;
        line-height: 2rem
    }
}

.co__text {
    font-size: 1.125rem;
    line-height: 1.8125rem
}

@media (min-width:1024px) {
    .co__text {
        font-size: 1.25rem;
        line-height: 2.25rem
    }
}

.ctr {
    overflow: hidden;
    padding-bottom: 40px;
    padding-top: 40px;
    position: relative
}

@media (min-width:1024px) {
    .ctr {
        padding-top: 122px
    }
}

.ctr:after, .ctr:before {
    background-size: contain;
    content: "";
    display: block;
    height: 200px;
    position: absolute;
    right: -100px;
    top: 0;
    width: 200px
}

@media (max-width:400px) {
    .ctr:after, .ctr:before {
        display: none
    }
}

.ctr:after {
    background-image: url(../images/site/shapes/Shapes-Triangles-Yellow.svg)
}

@media (min-width:1024px) {
    .ctr:after {
        right: 20px
    }
}

.ctr:before {
    background-image: url(../images/site/shapes/Shapes-Spiral-Orange.svg);
    display: none
}

@media (min-width:1024px) {
    .ctr:before {
        display: block;
        right: 220px;
        top: -100px
    }
}

.ctr__headline {
    color: var(--kumon-variant-blue);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    line-height: 100%;
    margin: 0;
    max-width: 320px
}

@media (min-width:1024px) {
    .ctr__headline {
        font-size: 2.5rem;
        max-width: 100%
    }
}

.ctr__columns {
    margin-top: .9375rem
}

@media (min-width:1024px) {
    .ctr__columns {
        display: grid;
        gap: 85px;
        grid-template-columns: repeat(2,1fr);
        margin-top: 3.4375rem
    }
}

.ctr__column + .ctr__column {
    margin-top: 1.875rem
}

@media (min-width:1024px) {
    .ctr__column + .ctr__column {
        margin-top: 0
    }
}

.ctr__title {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.125rem;
    font-weight: 800;
    margin: 0
}

@media (min-width:1024px) {
    .ctr__title {
        font-size: 1.75rem
    }
}

.ctr__text {
    font-size: 1.125rem;
    line-height: 1.8125rem;
    margin-top: 1.25rem;
    padding-right: 1.25rem
}

@media (min-width:1024px) {
    .ctr__text {
        font-size: 1.25rem;
        line-height: 2rem;
        padding-right: 0
    }
}

.ctr__dds {
    margin-top: 1.25rem
}

@media (min-width:1024px) {
    .ctr__dds {
        max-width: 28.125rem
    }
}

.ctr__dd {
    border-bottom: 1px solid var(--neutral-dark2)
}

    .ctr__dd > * {
        font-family: Fira Sans,Helvetica,Arial,sans-serif;
        font-size: 1.25rem;
        line-height: 2rem
    }

    .ctr__dd:last-child {
        border-bottom: none
    }

.ctr__dd-title {
    align-items: center;
    background: none;
    border: none;
    display: flex;
    justify-content: space-between;
    margin: 0;
    padding: .5rem;
    width: 100%
}

    .ctr__dd-title:after {
        content: "^";
        display: block;
        margin-top: -14px;
        transform: rotate(180deg)
    }

    .ctr__dd-title:hover {
        color: var(--kumon-dark-purple);
        cursor: pointer
    }

.ctr__dd-content {
    display: none;
    margin: 0 .75rem .75rem
}

    .ctr__dd-content.show {
        display: block
    }

.steps {
    background-color: var(--kumon-variant-blue);
    color: #fff;
    padding: 40px 0;
    text-align: center
}

@media (min-width:1024px) {
    .steps {
        padding: 120px 0
    }
}

.steps__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.5625rem;
    font-weight: 800;
    margin: 0
}

@media (min-width:1024px) {
    .steps__headline {
        font-size: 2.5rem
    }
}

.steps__items {
    display: grid;
    gap: 32px;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4,1fr);
    margin-top: 4.375rem
}

@media (min-width:1024px) {
    .steps__items {
        gap: 64px;
        grid-template-columns: repeat(4,1fr);
        grid-template-rows: 1fr
    }
}

.steps__text {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-weight: 800;
    letter-spacing: 1px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.25rem;
    width: 100%
}

@media (min-width:1024px) {
    .steps__text {
        width: 80%
    }
}

.steps .btn {
    margin-left: auto;
    margin-right: auto;
    margin-top: 40px;
    max-width: 500px;
    min-width: 200px;
    width: 50%
}

.step__number {
    align-items: center;
    background: #fff;
    border-radius: 50%;
    color: var(--kumon-variant-blue);
    display: flex;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2.25rem;
    font-weight: 800;
    height: 66px;
    justify-content: center;
    margin: 0 auto;
    width: 66px
}

@media (min-width:1024px) {
    .step__number {
        font-size: 2.5rem;
        height: 85px;
        width: 85px
    }
}

.step__text {
    font-size: 1.25rem;
    font-weight: lighter;
    line-height: 1.5625rem;
    margin-top: 1.25rem
}

@media (min-width:1024px) {
    .step__text {
        margin-top: 1.5625rem
    }
}

.subnav {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3,1fr);
    margin-left: 40px;
    margin-right: 40px;
    margin-top: 40px
}

@media (min-width:1024px) {
    .subnav {
        grid-template-columns: repeat(3,1fr);
        grid-template-rows: 1fr;
        margin-left: 0;
        margin-right: 0;
        margin-top: 70px
    }
}

.subnav a {
    color: #fff;
    font-size: 1.5rem;
    padding: 1.5rem;
    text-align: center
}

@media (min-width:1024px) {
    .subnav a {
        padding: 2rem
    }
}

.subnav a:hover {
    text-decoration: none
}

.subnav a:first-child {
    background-color: var(--kumon-orange)
}

    .subnav a:first-child:hover {
        background-color: var(--neutral-gray);
        color: #000
    }

.subnav a:nth-child(2) {
    background-color: var(--kumon-purple)
}

    .subnav a:nth-child(2):hover {
        background-color: var(--kumon-dark-purple)
    }

.subnav a:nth-child(3) {
    background-color: var(--kumon-variant-blue)
}

    .subnav a:nth-child(3):hover {
        background-color: var(--kumon-lt-blue)
    }

.subnav a.subnav--blue {
    background-color: var(--kumon-blue)
}

    .subnav a.subnav--blue:hover {
        background-color: var(--kumon-lt-blue)
    }

.stories {
    background: var(--kumon-dark-purple);
    padding-bottom: 2.5rem;
    padding-top: 2.5rem
}

@media (min-width:1024px) {
    .stories {
        padding-bottom: 7.5rem;
        padding-top: 7.5rem
    }
}

.stories__content {
    color: #fff;
    text-align: center
}

.stories__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.5625rem;
    font-weight: 800;
    margin: 0 0 3.75rem
}

@media (min-width:1024px) {
    .stories__headline {
        font-size: 2.5rem
    }
}

.stories__items {
    display: flex;
    flex-direction: column;
    gap: 2.1875rem
}

@media (min-width:1024px) {
    .stories__items {
        flex-direction: row;
        gap: 5.25rem
    }
}

.story__image {
    height: 100%;
    margin: 0 auto .9375rem;
    max-height: 105px;
    max-width: 105px;
    text-align: center;
    width: 100%
}

@media (min-width:1024px) {
    .story__image {
        margin-bottom: 3.4375rem;
        max-height: 170px;
        max-width: 170px
    }
}

.story__image img {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.story__name {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.5625rem;
    font-weight: 800;
    margin: 0 0 1.25rem
}

@media (min-width:1024px) {
    .story__name {
        font-size: 2.1875rem
    }
}

.story__text {
    font-size: 1.125rem;
    line-height: 1.8125rem
}

@media (min-width:1024px) {
    .story__text {
        font-size: 1.25rem
    }
}

.fees {
    overflow: hidden;
    padding-bottom: 3.125rem;
    padding-top: 3.25rem;
    position: relative
}

@media (min-width:1024px) {
    .fees {
        padding-bottom: 6.25rem;
        padding-top: 7.5rem
    }

        .fees:after {
            background-image: url(../images/site/shapes/Shapes-Arrow-Cobalt.svg);
            background-repeat: no-repeat;
            background-size: contain;
            content: "";
            display: block;
            height: 275px;
            position: absolute;
            right: -60px;
            top: -100px;
            width: 275px
        }
}

.fees__headline {
    color: var(--kumon-purple);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    margin: 0 0 3.75rem
}

@media (min-width:1024px) {
    .fees__headline {
        font-size: 2.5rem
    }
}

.fees__items {
    display: flex;
    flex-direction: column;
    gap: 1.875rem
}

@media (min-width:1024px) {
    .fees__items {
        flex-direction: row;
        gap: 5.25rem
    }
}

.fee__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.875rem;
    font-weight: 800;
    margin: 0 0 .9375rem
}

.fee__text {
    font-size: 1.25rem;
    line-height: 2.25rem
}

.intro {
    padding-top: 2.625rem;
    position: relative
}

@media (min-width:1024px) {
    .intro {
        padding-bottom: 9.375rem;
        padding-top: 8.125rem
    }
}

.intro:nth-child(odd) {
    background-color: var(--neutral-dark-gray)
}

    .intro:nth-child(odd) .intro__col.intro__col--text {
        grid-column: 1;
        grid-row: 1
    }

@media (min-width:1024px) {
    .intro:nth-child(odd) .intro__col.intro__col--text {
        grid-column: 1;
        grid-row: 1
    }
}

.intro:nth-child(odd) .intro__col.intro__col--image {
    grid-column: 1;
    grid-row: 2
}

@media (min-width:1024px) {
    .intro:nth-child(odd) .intro__col.intro__col--image {
        grid-column: 2;
        grid-row: 1
    }
}

.intro__preheadline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.125rem;
    font-weight: 800;
    line-height: 120%;
    margin: 0
}

@media (min-width:1024px) {
    .intro__preheadline {
        font-size: 1.875rem
    }
}

.intro__headline {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    line-height: 120%;
    margin: .625rem 0 0
}

@media (min-width:1024px) {
    .intro__headline {
        font-size: 3.125rem
    }
}

.intro__text {
    font-size: 1.125rem;
    line-height: 1.8125rem;
    margin-top: 1.875rem
}

@media (min-width:1024px) {
    .intro__text {
        font-size: 1.25rem;
        line-height: 2.25rem
    }
}

.intro__cols {
    align-items: center;
    display: grid;
    grid-template-rows: repeat(2,auto);
    justify-content: flex-start;
    row-gap: 30px
}

@media (min-width:1024px) {
    .intro__cols {
        -moz-column-gap: 3rem;
        column-gap: 3rem;
        grid-template-columns: 1fr 1fr;
        padding-top: 2.5rem;
        row-gap: 0
    }
}

.intro__col.intro__col--text {
    grid-column: 1;
    grid-row: 1;
    max-width: calc(100vw - 80px)
}

    .intro__col.intro__col--text > p:first-child {
        margin-top: 0
    }

@media (min-width:1024px) {
    .intro__col.intro__col--text {
        grid-column: 2;
        grid-row: 1;
        max-width: 100%
    }
}

.intro__col.intro__col--image {
    grid-column: 1;
    grid-row: 2
}

@media (min-width:1024px) {
    .intro__col.intro__col--image {
        grid-column: 1;
        grid-row: 1
    }
}

.intro__image {
    height: 100%;
    margin-left: -40px;
    width: 100vw
}

@media (min-width:1024px) {
    .intro__image {
        margin-left: 0;
        width: 100%
    }
}

.intro__image img {
    height: 100%;
    margin-bottom: -3px;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center bottom;
    object-position: center bottom;
    width: 100%
}

.intro__shape {
    display: none
}

@media (min-width:1024px) {
    .intro__shape {
        bottom: 0;
        display: block;
        height: 300px;
        position: absolute;
        right: 0;
        width: 400px
    }
}

.intro ul {
    list-style: none
}

    .intro ul li {
        align-items: flex-start;
        display: flex;
        font-size: 1.125rem;
        line-height: 1.8125rem;
        margin-top: .625rem
    }

@media (min-width:1024px) {
    .intro ul li {
        font-size: 1.25rem;
        line-height: 2.25rem
    }
}

.intro ul li:before {
    color: var(--kumon-green);
    content: ">";
    font-size: 1.5rem;
    margin-left: .625rem;
    margin-right: 1.25rem
}

@media (min-width:1024px) {
    .intro ul li:before {
        font-size: 1.875rem
    }
}

.intro.intro--orange .intro__headline, .intro.intro--orange .intro__preheadline, .intro.intro--orange h2 {
    color: var(--kumon-orange)
}

.intro.intro--green .intro__headline, .intro.intro--green .intro__preheadline, .intro.intro--green h2 {
    color: var(--kumon-variant-blue)
}

.intro.intro--purple .intro__headline, .intro.intro--purple .intro__preheadline, .intro.intro--purple h2 {
    color: var(--kumon-purple)
}

.intro.intro--center {
    padding: 2.5rem 0
}

@media (min-width:1024px) {
    .intro.intro--center {
        margin: 0 auto;
        max-width: 1200px;
        padding: 8.125rem 2.5rem 9.375rem;
        text-align: center
    }
}

.intro.intro--center .intro__content h2 {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.6875rem;
    font-weight: 800;
    line-height: 120%;
    margin: 0
}

    .intro.intro--center .intro__content h2 br {
        display: none
    }

@media (min-width:1024px) {
    .intro.intro--center .intro__content h2 {
        font-size: 3.125rem
    }

        .intro.intro--center .intro__content h2 br {
            display: block
        }
}

.intro.intro--center .intro__content p {
    font-size: 1.125rem;
    line-height: 1.8125rem;
    margin-top: 2.375rem
}

@media (min-width:1024px) {
    .intro.intro--center .intro__content p {
        font-size: 1.25rem;
        line-height: 2.25rem
    }
}

.pb-0 {
    padding-bottom: 0
}

.btn {
    background: var(--kumon-dark-purple);
    color: #fff;
    display: block;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-weight: 800;
    letter-spacing: .03125rem;
    line-height: 1.5rem;
    padding: 1.125rem 1.3125rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    width: 100%
}

    .btn:hover {
        background-color: var(--kumon-purple)
    }

    .btn.btn--inverse {
        background-color: #fff;
        color: var(--kumon-dark-purple)
    }

        .btn.btn--inverse:hover {
            background-color: var(--kumon-dark-purple);
            color: #fff
        }

dialog {
    border: none
}

.modal {
    background-color: rgba(0,0,0,.4);
    height: 100%;
    margin: 0;
    max-height: 100vh;
    max-width: 100vw;
    width: 100%;
    z-index: 3
}

    .modal:-internal-dialog-in-top-layer, .modal::backdrop {
        margin: 0;
        max-height: 100%;
        max-width: 100%
    }

.close {
    background: none;
    border: none;
    color: var(--neutral-dark);
    float: right;
    font-size: 28px;
    font-weight: 700;
    padding-right: 10px
}

    .close span {
        position: absolute;
        top: 50%;
        transform: translateY(-50%)
    }

    .close:focus, .close:hover {
        color: var(--neutral-dark);
        cursor: pointer;
        text-decoration: none
    }

.modal-content {
    animation: blowUpModal 1s cubic-bezier(.165,.84,.44,1) forwards;
    background-color: var(--neutral-light);
    box-shadow: 0 0 10px 0 rgba(0,0,0,.2),0 5px 10px 0 rgba(0,0,0,.19);
    height: auto;
    margin: 0 auto;
    max-width: 600px;
    width: 90%
}

#modal-parent {
    overflow: auto;
    text-align: center
}

    #modal-parent .modal-content {
        padding-top: 0
    }

    #modal-parent .modal-confirmation {
        display: none;
        margin: 0 auto;
        max-width: 85%;
        padding: 30px 65px
    }

        #modal-parent .modal-confirmation .columns {
            display: grid;
            gap: 15px;
            grid-template-columns: repeat(2,1fr);
            margin: 35px 0
        }

    #modal-parent p {
        font-size: 1.125rem;
        line-height: 1.5rem
    }

@media (max-width:768px) {
    #modal-parent p {
        font-size: .875rem;
        line-height: 1.25rem
    }
}

#modal-parent form {
    padding: 30px 45px
}

    #modal-parent form input[type=email] {
        background: var(--neutral-dark-gray);
        border: 1px solid var(--neutral-dark2);
        color: #000;
        display: block;
        font-size: 1.375rem;
        margin: 30px auto;
        padding: 5px;
        width: 100%
    }

@media (max-width:768px) {
    #modal-parent form input[type=email] {
        font-size: 1rem
    }
}

#modal-parent form input[type=checkbox] {
    float: left;
    margin-top: 5px
}

#modal-parent form button {
    font-size: 1.125rem;
    margin: 30px auto;
    max-width: 300px
}

@media (max-width:768px) {
    #modal-parent form button {
        font-size: 1rem;
        margin-bottom: 10px
    }
}

.modal-header {
    background-color: var(--kumon-lt-blue);
    color: var(--kumon-dark-purple);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2.375rem;
    font-weight: 800;
    padding: 5rem 2.1875rem;
    text-align: center
}

@media (max-width:768px) {
    .modal-header {
        font-size: 1.75rem;
        padding: 2.5rem 1.25rem
    }
}

dialog.mod-close, dialog.mod-close .modal-content {
    animation: blowUpModalTwo .5s cubic-bezier(.165,.84,.44,1) forwards
}

.youtube-video {
    aspect-ratio: 16/9;
    width: 100%
}

.modal {
    animation-duration: 1s;
    animation-iteration-count: 1;
    animation-name: fadeInOut
}

@keyframes fadeInOut {
    0% {
        background-color: #000;
        background-color: transparent
    }

    to {
        background-color: #000;
        background-color: rgba(0,0,0,.4)
    }
}

@keyframes blowUpModal {
    0% {
        transform: scale(0)
    }

    to {
        transform: scale(1)
    }
}

@keyframes blowUpModalTwo {
    0% {
        opacity: 1;
        transform: scale(1)
    }

    to {
        opacity: 0;
        transform: scale(1)
    }
}

.page.page--scheduler .hdr .nav__menu {
    border-bottom: 1px solid #707070
}

.page.page--scheduler .hdr .nav__link {
    display: none
}

.page.page--request-appointment .scheduler__title, .page.page--scheduler .scheduler__title {
    color: var(--kumon-dark-purple);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 4.5rem;
    font-weight: 800;
    line-height: 120%;
    margin: 6.25rem 0 0;
    text-align: center
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__title, .page.page--scheduler .scheduler__title {
        font-size: 1.625rem;
        margin: 1.875rem 3.125rem 0
    }
}

.page.page--request-appointment .scheduler__steps, .page.page--scheduler .scheduler__steps {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3,1fr);
    margin-top: 4.6875rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__steps, .page.page--scheduler .scheduler__steps {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(3,1fr)
    }
}

.page.page--request-appointment .scheduler__step, .page.page--scheduler .scheduler__step {
    background: none;
    border: 1px solid rgba(0,0,0,.25);
    color: rgba(0,0,0,.25);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2rem;
    font-weight: 800;
    padding: 2.9375rem 0 2.5625rem;
    position: relative;
    text-align: center
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__step, .page.page--scheduler .scheduler__step {
        align-items: center;
        display: flex;
        gap: 1.25rem;
        justify-content: flex-start;
        padding: .4375rem 1.25rem
    }
}

.page.page--request-appointment .scheduler__step.scheduler__step--active, .page.page--scheduler .scheduler__step.scheduler__step--active {
    color: #fff
}

    .page.page--request-appointment .scheduler__step.scheduler__step--active .scheduler__step-number, .page.page--scheduler .scheduler__step.scheduler__step--active .scheduler__step-number {
        background: var(--kumon-purple)
    }

    .page.page--request-appointment .scheduler__step.scheduler__step--active:first-child, .page.page--scheduler .scheduler__step.scheduler__step--active:first-child {
        background-color: var(--kumon-variant-blue);
        border-color: var(--kumon-variant-blue)
    }

    .page.page--request-appointment .scheduler__step.scheduler__step--active:nth-child(2), .page.page--scheduler .scheduler__step.scheduler__step--active:nth-child(2) {
        background-color: var(--kumon-purple);
        border-color: var(--kumon-purple)
    }

        .page.page--request-appointment .scheduler__step.scheduler__step--active:nth-child(2) .scheduler__step-number, .page.page--scheduler .scheduler__step.scheduler__step--active:nth-child(2) .scheduler__step-number {
            background-color: var(--kumon-dark-purple)
        }

    .page.page--request-appointment .scheduler__step.scheduler__step--active:nth-child(3), .page.page--scheduler .scheduler__step.scheduler__step--active:nth-child(3) {
        background-color: var(--kumon-blue);
        border-color: var(--kumon-blue)
    }

        .page.page--request-appointment .scheduler__step.scheduler__step--active:nth-child(3) .scheduler__step-number, .page.page--scheduler .scheduler__step.scheduler__step--active:nth-child(3) .scheduler__step-number {
            background-color: var(--kumon-dark-purple)
        }

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__step-title, .page.page--scheduler .scheduler__step-title {
        font-size: 1.125rem
    }
}

.page.page--request-appointment .scheduler__step-number, .page.page--scheduler .scheduler__step-number {
    align-items: center;
    background: #bfbfbf;
    border-radius: 50%;
    color: #fff;
    display: flex;
    justify-content: center;
    left: calc(50% - 17.5px);
    max-height: 4.375rem;
    max-width: 4.375rem;
    min-height: 4.375rem;
    min-width: 4.375rem;
    position: absolute;
    top: -2.1875rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__step-number, .page.page--scheduler .scheduler__step-number {
        font-size: 1.875rem;
        left: unset;
        max-height: 2.4375rem;
        max-width: 2.4375rem;
        min-height: 2.4375rem;
        min-width: 2.4375rem;
        position: relative;
        top: unset
    }
}

.page.page--request-appointment .scheduler__action, .page.page--scheduler .scheduler__action {
    display: none
}

    .page.page--request-appointment .scheduler__action.scheduler__action--active, .page.page--scheduler .scheduler__action.scheduler__action--active {
        display: block
    }

    .page.page--request-appointment .scheduler__action[data-step="1"] .scheduler__footer, .page.page--scheduler .scheduler__action[data-step="1"] .scheduler__footer {
        padding-top: 44px
    }

    .page.page--request-appointment .scheduler__action[data-step="2"], .page.page--scheduler .scheduler__action[data-step="2"] {
        padding-top: 2.5rem
    }

.page.page--request-appointment .scheduler .calendar, .page.page--scheduler .scheduler .calendar {
    margin-top: 3.125rem
}

.page.page--request-appointment .scheduler__call, .page.page--request-appointment .scheduler__footer, .page.page--scheduler .scheduler__call, .page.page--scheduler .scheduler__footer {
    font-size: 1.25rem;
    text-align: center
}

    .page.page--request-appointment .scheduler__call :not(span):not(.btn), .page.page--request-appointment .scheduler__footer :not(span):not(.btn), .page.page--scheduler .scheduler__call :not(span):not(.btn), .page.page--scheduler .scheduler__footer :not(span):not(.btn) {
        color: #000;
        font-weight: 700
    }

    .page.page--request-appointment .scheduler__call a:not(.btn):hover, .page.page--request-appointment .scheduler__footer a:not(.btn):hover, .page.page--scheduler .scheduler__call a:not(.btn):hover, .page.page--scheduler .scheduler__footer a:not(.btn):hover {
        color: var(--kumon-orange)
    }

.page.page--request-appointment .scheduler__find, .page.page--scheduler .scheduler__find {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-top: 2.3125rem
}

    .page.page--request-appointment .scheduler__find:before, .page.page--scheduler .scheduler__find:before {
        content: "<";
        margin-right: 10px
    }

.page.page--request-appointment .scheduler__footer, .page.page--scheduler .scheduler__footer {
    padding-bottom: 100px
}

@media (min-width:1024px) {
    .page.page--request-appointment .scheduler__footer, .page.page--scheduler .scheduler__footer {
        padding-bottom: 0
    }
}

.page.page--request-appointment .scheduler__footer .btn, .page.page--scheduler .scheduler__footer .btn {
    margin-left: auto;
    margin-right: auto;
    max-width: 31.125rem
}

.page.page--request-appointment .scheduler__footer > span, .page.page--scheduler .scheduler__footer > span {
    display: block;
    margin-top: 61px
}

.page.page--request-appointment .scheduler__countdown, .page.page--scheduler .scheduler__countdown {
    color: #7f7f7f;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2.5rem;
    font-weight: 800;
    line-height: 2.25rem;
    margin-left: auto;
    text-align: right
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__countdown, .page.page--scheduler .scheduler__countdown {
        font-size: 1.5rem;
        line-height: 1.375rem
    }
}

.page.page--request-appointment .scheduler__countdown-info, .page.page--scheduler .scheduler__countdown-info {
    font-size: 1.5625rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__countdown-info, .page.page--scheduler .scheduler__countdown-info {
        font-size: 1rem
    }
}

.page.page--request-appointment .scheduler__header, .page.page--scheduler .scheduler__header {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 3.0625rem;
    margin-top: 3.875rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__header, .page.page--scheduler .scheduler__header {
        align-items: flex-start;
        flex-direction: column-reverse;
        margin-top: 1.25rem
    }
}

.page.page--request-appointment .scheduler__header.scheduler__header--green, .page.page--scheduler .scheduler__header.scheduler__header--green {
    color: var(--kumon-green)
}

.page.page--request-appointment .scheduler__header.scheduler__header--orange, .page.page--scheduler .scheduler__header.scheduler__header--orange {
    color: var(--kumon-orange)
}

.page.page--request-appointment .scheduler__header img, .page.page--scheduler .scheduler__header img {
    height: 5.25rem;
    width: 5.25rem
}

.page.page--request-appointment .scheduler__header h2, .page.page--scheduler .scheduler__header h2 {
    align-items: center;
    display: flex;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.5625rem;
    font-weight: 800;
    gap: 25px
}

.page.page--request-appointment .scheduler__form .label, .page.page--request-appointment .scheduler__form label, .page.page--scheduler .scheduler__form .label, .page.page--scheduler .scheduler__form label {
    color: #000;
    display: block;
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.25rem;
    font-weight: 400
}

    .page.page--request-appointment .scheduler__form .label .red, .page.page--request-appointment .scheduler__form label .red, .page.page--scheduler .scheduler__form .label .red, .page.page--scheduler .scheduler__form label .red {
        color: inherit
    }

.page.page--request-appointment .scheduler__form-row, .page.page--scheduler .scheduler__form-row {
    display: flex;
    gap: 34px;
    margin-bottom: 2.125rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__form-row, .page.page--scheduler .scheduler__form-row {
        flex-direction: column
    }
}

.page.page--request-appointment .scheduler__form-input, .page.page--scheduler .scheduler__form-input {
    flex: 0 1 100%
}

@media (min-width:1024px) {
    .page.page--request-appointment .scheduler__form-input.scheduler__form-input--narrow, .page.page--scheduler .scheduler__form-input.scheduler__form-input--narrow {
        max-width: 170px
    }
}

.page.page--request-appointment .scheduler__form-input.scheduler__form-input--check .label, .page.page--request-appointment .scheduler__form-input.scheduler__form-input--check label, .page.page--scheduler .scheduler__form-input.scheduler__form-input--check .label, .page.page--scheduler .scheduler__form-input.scheduler__form-input--check label {
    align-items: flex-start;
    display: flex;
    font-size: 1rem;
    gap: 20px;
    line-height: 1.625rem;
    margin-bottom: 32px
}

.page.page--request-appointment .scheduler__form-input.scheduler__form-input--check input, .page.page--scheduler .scheduler__form-input.scheduler__form-input--check input {
    margin-top: 6px
}

.page.page--request-appointment .scheduler__form-input.scheduler__form-input--check a, .page.page--scheduler .scheduler__form-input.scheduler__form-input--check a {
    color: #000;
    font-weight: 700
}

.page.page--request-appointment .scheduler__form-input input:not([type=radio]):not([type=checkbox]), .page.page--request-appointment .scheduler__form-input select, .page.page--request-appointment .scheduler__form-input textarea, .page.page--scheduler .scheduler__form-input input:not([type=radio]):not([type=checkbox]), .page.page--scheduler .scheduler__form-input select, .page.page--scheduler .scheduler__form-input textarea {
    background: #f7f7f7;
    border-radius: 3px;
    display: block;
    font-family: Fira Sans,Helvetica,Arial,sans-serif;
    font-size: 1.125rem;
    line-height: 1.8125rem;
    margin-top: 22px;
    padding: .625rem;
    width: 100%
}

.page.page--request-appointment .scheduler__form-input textarea, .page.page--scheduler .scheduler__form-input textarea {
    min-height: 219px
}

.page.page--request-appointment .scheduler__add-child, .page.page--request-appointment .scheduler__required, .page.page--scheduler .scheduler__add-child, .page.page--scheduler .scheduler__required {
    color: #000;
    display: block;
    font-size: 1.25rem;
    margin-top: 1.875rem
}

.page.page--request-appointment .scheduler__add-child, .page.page--scheduler .scheduler__add-child {
    font-weight: 700
}

    .page.page--request-appointment .scheduler__add-child i, .page.page--scheduler .scheduler__add-child i {
        margin-right: 10px
    }

.page.page--request-appointment .scheduler__review, .page.page--scheduler .scheduler__review {
    margin: 0 auto;
    max-width: 55.1875rem
}

    .page.page--request-appointment .scheduler__review > p, .page.page--scheduler .scheduler__review > p {
        margin-bottom: 3.75rem
    }

.page.page--request-appointment .scheduler__review-header, .page.page--scheduler .scheduler__review-header {
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    text-align: left
}

    .page.page--request-appointment .scheduler__review-header.scheduler__review-header--orange, .page.page--scheduler .scheduler__review-header.scheduler__review-header--orange {
        color: var(--kumon-orange)
    }

    .page.page--request-appointment .scheduler__review-header.scheduler__review-header--purple, .page.page--scheduler .scheduler__review-header.scheduler__review-header--purple {
        color: var(--kumon-purple)
    }

    .page.page--request-appointment .scheduler__review-header.scheduler__review-header--green, .page.page--scheduler .scheduler__review-header.scheduler__review-header--green {
        color: var(--kumon-green)
    }

    .page.page--request-appointment .scheduler__review-header.scheduler__review-header--blue, .page.page--scheduler .scheduler__review-header.scheduler__review-header--blue {
        color: var(--kumon-blue)
    }

.page.page--request-appointment .scheduler__review-row, .page.page--scheduler .scheduler__review-row {
    align-items: center;
    border-bottom: 1px solid #707070;
    display: flex;
    justify-content: space-between;
    margin-top: 2.5rem;
    padding-bottom: 2.5rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__review-row, .page.page--scheduler .scheduler__review-row {
        align-items: flex-start
    }
}

.page.page--request-appointment .scheduler__review-row:last-child, .page.page--scheduler .scheduler__review-row:last-child {
    border-bottom: none;
    margin-bottom: 3.75rem
}

.page.page--request-appointment .scheduler__review-row p, .page.page--scheduler .scheduler__review-row p {
    font-size: 1.25rem;
    line-height: 2.25rem
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__review-row p, .page.page--scheduler .scheduler__review-row p {
        font-size: 1.125rem;
        line-height: 1.8125rem
    }
}

.page.page--request-appointment .scheduler__review-row a, .page.page--scheduler .scheduler__review-row a {
    color: #7f7f7f;
    flex: 0 1 100%;
    font-size: 1.25rem;
    font-weight: 700;
    max-width: 100px;
    min-width: 100px;
    text-align: right;
    text-decoration: none
}

@media (max-width:1023px) {
    .page.page--request-appointment .scheduler__review-row a, .page.page--scheduler .scheduler__review-row a {
        font-size: 1rem;
        line-height: 1.625rem
    }
}

.page.page--request-appointment .scheduler__review-row i, .page.page--scheduler .scheduler__review-row i {
    border: 2px solid #7f7f7f;
    border-radius: 50%;
    margin-right: 8px;
    padding: 8px
}

.page.page--scheduler.page--scheduler-confirmation .scheduler {
    max-width: 75.375rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    text-align: center
}

.page.page--scheduler.page--scheduler-confirmation .scheduler__title {
    margin-left: 0;
    margin-right: 0
}

.page.page--scheduler.page--scheduler-confirmation .scheduler > p {
    font-size: 1.25rem;
    line-height: 2.25rem;
    margin-top: 3.125rem
}

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler > p {
        font-size: 1.125rem;
        line-height: 1.8125rem;
        margin-top: 1.25rem
    }

        .page.page--scheduler.page--scheduler-confirmation .scheduler > p:not(.scheduler__text) {
            text-align: left
        }
}

.page.page--scheduler.page--scheduler-confirmation .scheduler > p a {
    color: #000;
    font-weight: 700
}

    .page.page--scheduler.page--scheduler-confirmation .scheduler > p a:hover {
        color: var(--kumon-orange)
    }

.page.page--scheduler.page--scheduler-confirmation .scheduler > .btn {
    margin: 1.5625rem auto 0;
    max-width: 31.125rem
}

    .page.page--scheduler.page--scheduler-confirmation .scheduler > .btn i, .page.page--scheduler.page--scheduler-confirmation .scheduler > .btn svg {
        margin-right: .625rem
    }

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler > .btn {
        font-size: 1rem;
        max-width: 20rem
    }
}

.page.page--scheduler.page--scheduler-confirmation .scheduler__confirmation {
    background: var(--kumon-variant-blue);
    color: #fff;
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 2.5rem;
    margin-top: 3.75rem;
    padding: 3.25rem 2rem
}

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler__confirmation {
        font-size: 1rem;
        line-height: 1.375rem;
        margin-top: 1.875rem;
        padding: 2rem 1.375rem
    }
}

.page.page--scheduler.page--scheduler-confirmation .scheduler > h2 {
    color: var(--kumon-purple);
    font-family: Futura PT,Helvetica,Arial,sans-serif;
    font-size: 2.625rem;
    font-weight: 800;
    margin-bottom: 0;
    margin-top: 5.625rem
}

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler > h2 {
        font-size: 1.625rem;
        margin-top: 2.125rem;
        text-align: left
    }
}

.page.page--scheduler.page--scheduler-confirmation .scheduler__video {
    display: block;
    margin: 6.25rem auto 0;
    max-width: 65.6875rem;
    padding: 0;
    width: 100%
}

    .page.page--scheduler.page--scheduler-confirmation .scheduler__video img {
        height: auto;
        width: 100%
    }

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler__video {
        margin-top: 3.125rem
    }
}

.page.page--scheduler.page--scheduler-confirmation .scheduler__buttons {
    display: grid;
    gap: 1.75rem;
    grid-template-columns: repeat(2,1fr);
    margin: 4.375rem auto 1.5rem;
    max-width: 65.6875rem;
    padding: 0 1.25rem;
    width: 100%
}

@media (max-width:1023px) {
    .page.page--scheduler.page--scheduler-confirmation .scheduler__buttons {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(2,1fr);
        margin: 1.875rem auto
    }
}

.page.page--program .mt__column--media {
    height: 100%
}

.page.page--program .mt__column--text {
    padding-bottom: 3.125rem
}

.page.page--program .mt__media img {
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: center bottom;
    object-position: center bottom
}

.page.page--program .mt__media.mt__media--center img {
    -o-object-position: center center;
    object-position: center center
}

@media (min-width:1024px) {
    .page--esl .mt.pb-0 .mt__content {
        align-items: flex-end
    }
}

.page--esl .mt.pb-0 .mt__content .mt__text {
    font-size: 1.125rem;
    padding-bottom: 30px
}

.page--esl .mt.pb-0 .mt__content .mt__title {
    font-size: 2.25rem
}

.page--esl .mt.pb-0 .mt__content .mt__media img {
    display: block
}

@media (max-width:1023px) {
    .page--esl .mt.pb-0 .mt__content .mt__media img {
        -o-object-fit: contain;
        object-fit: contain
    }
}

@media (min-width:1024px) {
    .page--esl .mt:nth-of-type(2n) {
        background: var(--neutral-dark-gray) !important
    }

        .page--esl .mt:nth-of-type(2n) .mt__column--text {
            grid-column: 2
        }

        .page--esl .mt:nth-of-type(2n) .mt__column--media, .page--esl .mt:nth-of-type(odd) .mt__column--text {
            grid-column: 1
        }

    .page--esl .mt:nth-of-type(odd) .mt__column--media {
        grid-column: 2
    }
}

@media (min-width:1024px) {
    .lang--fr-ca .cta.cta--columns .cta__headline {
        font-size: 3.125rem
    }

    .lang--fr-ca .cta.cta--columns .cta__link {
        font-size: 3.5rem
    }

    .lang--fr-ca .mt__pretitle {
        line-height: 2rem
    }
}

.lang--fr-ca.page.page--scheduler .scheduler__review-row a {
    max-width: 130px;
    min-width: 130px
}

@media (min-width:768px) {
    .lang--fr-ca .jumbotron {
        background-size: auto 400px;
        height: 400px
    }
}

@media (min-width:1024px) {
    .lang--fr-ca .jumbotron {
        background-size: auto 500px;
        height: 500px
    }
}

.lang--es-mx.page.page--scheduler .scheduler__review-row a {
    max-width: 120px;
    min-width: 120px
}

@media (min-width:1024px) {
    .lang--es-mx .jumbotron__inner {
        max-width: 52%
    }

    .lang--es-mx .cta--single .cta__headline {
        font-size: 2.0625rem
    }
}

.lang--en-us.page.page--math .jumbotron {
    background-image: -webkit-image-set(url("../images/site/math_1_header-1x-en-us.webp") 1x,url("../images/site/math_1_header-1x-en-us.jpg") 1x,url("../images/site/math_1_header-2x-en-us.webp") 2x,url("../images/site/math_1_header-2x-en-us.jpg") 2x);
    background-image: image-set(url("../images/site/math_1_header-1x-en-us.webp") 1x,url("../images/site/math_1_header-1x-en-us.jpg") 1x,url("../images/site/math_1_header-2x-en-us.webp") 2x,url("../images/site/math_1_header-2x-en-us.jpg") 2x)
}

@media screen and (max-width:767px) {
    .lang--en-us.page.page--math .jumbotron {
        background-image: -webkit-image-set(url("../images/site/math_1_header-1x-m-en-us.webp") 1x,url("../images/site/math_1_header-1x-m-en-us.jpg") 1x,url("../images/site/math_1_header-2x-m-en-us.webp") 2x,url("../images/site/math_1_header-2x-m-en-us.jpg") 2x);
        background-image: image-set(url("../images/site/math_1_header-1x-m-en-us.webp") 1x,url("../images/site/math_1_header-1x-m-en-us.jpg") 1x,url("../images/site/math_1_header-2x-m-en-us.webp") 2x,url("../images/site/math_1_header-2x-m-en-us.jpg") 2x)
    }
}

@media screen and (min-width:768px) and (max-width:1024px) {
    .lang--en-us.page.page--math .jumbotron {
        background-image: -webkit-image-set(url("../images/site/math_1_header-1x-en-us.webp") 1x,url("../images/site/math_1_header-1x-en-us.jpg") 1x,url("../images/site/math_1_header-2x-en-us.webp") 2x,url("../images/site/math_1_header-2x-en-us.jpg") 2x);
        background-image: image-set(url("../images/site/math_1_header-1x-en-us.webp") 1x,url("../images/site/math_1_header-1x-en-us.jpg") 1x,url("../images/site/math_1_header-2x-en-us.webp") 2x,url("../images/site/math_1_header-2x-en-us.jpg") 2x)
    }
}
