/* CLB Custom Front-End CSS, loaded after theme and child theme styles */


/*-- Implement Dark Mode -- */

.site-container,
.site-header,
.blog .site-inner, .archive .site-inner, .search-results .site-inner {
     transition: all ease-in-out .25s;
}

.page .content, .single .content,
.error404 .content, .content .entry {
     transition: all ease-in-out .25s;
}

.dark-theme .site-header {
     border-bottom: none;
}

.clb-toggle-dark-mode {
     padding: 0;
}

.dark-theme .site-container {
     background: #000;
}

.dark-theme .site-inner {
     background: rgba(45,45,45,.7);
}

body.dark-theme {
     color: #eee;
}

.dark-theme .entry-header::after {
    border-bottom: 2px solid #eee;
}

.dark-theme #genesis-footer-widgets {
    background-color: #333;
}

/* .dark-theme .button, .dark-theme button, .dark-theme input[type='button'], .dark-theme input[type='reset'], .dark-theme input[type='submit'], .dark-theme .wp-block-button a,
.dark-theme .site-container .wp-block-button .wp-block-button__link,
.dark-theme .gb-button {
     background: var(--c-accentDark30) !important;
}

.dark-theme .button:hover, .dark-theme button:hover, .dark-theme input[type='button']:hover, .dark-theme input[type='reset']:hover, .dark-theme input[type='submit']:hover, .dark-theme .wp-block-button a:hover,
.dark-theme .site-container .wp-block-button .wp-block-button__link:hover,
.dark-theme .gb-button:hover {
     background: var(--c-accent) !important;
} */

.dark-theme .search-form .search-toggle {
    filter: brightness(100);
}

.dark-theme .clb-custom-author-box-wrapper {
     background: var(--c-overlay);
     border: 1px solid #eceef1;
}

.dark-theme .interactive-card {
     border: 1px solid #eceef1;
}

.dark-theme .clb-from-the-blog {
     background: var(--c-overlay) !important;
     color: var(--c-body);
}

.dark-theme .clb-from-the-blog h2,
.dark-theme .clb-from-the-blog h3 {
     color: var(--c-body);
}

.dark-theme .gb-block-post-grid header .gb-block-post-grid-title a {
     color: var(--c-body);
}

.dark-theme #genesis-footer-widgets a,
.dark-theme .footer-credits a {
     color: var(--c-body);
}

.dark-theme .after-entry {
     background: transparent;
     border: 1px solid #eceef1;
}

.dark-theme .clb-custom-author-box-wrapper:after,
.dark-theme .after-entry:after {
     display: none;
}

.dark-theme {
     --c-body: #000;
 }

.dark-theme .clb-from-the-blog,
.dark-theme .clb-from-the-blog:before {
	background: #3B7694 !important;
}

.home.dark-theme .gb-post-grid-items article {
     border: 1px solid #000;
     background: transparent;
}

@media (min-width: 896px) {
     .dark-theme .sub-menu {
         background-color: var(--c-overlay);
     }
}

/* ---- END Implement Dark Mode ------ */


.search-results .clb-has-featured-img .hero-section:before {
     display: none;
}


.entry-content ol, .entry-content ul {
     line-height: 1.3;
}

.entry-content ol li, .entry-content ul li {
     margin-bottom: 8px;
}

.wp-block-image {
    margin-bottom: 0;
}

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
    max-width: 50%;
    color: var(--c-grey2);
    margin: 2.2em auto 2em;
}

.button-grid.columns-2 .button.full,
.button-grid.columns-3 .button.full,
.button-grid.columns-4 .button.full {
    min-width: inherit;
}

.gform_body input, .gform_body select, .gform_body textarea {
     height: revert;
}

.modal.clb-apply-to-teach button.btn-secondary {
     background: var(--c-grey4) !important;
}

.modal.clb-apply-to-teach button.btn-secondary:hover {
     background: var(--c-black) !important;
}


/* ---- Custom Hero Icon Background Work ---- */

.site-container {
     position: relative;
}

.hero-section .entry-title {
     text-shadow: 0 0 20px rgba(0,0,0,.2);
}

.clb-hero-icon-wrapper {
     max-width: 30px;
     color: var(--c-overlay);
     opacity: .4;
     position: absolute;
     left: 0;
     --animation-time: 30s;
}

.clb-hero-icon-wrapper.animate-icon.clb-rotate {
     /* opacity: 1; */
     animation: rotation var(--animation-time) infinite linear;
}

.clb-hero-icon-wrapper.animate-icon.clb-grow {
     will-change: transform;
     transform: scale(.5);
     animation: growAndShrink var(--animation-time) infinite linear;
}

.clb-hero-icon-wrapper.animate-icon.clb-shine {
     opacity: 0;
     animation: clbShine var(--animation-time) infinite linear;
}

.clb-hero-icon-wrapper.animate-icon.dna-spiral {
     will-change: transform;
     animation: dnaSpiral var(--animation-time) infinite linear;
}

.clb-hero-icon-wrapper img {
     filter: invert(0%);
}

.dark-theme .clb-hero-icon-wrapper img {
     filter: invert(100%);
}

@keyframes rotation {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(359deg);
  }
}

@keyframes growAndShrink {
  0% { transform: scale(.5); }
  50% { transform: scale(2); }
  100% { transform: scale(.5); }
}

@keyframes clbShine {
  0% { opacity: 0; }
  50% { opacity: 1; }
  100% { opacity: 0; }
}

@keyframes dnaSpiral {
  0% { transform: scaleX(1); }
  50% { transform: scaleX(-1); }
  100% { transform: scaleX(1); }
}








/* END HERO WORK _-------- */





.clb-blog-co-editors-wrapper {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 20px;
}

.clb-blog-co-editors-card img {
     border-radius: var(--radius);
}

.clb-blog-ed-name {
     margin-top: 20px;
     font-family: 'wotfardsemibold', sans-serif;
}

.entry-footer {
     border-bottom: none;
}

#text-2 p {
     text-align: left;
     font-size: 16px;
     line-height: 1.3;
}

/* ---- Blog, Archive Views ------ */

.blog .site-inner,
.archive .site-inner {
     box-shadow: none;
     background: transparent;
     backdrop-filter: blur(0);
}

.wp-block-button .wp-block-button__link:not(.has-background), .wp-block-button .wp-block-button__link:not(.has-background):focus, .wp-block-button .wp-block-button__link:not(.has-background):hover {
     background: var(--primary);
     color: #000;
     border-radius: 8px;
     font-family: 'AvenirNextBold', sans-serif;
     letter-spacing: 2px;
    padding: 15px 25px;
}

.entry-content .gb-block-button a.gb-button,
.entry-content a.clb-button {
     background: var(--primary) !important;
     color: #000 !important;
     border-radius: 8px !important;
     font-family: 'AvenirNextBold', sans-serif !important;
     letter-spacing: 2px !important;
    padding: 15px 25px !important;
    text-transform: uppercase !important;
}

.entry-content .gb-block-button a.gb-button:hover,
.entry-content a.clb-button:hover {
     opacity: .9;
}

.entry-content .gb-button-size-medium {
     font-size: 14px;
}

#site-search .search-form {
     display: grid;
     grid-template-columns: 5fr 1fr;
     gap: 8px;
}

#site-search input {
     border-radius: 8px;
}


@media (min-width: 896px) {
     .hero-section, .clb-has-featured-img .hero-section {
         padding: 6rem 0;
     }

     .single-conferences .content {
         width: 100%;
     }

     .footer-credits {
         margin-top: 0;
     }

     .footer-widgets .wrap {
         width: 100%;
         max-width: 1152px;
         padding-right: 0;
         padding-left: 0;
     }

     .blog.full-width-content .content,
     .archive.full-width-content .content {
         padding: 0;
         width: 100%;
     }

     .clb-blog-grid {
          display: grid;
          grid-template-columns: 1fr 1fr 1fr;
          gap: 30px;
     }

     .clb-blog-grid article {
          background: #fff;
          border-radius: 8px;
          box-shadow: 0 0 20px rgb(0 0 0 / 10%);
          padding: 20px;
     }

     .clb-blog-grid article .entry-title {
          margin-top: 20px;
          font-size: 30px;
     }

     .clb-blog-grid article .clb-subtitle {
         font-size: 20px;
    }

    .clb-blog-grid article .entry-footer,
    .clb-blog-grid article .entry-header:after,
    .clb-blog-grid article .entry-content p {
         display: none;
    }

    .clb-blog-grid .entry {
         margin-bottom: 0;
    }

    .clb-blog-grid article .entry-header p.entry-meta {
         text-align: center;
         margin-top: 30px;
         font-size: 12px;
         font-family: 'wotfardlight';
         color: #fff;
         border-radius: 5px;
         background: #06D6A0;
         width: fit-content;
         margin: 30px auto 12px;
         padding: 8px 12px;
         position: relative;
     }

     .clb-blog-grid article img {
          border-radius: 5px;
     }

     .clb-blog-grid article {
          display: flex;
          flex-direction: column;
          flex-flow: column-reverse;
          align-items: flex-end;
          justify-content: flex-end;
     }

}
