


:root {
    --color-link: #0083db; /*015a99*/
    --max-desktop-width: 1200px;
    --max-content-width: 780px;
}



/* MASTER FONT FAMILIES */
html, .button, input, textarea, button {
    font-family: 'Avenir Next', Avenir, 'Open Sans', helvetica, sans-serif;
}




html, body { font-size: 16px; }

#page_wrapper { background-color: white; }

.ui_bg_primary, .button_action_2023 { background-color: #0083db; }



footer {
    padding: 0;
}

#eln_footer_top {
    background: #f0f0ef;
    padding: 2.5em;
}

#eln_footer_top .flexbox_wrapper {
    gap: 2em;
}

#footer_logo {
    max-width: 16em;
    margin-right: 0.5em;
}

.footer_link_col {
    padding-bottom: 2em;
}

.footer_link_col b, .footer_link_col a {
    display: table;
    font-size: 0.85em;
}

.footer_link_col a {
    font-size: 0.85em;
    line-height: 1.25;
    margin-top: 0.65em;
}

.footer_link_col a:hover {
    text-decoration: underline;
}



#eln_social_footer {
    margin-left: 0.25em;
    margin-top: 1em;
    padding: 0;
    display: flex;
    gap: 0.75em;
    align-self: flex-end;
}

#eln_social_footer a {
    display: block;
}

#eln_social_footer img {
    display: block;
    width: 2.1em;
    height: 2.1em;
}

#footer_left_links {
    margin-top: 1em;
    margin-bottom: 2em;
    margin-left: 0.25em;
}

#footer_left_links a {
    display: table;
    font-size: 0.85em;
    width: auto;
    margin-top: 0.5em;
}





#eln_footer_bottom {
    padding: 1.75em 2.5em;
    background-color: #015a99;
}

#eln_footer_bottom a {
    display: inline-block;
    background: none;
    border-radius: 0.5em;
    padding: 0.5em 0.65em;
    margin-right: 0.25em;
    color: white;
}

#eln_footer_bottom a:hover {
    background: white;
    color: black;
    box-shadow: 0 0.1em 0.5em rgba(0, 0, 0, 0.3);
}




.small {
    font-size: 0.8em;
}

a {
    color: var(--color-link);
}
a:hover {
    text-decoration: none;
}

h1 { font-size: 2.5em; line-height: 1.125; }
h2 { font-size: 2.125em; line-height: 1.25; }
h3 { font-size: 1.5em; line-height: 1.3; }
h4 { font-size: 1.4em; }
h5 { font-size: 1.25em; }
h6 { font-size: 1.00em; }

p { margin: 1em 0 1em 0; }

.allcaps {
    text-transform: uppercase;
    line-height: 1.125;
}


.page_block_title {
    line-height: 1.2;
}


.video-container-wrapper {
    margin-top: 2.5em;
}


.modal .video-container-wrapper {
    margin-top: 0;
}

.page_block_text .img4 img {
    max-width: 14em;
}



.text_content {
    line-height: 1.5;
}

.text_content h2 {
    margin-bottom: 0em;
}

.text_content h3 {
    margin-top: 1em;
    margin-bottom: 0.25em;
}

.text_content h4 {
    line-height: 1.3;
    font-size: 1.2em;
    margin: 0.75em 0 0.1em 0;
}

.text_content h5 {
    font-size: 1em;
    font-weight: normal;
    margin: 0;
    max-width: var(--max-content-width);
}

.text_content h6 {
    font-weight: normal;
    font-size: 0.8em;
    margin: 0 0 1em 0;
    line-height: 1.4;
    max-width: var(--max-content-width);
}

.text_content p {
    max-width: var(--max-content-width);
    margin: 0 0 1em 0;
}

.text_content ol, .text_content ul {
    margin: 0.125em 0 0.75em 0;
    max-width: var(--max-content-width);
}

.text_content li {
    margin: 0.25em 0;
    line-height: 1.4;
}

.text_content hr {
    border: none;
    height: 1px;
    margin: 1em 0;
    background-color: var(--color-gray);
}

.eln_course_sidebox .thumbnail, .eln_courses_grid_wrapper .thumbnail, .eln_companion_course_wrapper .thumbnail {
    width: 100%;
    padding-bottom: 50%;
    display: block;
    margin-bottom: 0.5em;
    background-size: cover;
    background-position: center 33%;
}


.eln_course_sidebox .sidebox_item {
    border-radius: 0.5em;
    overflow: hidden;
}

.eln_course_sidebox .sidebox_left .page_block_title {
    text-align: left;
}



.eln_coursebox {
    color: black;
}

.sidebox_item .eln_coursebox {
    width: 16em;
}



.eln_coursebox_cover {
    width: 100%;
    height: auto;
    display: block;
}

.eln_coursebox_details {
    padding: 0.8em 1em 1.1em 1em;
}

.eln_coursebox_title {
    font-weight: bold;
    margin-bottom: 0.6em;
    line-height: 1.2;
}



.eln_courses_grid_wrapper {
    margin: 1.2em 0 1em 0;
    display: grid;
    gap: 2em;
    grid-template-columns: repeat(auto-fill,minmax(20%, 1fr));
}


.eln_companion_course_wrapper {
    padding: 2.5em;
    margin-top: 2.5em;
    margin-bottom: 1em;
    background: #f0f0ef;
    border-radius: 2em;
}

.eln_companion_course_wrapper .flexbox_wrapper {
    gap: 2em;
}


.eln_courses_grid_wrapper .grid_item, .eln_companion_course_wrapper .grid_item {
    display: block;
    border-radius: 0.5em;
    background: white;
    overflow: hidden;
}



.microcredentialbox {
    color: black;
}

.microcredentialbox_details {
    text-align: center;
    padding: 0.25em 1em 0.5em 1em;
}

.microcredentialbox_badge {
    display: block;
    margin: 0.5em auto;
    max-width: 9em;
}

.microcredential_sidebox_item .sidebox_item {
    background: white;
    border-radius: 0.5em;
}




.elnwebinar_sidebox_item {
    display: block;
    border-radius: 0.5em;
    overflow: hidden;
    width: 15em;
    height: 10em;
}



.mc_badge_page {
    float: right;
    margin: 0 0 1em 1em;
    max-width: 17em;
}






.org_wrapper {
    margin-top: 0.5em;
}

.org_full {
    display: flex;
    flex-direction: column;
    gap: 1em;
}

.org_full .org {
    background: white;
    color: black;
    display: flex;
    border-radius: 0.75em;
    min-height: 14em;
    align-items: center;
    gap: 1.5em;
    padding: 1.5em;
    box-shadow: 0 0.1em 0.5em rgba(0, 0, 0, 0.32);
}

.org_full .org .org_logo {
    width: 15em;
    max-width: 100%;
}

.org_full .org_logo img {
    display: block;
    margin: auto;
}

.org_full .org a, .org_grid_detailed .org a { color: var(--color-link) !important; }
.org_full .org a:hover { color: black !important; }

.org_grid, .org_grid_detailed {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5em;
}

.org_grid .org, .org_grid_detailed .org {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background: white;
    color: black;
    border-radius: 1em;
    min-height: 10em;
}

.org_grid .org {
    flex: 0 0 calc(25% - 1.65em);
    gap: 0.8em;
    text-align: center;
    align-items: center;
    padding: 1em 0.75em 0.9em 0.75em;
}

.org_grid_detailed .org {
    flex: 0 0 calc(33% - 1em);
    gap: 0.125em;
    text-align: left;
    align-items: flex-start;
    padding: 1em 0.75em 1em 1.25em;
}

.org_name {
    font-weight: bold;
    font-size: 1em;
    line-height: 1.25;
    margin: 0.85em 0 0.25em 0;
}

.org_logo {
    display: block;
}

.org_grid .org_logo, .org_grid_detailed .org_logo {
    max-width: 90%;
    flex-grow: 1;
    display: flex;
}

.org_grid .org_logo img, .org_grid_detailed .org_logo img {
    display: block;
    margin: auto;
    max-height: 8em;
}

.org_grid .org p {
    padding: 0em 2em;
}

.org_grid_detailed .org p {
    padding: 0 2em 0 0;
    margin: 0 0 0 0;
}

.org_text .org a, .org_text .org .nolink {
    display: inline-block;
    width: auto;
    font-size: 1.125em;
    padding: 0.25em 0.55em 0.35em 0.55em;
    border-radius: 0.5em;
}

.org_text .org a:hover {
    background: white;
    color: black !important;
}





#search_top_icon {
    display: inline-block;
    height: 1.1em;
    margin-right: 0.3em;
    margin-bottom: -0.16em;
    /*transform: scale(0.88);
    transition: all .1s ease-in-out;*/
}
/*
#search_top_icon:hover {
    transform: scale(1);
}
*/
.search_results_outer {
    padding: 3em 4em;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.search_results_sidebox {
    padding-left: 0em;
}

.search_results_sidebox .sidebox_inner {
    padding-left: 4em;
}

.search_results_sidebox .sidebox_left {
    flex: 0 0 17em;
    padding-right: 2em;
}

.search_results_sidebox .sidebox_left h2 {
    line-height: 1.0;
    margin-bottom: 0.35em;
}

.search_results_region {
    max-width: 18%;
    padding: 0.75em;
    border-radius: 0.5em;
    display: block;
    position: relative;
}

#search_options main {
    padding-left: 3em;
    padding-right: 3em;
}

#search_options_button .icon {
    margin-top: 0.2em;
    width: 0.85em;
    height: 0.85em;
}

.search_options_wrapper {
    gap: 2em;
}

.search_options_wrapper > * {
    width: 100%;
}

.search_options_spacer {
    width: 1.5px !important;
    flex: 0 0 1.5px !important;
    background: #ccc;
}

.search_options_wrapper h4 {
    font-size: 1.1em;
    margin-bottom: 0.5em;
}

.search_options_examples {
    color: #888;
    margin-top: 1.25em;
    line-height: 1.5;
    font-size: 0.85rem;
}

/*.search_options_examples a { color: #888; }
.search_options_examples a:hover { color: var(--color-link); }
*/
.search_options_tag .tag_bay .tag {
    /*background: #bbb;*/
    /*font-size: 1.1em;*/
    /*border-radius: 3em;*/
    /*padding: 0.6em 1.1em;*/
}

/*
#search_options_tag_examples .tag_bar {
    margin-top: 0.5em;
}
*/
/*
#search_options_tag_examples .tag_bar a {
    background-color: #c2c2c2;
    color: black;
}
*/
#search_options_tag_examples_2025 .tag_bar a:hover {
    /*background-color: white;*/
    background-color: var(--color-gray);
}

.search_options_buttons {
    margin-top: 2em;
    text-align: center;
    padding-left: 0.25em;
}

/*
.search_options_buttons .button_basic_2023:not(:hover) {
    background-color: white;
}
*/

.button_white {
    background: white;
}

.see_all_tags_button {
    cursor: pointer;
    background: var(--color-link) !important;
    color: white !important;
    /*border: 2px solid black;*/
}

.see_all_tags_button:hover {
    background-color: var(--color-black) !important;
}

#all_tags {
    padding-top: 1em;
    display: none;
}

.all_tags_tagwrapper {
    line-height: 1.2;
    margin-top: 0.65em;
    margin-bottom: 1.5em;
}

.all_tags_tagwrapper a {
    display: block;
    width: fit-content;
    padding: 0.45em 0.85em;
    border-radius: 1.3em;
    /*background-color: var(--color-superlightgray);
    color: black;*/
    background-color: var(--color-superlightgray);
    color: black;
    margin-bottom: 0.4em;
}

.all_tags_tagwrapper a:hover {
    /*background: white !important;*/
    background-color: var(--color-gray);
}

#search_options .all_tags_tagwrapper a {
    /*background-color: #c2c2c2;*/
}






.button_addtocart {
    padding-right: 1.5em;
    margin-right: 1em;
}


.button_addtocart .icon {
    transform: scale(0.95);
    margin-right: 0.4em;
    margin-top: -0.1em;
    transition: all 0.15s ease;
}

.button_addtocart_pressed, .button_addtocart_pressed:hover {
    transform: scale(1);
    box-shadow: none;
    cursor: default;
    opacity: 0.6;
}





@keyframes wiggle {
    0% {transform:rotate(0deg) scale(0.95);}
    5% {transform:rotate(2deg) scale(0.98);}
    10% {transform:rotate(-3deg) scale(1.2);}
    20% {transform:rotate(4deg) scale(1.05);}
    30% {transform:rotate(-5deg) scale(0.85);}
    40% {transform:rotate(7deg) scale(0.95);}
    50% {transform:rotate(-6deg) scale(0.95);}
    60% {transform:rotate(5deg) scale(0.95);}
    70% {transform:rotate(-3deg) scale(0.95);}
    80% {transform:rotate(2deg) scale(0.95);}
    90% {transform:rotate(-1deg) scale(0.95);}
    100% {transform:rotate(0deg) scale(0.95);}
}

.wiggler {
    -webkit-animation: wiggle 1s;
    -moz-animation: wiggle 1s;
}





/* Responsive */

@media screen and (min-width: 1400px) {

    h1 { font-size: 3em; }
    h2 { font-size: 2.5em; }
    h3 { font-size: 2em; }
    h4 { font-size: 1.75em; }
    h5 { font-size: 1.5em; }
    
    .mc_badge_page {
        max-width: 19em;
    }
    
    .search_results_sidebox .sidebox_left {
        flex: 0 0 20em;
    }
    
    .summit_sessions_wrapper {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    
}

@media screen and (max-width: 1100px) {
    
    .org_grid .org, .org_grid_detailed .org {
        flex: 0 0 calc(33% - 1em);
    }
    
    .summit_sessions_wrapper {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    
    .microcredentialbox_badge {
        max-width: 7em;
    }
}

@media screen and (max-width: 800px) {

    html, body { font-size: 14px; }
    
    main, .main {
        padding: 1em 1.5em;
    }
    
    #eln_footer_top .flexbox_wrapper {
        gap: 0em;
    }
    
    .footer_link_col a {
        font-size: 0.85em;
        line-height: 1.1;
        margin-top: 0.65em;
    }
    
    .mc_badge_page {
        max-width: 10em;
    }
    
    .org_full .org {
        align-items: flex-start;
        flex-direction: column;
    }
    
    .org_full .org .org_logo {
        width: 100%;
    }
    
    .org_grid .org, .org_grid_detailed .org {
        flex: 0 0 calc(50% - 0.75em);
    }
    
    .eln_courses_grid_wrapper {
        gap: 1.25em;
        grid-template-columns: repeat(auto-fill,minmax(40%, 1fr));
    }
    
    .eln_companion_course_wrapper {
        padding: 2em 1.5em;
    }
    
    #search_options main {
        padding-left: 1.5em;
        padding-right: 1.5em;
    }
    
    .search_options_wrapper { gap: 0.25em; }
    
    .search_options_spacer {
        display: none;
    }
    
    .flex_overcome_fixed_height_on_mobile {
        flex: 0 0 auto !important;
    }

}


.unselectable {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* input placeholder text color */
::-webkit-input-placeholder {   color: #ccc; }
:-moz-placeholder {             color: #ccc; }
::-moz-placeholder {            color: #ccc; }
:-ms-input-placeholder {        color: #ccc; }
