@font-face {
    font-family: 'Open Sans';
    /*font-style: italic;*/
    font-weight: 300;
    font-stretch: 100%;
    font-display: swap;
    /*src: url(https://img1.wsimg.com/gfonts/s/opensans/v44/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2) format('woff2');*/
    src: url(./fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2) format('woff2');
    unicode-range: U +0460 -052F, U +1C80 -1C8A, U +20B4, U +2DE0 -2DFF, U + A640-A69F, U + FE2E-FE2F;/**/
}
@font-face {
    font-family: 'Crimson Text';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    /*src: url(https://img1.wsimg.com/gfonts/s/crimsontext/v19/wlppgwHKFkZgtmSR3NB0oRJX1C1GA9NQ5LE.woff2) format('woff2');*/
    src: url(./fonts/wlppgwHKFkZgtmSR3NB0oRJX1C1GDNNQ.woff2) format('woff2');
    unicode-range: U +0102 -0103, U +0110 -0111, U +0128 -0129, U +0168 -0169, U +01A0 -01A1, U +01AF -01B0, U +0300 -0301, U +0303 -0304, U +0308 -0309, U +0323, U +0329, U +1EA0 -1EF9, U +20AB;
}
:root {
    --background-color: rgb(255, 255, 255);
    --color: rgb(27, 27, 27);
    --width: 100%;
    --font-family: 'Open Sans', arial, sans-serif;
    --font-size: 18px;
}
*, :after, :before {
    box-sizing: border-box;
}
html {
    display: block;
    font-family: 'Open Sans', arial, sans-serif;
    -webkit-font-smoothing: antialiased;
}
body {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    margin: 0;
    box-sizing: border-box;
}
header, nav, main, section, footer {
    display: block;
    position: relative;
}
header {
    min-height: 64px;
    background-color: #fff;
}
a {
    text-decoration: none;
    color: rgb(46, 110, 178);
}
nav {
    position: fixed;
    z-index: 10;
    left: 0px;
    right: 0px;
    top: 0px;
    background-color: #fff;
}
nav {
    font-size: 18px;
}
nav {
    max-width: 100%;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    /*padding-top: 24px;*/
    /*padding-bottom: 24px;*/
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 48px;
    padding-right: 48px;
    display: flex;
    /*flex-direction: column;*/
    justify-content: space-between;
    gap: 32px;
}
.nav-menu {
    position: relative;
    display: flex;
    max-width: 65%;
    flex-basis: 65%;
    gap: 32px;
    justify-content: flex-end;
    align-items: center;
}
.logo-container {
    display: flex;
    justify-content: flex-start;
    max-width: 28%;
    flex-basis: 28%;
}
.logo-heading {
    max-width: 100%;
}
.logo-heading {
    display: inline-block;
    font-family: 'Crimson Text', serif;
    font-size: 24px;
    color: var(--color);
}
.menu-item {
    color: rgb(94, 94, 94);
    color: var(--color);
    font-weight: 400;
    letter-spacing: 0.063em;
    line-height: 1.5em;

    font-size: 17px; /*Not using the correct font*/
    font-size: 17.5px; /*Not using the correct font*/
}
.menu-item {
    padding-left: 32px;
    display: inline-block;
}
.menu-item:first-child {
    padding-left: 0px;
}
.menu-item:hover {
    opacity: 50%;
}
.menu-item a {
    color: var(--color);
}
.menu-item.active a {
    border-bottom: 1px solid;
    padding-top: 4px;
    padding-bottom: 4px;
}
.menu-item-more{
    display: inline-block;
}
nav svg {
    vertical-align: middle;
}
nav svg.icon {
    font-size: 18px;
    vertical-align: middle;
    padding-top: 6px;
    padding-left: 6px;
    /*padding-right: 6px;*/
    width: 34px;
}
.utilities-menu {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-basis: 12%;
    padding-right: 6px;
}
.cart-cnt {
    position: relative;
    font-size: 14px;
    padding-left: 0.25em;
    padding-right: 0.25em;
    padding-left: 0.35em;
    padding-right: 0.35em;
}
.cart-cnt::after {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.9);
    opacity: 0.1;
    border-radius: 0.75em;
    right: 0px;
    left: 0px;
    top: 0px;
    bottom: 0px;
}
@media (max-width: 1024px) {
    .nav-menu-items {
        display: none;
    }
}

.mobile-menu {
    position: fixed;
    z-index: 10002;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0;
    padding-top: 56px;
    overflow: hidden;
    background-color: rgb(22, 22, 22);
    color: rgb(247, 247, 247);
    transition: transform .3s ease-in-out;
    font-size: 22px;
    text-align: left;
}
.mobile-menu .mobile-menu-inner-contents {
    display: flex;
    flex-direction: column;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}
.mobile-menu .mobile-menu-inner-contents {
    height: 100%;
}
.mobile-menu * {
    cursor: pointer;
}
/*.mobile-menu *:hover,*/
.mobile-menu *:hover {
    color: rgb(66, 130, 199);
}

.mobile-menu ul {
    margin-top: 0;
    padding-top: 0;
}
.mobile-menu li {
    display: block;
}
.mobile-menu li a {
    display: flex;
    align-items: center;
    min-width: 300px;
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 24px;
    padding-right: 24px;
    color: rgb(247, 247, 247);
    text-decoration: none;
}
.mobile-menu li a:hover {
    color: rgb(160, 192, 246);
}
.mobile-menu li a:active {
    color: rgb(66, 130, 199);
}

.mobile-menu .c1-6s {
    position: absolute;
    right: 15px;
    top: 15px;
    line-height: 1.3em;
    padding-left: 6px;
    padding-right: 6px;
}
.mobile-menu {
    display: none;
}
/*
@media (min-width: 1024px) {
    .nav-menu {
        display: flex;
    }
}
*/
@media (min-width: 1025px) {
    .hamburger-menu {
        display: none;
    }
}
.mobile-menu .account {
    display: none;
}
/* --------------------- */
.featured-text-debug {
    border: 1px solid salmon;
    background-color: #f8f0e6;
    clear: both;
}
.featured-text {
    margin-top: 2em;
    padding: 1em;
    text-align: center;
    font-size: 18px;
    color: rgb(94, 94, 94);
    line-height: 1.4;
}
/* --------------------- */
main {
    min-height: 70vh;
    margin-top: 2em;
    padding-bottom: 1em;
}
@media (min-width: 768px) {
    .classes-events {
        width: 100%;
        margin: 1em;
    }
}
@media (min-width: 1024px) {
    .classes-events {
        width: 984px;
        margin: auto;
    }
}
@media (min-width: 1280px) {
    .classes-events {
        width: 1160px;
        font-size: 16px;
    }
}
@media (min-width: 1536px) {
    .classes-events {
        width: 1280px;
        font-size: 18px;
    }
}
.classes-events {
}

.classes-events h2 {
    font-family: "Crimson Text", serif;
    font-size: 24px;
    /*font-size: 20px;*/ /*Not using the correct font*/
    padding-left: 24px;
    padding-right: 24px;
}
.classes-events hr {
    margin-top: 16px;
}
.card-grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 1em;
    margin-top: 2em;
    line-height: 1.4;
}
.grid-cell {
    max-width: 33.3333%;
    flex-basis: 33.3333%;
    flex-shrink: 1;
    flex-grow: 1;
    border-width: 1px;
    padding-left: 24px;
    padding-right: 24px;
    padding-bottom: 48px;
}
.card {
    /*
    max-width: 33.3333%;
    flex-basis: 33.3333%;
    flex-shrink: 1;
    flex-grow: 1;
    */
    border-width: 1px;
    border-style: solid;
    border-color: rgb(226, 226, 226);
}
.card:hover {
    box-shadow: rgb(187, 187, 187) 0px 0px 28px -3px;
}
.card .card-img {
    /*height: 100%;*/
    width: 100%;
    padding-top: 75%;
    background-size: cover;
    background-position: center center;
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/Eating%20Healthy.png);
}
.card .card-img.img-1 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/Eating%20Healthy.png);
}
.card .card-img.img-2 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/IMG_1952.jpeg);
}
.card .card-img.img-3 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/ColorfulCreativeAbstractArtGalaExhibitionEvent.png);
}
.card .card-img.img-4 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/IMG_2122.jpeg);
}
.card .card-img.img-5 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/IMG_2115.jpeg);
}
.card .card-img.img-6 {
    background-image: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%), url(https://img1.wsimg.com/isteam/ip/d0a42df1-e7ca-4bd4-8e77-afd1d7e98bf0/IMG_2112-1.png);
}

.card-content {
    display: flex;
    flex-direction: column;
    padding: 1em;
    padding-top: 0.75em;
}
.card-content span {
    display: inline-block;
    line-height: 1.5;
}
.card-content .title {
    font-size: 18px;
    margin-bottom: 4px;
}
.card-content .date {
    font-size: 15px;
    color: rgb(89, 89, 89);
}
.card-content .duration {
    font-size: 16px;
    color: rgb(27, 27, 27);
}
.card-content .duration::after {
    content: "|";
    margin-left: 8px;
    margin-right: 8px;
}
.card-content .price {
    font-size: 16px;
    color: rgb(27, 27, 27);
}
.card-content .register-button {
    min-height: 40px;
    margin-top: 8px;
    padding-top: 4px;
    padding-bottom: 4px;
    font-size: 16px;
    border-style: none;
    background-color: rgb(46, 110, 178);
    color: rgb(255, 255, 255);
}
.card-content .register-button:hover {
    background-color: rgb(42 100 162);
    background-color: rgb(38 90 146);
    opacity: 1;
}
/* --------------------- */

footer {
   background-color: rgb(46, 110, 178);
   color: rgb(255, 255, 255);
   /*position: fixed;*/
   bottom: 0;
   width: clamp(100%, 85%, calc(1536px/1280));
   text-align: center;
   padding-top: 1em;
   padding-bottom: 1em;
   line-height: 1.75;
}

footer span {
    display:block;
    font-weight: 400;
    margin-bottom: 0.25em;
}
footer span {
    font-size: 14pt;
}
footer span.org {
    font-size: 32px;
}
footer span.copy {
    font-size: 10pt;
    font-size: 9pt;
    margin-top: 0.75em;
}