/*
Theme Name: TeachTown Theme
Theme URI: https://smartacretheme.wpengine.com
Author: SmartAcre, Inc.
Author URI: https://www.getsmartacre.com
Description: A Wordpress theme.
Version: 5.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-menu, featured-images
Text Domain: getsmartacre

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* Brand Colors

TeachTown Blue - #1F85D0
TeachTown Green - #8DCB41
TeachTown Red - #FB3640
TeachTown Yellow - #FBB13C
TeachTown Light Blue - #DEEDF8
TeachTown Very Light Blue - #F4F7FF
TeachTown Light Green - #DBEDC4

*/

/* Fonts

font-family: 'Poppins', sans-serif;
regular - 400
medium - 500
bold - 700

font-family: gill-sans-nova, sans-serif;
regular - 400
semibold - 600
bold - 700

*/

/* ========================================================================================================================
													General Styles
======================================================================================================================== */

.font-family-poppins {
    font-family: 'Poppins', sans-serif;
}

.font-family-gilsans {
    font-family: gill-sans-nova, sans-serif;
}

:focus {
    outline: none !important;
}

html,
body {
    height: 100%;
}

body {
    font-family: gill-sans-nova, sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
    line-height: 26px;
    color: #3f4648;
    background-color: #fff;
    margin: 0;
    padding: 0;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#mainfooter img {
	display: block;
	height: auto;
	max-width: 100%;
}

/*img[src*=svg] {
	width: 100%;
}*/

a {
    text-decoration: none;
    -webkit-transition: color 200ms ease-in-out;
    transition: color 200ms ease-in-out;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

    a:hover,
    a:active,
    a:focus {
        color: #8DCB41;
        text-decoration: none;
    }


    /* Arrow Link */

    a.arrow-link {
        padding-right: 20px;
    }

        a.arrow-link:before {
            font-family: "Font Awesome 5 Pro";
            font-weight: 400;
            content: "\f178";
            margin-left: 8px;
            position: absolute;
            right: 0;
            top: 2px;
        }


h1,
.h1 {
    font-family: 'Poppins', sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 48px;
    color: #1F85D0;
    margin: 20px 0;
}

h2,
.h2 {
    font-family: 'Poppins', sans-serif;
    font-size: 35px;
    font-weight: 700;
    line-height: 40px;
    color: #1F85D0;
    margin: 20px 0;
}

h3,
.h3 {
    font-family: 'Poppins', sans-serif;
    font-size: 29px;
    font-weight: 500;
    line-height: 37px;
    color: #4F5B67;
    margin: 20px 0;
}

h4,
.h4 {
    font-family: 'Poppins', sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
    color: #1F85D0;
    margin: 20px 0;
}

h5,
.h5 {
    font-family: 'Poppins', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 28px;
    color: #1F85D0;
    margin: 20px 0;
}

h6,
.h6 {
    font-family: 'Poppins', sans-serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 26px;
    color: #A7ADBB;
    margin: 20px 0;
}

p,
.p {
    font-size: 17px;
    line-height: 26px;
    margin: 20px 0;
}

.text-big {
    font-size: 18px;
}

.text-small {
    font-size: 14px;
    line-height: 21px;
}




blockquote {
    font-size: 17px;
    line-height: 26px;
    margin: 20px 0;
    padding: 0 20px;
    border-left: 5px solid #C1C5CE;
}

hr {
    background-color: #C1C5CE;
    border: 0;
    height: 1px;
    margin: 20px 0;
}


@media (min-width: 768px) {

    h1,
    .h1 {
        font-size: 52px;
        line-height: 56px;
    }

    h2,
    .h2 {
        font-size: 42px;
        line-height: 48px;
    }

    h3,
    .h3 {
        font-size: 33px;
        line-height: 41px;
    }

    h4,
    .h4 {
        font-size: 27px;
        line-height: 37px;
    }

    h5,
    .h5 {
        font-size: 21px;
        line-height: 28px;
    }
}



/* Content Tight / Scrunch
---------------------------------------- */

.content-tight h1,
.content-tight h2,
.content-tight h3,
.content-tight h4,
.content-tight h5,
.content-tight h6,
.content-tight p,
.content-tight ul,
.content-tight ol,
.content-tight blockquote,
.content-tight hr {
    margin: 10px 0;
}

.content-scrunch h1,
.content-scrunch h2,
.content-scrunch h3,
.content-scrunch h4,
.content-scrunch h5,
.content-scrunch h6,
.content-scrunch p,
.content-scrunch ul,
.content-scrunch ol,
.content-scrunch blockquote,
.content-scrunch hr {
    margin: 0;
}

.scrunch {
    margin: 0 !important;
}

.scrunch-top {
    margin-top: 0 !important;
}

.scrunch-bottom {
    margin-bottom: 0 !important;
}

.scrunch-top-first-child :first-child {
    margin-top: 0 !important;
}


/* Font Weights
---------------------------------------- */

.font-weight-100 {
    font-weight: 100;
}

.font-weight-200 {
    font-weight: 200;
}

.font-weight-300 {
    font-weight: 300;
}

.font-weight-400 {
    font-weight: 400;
}

.font-weight-500 {
    font-weight: 500;
}

.font-weight-600 {
    font-weight: 600;
}

.font-weight-700 {
    font-weight: 700;
}

.font-weight-800 {
    font-weight: 800;
}

.font-weight-900 {
    font-weight: 900;
}




/* Content Inverse
---------------------------------------- */

.content-inverse h1,
.content-inverse h2,
.content-inverse h3,
.content-inverse h4,
.content-inverse h5,
.content-inverse h6,
.content-inverse p,
.content-inverse ul,
.content-inverse ol,
.content-inverse blockquote,
.content-inverse hr {
    color: #FFF;
}

/* Links Inverse
---------------------------------------- */

.links-inverse a {
    color: #FFF;
    text-decoration: none;
}

    .links-inverse a:hover,
    .links-inverse a:active,
    .links-inverse a:focus {
        color: #FFF;
        text-decoration: none;
    }



/* Text Colors
---------------------------------------- */

.text-fff {
    color: #FFF;
}

.text-A7ADBB {
    color: #A7ADBB;
}

.text-FBB13C {
    color: #FBB13C;
}

/* Link Colors
---------------------------------------- */

a.black-link {
    color: #000;
    text-decoration: none;
}

    a.black-link:hover,
    a.black-link:active,
    a.black-link:focus {
        color: #000;
        text-decoration: underline;
    }




/* Backgrounds
---------------------------------------- */

.bg-cover {
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

.bg-fff {
    background-color: #FFF;
}

.bg-DEEDF8 {
    background-color: #DEEDF8;
}

.bg-F4F7FF {
    background-color: #F4F7FF;
}

.bg-tti-bg-shape-svg {
    background-image: url('<%=WebSession.MarketingSite%>/images/tti-bg-shape-svg.svg');
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}


/* Borders
---------------------------------------- */

.border-top-grey {
    border-top: 1px solid #ccc;
}



/* Image Sizes
---------------------------------------- */

.image-center {
    margin: 0 auto;
}

.image-full {
    width: 100%;
}

.image-xs {
    max-width: 50px;
}

.image-sm {
    max-width: 100px;
}

.image-md {
    max-width: 150px;
}

.image-lg {
    max-width: 200px;
}














/* ========================================================================================================================
														Forms
======================================================================================================================== */


.form-control {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    -o-border-radius: 4px;
    border-radius: 4px;
}

    /* Change Bootstrap 4 input colors
---------------------------------------- */

    .form-control:focus {
        border-color: #139fda;
        box-shadow: 0 0 0 0.2rem rgba(19, 159, 218, .25);
    }

.custom-select:focus {
    border-color: #139fda;
}

.custom-file-input:focus ~ .custom-file-label {
    border-color: #139fda;
    box-shadow: 0 0 0 0.2rem rgba(19, 159, 218, .25);
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::before,
.custom-radio .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #139fda;
}


/* Hubspot Form
---------------------------------------- */

/* Form fields */

.hs-form .hs-form-field {
    margin-bottom: 20px;
    position: relative;
    background-color: #DEEDF8;
}

/* Labels (selects field labels and error messages) */
.hs-form label {
}

.hs-form .hs-form-field > label {
    color: #7E858C;
    font-size: 16px;
    line-height: 20px;
    position: absolute;
    margin-top: 21px;
    margin-left: 15px;
    transform: translate(0, 0) scale(1);
    transform-origin: bottom left;
    transition: all 150ms ease;
    z-index: 1;
}

.hs-form-field.active > label {
    transform: translate(0, -1rem) scale(0.75);
}

.hs-form .hs-form-field.hs-fieldtype-checkbox > label,
.hs-form .hs-form-field.hs-fieldtype-radio > label {
    position: relative;
}

/* Help text - legends */

form legend {
}

/* Inputs */

.hs-form-field > .input {
    z-index: 2;
    position: relative;
}

.hs-form input[type="text"],
.hs-form input[type="password"],
.hs-form input[type="datetime"],
.hs-form input[type="datetime-local"],
.hs-form input[type="date"],
.hs-form input[type="month"],
.hs-form input[type="time"],
.hs-form input[type="week"],
.hs-form input[type="number"],
.hs-form input[type="email"],
.hs-form input[type="url"],
.hs-form input[type="search"],
.hs-form input[type="tel"],
.hs-form input[type="color"],
.hs-form input[type="file"],
.hs-form textarea,
.hs-form select {
    height: 66px;
    background-color: transparent;
    border: none;
    display: inline-block;
    width: 100% !important;
    padding: 0;
    font-family: gill-sans-nova, sans-serif;
    font-weight: 400;
    font-size: 19px;
    line-height: 26px;
    color: #1F85D0;
    background-color: transparent;
    padding: 20px 10px;
}

.hs-form textarea {
    min-height: 100px;
}

/* Focused Styles */
.hs-form .active input[type="text"],
.hs-form .active input[type="password"],
.hs-form .active input[type="datetime"],
.hs-form .active input[type="datetime-local"],
.hs-form .active input[type="date"],
.hs-form .active input[type="month"],
.hs-form .active input[type="time"],
.hs-form .active input[type="week"],
.hs-form .active input[type="number"],
.hs-form .active input[type="email"],
.hs-form .active input[type="url"],
.hs-form .active input[type="search"],
.hs-form .active input[type="tel"],
.hs-form .active input[type="color"],
.hs-form .active input[type="file"],
.hs-form .active textarea,
.hs-form .active select {
    padding: 32px 10px 8px 10px;
}

.hs-form .active select {
    padding-top: 29px;
}

/* Bump Default Arrow off Edge */
.hs-form .hs-fieldtype-select {
    padding-right: 10px;
}


/* Columns */

form.hs-form fieldset {
    max-width: 100% !important;
}

    form.hs-form fieldset.form-columns-1 .hs-form-field,
    form.hs-form fieldset.form-columns-2 .hs-form-field,
    form.hs-form fieldset.form-columns-3 .hs-form-field {
        float: left;
        width: 100%;
    }


    form.hs-form fieldset.form-columns-1 .input {
        margin-right: 0;
    }

    form.hs-form fieldset.form-columns-1 input.hs-input,
    form.hs-form fieldset.form-columns-1 select.hs-input,
    form.hs-form fieldset.form-columns-1 textarea.hs-input {
        width: 100%;
    }

    form.hs-form fieldset.form-columns-1 input[type=checkbox].hs-input,
    form.hs-form fieldset.form-columns-1 input[type=radio].hs-input {
        width: unset;
    }

    form.hs-form fieldset.form-columns-2 .input {
        margin-right: 0;
    }

    form.hs-form fieldset.form-columns-3 .input {
        margin-right: 0;
    }

@media (min-width: 481px) {

    form.hs-form fieldset.form-columns-2 .hs-form-field {
        width: 48%;
    }

        form.hs-form fieldset.form-columns-2 .hs-form-field:first-child {
            margin-right: 4%;
        }


    form.hs-form fieldset.form-columns-3 .hs-form-field {
        width: 33.3333333%;
    }

        form.hs-form fieldset.form-columns-3 .hs-form-field:first-child {
        }

        form.hs-form fieldset.form-columns-3 .hs-form-field:last-child {
        }
}

/* Inputs - checkbox/radio */

form .inputs-list {
    margin: 0;
    padding: 0 15px;
    list-style: none;
}

    form .inputs-list > li {
        display: block;
        margin: 0.7rem 0;
        background-image: none;
        padding-left: 0;
    }

    form .inputs-list input,
    form .inputs-list span {
        vertical-align: middle;
    }

form input[type=checkbox],
form input[type=radio] {
    cursor: pointer;
    margin-right: 0.35rem;
}

/* Inputs - datepicker */

.hs-dateinput {
    position: relative;
}

    .hs-dateinput:before {
        content: '\01F4C5';
        position: absolute;
        right: 10%;
        top: 50%;
        transform: translateY(-50%);
    }

.fn-date-picker .pika-table thead th {
    color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
    border-radius: 0;
    box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
    border-radius: 0 !important;
    color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
    background-color: transparent;
    border: initial;
    padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
    font-size: 0.875rem;
    margin: 0 0 1.4rem;
}

    form .hs-richtext img {
        max-width: 100% !important;
    }

/* GDPR */

.legal-consent-container {
    margin-top: 10px;
}

    .legal-consent-container .hs-form-field {
        padding: 0;
    }

    .legal-consent-container .hs-form-booleancheckbox-display > input {
        margin-top: 5px;
    }

    .legal-consent-container .hs-form-booleancheckbox-display > span,
    .legal-consent-container .hs-form-booleancheckbox-display > span p {
        margin-left: 1rem !important;
        font-size: 85%;
    }

    .legal-consent-container .hs-richtext * {
        font-size: 75%;
    }


/* Validation */

.hs-form-required {
    color: #FB3640;
    margin-left: 4px;
}

.hs-input.invalid.error {
    border-color: #FB3640;
}

.hs-error-msg {
    color: #FB3640;
    margin-top: 0.35rem;
}

ul.hs-error-msgs {
    background-color: #ffffff;
    padding: 0;
}

    ul.hs-error-msgs li {
        margin: 0;
    }

        ul.hs-error-msgs li label {
            font-size: 14px;
            line-height: 18px;
            padding: 0;
            color: #cd2026;
        }

/* Submit button */

form input[type=submit],
form .hs-button {
    display: block;
    width: 100%;
    margin: 10px 0;
}

@media (min-width: 481px) {

    form input[type=submit],
    form .hs-button {
        margin: 10px 0;
    }
}

/* Captcha */

.grecaptcha-badge {
    margin: 0 auto;
}


/* ========================================================================================================================
														Buttons
======================================================================================================================== */




/*.btn {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    padding: 12px 30px;
    font-weight: 600;
}

    .btn:hover,
    .btn:focus,
    .btn:active,
    .btn:active:hover,
    .btn:active:focus {
        box-shadow: none;
    }

    .btn:after {
        display: none;
    }



.btn-green,
.btn-green:focus {
    color: #213b00;
    background-color: #9aca4c;
    box-shadow: 8px 8px 30px 0 #c5ee93;
}

    .btn-green:hover,
    .btn-green:active,
    .btn-green:active:hover,
    .btn-green:active:focus {
        color: #213b00;
        background: #c5ee93;
        box-shadow: 8px 8px 30px 0 #c5ee93;
        border-radius: 5px;
    }



.btn-light-green,
.btn-light-green:focus {
    color: #000000;
    background-color: #bedd8d;
    box-shadow: 8px 8px 30px 0 rgba(0,0,0,0.15);
}

    .btn-light-green:hover,
    .btn-light-green:active,
    .btn-light-green:active:hover,
    .btn-light-green:active:focus {
        color: #000000;
        background: #B6D74D;
        box-shadow: 8px 8px 30px 0 rgba(0,0,0,0.15);
        border-radius: 5px;
    }*/




/* Button Sizes
---------------------------------------- */

/*.btn-md {
}

.btn-lg {
}*/


/* Button Colors
---------------------------------------- */

/*.btn-blue {
    color: #fff !important;
    background-color: #139fda;
    border-color: #139fda;
}

    .btn-blue:hover,
    .btn-blue:focus,
    .btn-blue:active,
    .btn-blue:active:hover,
    .btn-blue:active:focus {
        background-color: #3e76a2;
        border-color: #3e76a2;
        text-decoration: none;
    }*/













/* ========================================================================================================================
													Content Layout
======================================================================================================================== */

.page-container {
    /*
	max-width: 1600px;
	margin: 0 auto;
	*/
}

/*.container,
.container-fluid {*/
    /*padding-left: 20px;
	padding-right: 20px;*/
/*}*/

/*.row {*/
    /*margin-left: -20px;
    margin-right: -20px;*/
/*}*/

/*.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {*/
    /*padding-left: 20px;
	padding-right: 20px;*/
/*}*/

.content-container {
    box-sizing: border-box;
    padding-top: 40px;
    padding-bottom: 40px;
}

.content-section {
    margin-bottom: 50px;
}

.content-padding-xs {
    padding: 10px;
}

.content-padding-sm {
    padding: 20px;
}

.content-py-xs {
    padding-bottom: 4px;
}

.content-padding-md {
    padding: 30px;
}

.content-padding-lg {
    padding: 40px;
}

.content-padding-xl {
    padding: 50px;
}

@media (min-width: 768px) {

    .content-container {
        padding-top: 65px;
        padding-bottom: 65px;
    }
}


/* Wordpress Alignment
---------------------------------------- */

.alignleft {
    float: none;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

.alignright {
    float: none;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

.aligncenter {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}

.alignnone {
    margin-bottom: 20px;
}

.wp-caption {
    max-width: 100% !important;
}

.wp-caption-text {
    font-size: 14px;
    font-weight: 300;
    padding: 10px 0;
}

@media (min-width: 768px) {

    .alignleft {
        float: left;
        margin-right: 20px;
    }

    .alignright {
        float: right;
        margin-left: 20px;
    }
}


/* Vertical Align Middle
---------------------------------------- */

.vmiddle-table {
    display: table;
    width: 100%;
    height: 100%;
}

.vmiddle-cell {
    display: table-cell;
    vertical-align: middle;
}


/* Height Sizer
---------------------------------------- */

@media (max-width: 575px) {
    [class*="height-sizer-sm"] {
        height: auto !important;
    }
}

@media (max-width: 767px) {
    [class*="height-sizer-md"] {
        height: auto !important;
    }
}

@media (max-width: 991px) {
    [class*="height-sizer-lg"] {
        height: auto !important;
    }
}

@media (max-width: 1199px) {
    [class*="height-sizer-xl"] {
        height: auto !important;
    }
}


/* Hidden classes
---------------------------------------- */

@media (max-width: 575px) {
    .hidden-xs {
        display: none !important;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .hidden-sm {
        display: none !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .hidden-md {
        display: none !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .hidden-lg {
        display: none !important;
    }
}

@media (min-width: 1200px) {
    .hidden-xl {
        display: none !important;
    }
}





/* ========================================================================================================================
														5 Columns
======================================================================================================================== */

.col-xs-15,
.col-sm-15,
.col-md-15,
.col-lg-15,
.col-xl-15 {
    position: relative;
    min-height: 1px;
    padding-right: 10px;
    padding-left: 10px;
}

.col-xs-15 {
    flex: 0 0 20%;
    max-width: 20%;
    float: left;
}

@media (min-width: 576px) {
    .col-sm-15 {
        flex: 0 0 20%;
        max-width: 20%;
        float: left;
    }
}

@media (min-width: 768px) {
    .col-md-15 {
        flex: 0 0 20%;
        max-width: 20%;
        float: left;
    }
}

@media (min-width: 992px) {
    .col-lg-15 {
        flex: 0 0 20%;
        max-width: 20%;
        float: left;
    }
}

@media (min-width: 1200px) {
    .col-xl-15 {
        flex: 0 0 20%;
        max-width: 20%;
        float: left;
    }
}




/* ========================================================================================================================
														Tables
======================================================================================================================== */

/* Add to tables with responsive images
---------------------------------------- */

.table-layout-fixed {
    table-layout: fixed;
    width: 100%;
}



/* ========================================================================================================================
														Carousels
======================================================================================================================== */

/* Fix nav dropdown going behind carousel
---------------------------------------- */
.carousel-fade .carousel-item.active {
    z-index: 0;
}












/* ========================================================================================================================
													Mobile Collapse
======================================================================================================================== */

/* Prevents menu from jumping when expanding */
/*
#mobile-collapse.collapsing ul.sub-menu,
#mobile-collapse.collapsing div.mega-dropdown-wrapper {
	display: none;
}
#mobile-collapse.collapsing li.menu-item-has-children.active > ul.sub-menu,
#mobile-collapse.collapsing li.menu-item-has-children.active > div.mega-dropdown-wrapper {
	display: block;
}
*/

/* ========================================================================================================================
													submenu-js
======================================================================================================================== */

.submenu-js ul.sub-menu,
.submenu-js div.mega-dropdown-wrapper {
    display: none;
}

.submenu-js li.menu-item-has-children.active > ul.sub-menu,
.submenu-js li.menu-item-has-children.active > div.mega-dropdown-wrapper {
    display: block;
}

@media (min-width: 992px) {

    .submenu-js ul.sub-menu,
    .submenu-js div.mega-dropdown-wrapper,
    .submenu-js .dropdown-notch {
        display: block;
        visibility: hidden;
        opacity: 0;
        max-height: 0;
    }

    .submenu-js li.menu-item-has-children.active > ul.sub-menu,
    .submenu-js li.menu-item-has-children.active > div.mega-dropdown-wrapper,
    .submenu-js li.menu-item-has-children.active .dropdown-notch {
        visibility: visible;
        opacity: 1;
        max-height: 1000px;
    }
}




/* ========================================================================================================================
													Mobile Header
======================================================================================================================== */


.mobile-header a:after {
    display: none;
}

.mobile-cta {
    font-weight: 600;
    box-shadow: none;
    display: block;
    margin: 10px 20px;
}

    .mobile-cta:hover,
    .mobile-cta:active,
    .mobile-cta:focus {
        box-shadow: none;
    }

/* Mobile Navbar Toggler
	---------------------------------------- */

.navbar-toggler {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    background-color: transparent;
    background-image: none;
    border: none;
    border-radius: 0;
    margin: 0 auto;
    padding: 0;
    width: 89px;
    height: 89px;
}

    .navbar-toggler .icon-bar {
        display: block;
        width: 30px;
        height: 3px;
        margin: 3px 0 3px 19px;
        background: #343D46;
        border-radius: 15px;
        -webkit-transition: all 0.1s ease;
        -moz-transition: all 0.1s ease;
        -o-transition: all 0.1s ease;
        -ms-transition: all 0.1s ease;
        transition: all 0.1s ease;
    }

        .navbar-toggler .icon-bar:last-child {
            width: 15px;
        }

    .navbar-toggler[aria-expanded="true"] {
        padding-left: 8px;
        background-color: #4F5B67;
    }

        .navbar-toggler[aria-expanded="true"] .icon-bar {
            width: 20px;
            background: #ffffff;
        }

            .navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(1) {
                -webkit-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                transform: rotate(45deg);
                position: absolute;
                top: 30px;
                left: 4px;
            }

            .navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(2) {
                -webkit-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
                transform: rotate(-45deg);
                position: absolute;
                top: 30px;
                left: 4px;
            }

            .navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(3) {
                opacity: 0;
            }

            .navbar-toggler[aria-expanded="true"] .icon-bar:nth-of-type(4) {
                opacity: 0;
            }




/* Mobile Menus
	---------------------------------------- */

.mobile-logo {
    width: 200px;
    padding: 22px 0;
}

    .mobile-logo img {
        height: auto;
        width: 100%;
    }

.mobile-menu {
    background-color: #4F5B67;
}

/* Search Form
		---------------------------------------- */
.mobile-search-wrapper {
    padding: 0px 20px 40px 20px;
}

.mobile-search-form {
    position: relative;
    padding: 0;
}

    .mobile-search-form .form-control {
        font-size: 17px;
        line-height: 20px;
        color: #3f4648;
        padding: 19px 50px 19px 20px;
        border: solid 1px #A7ADBB;
        height: 60px;
    }

    .mobile-search-form .button-search {
        position: absolute;
        top: 1px;
        right: 1px;
        font-size: 21px;
        line-height: 21px;
        color: #3f4648;
        padding: 18px;
        margin: 0;
        background-color: transparent;
        border: none;
    }

        .mobile-search-form .button-search:hover,
        .mobile-search-form .button-search:active,
        .mobile-search-form .button-search:focus {
            background-color: transparent;
            border: none;
            text-decoration: none;
            cursor: pointer;
        }



ul.mobile-utility-menu {
    list-style: none;
    padding: 0;
    margin: 25px 20px;
}

    ul.mobile-utility-menu:after {
        content: "";
        display: table;
        clear: both;
    }

    ul.mobile-utility-menu > li {
        background-image: none;
        padding: 0;
        margin: 0;
        text-align: center;
        float: left;
        width: 50%;
    }

        ul.mobile-utility-menu > li:first-child {
            border-right: solid 1px #3f4648;
        }

        ul.mobile-utility-menu > li > a {
            display: block;
            padding: 10px 10px;
            font-size: 17px;
            font-weight: 600;
            line-height: 20px;
            color: #C1C5CE;
        }

            ul.mobile-utility-menu > li > a:hover,
            ul.mobile-utility-menu > li > a:active,
            ul.mobile-utility-menu > li > a:focus {
                text-decoration: none;
            }

ul.mobile-navbar-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

    ul.mobile-navbar-menu > li {
        background-image: none;
        padding: 0;
        margin: 0;
        text-align: center;
    }

        ul.mobile-navbar-menu > li.menu-item-has-children {
            position: relative;
        }

        ul.mobile-navbar-menu > li > a {
            display: block;
            padding: 25px 20px;
            font-size: 19px;
            font-weight: 600;
            line-height: 20px;
            color: #F4F7FF;
            border-top: 1px solid #3f4648;
        }

            ul.mobile-navbar-menu > li > a:hover,
            ul.mobile-navbar-menu > li > a:active,
            ul.mobile-navbar-menu > li > a:focus,
            ul.mobile-navbar-menu > li.current-menu-item > a,
            ul.mobile-navbar-menu > li.current-menu-parent > a {
                text-decoration: none;
                color: #8DCB41;
            }

        ul.mobile-navbar-menu > li.menu-item-has-children.active > a {
            background-color: #3f4648;
        }

        ul.mobile-navbar-menu > li.menu-item-has-children > a > .sub-menu-toggle {
            position: absolute;
            right: 20px;
            top: 10px;
            padding: 22px 25px;
            margin: -10px -20px;
            line-height: 1.4;
        }

            ul.mobile-navbar-menu > li.menu-item-has-children > a > .sub-menu-toggle::after {
                font-family: "Font Awesome 5 Pro";
                font-weight: 400;
                content: "\f078";
            }

        ul.mobile-navbar-menu > li.menu-item-has-children.active > a > .sub-menu-toggle::after {
            font-family: "Font Awesome 5 Pro";
            font-weight: 400;
            content: "\f077";
        }

        /* Mobile Dropdown
					---------------------------------------- */

        ul.mobile-navbar-menu > li > ul.sub-menu {
            list-style: none;
            padding: 0 0 40px 0;
            margin: 0;
            overflow: hidden;
            background-color: #3f4648;
        }

            ul.mobile-navbar-menu > li > ul.sub-menu > li {
                background-image: none;
                padding: 0;
                margin: 0;
            }

                ul.mobile-navbar-menu > li > ul.sub-menu > li > a {
                    display: block;
                    padding: 15px 20px;
                    font-size: 19px;
                    line-height: 20px;
                    font-weight: 600;
                    color: #DEEDF8;
                }

                    ul.mobile-navbar-menu > li > ul.sub-menu > li > a:hover,
                    ul.mobile-navbar-menu > li > ul.sub-menu > li > a:active,
                    ul.mobile-navbar-menu > li > ul.sub-menu > li > a:focus,
                    ul.mobile-navbar-menu > li > ul.sub-menu > li.current-menu-item > a {
                        text-decoration: none;
                        color: #8DCB41;
                    }

                ul.mobile-navbar-menu > li > ul.sub-menu > li.menu-item-has-children.active > a {
                }

                ul.mobile-navbar-menu > li > ul.sub-menu > li.menu-item-has-children > a > .sub-menu-toggle {
                    float: right;
                    padding: 10px 20px 10px 40px;
                    margin: -10px -20px;
                    line-height: 1.4;
                }

                    ul.mobile-navbar-menu > li > ul.sub-menu > li.menu-item-has-children > a > .sub-menu-toggle::after {
                        font-family: "Font Awesome 5 Pro";
                        font-weight: 900;
                        content: "\f067";
                    }

                ul.mobile-navbar-menu > li > ul.sub-menu > li.menu-item-has-children.active > a > .sub-menu-toggle::after {
                    font-family: "Font Awesome 5 Pro";
                    font-weight: 900;
                    content: "\f068";
                }

                ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu {
                    list-style: none;
                    padding: 0 0 10px 0;
                    margin: 0;
                }

                    ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li {
                        background-image: none;
                        padding: 0;
                        margin: 0;
                    }

                        ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a {
                            display: block;
                            padding: 10px 20px 10px 40px;
                            font-size: 14px;
                            line-height: 20px;
                            color: #139fda;
                        }

                            ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
                            ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:active,
                            ul.mobile-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:focus {
                                text-decoration: none;
                            }










/* ========================================================================================================================
													Desktop Header
======================================================================================================================== */


/* Desktop Navbar
	---------------------------------------- */

@media (min-width: 992px) {

    .header-spacer {
        display: block;
        width: 100%;
        height: 76px;
    }

    .header-wrapper {
        position: fixed;
        width: 100%;
        z-index: 2;
    }

    .watir-header-wrapper {
        width: 100%;
        z-index: 2;
    }

    .desktop-header {
        position: relative;
        z-index: 1;
    }

        .desktop-header.header-fixed {
            background-color: #fff;
            border-bottom: none;
            -webkit-box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 20%);
            -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
            box-shadow: 0px 0px 10px 0px rgb(0 0 0 / 20%);
        }
        /* Kill Hyperlink Box Style */
        .desktop-header a:after {
            display: none;
        }

    .desktop-logo {
        float: left;
        width: 200px;
        padding: 26px 0;
        margin-right: 15px;
    }

    .desktop-navbar-wrapper {
        float: left;
        position: relative;
    }

    .desktop-navbar {
        float: left;
    }

    ul.desktop-navbar-menu {
        list-style: none;
        padding: 0;
        margin: 0;
        border-bottom: transparent;
    }

        ul.desktop-navbar-menu > li {
            background-image: none;
            padding: 0;
            margin: 0;
            float: left;
        }

            ul.desktop-navbar-menu > li.menu-item-has-children {
                position: relative;
            }
                /* Remove position: relative on the li so that MEGAMENU can position relative to the column */
                ul.desktop-navbar-menu > li.menu-item-has-children.mega-dropdown {
                    position: static;
                }

            ul.desktop-navbar-menu > li > a {
                display: block;
                padding: 28px 10px;
                font-size: 16px;
                font-weight: 600;
                line-height: 20px;
                color: #343D46;
                white-space: nowrap;
            }

                ul.desktop-navbar-menu > li > a:hover,
                ul.desktop-navbar-menu > li > a:active,
                ul.desktop-navbar-menu > li > a:focus,
                ul.desktop-navbar-menu > li.menu-item-has-children.active > a,
                ul.desktop-navbar-menu > li.current-menu-parent > a {
                    text-decoration: none;
                    color: #8DCB41;
                }
                /*ul.desktop-navbar-menu > li.menu-item-has-children > a > .sub-menu-toggle {
									margin-left: 5px;
									line-height: 1;
								}
								ul.desktop-navbar-menu > li.menu-item-has-children > a > .sub-menu-toggle::after {
									font-family: "Font Awesome 5 Pro";
									font-weight: 900;
									content: "\f107";
								}
								ul.desktop-navbar-menu > li.menu-item-has-children.active > a > .sub-menu-toggle::after {
									font-family: "Font Awesome 5 Pro";
									font-weight: 900;
									content: "\f107";
								}*/

                ul.desktop-navbar-menu > li > a > .dropdown-notch {
                    display: block;
                    text-align: center;
                    line-height: 8px;
                    position: absolute;
                    bottom: 0;
                    left: 50%;
                    margin-left: -4px;
                    z-index: 5;
                    -webkit-transition: all 0.3s ease;
                    -moz-transition: all 0.3s ease;
                    -o-transition: all 0.3s ease;
                    -ms-transition: all 0.3s ease;
                    transition: all 0.3s ease;
                }

                    ul.desktop-navbar-menu > li > a > .dropdown-notch .notch {
                        display: inline-block;
                        width: 0;
                        height: 0;
                        border-left: 8px solid transparent;
                        border-right: 8px solid transparent;
                        border-bottom: 8px solid #4F5B67;
                    }

            /* Desktop Dropdown
								---------------------------------------- */

            ul.desktop-navbar-menu > li > ul.sub-menu {
                list-style: none;
                padding: 20px 30px;
                margin: 0;
                float: left;
                position: absolute;
                top: 100%;
                left: 0;
                z-index: 3;
                border-radius: 5px;
                -webkit-transition: all 0.3s ease;
                -moz-transition: all 0.3s ease;
                -o-transition: all 0.3s ease;
                -ms-transition: all 0.3s ease;
                transition: all 0.3s ease;
                min-width: 100%;
                background-color: #4F5B67;
            }

                ul.desktop-navbar-menu > li > ul.sub-menu > li {
                    background-image: none;
                    padding: 0;
                    margin: 0;
                }

                    ul.desktop-navbar-menu > li > ul.sub-menu > li.menu-item-has-children {
                        position: relative;
                    }

                    ul.desktop-navbar-menu > li > ul.sub-menu > li > a {
                        display: block;
                        padding: 10px 0;
                        font-size: 17px;
                        color: #F4F7FF;
                        white-space: nowrap;
                        -webkit-transition: all 0.3s ease;
                        -moz-transition: all 0.3s ease;
                        -o-transition: all 0.3s ease;
                        -ms-transition: all 0.3s ease;
                        transition: all 0.3s ease;
                    }

                        ul.desktop-navbar-menu > li > ul.sub-menu > li > a:hover,
                        ul.desktop-navbar-menu > li > ul.sub-menu > li > a:active,
                        ul.desktop-navbar-menu > li > ul.sub-menu > li > a:focus,
                        ul.desktop-navbar-menu > li > ul.sub-menu > li.menu-item-has-children.active > a,
                        ul.desktop-navbar-menu > li > ul.sub-menu > li.current-menu-item > a {
                            text-decoration: none;
                            color: #8DCB41;
                        }

                    ul.desktop-navbar-menu > li > ul.sub-menu > li.menu-item-has-children > a > .sub-menu-toggle {
                        position: absolute;
                        top: 14px;
                        right: 20px;
                        padding: 0;
                        margin: 0;
                        line-height: 1;
                    }

                        ul.desktop-navbar-menu > li > ul.sub-menu > li.menu-item-has-children > a > .sub-menu-toggle::after {
                            font-family: "Font Awesome 5 Pro";
                            font-weight: 900;
                            content: "\f105";
                        }

                    ul.desktop-navbar-menu > li > ul.sub-menu > li.menu-item-has-children.active > a > .sub-menu-toggle::after {
                        font-family: "Font Awesome 5 Pro";
                        font-weight: 900;
                        content: "\f105";
                    }

                    ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu {
                        list-style: none;
                        padding: 0;
                        margin: 0;
                        float: left;
                        position: absolute;
                        top: 0;
                        left: 100%;
                        z-index: 1;
                        border-radius: 5px;
                        background-color: #fff;
                        -webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
                        -moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
                        box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
                        -webkit-transition: all 0.3s ease;
                        -moz-transition: all 0.3s ease;
                        -o-transition: all 0.3s ease;
                        -ms-transition: all 0.3s ease;
                        transition: all 0.3s ease;
                        min-width: 100%;
                    }

                        ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li {
                            background-image: none;
                            padding: 0;
                            margin: 0;
                        }

                            ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a {
                                display: block;
                                padding: 10px 20px;
                                font-size: 14px;
                                color: #139fda;
                                white-space: nowrap;
                                -webkit-transition: all 0.3s ease;
                                -moz-transition: all 0.3s ease;
                                -o-transition: all 0.3s ease;
                                -ms-transition: all 0.3s ease;
                                transition: all 0.3s ease;
                            }

                                ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:hover,
                                ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:active,
                                ul.desktop-navbar-menu > li > ul.sub-menu > li > ul.sub-menu > li > a:focus {
                                    text-decoration: none;
                                    background-color: #f2f2f2;
                                }


    .desktop-utility-wrapper {
        float: right;
        position: relative;
    }

    .desktop-utility {
        float: left;
    }

    ul.desktop-utility-menu {
        list-style: none;
        padding: 0;
        margin: 0;
    }

        ul.desktop-utility-menu > li {
            float: left;
            background-image: none;
            padding: 0;
            margin: 0;
        }

            ul.desktop-utility-menu > li > a {
                display: block;
                padding: 28px 10px;
                font-size: 14px;
                font-weight: 600;
                line-height: 20px;
                color: #3f4648;
                text-align: center;
            }

                ul.desktop-utility-menu > li > a:hover,
                ul.desktop-utility-menu > li > a:active,
                ul.desktop-utility-menu > li > a:focus {
                    color: #8DCB41;
                    text-decoration: none;
                }

            ul.desktop-utility-menu > li > div.hasActiveUser {
                display: block;
                padding: 28px 20px;
            }

            ul.desktop-utility-menu > li > div > a {
                font-size: 16px;
                font-weight: 600;
                line-height: 20px;
                color: #65737E;
                text-align: center;
            }

                ul.desktop-utility-menu > li > div > a:hover,
                ul.desktop-utility-menu > li > div > a:active,
                ul.desktop-utility-menu > li > div > a:focus {
                    color: #8DCB41;
                    text-decoration: none;
                }

    .desktop-cta {
        float: left;
        margin: 21px 10px 21px 0px;
        padding: 4px 10px;
    }

    /* Search Form
			---------------------------------------- */
    button.desktop-flyout-search-open {
        display: block;
        float: left;
        font-size: 16px;
        line-height: 30px;
        color: #000;
        padding: 23px 10px;
        border: none;
        background-color: transparent;
        width: 40px;
        -webkit-transition: color 200ms ease-in-out;
        transition: color 200ms ease-in-out;
    }

        button.desktop-flyout-search-open:hover,
        button.desktop-flyout-search-open:active,
        button.desktop-flyout-search-open:focus {
            background-color: transparent;
            border: none;
            text-decoration: none;
            cursor: pointer;
            color: #8DCB41;
        }

    .desktop-flyout-search-form {
        display: none;
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        z-index: 2;
    }

        .desktop-flyout-search-form .form-control {
            font-size: 16px;
            line-height: 20px;
            color: #000;
            padding: 25px 40px 25px 40px;
            height: 76px;
            border: none;
            -webkit-border-radius: 0;
            -moz-border-radius: 0;
            -ms-border-radius: 0;
            -o-border-radius: 0;
            border-radius: 0;
        }

            .desktop-flyout-search-form .form-control:focus {
                color: #000;
                border: none;
                box-shadow: none;
            }

        .desktop-flyout-search-form .button-search {
            position: absolute;
            top: 0;
            left: 0;
            font-size: 16px;
            line-height: 30px;
            color: #000;
            padding: 23px 10px;
            margin: 0;
            background-color: transparent;
            border: none;
        }

            .desktop-flyout-search-form .button-search:hover,
            .desktop-flyout-search-form .button-search:active,
            .desktop-flyout-search-form .button-search:focus {
                background-color: transparent;
                border: none;
                text-decoration: none;
                cursor: pointer;
            }

        .desktop-flyout-search-form .button-close {
            position: absolute;
            top: 0;
            right: 0;
            font-size: 20px;
            line-height: 30px;
            color: #000;
            padding: 23px 10px;
            margin: 0;
            background-color: transparent;
            border: none;
            width: 40px;
        }

            .desktop-flyout-search-form .button-close:hover,
            .desktop-flyout-search-form .button-close:active,
            .desktop-flyout-search-form .button-close:focus {
                background-color: transparent;
                border: none;
                text-decoration: none;
                cursor: pointer;
            }
}

@media (min-width: 1200px) {

    .desktop-cta {
        margin: 21px 15px;
        padding: 4px 20px;
    }

    ul.desktop-utility-menu > li > a {
        padding: 28px 0px 28px 20px;
        font-size: 16px;
    }

    ul.desktop-navbar-menu > li > a {
        padding: 28px 20px;
    }
}

/* ========================================================================================================================
                                                    Pendo Resource Center
======================================================================================================================== */

.pendo-resource-center {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 1000;

    display: flex;
    justify-content: center;
    align-items: center;
}

.pendo-resource-center img {
    display: block;
    width: 110%; /* Image fills the container, and is expanded slightly to bring the icon circle closer to the container drop shadow rim */
    height: 110%; 
    object-fit: cover;
}