/* Smaller sitewide education-support ribbon */
.colr-mission-banner{min-height:44px!important;padding:5px max(24px,calc((100% - 1120px)/2))!important;grid-template-columns:28px minmax(0,1fr) auto!important;gap:10px!important}
.colr-mission-banner .colr-mission-icon{width:28px!important;height:28px!important;font-size:18px!important}
.colr-mission-banner .colr-mission-content h2{margin:0 0 1px!important;font-size:18px!important;line-height:1.05!important}
.colr-mission-banner .colr-mission-content p{font-size:11px!important;line-height:1.25!important}
.colr-mission-banner .colr-mission-action{min-width:145px!important}
.colr-mission-banner .colr-mission-button{padding:7px 14px!important;font-size:12px!important}
@media(max-width:760px){.colr-mission-banner{padding:7px 14px!important;grid-template-columns:24px minmax(0,1fr)!important;gap:6px 9px!important}.colr-mission-banner .colr-mission-icon{width:24px!important;height:24px!important;font-size:16px!important}.colr-mission-banner .colr-mission-content h2{font-size:16px!important}.colr-mission-banner .colr-mission-content p{font-size:10px!important}.colr-mission-banner .colr-mission-button{padding:6px 11px!important;font-size:11px!important}}

.colr-mission-banner {
 width:100%; max-width:none; min-height:80px; margin:0; padding:14px max(24px,calc((100% - 1120px)/2)); border:0; border-top:1px solid #efbd75; border-bottom:1px solid #efbd75; border-radius:0; box-shadow:none; display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:16px; background:#fffaf1;
}
.colr-mission-banner .colr-mission-icon { width:40px; height:40px; margin:0; font-size:24px; color:#b97800; background:transparent; }

/* Header and mission-banner wrapping fixes — 2026-08-05 */
@media (min-width: 1024px) {
  #masthead .mt-container {max-width:1400px!important}
  #site-navigation .menu {white-space:nowrap!important}
  .colr-mission-banner .colr-mission-action {min-width:175px!important}
  .colr-mission-banner .colr-mission-button,
  .colr-mission-banner .colr-mission-donate {white-space:nowrap!important}
}
@media (max-width: 760px) {
  .colr-mission-banner {
    min-height:0!important;
    padding:8px 14px 10px!important;
    grid-template-columns:22px minmax(0,1fr)!important;
    gap:4px 8px!important;
  }
  .colr-mission-banner .colr-mission-icon {
    width:22px!important;height:22px!important;font-size:15px!important;
  }
  .colr-mission-banner .colr-mission-content h2 {
    margin:0!important;font-size:14px!important;line-height:1.15!important;
    white-space:nowrap!important;
  }
  .colr-mission-banner .colr-mission-content p {display:none!important}
  .colr-mission-banner .colr-mission-action {
    grid-column:1 / -1!important;min-width:0!important;
    display:flex!important;justify-content:flex-end!important;
  }
  .colr-mission-banner .colr-mission-button,
  .colr-mission-banner .colr-mission-donate {
    width:auto!important;min-width:145px!important;padding:6px 12px!important;
    font-size:11px!important;line-height:1.2!important;white-space:nowrap!important;
  }
}
@media (max-width: 380px) {
  .colr-mission-banner .colr-mission-content h2 {font-size:13px!important}
}



/* Lighthouse QA fixes — 2026-08-05 */
body.post-type-archive-download #content,
body.tax-download_category #content {font-family:Arial,Helvetica,sans-serif!important}

.colr-archive-breadcrumb a,
.colr-archive-eyebrow,
.colr-archive-results-label,
.colr-archive-card-button,
#primary-menu>li.current-menu-item>a,
#primary-menu>li.current-menu-ancestor>a {
 color:#a84000!important;-webkit-text-fill-color:#a84000!important
}

.colr-archive-search-button,
.colr-mission-donate,
.colr-newsletter-fields button,
.colr-footer-donate,
#primary-menu>li>a[href*="donorbox.org"] {
 background-color:#a84000!important;color:#fff!important;-webkit-text-fill-color:#fff!important
}

.colr-archive-search-button:hover,.colr-archive-search-button:focus,
.colr-mission-donate:hover,.colr-mission-donate:focus,
.colr-newsletter-fields button:hover,.colr-newsletter-fields button:focus,
.colr-footer-donate:hover,.colr-footer-donate:focus,
#primary-menu>li>a[href*="donorbox.org"]:hover,
#primary-menu>li>a[href*="donorbox.org"]:focus {
 background-color:#843300!important;color:#fff!important
}

.colr-footer-bottom a[href*="ycvf.org"] {
 color:#ffc07a!important;-webkit-text-fill-color:#ffc07a!important;
 text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:3px!important
}



/* Final desktop grid: three centered columns inside the full-width ribbon */
@media (min-width:761px){
  .colr-mission-banner{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    padding:7px max(24px,calc((100% - 1120px)/2))!important;
    grid-template-columns:30px minmax(0,1fr) 150px!important;
    gap:12px!important;
  }
  .colr-mission-banner .colr-mission-icon{grid-column:1!important}
  .colr-mission-banner .colr-mission-content{grid-column:2!important}
  .colr-mission-banner .colr-mission-action{grid-column:3!important}
}



/* Center banner columns within the site's 1120px content width */
@media (min-width:761px){
  .colr-mission-banner{
    padding:7px 0!important;
    grid-template-columns:minmax(24px,1fr) 30px minmax(0,940px) 150px minmax(24px,1fr)!important;
    column-gap:12px!important;
  }
  .colr-mission-banner .colr-mission-icon{grid-column:2!important}
  .colr-mission-banner .colr-mission-content{grid-column:3!important}
  .colr-mission-banner .colr-mission-action{grid-column:4!important}
}



/* Full-width desktop alignment */
@media (min-width:761px){
  .colr-mission-banner{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    overflow:visible!important;
  }
}



/* Full-screen correction: prevent viewport padding from collapsing the grid */
@media (min-width:761px){
  .colr-mission-banner{
    padding:7px 24px!important;
    grid-template-columns:30px minmax(0,1fr) 150px!important;
  }
}

/*
Theme Name: EDigital Pro Child
Template: edigital-pro
*/

/* Compact sitewide education-support banner */
.colr-mission-banner {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  min-height: 52px;
  margin: 0 0 0 calc(50% - 50vw);
  padding: 7px max(24px, calc((100vw - 1120px) / 2));
  border: 0;
  border-top: 1px solid #efbd75;
  border-bottom: 1px solid #efbd75;
  border-radius: 0;
  box-shadow: none;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  background: #fffaf1;
}
.colr-mission-banner .colr-mission-icon {
  width: 30px;
  height: 30px;
  margin: 0;
  font-size: 19px;
  color: #b97800;
  background: transparent;
}
.colr-mission-banner .colr-mission-content {
  min-width: 0;
  margin: 0;
}
.colr-mission-banner .colr-mission-content h2 {
  margin: 0 0 1px;
  font-size: 18px;
  line-height: 1.1;
  white-space: normal;
}
.colr-mission-banner .colr-mission-content p {
  margin: 0;
  font-size: 11px;
  line-height: 1.3;
}
.colr-mission-banner .colr-mission-action {
  min-width: 150px;
  padding: 0;
  border: 0;
  text-align: center;
}
.colr-mission-banner .colr-mission-button {
  display: inline-block;
  padding: 7px 14px;
  font-size: 12px;
  line-height: 1.2;
}
.colr-mission-banner .colr-mission-action span {
  display: none;
}
.home .colr-mission-ribbon {
  display: none;
}

@media (max-width: 760px) {
  .colr-mission-banner {
    min-height: 0;
    padding: 8px 14px;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 6px 9px;
  }
  .colr-mission-banner .colr-mission-icon {
    width: 25px;
    height: 25px;
    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content h2 {
    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content p {
    font-size: 10px;
  }
  .colr-mission-banner .colr-mission-action {
/*
Theme Name: EDigital Pro Child
Template: edigital-pro
*/

/* Compact sitewide education-support banner */
.colr-mission-banner {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  min-height: 52px;
  margin: 0 0 0 calc(50% - 50vw);
  padding: 7px max(24px, calc((100vw - 1120px) / 2));
  border: 0;
  border-top: 1px solid #efbd75;
  border-bottom: 1px solid #efbd75;
  border-radius: 0;
  box-shadow: none;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  background: #fffaf1;
}
.colr-mission-banner .colr-mission-icon {
  width: 30px;
  height: 30px;
  margin: 0;
  font-size: 19px;
  color: #b97800;
  background: transparent;
}
.colr-mission-banner .colr-mission-content {
  min-width: 0;
  margin: 0;
}
.colr-mission-banner .colr-mission-content h2 {
  margin: 0 0 1px;
  font-size: 18px;
  line-height: 1.1;
  white-space: normal;
}
.colr-mission-banner .colr-mission-content p {
  margin: 0;
  font-size: 11px;
  line-height: 1.3;
}
.colr-mission-banner .colr-mission-action {
  min-width: 150px;
  padding: 0;
  border: 0;
  text-align: center;
}
.colr-mission-banner .colr-mission-button {
  display: inline-block;
  padding: 7px 14px;
  font-size: 12px;
  line-height: 1.2;
}
.colr-mission-banner .colr-mission-action span {
  display: none;
}
.home .colr-mission-ribbon {
  display: none;
}

@media (max-width: 760px) {
  .colr-mission-banner {
    min-height: 0;
    padding: 8px 14px;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 6px 9px;
  }
  .colr-mission-banner .colr-mission-icon {
    width: 25px;
    height: 25px;/*
Theme Name: EDigital Pro Child
Template: edigital-pro
*/

/* Compact sitewide education-support banner */
.colr-mission-banner {
  box-sizing: border-box;
  width: 100vw;
  max-width: none;
  min-height: 52px;
  margin: 0 0 0 calc(50% - 50vw);
  padding: 7px max(24px, calc((100vw - 1120px) / 2));
  border: 0;
  border-top: 1px solid #efbd75;
  border-bottom: 1px solid #efbd75;
  border-radius: 0;
  box-shadow: none;
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  background: #fffaf1;
}
.colr-mission-banner .colr-mission-icon {
  width: 30px;
  height: 30px;
  margin: 0;
  font-size: 19px;
  color: #b97800;
  background: transparent;
}
.colr-mission-banner .colr-mission-content {
  min-width: 0;
  margin: 0;
}
.colr-mission-banner .colr-mission-content h2 {
  margin: 0 0 1px;
  font-size: 18px;
  line-height: 1.1;
  white-space: normal;
}
.colr-mission-banner .colr-mission-content p {
  margin: 0;
  font-size: 11px;
  line-height: 1.3;
}
.colr-mission-banner .colr-mission-action {
  min-width: 150px;
  padding: 0;
  border: 0;
  text-align: center;
}
.colr-mission-banner .colr-mission-button {
  display: inline-block;
  padding: 7px 14px;
  font-size: 12px;
  line-height: 1.2;
}
.colr-mission-banner .colr-mission-action span {
  display: none;
}
.home .colr-mission-ribbon {
  display: none;
}

@media (max-width: 760px) {
  .colr-mission-banner {
    min-height: 0;
    padding: 8px 14px;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 6px 9px;
  }
  .colr-mission-banner .colr-mission-icon {
    width: 25px;
    height: 25px;    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content h2 {
    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content p {
    font-size: 10px;
  }
  .colr-mission-banner .colr-mission-action {
    grid-column: 2;
	  

/* FINAL compact full-width mission banner override */
.colr-mission-banner{
  box-sizing:border-box!important;
  width:100vw!important;
  max-width:none!important;
  min-height:52px!important;
  margin:0 0 0 calc(50% - 50vw)!important;
  padding:7px max(24px,calc((100vw - 1120px)/2))!important;
  border:0!important;
  border-top:1px solid #efbd75!important;
  border-bottom:1px solid #efbd75!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr) 150px!important;
  align-items:center!important;
  gap:12px!important;
  background:#fffaf1!important;
}
.colr-mission-banner .colr-mission-icon{width:30px!important;height:30px!important;margin:0!important;font-size:19px!important;background:transparent!important}
.colr-mission-banner .colr-mission-content{min-width:0!important;margin:0!important}
.colr-mission-banner .colr-mission-content h2{margin:0 0 1px!important;font-size:18px!important;line-height:1.1!important;white-space:normal!important}
.colr-mission-banner .colr-mission-content p{margin:0!important;font-size:11px!important;line-height:1.3!important}
.colr-mission-banner .colr-mission-action{min-width:0!important;padding:0!important;border:0!important;text-align:center!important}
.colr-mission-banner .colr-mission-button{display:inline-block!important;padding:7px 14px!important;font-size:12px!important;line-height:1.2!important}
.colr-mission-banner .colr-mission-action span{display:none!important}
.home .colr-mission-ribbon{display:none!important}
@media(max-width:760px){
 .colr-mission-banner{padding:8px 14px!important;grid-template-columns:25px minmax(0,1fr)!important;gap:6px 9px!important}
 .colr-mission-banner .colr-mission-action{grid-column:2!important;text-align:left!important}
 .colr-mission-banner .colr-mission-content h2{font-size:16px!important}
 .colr-mission-banner .colr-mission-content p{font-size:10px!important}
}

    min-width: 0;
    text-align: left;
  }
  .colr-mission-banner .colr-mission-button {
    padding: 6px 11px;
    font-size: 11px;
  }
}

    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content h2 {
    font-size: 16px;
  }
  .colr-mission-banner .colr-mission-content p {
    font-size: 10px;
  }
  .colr-mission-banner .colr-mission-action {
    grid-column: 2;
    min-width: 0;
    text-align: left;
  }
  .colr-mission-banner .colr-mission-button {
    padding: 6px 11px;
    font-size: 11px;
  }
}
    grid-column: 2;
    min-width: 0;
    text-align: left;
  }
  .colr-mission-banner .colr-mission-button {
    padding: 6px 11px;
    font-size: 11px;
  }
}
.colr-mission-banner .colr-mission-content { margin:0; }
.colr-mission-banner .colr-mission-content h2 { margin:0 0 3px; font-size:24px; line-height:1.15; }
.colr-mission-banner .colr-mission-content p { margin:0; font-size:13px; line-height:1.4; }
.colr-mission-banner .colr-mission-action { min-width:170px; padding:0; border:0; text-align:center; }
.colr-mission-banner .colr-mission-button { display:inline-block; padding:11px 20px; font-size:14px; line-height:1.2; }
.colr-mission-banner .colr-mission-action span { display:none; }
.home .colr-mission-ribbon { display:none; }
@media (max-width:760px) {
 .colr-mission-banner { min-height:0; padding:14px 18px; grid-template-columns:32px minmax(0,1fr); gap:10px 12px; }
 .colr-mission-banner .colr-mission-icon { width:32px; height:32px; font-size:20px; }
 .colr-mission-banner .colr-mission-content h2 { font-size:19px; }
 .colr-mission-banner .colr-mission-content p { font-size:12px; }
 .colr-mission-banner .colr-mission-action { grid-column:2; min-width:0; text-align:left; }
 .colr-mission-banner .colr-mission-button { padding:9px 14px; font-size:13px; }
}

    display: grid;
    grid-template-columns: 90px minmax(0, 1fr) 330px;
    align-items: center;
    gap: 28px;
    background: #fffaf1;
    border: 1px solid #d6a83d;
    border-radius: 10px;
    box-sizing: border-box;
    box-shadow: 0 3px 12px rgba(18,52,96,.06);
}

.colr-mission-icon{
    font-size:70px;
    color:#b78a21;
    text-align:center;
}

.colr-mission-content{
    padding-right:30px;
    border-right:1px solid rgba(183,138,33,.35);
}

.colr-mission-content h2{
    margin:0 0 12px;
    color:#163a70;
    font-size:36px;
    font-weight:700;
    line-height:1.2;
}

.colr-mission-content p{
    margin:0;
    font-size:17px;
    line-height:1.7;
    color:#444;
}

.colr-mission-action{
    text-align:center;
}

.colr-mission-button{
    display:inline-block;
    background:#c62828;
    color:#fff !important;
    text-decoration:none;
    padding:16px 32px;
    border-radius:6px;
    font-size:20px;
    font-weight:700;
}

.colr-mission-button:hover{
    background:#a61d1d;
}

.colr-mission-action span{
    display:block;
    margin-top:12px;
    color:#555;
}

@media(max-width:992px){

.colr-mission-banner{
    grid-template-columns:1fr;
    text-align:center;
}

.colr-mission-content{
    border-right:none;
    padding-right:0;
}

}

/* =========================================
   Mission Banner Refinements
========================================= */

/* Keep the mission banner above stray header elements */
.colr-mission-banner {
    position: relative;
    z-index: 5;
    overflow: hidden;
}

/* Prevent header/navigation elements from visually overlapping */
.site-header,
#masthead,
.main-header,
.header-wrapper,
.navigation-wrapper {
    position: relative;
    z-index: 20;
}

/* Push homepage content clearly below the header */
.home .site-content,
.home #content,
.home .widget-area {
    position: relative;
    z-index: 1;
}

/* Improve banner proportions */
.colr-mission-banner {
    max-width: 1135px;
    min-height: 170px;
    padding: 24px 34px;
    grid-template-columns: 72px minmax(0, 1fr) 275px;
    gap: 24px;
}

/* Gold icon instead of red */
.colr-mission-icon {
    color: #a87912;
    font-size: 64px;
}

/* Match the mockup heading more closely */
.colr-mission-content h2 {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 31px;
    color: #123a70;
}

/* Slightly smaller body copy */
.colr-mission-content p {
    font-size: 15px;
    line-height: 1.55;
}

/* Better button proportions */
.colr-mission-button {
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 15px 18px;
    font-size: 18px;
    background: #c9151e;
}

/* Keep action text contained */
.colr-mission-action {
    position: relative;
    z-index: 10;
    padding-left: 8px;
}

/* Hide any theme overflow crossing into this first widget */
.home-page-fullwidth-area > .widget:first-child,
#home-page-fullwidth-area > .widget:first-child {
    position: relative;
    z-index: 10;
    overflow: hidden;
}

/* Hide the old header tagline */
.site-header .site-description {
    display: none !important;
}

/* Size the custom header logo */
.site-header .custom-logo {
    width: auto;
    max-width: 300px;
    max-height: 85px;
    height: auto;
}

/* Keep the logo container from overflowing */
.site-header .site-branding {
    max-width: 320px;
}

/* Fix EDigital sticky header overlapping homepage content */
#masthead-sticky-wrapper.sticky-wrapper {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    height: auto !important;
}

/* Keep the actual header inside the normal document flow */
#masthead-sticky-wrapper #masthead {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
}

/* =========================================
   Tighten EDigital Header
========================================= */

/* Reduce overall header spacing */
#masthead-sticky-wrapper #masthead {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Keep logo compact */
#masthead .site-branding {
    margin: 0 !important;
    padding: 0 !important;
}

#masthead .custom-logo {
    max-width: 185px !important;
    max-height: 72px !important;
    width: auto !important;
    height: auto !important;
}

/* Align logo and navigation neatly */
#masthead .mt-container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 28px !important;
}

/* Let navigation use the remaining width */
#masthead .nav-cart-wrapper {
    flex: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
}

/* Tighten menu spacing */
#masthead .main-navigation ul {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

#masthead .main-navigation ul li {
    margin: 0 !important;
}

#masthead .main-navigation ul li a {
    padding: 10px 13px !important;
    line-height: 1.2 !important;
    font-size: 12px !important;
    white-space: nowrap !important;
}

/* Keep search and cart aligned */
#masthead .header-search-wrapper,
#masthead .cart-wrapper {
    margin-left: 10px !important;
}

/* Reduce space between header and mission banner */
.home .home-page-fullwidth-area > .widget:first-child,
.home #home-page-fullwidth-area > .widget:first-child {
    margin-top: 6px !important;
}

/* =========================================
   Restore Header Navigation Visibility
========================================= */

#masthead .main-navigation,
#masthead .main-navigation ul,
#masthead .main-navigation ul li {
    visibility: visible !important;
    opacity: 1 !important;
}

#masthead .main-navigation ul li a {
    display: block !important;
    color: #163a70 !important;
    background: transparent !important;
    padding: 10px 11px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* Navigation hover and current page */
#masthead .main-navigation ul li a:hover,
#masthead .main-navigation ul li.current-menu-item > a,
#masthead .main-navigation ul li.current_page_item > a {
    color: #f47b20 !important;
    background: transparent !important;
}

/* Keep navigation on the same row as the logo */
#masthead .main-navigation {
    display: block !important;
    flex: 1 1 auto !important;
}

#masthead .main-navigation > ul {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
}

/* Final navigation sizing and spacing */
#masthead .main-navigation ul li a {
    font-size: 13px !important;
    padding: 9px 8px !important;
    letter-spacing: 0 !important;
}

#masthead .main-navigation > ul {
    gap: 4px !important;
}

.site-branding {
    margin-right: 15px !important;
}

.main-navigation {
    margin-left: 10px !important;
}

.site-header .mt-container{
    display:flex;
    align-items:center;
}

#masthead{
    padding-top:12px !important;
    padding-bottom:12px !important;
}

/* ==========================================================
   SLIM MISSION RIBBON
========================================================== */

.colr-mission-ribbon {
    position: relative;
    z-index: 3;
    padding: 16px 0;
    background: #fffaf1;
    border-top: 1px solid #ead3a0;
    border-bottom: 1px solid #dfbd69;
}

.colr-mission-ribbon-inner {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px;
}

.colr-mission-ribbon-icon {
    color: #a87912;
    font-size: 38px;
    line-height: 1;
    text-align: center;
}

.colr-mission-ribbon-content {
    min-width: 0;
}

.colr-mission-ribbon-content strong {
    display: block;
    margin-bottom: 3px;
    color: #163a70;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 21px;
    line-height: 1.25;
}

.colr-mission-ribbon-content span {
    display: block;
    color: #555d67;
    font-size: 13px;
    line-height: 1.5;
}

.colr-mission-ribbon-button {
    display: inline-block;
    padding: 12px 20px;
    color: #ffffff !important;
    background: #c9151e;
    border: 1px solid #c9151e;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.colr-mission-ribbon-button:hover,
.colr-mission-ribbon-button:focus {
    color: #ffffff !important;
    background: #a91a20;
    border-color: #a91a20;
    text-decoration: none;
    transform: translateY(-1px);
}

@media (max-width: 800px) {

    .colr-mission-ribbon-inner {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .colr-mission-ribbon-button {
        grid-column: 1 / -1;
        justify-self: center;
        margin-top: 4px;
    }
}

@media (max-width: 560px) {

    .colr-mission-ribbon {
        padding: 15px 0 17px;
    }

    .colr-mission-ribbon-inner {
        display: flex;
        flex-direction: column;
        gap: 9px;
        text-align: center;
    }

    .colr-mission-ribbon-icon {
        font-size: 32px;
    }

    .colr-mission-ribbon-content strong {
        font-size: 19px;
    }

    .colr-mission-ribbon-content span {
        font-size: 12px;
    }

    .colr-mission-ribbon-button {
        margin-top: 2px;
    }
}

/* ==========================================================
   CUSTOM CATHOLIC RESOURCE SEARCH HERO
========================================================== */

.colr-home-container {
    width: calc(100% - 40px);
    max-width: 1135px;
    margin: 0 auto;
}


/* ==========================================================
   HERO FOUNDATION
========================================================== */

.colr-hero {
    position: relative;
    overflow: hidden;

    /* Reduced vertical spacing */
    padding: 46px 0 48px;

    text-align: center;

    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(244, 123, 32, 0.05) 0,
            rgba(244, 123, 32, 0) 36%
        ),
        radial-gradient(
            circle at 85% 25%,
            rgba(22, 58, 112, 0.06) 0,
            rgba(22, 58, 112, 0) 40%
        ),
        linear-gradient(
            180deg,
            #f8fbff 0%,
            #ffffff 100%
        );

    border-bottom: 1px solid #edf2f7;
}

.colr-hero::before {
    content: "";
    position: absolute;
    top: -90px;
    right: -90px;
    width: 260px;
    height: 260px;
    border: 1px solid rgba(22, 58, 112, 0.08);
    border-radius: 50%;
}

.colr-hero::after {
    content: "";
    position: absolute;
    bottom: -120px;
    left: -110px;
    width: 320px;
    height: 320px;
    border: 1px solid rgba(244, 123, 32, 0.09);
    border-radius: 50%;
}

.colr-hero-content {
    position: relative;
    z-index: 2;
    max-width: 1040px;
    margin: 0 auto;
}


/* ==========================================================
   HERO TEXT
========================================================== */

.colr-hero-badge {
    display: inline-block;
    margin-bottom: 18px;
    padding: 8px 16px;
    color: #b2550d;
    background: #fff4e9;
    border: 1px solid #f3d2b4;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.2px;
    line-height: 1.2;
    text-transform: uppercase;
}

.colr-hero h1 {
    max-width: 900px;
    margin: 0 auto 20px;
    color: #163a70;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 52px;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: -0.7px;
}

.colr-hero-description {
    max-width: 790px;
    margin: 0 auto 38px;
    color: #53606f;
    font-size: 18px;
    line-height: 1.7;
}


/* ==========================================================
   SEARCH PANEL
========================================================== */

.colr-hero-search {
    max-width: 980px;
    margin: 0 auto;
    padding: 14px;
    background: #ffffff;
    border: 1px solid #dbe3ed;
    border-radius: 14px;
    box-shadow:
        0 20px 45px rgba(22, 58, 112, 0.12),
        0 3px 10px rgba(22, 58, 112, 0.05);
    box-sizing: border-box;
}

.colr-search-keyword-wrap {
    position: relative;
}

.colr-search-icon {
    position: absolute;
    top: 50%;
    left: 21px;
    z-index: 2;
    transform: translateY(-50%);
    color: #718096;
    font-size: 19px;
    line-height: 1;
    pointer-events: none;
}

.colr-resource-keyword {
    display: block;
    width: 100%;
    min-height: 68px;
    margin: 0 !important;
    padding: 0 22px 0 58px !important;
    color: #263342;
    background: #f9fbfd !important;
    border: 1px solid #dbe2ea !important;
    border-radius: 8px !important;
    box-sizing: border-box;
    font-size: 17px !important;
    line-height: 1.3;
}

.colr-resource-keyword::placeholder {
    color: #8b95a1;
    opacity: 1;
}

.colr-search-controls {
    display: grid;
    grid-template-columns: minmax(230px, 1fr) auto;
    gap: 12px;
    margin-top: 12px;
}

.colr-resource-category {
    display: block;
    width: 100%;
    min-height: 58px;
    margin: 0 !important;
    padding: 0 16px !important;
    color: #364354;
    background: #ffffff !important;
    border: 1px solid #dbe2ea !important;
    border-radius: 8px !important;
    box-sizing: border-box;
    font-size: 15px !important;
}

.colr-resource-search-button {
    min-width: 220px;
    min-height: 58px;
    margin: 0 !important;
    padding: 0 28px !important;
    color: #ffffff !important;
    background: #f47b20 !important;
    border: 1px solid #f47b20 !important;
    border-radius: 8px !important;
    box-sizing: border-box;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.2;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.colr-resource-search-button:hover,
.colr-resource-search-button:focus {
    color: #ffffff !important;
    background: #d9630d !important;
    border-color: #d9630d !important;
    box-shadow: 0 8px 18px rgba(217, 99, 13, 0.22);
    transform: translateY(-1px);
}

.colr-resource-keyword:focus,
.colr-resource-category:focus {
    outline: none;
    border-color: #163a70 !important;
    box-shadow: 0 0 0 3px rgba(22, 58, 112, 0.11);
}


/* ==========================================================
   POPULAR SEARCHES
========================================================== */

.colr-popular-searches {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 28px auto 22px;
}

.colr-popular-label {
    margin-right: 2px;
    color: #505d6c;
    font-size: 14px;
    font-weight: 700;
}

.colr-popular-searches a {
    display: inline-block;
    padding: 8px 14px;
    color: #163a70;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid #cfd9e5;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.colr-popular-searches a:hover,
.colr-popular-searches a:focus {
    color: #ffffff;
    background: #163a70;
    border-color: #163a70;
    text-decoration: none;
    transform: translateY(-1px);
}


/* ==========================================================
   HERO ACTIONS
========================================================== */

.colr-hero-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
}

.colr-browse-all-button {
    display: inline-block;
    padding: 12px 22px;
    color: #163a70 !important;
    background: transparent;
    border: 1px solid #163a70;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        transform 0.2s ease;
}

.colr-browse-all-button::after {
    content: " →";
}

.colr-browse-all-button:hover,
.colr-browse-all-button:focus {
    color: #ffffff !important;
    background: #163a70;
    text-decoration: none;
    transform: translateY(-1px);
}

.colr-free-note {
    color: #6b7581;
    font-size: 13px;
    font-weight: 600;
}


/* ==========================================================
   MISSION SECTION SPACING
========================================================== */

.colr-home-mission {
    padding: 42px 0;
    background: #ffffff;
}

.colr-home-mission .colr-mission-banner {
    margin-top: 0;
    margin-bottom: 0;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 900px) {

    .colr-hero {
        padding: 62px 0 58px;
    }

    .colr-hero h1 {
        font-size: 43px;
    }

    .colr-search-controls {
        grid-template-columns: 1fr;
    }

    .colr-resource-search-button {
        width: 100%;
        min-width: 0;
    }
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 680px) {

    .colr-home-container {
        width: calc(100% - 28px);
    }

    .colr-hero {
        padding: 44px 0 42px;
    }

    .colr-hero-badge {
        margin-bottom: 14px;
        padding: 7px 12px;
        font-size: 10px;
        letter-spacing: 1px;
    }

    .colr-hero h1 {
        margin-bottom: 16px;
        font-size: 34px;
        letter-spacing: -0.3px;
    }

    .colr-hero-description {
        margin-bottom: 26px;
        font-size: 16px;
        line-height: 1.6;
    }

    .colr-hero-search {
        padding: 10px;
        border-radius: 10px;
    }

    .colr-resource-keyword {
        min-height: 62px;
        padding-left: 50px !important;
        font-size: 15px !important;
    }

    .colr-search-icon {
        left: 17px;
    }

    .colr-resource-category,
    .colr-resource-search-button {
        min-height: 55px;
    }

    .colr-popular-searches {
        margin-top: 23px;
    }

    .colr-popular-label {
        width: 100%;
        margin: 0 0 2px;
    }

    .colr-hero-actions {
        flex-direction: column;
        gap: 11px;
    }

    .colr-home-mission {
        padding: 30px 0;
    }
}

/* ==========================================
   Restore White Header
========================================== */

#masthead,
#masthead-sticky-wrapper,
.site-header,
.site-header.header-fixed,
.site-header.is-sticky {
    background: #ffffff !important;
}

/* Keep header transparent elements white too */
#masthead .mt-container,
.site-header .mt-container {
    background: transparent !important;
}

/* Navigation colors */
#masthead .main-navigation a,
.site-header .main-navigation a {
    color: #163a70 !important;
}

#masthead .main-navigation a:hover,
.site-header .main-navigation a:hover {
    color: #f47b20 !important;
}

/* ==========================================================
   BROWSE BY CATEGORY
========================================================== */

.colr-category-section {
    padding: 62px 0 72px;
    background: #ffffff;
}

.colr-section-heading {
    max-width: 760px;
    margin: 0 auto 38px;
    text-align: center;
}

.colr-section-kicker {
    margin: 0 0 8px;
    color: #f47b20;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.3;
    text-transform: uppercase;
}

.colr-section-heading h2 {
    margin: 0 0 13px;
    color: #163a70;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
}

.colr-section-heading > p:last-child {
    margin: 0;
    color: #5e6976;
    font-size: 16px;
    line-height: 1.65;
}


/* Category grid */

.colr-category-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}


/* Individual card */

.colr-category-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 310px;
    overflow: hidden;
    color: inherit !important;
    background: #ffffff;
    border: 1px solid #dfe6ee;
    border-radius: 12px;
    box-shadow: 0 5px 18px rgba(22, 58, 112, 0.06);
    text-decoration: none !important;
    transition:
        border-color 0.22s ease,
        box-shadow 0.22s ease,
        transform 0.22s ease;
}

.colr-category-card:hover,
.colr-category-card:focus {
    color: inherit !important;
    border-color: #b8c9dc;
    box-shadow: 0 15px 32px rgba(22, 58, 112, 0.13);
    text-decoration: none !important;
    transform: translateY(-5px);
}


/* Category image or fallback icon */

.colr-category-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 125px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at center,
            rgba(22, 58, 112, 0.08) 0%,
            rgba(22, 58, 112, 0) 68%
        ),
        linear-gradient(
            135deg,
            #f8fbff 0%,
            #fff8f1 100%
        );
    border-bottom: 1px solid #e9eef4;
}

.colr-category-visual img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.colr-category-card:hover .colr-category-visual img {
    transform: scale(1.04);
}

.colr-category-fallback-icon {

    display:flex;
    align-items:center;
    justify-content:center;

    width:76px;
    height:76px;

    border-radius:50%;

    background:#ffffff;

    color:#163a70;

    border:1px solid #d9e3ef;

    box-shadow:0 8px 24px rgba(22,58,112,.10);

    transition:.25s;

}

.colr-category-fallback-icon i{

    font-size:34px;

    transition:.25s;

}

.colr-category-card:hover .colr-category-fallback-icon{

    background:#163a70;

    color:#fff;

    transform:translateY(-2px);

}

.colr-category-card:hover .colr-category-fallback-icon i{

    transform:scale(1.12);

}

.colr-category-card:hover .colr-category-fallback-icon {
    color: #ffffff;
    background: #163a70;
    border-color: #163a70;
    transform: scale(1.05);
}


/* Card content */

.colr-category-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 23px 22px 21px;
}

.colr-category-card-content h3 {
    margin: 0 0 10px;
    color: #163a70;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.25;
}

.colr-category-card-content p {
    margin: 0 0 20px;
    color: #5d6875;
    font-size: 14px;
    line-height: 1.6;
}

.colr-category-link {
    display: inline-block;
    margin-top: auto;
    color: #e66e15;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
}

.colr-category-link::after {
    content: " →";
    display: inline-block;
    transition: transform 0.2s ease;
}

.colr-category-card:hover .colr-category-link::after {
    transform: translateX(4px);
}


/* Bottom action */

.colr-category-section-action {
    margin-top: 38px;
    text-align: center;
}

.colr-view-categories-button {
    display: inline-block;
    padding: 13px 24px;
    color: #163a70 !important;
    background: #ffffff;
    border: 1px solid #163a70;
    border-radius: 7px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;
    transition:
        color 0.2s ease,
        background-color 0.2s ease,
        transform 0.2s ease;
}

.colr-view-categories-button::after {
    content: " →";
}

.colr-view-categories-button:hover,
.colr-view-categories-button:focus {
    color: #ffffff !important;
    background: #163a70;
    text-decoration: none !important;
    transform: translateY(-1px);
}


/* ==========================================================
   CATEGORY TABLET
========================================================== */

@media (max-width: 980px) {

    .colr-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}


/* ==========================================================
   CATEGORY MOBILE
========================================================== */

@media (max-width: 600px) {

    .colr-category-section {
        padding: 46px 0 54px;
    }

    .colr-section-heading {
        margin-bottom: 28px;
    }

    .colr-section-heading h2 {
        font-size: 31px;
    }

    .colr-section-heading > p:last-child {
        font-size: 15px;
    }

    .colr-category-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .colr-category-card {
        min-height: 0;
    }

    .colr-category-visual {
        height: 112px;
    }

    .colr-category-card-content {
        padding: 20px;
    }

    .colr-category-section-action {
        margin-top: 28px;
    }
}

/* ========================================
   Featured Resources
======================================== */

.colr-featured-section{
    border-top:1px solid #e8eef7;
    padding:42px 0 82px;
    background:#f8fbff;
}

.colr-featured-section .colr-home-container{
    max-width:1440px;
}

.colr-featured-section .colr-section-heading{
    margin-bottom:30px;
}

.colr-featured-section .colr-section-heading h2{
    margin-bottom:10px;
}

.colr-featured-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
    margin-top:30px;
}

.colr-featured-card{
    background:#fff;
    border-radius:18px;
    overflow:hidden;
    border:1px solid #e7edf6;
    box-shadow:0 10px 35px rgba(20,55,110,.08);
    transition:.25s;
}

.colr-featured-card:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 45px rgba(20,55,110,.15);
}

.colr-featured-image{
    display:block;
    position:relative;
    background:#eef4fb;
    aspect-ratio:5/4;
}

.colr-featured-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.colr-featured-image-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    height:100%;
    font-size:64px;
    color:#163a70;
}

.colr-featured-badge{
    position:absolute;
    top:14px;
    left:14px;

    padding:6px 11px;

    color:#ffffff;
    background:#f47b20;

    border-radius:999px;

    box-shadow:0 4px 12px rgba(0,0,0,.14);

    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    line-height:1.2;
    text-transform:uppercase;
}

.colr-featured-card-content{
    padding:28px;
}

.colr-featured-card h3{
    margin:0 0 15px;
    font-size:26px;
    line-height:1.3;
}

.colr-featured-card h3 a{
    color:#163a70;
    text-decoration:none;
}

.colr-featured-card h3 a:hover{
    color:#f47b20;
}

.colr-featured-excerpt{
    color:#5e6c84;
    line-height:1.7;
    margin-bottom:22px;
}

.colr-featured-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#f47b20;
    font-weight:700;
    text-decoration:none;
}

.colr-featured-link:hover{
    color:#163a70;
}

@media (max-width:1100px){

.colr-featured-grid{
grid-template-columns:repeat(2,1fr);
}

}

@media (max-width:700px){

.colr-featured-grid{
grid-template-columns:1fr;
}

}

.colr-featured-card{
    display:flex;
    flex-direction:column;
    height:100%;
    transition:.25s ease;
}

.colr-featured-card:hover{
    transform:translateY(-8px);
    box-shadow:0 24px 60px rgba(20,55,110,.18);
}

.colr-featured-image{
    overflow:hidden;
}

.colr-featured-image img{
    transition:transform .35s ease;
}

.colr-featured-card:hover img{
    transform:scale(1.05);
}

.colr-featured-card-content{
    display:flex;
    flex-direction:column;
    flex:1;
}

.colr-featured-link{
    margin-top:auto;
}

@media (max-width:700px){

    .colr-featured-section{
        padding:38px 0 58px;
    }

    .colr-featured-section .colr-home-container{
        width:auto;
        max-width:none;
        margin:0 18px;
    }

    .colr-featured-section .colr-section-heading{
        margin-bottom:24px;
    }

    .colr-featured-section .colr-section-heading h2{
        font-size:31px;
        line-height:1.18;
    }

    .colr-featured-section .colr-section-heading > p:last-child{
        font-size:15px;
        line-height:1.55;
    }

    .colr-featured-grid{
        grid-template-columns:1fr;
        gap:20px;
        margin-top:24px;
    }

    .colr-featured-image{
        aspect-ratio:4 / 3;
    }

    .colr-featured-card-content{
        padding:24px 22px 22px;
    }

    .colr-featured-card h3{
        min-height:0;
        font-size:23px;
        -webkit-line-clamp:3;
    }

    .colr-featured-excerpt{
        -webkit-line-clamp:4;
    }

    .colr-featured-badge{
        top:12px;
        left:12px;
    }
}

/* ===========================
   Mobile Header
=========================== */

@media (max-width:991px){

.edigital-top-header{
    background:#ffffff;
}

.site-header{
    background:#ffffff;
}

.main-navigation{
    background:#ffffff;
}

.main-navigation ul{
    background:#ffffff;
}

.main-navigation li a{
    color:#163a70;
}

.main-navigation li a:hover{
    color:#f47b20;
}

.menu-toggle{
    color:#163a70;
}

}

/* ======================================
   Mobile Navigation
====================================== */

@media (max-width:991px){

.nav-cart-wrapper{
    background:#ffffff !important;
    border-top:1px solid #eef2f7;
    border-bottom:1px solid #eef2f7;
}

.main-navigation{
    background:#ffffff !important;
}

.main-navigation ul{
    background:#ffffff !important;
}

.main-navigation li a{
    color:#163a70 !important;
}

.menu-toggle{
    color:#163a70 !important;
}

}

/* ======================================
   Mobile Navigation Layout
====================================== */

@media (max-width: 991px) {

    .nav-cart-wrapper {
        width: 100%;
        overflow: visible;
    }

    .main-navigation {
        width: 100%;
    }

    .main-navigation ul {
        display: none;
        width: 100%;
        margin: 0;
        padding: 8px 0;
        background: #ffffff !important;
    }

    .main-navigation.toggled ul {
        display: block;
    }

    .main-navigation li {
        display: block;
        width: 100%;
        border-bottom: 1px solid #eef2f7;
    }

    .main-navigation li:last-child {
        border-bottom: 0;
    }

    .main-navigation li a {
        display: block;
        width: 100%;
        padding: 12px 18px;
        color: #163a70 !important;
        text-align: left;
        white-space: normal;
    }

    .menu-toggle {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #163a70 !important;
        background: transparent !important;
        border: 0;
    }
}

/* ======================================
   Mobile Navigation Colors
====================================== */

@media (max-width:991px){

    .nav-cart-wrapper,
    #site-navigation,
    #site-navigation .menu-header-container,
    #site-navigation #primary-menu{
        background:#ffffff !important;
    }

    #site-navigation #primary-menu > li{
        float:none;
        width:100%;
        margin:0;
        border-bottom:1px solid #e8eef5;
    }

    #site-navigation #primary-menu > li > a{
        display:block;
        width:100%;
        padding:13px 18px;
        color:#163a70 !important;
        background:#ffffff !important;
        text-align:left;
        white-space:normal;
    }

    #site-navigation #primary-menu > li > a:hover,
    #site-navigation #primary-menu > li > a:focus{
        color:#f47b20 !important;
        background:#f8fbff !important;
    }

    #site-navigation .menu-toggle{
        color:#163a70 !important;
        background:transparent !important;
        border:0 !important;
    }
}

/* ======================================
   Reliable Mobile Dropdown Navigation
====================================== */

@media (max-width:991px){

    #site-navigation{
        position:static;
        width:100%;
    }

    #site-navigation .menu-toggle{
        display:flex !important;
        align-items:center;
        justify-content:center;
        color:#163a70 !important;
        background:transparent !important;
        border:0 !important;
        cursor:pointer;
    }

    #site-navigation .menu-header-container{
        position:absolute;
        top:calc(100% + 8px);
        left:0;
        right:0;

        width:100%;
        max-width:100%;

        z-index:99999;

        pointer-events:none;
    }

    #site-navigation #primary-menu{
        display:none;
        width:100%;
        margin:0;
        padding:0;
        background:#ffffff;
        border-top:1px solid #e8eef5;
        box-shadow:0 12px 24px rgba(22,58,112,.12);
    }

    #site-navigation.colr-menu-open #primary-menu{
        display:block !important;

        animation:colrMenu .18s ease;
    }

    #site-navigation #primary-menu > li{
        display:block;
        float:none;
        width:100%;
        margin:0;
        border-bottom:1px solid #e8eef5;
    }

    #site-navigation #primary-menu > li > a{
        display:block;
        width:100%;
        padding:14px 18px;
        color:#163a70 !important;
        background:#ffffff !important;
        text-align:left;
        white-space:normal;
    }

    #site-navigation #primary-menu > li > a:hover,
    #site-navigation #primary-menu > li > a:focus{
        color:#f47b20 !important;
        background:#f8fbff !important;
    }
}

/* ======================================
   Final Mobile Header and Menu Fix
====================================== */

@media (max-width:991px){

    .header-search-wrapper,
    .edigital-header-cart-wrapper{
        display:none !important;
        pointer-events:none !important;
    }

    .site-header .mt-container{
        position:relative;
    }

    .nav-cart-wrapper{
        position:static !important;
        width:auto;
        background:#ffffff !important;
    }

    #site-navigation{
        position:static !important;
        width:auto;
        background:#ffffff !important;
    }

    #site-navigation .menu-toggle{
        position:relative;
        z-index:10001;

        display:flex !important;
        align-items:center;
        justify-content:center;

        width:46px;
        height:46px;

        color:#163a70 !important;
        background:#ffffff !important;
        border:0 !important;
        cursor:pointer;
    }

    #site-navigation .menu-header-container{
        position:absolute;
        top:100%;
        left:0;
        right:0;
        z-index:10000;

        width:100%;
        max-width:100%;
    }

    #site-navigation #primary-menu{
        display:none !important;

        width:100% !important;
        max-width:100% !important;

        margin:0 !important;
        padding:0 !important;

        background:#ffffff !important;

        border-radius:12px;

        border:1px solid #e8eef5;

        box-shadow:
            0 18px 45px rgba(22,58,112,.18);

        overflow:hidden;

        pointer-events:auto;
    }

    #site-navigation.colr-menu-open #primary-menu{
        display:block !important;

        animation:colrMenu .18s ease;
    }
    
    #site-navigation #primary-menu > li{
        display:block !important;
        float:none !important;

        width:100% !important;
        margin:0 !important;

        border-bottom:1px solid #e8eef5;
    }

    #site-navigation #primary-menu > li > a{
        display:block !important;
        width:100% !important;

        padding:14px 18px !important;

        color:#163a70 !important;
        background:#ffffff !important;

        text-align:left !important;
        white-space:normal !important;
        overflow-wrap:anywhere;
    }
}

/* Restore normal desktop navigation */
@media (min-width:992px){

    #site-navigation,
    #site-navigation .menu-header-container,
    #site-navigation #primary-menu{
        display:block !important;
        position:static !important;
        width:auto !important;
    }

    #site-navigation #primary-menu{
        margin:0 !important;
        padding:0 !important;
        box-shadow:none !important;
        border:0 !important;
        overflow:visible !important;
    }

    #site-navigation #primary-menu > li{
        display:inline-block !important;
        float:none;
        width:auto !important;
    }

    #site-navigation #primary-menu > li > a{
        width:auto !important;
    }
}

@keyframes colrMenu{

    from{
        opacity:0;
        transform:translateY(-8px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}

/* ======================================
   Newest Resources
====================================== */

.colr-newest-section{
    padding:24px 0 72px;
    background:#fff;
    border-top:1px solid #e8eef5;
}

.colr-newest-section .colr-home-container{
    max-width:1320px;
}

.colr-newest-section .colr-section-heading{
    margin-bottom:28px;
}

.colr-newest-section .colr-section-heading h2{
    margin-bottom:6px;
}

.colr-newest-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:24px;
}

.colr-newest-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;

    background:#ffffff;
    border:1px solid #e4ebf3;
    border-radius:18px;

    box-shadow:0 10px 32px rgba(22,58,112,.08);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;
}

.colr-newest-card:hover{
    transform:translateY(-6px);
    border-color:#d7e2ef;
    box-shadow:0 18px 46px rgba(22,58,112,.14);
}

.colr-newest-image{
    position:relative;
    display:block;
    overflow:hidden;

    aspect-ratio:4 / 3;

    background:#f7f9fc;
}

.colr-newest-image img{
    width:100%;
    height:100%;
    display:block;

    object-fit:contain;
    object-position:center;

    padding:14px;
    background:#f7f9fc;

    transition:transform .35s ease;
}

.colr-newest-card:hover .colr-newest-image img{
    transform:scale(1.045);
}

.colr-newest-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    height:100%;

    color:#163a70;
    font-size:58px;
}

.colr-newest-date{
    position:absolute;
    top:14px;
    left:14px;

    padding:6px 11px;

    color:#ffffff;
    background:#f47b20;

    border-radius:999px;

    box-shadow:0 4px 12px rgba(0,0,0,.14);

    font-size:11px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:.05em;
    text-transform:uppercase;
}

.colr-newest-content{
    display:flex;
    flex-direction:column;
    flex:1;

    padding:24px;
}

.colr-newest-card h3{
    margin:0 0 14px;

    font-size:23px;
    line-height:1.28;
}

.colr-newest-card h3 a{
    color:#163a70;
    text-decoration:none;
}

.colr-newest-card h3 a:hover{
    color:#f47b20;
}

.colr-newest-excerpt{
    margin:0;

    color:#5e6c84;

    font-size:15px;
    line-height:1.7;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:4;
    overflow:hidden;
}

.colr-newest-link{
    margin-top:auto;
    padding-top:20px;

    color:#f47b20;
    text-decoration:none;

    font-size:14px;
    font-weight:800;
}

.colr-newest-link:hover{
    color:#163a70;
}

.colr-newest-action{
    margin-top:34px;
    text-align:center;
}

.colr-newest-action a{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:48px;
    padding:12px 22px;

    color:#163a70;
    background:#ffffff;

    border:1px solid #163a70;
    border-radius:7px;

    text-decoration:none;
    font-weight:800;

    transition:.2s ease;
}

.colr-newest-action a:hover{
    color:#ffffff;
    background:#163a70;
}

/* Tablet */
@media (max-width:1100px){

    .colr-newest-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

/* Mobile */
@media (max-width:700px){

    .colr-newest-section{
        padding:42px 0 52px;
    }

    .colr-newest-section .colr-home-container{
        width:auto;
        max-width:none;
        margin:0 18px;
    }

    .colr-newest-section .colr-section-heading{
        margin-bottom:24px;
    }

    .colr-newest-section .colr-section-heading h2{
        font-size:31px;
        line-height:1.18;
    }

    .colr-newest-grid{
        grid-template-columns:1fr;
        gap:20px;
    }

    .colr-newest-image{
        aspect-ratio:4 / 3;
    }

    .colr-newest-content{
        padding:22px;
    }

    .colr-newest-card h3{
        font-size:22px;
    }

    .colr-newest-action{
        margin-top:26px;
    }

}

/* =====================================
   Impact Statistics
====================================== */

.colr-impact-section{
    padding:46px 0;
    background:#163a70;
    border-top:1px solid rgba(255,255,255,.1);
}

.colr-impact-section .colr-home-container{
    max-width:1320px;
}

.colr-impact-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
}

.colr-impact-item{
    position:relative;
    padding:8px 32px;
    text-align:center;
}

.colr-impact-item:not(:last-child){
    border-right:1px solid rgba(255,255,255,.2);
}

.colr-impact-icon{
    display:flex;
    align-items:center;
    justify-content:center;

    width:52px;
    height:52px;
    margin:0 auto 14px;

    border-radius:50%;
    background:rgba(255,255,255,.11);
    color:#f47b20;

    font-size:22px;
}

.colr-impact-number{
    margin-bottom:5px;

    color:#ffffff;
    font-family:Georgia, "Times New Roman", serif;
    font-size:38px;
    font-weight:700;
    line-height:1.05;
}

.colr-impact-number-text{
    font-size:27px;
}

.colr-impact-label{
    max-width:230px;
    margin:0 auto;

    color:rgba(255,255,255,.82);
    font-size:14px;
    font-weight:600;
    line-height:1.5;
}

/* Tablet */

@media (max-width:900px){

    .colr-impact-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .colr-impact-item{
        padding:24px;
    }

    .colr-impact-item:nth-child(2){
        border-right:0;
    }

    .colr-impact-item:nth-child(-n+2){
        border-bottom:1px solid rgba(255,255,255,.2);
    }
}

/* Mobile */

@media (max-width:600px){

    .colr-impact-section{
        padding:24px 0;
    }

    .colr-impact-section .colr-home-container{
        width:auto;
        max-width:none;
        margin:0 18px;
    }

    .colr-impact-grid{
        grid-template-columns:1fr;
    }

    .colr-impact-item{
        padding:24px 16px;
        border-right:0 !important;
    }

    .colr-impact-item:not(:last-child){
        border-bottom:1px solid rgba(255,255,255,.2);
    }

    .colr-impact-number{
        font-size:34px;
    }

    .colr-impact-number-text{
        font-size:25px;
    }
}

/* =====================================
   Mission / Donation Section
===================================== */

.colr-mission-section{
    padding:72px 0;
    background:#f6f8fc;
}

.colr-mission-card{
    display:grid;
    grid-template-columns:
    1.75fr
    0.65fr;
    align-items:stretch;
    overflow:hidden;
    border-radius:24px;
    background:#ffffff;
    box-shadow:0 18px 50px rgba(13, 51, 102, .12);
}

.colr-mission-content{
    padding:58px 62px;
}

.colr-mission-kicker{
    margin:0 0 10px;
    color:#f56f16;
    font-size:13px;
    font-weight:800;
    letter-spacing:1.7px;
    text-transform:uppercase;
}

.colr-mission-divider{
    width:60px;
    height:4px;
    background:#f56f16;
    border-radius:999px;
    margin:18px 0 28px;
}

.colr-mission-content h2{
    margin:0 0 20px;
    color:#0b3b78;
    font-size:clamp(34px, 4vw, 50px);
    line-height:1.08;
}

.colr-mission-content p{
    margin:0 0 18px;
    color:#52627a;
    font-size:17px;
    line-height:1.75;
}

.colr-mission-content .colr-mission-intro{
    color:#263a55;
    font-size:19px;
    font-weight:600;
}

.colr-mission-points{
    display:flex;
    flex-wrap:wrap;
    gap:12px 24px;
    margin:28px 0 34px;
}

.colr-mission-points span{
    display:flex;
    align-items:center;
    gap:8px;
    color:#173f72;
    font-weight:700;
}

.colr-mission-points i{
    color:#f56f16;
}

.colr-mission-actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.colr-mission-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:12px 24px;
    border-radius:8px;
    font-weight:800;
    text-decoration:none;
    transition:transform .2s ease, box-shadow .2s ease;
}

.colr-mission-actions a:hover{
    transform:translateY(-2px);
}

.colr-mission-donate{
    background:#f56f16;
    color:#ffffff;
    box-shadow:0 10px 24px rgba(245, 111, 22, .25);
}

.colr-mission-donate:hover{
    color:#ffffff;
}

.colr-mission-learn{
    border:2px solid #0b3b78;
    color:#0b3b78;
    background:#ffffff;
}

.colr-mission-visual{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:48px 38px;
    text-align:center;
    background:linear-gradient(145deg, #0b3b78, #071d43);
}

.colr-mission-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    width:120px;
    height:120px;
    margin-bottom:24px;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    color:#f58220;
    font-size:54px;
}

.colr-mission-visual p{
    max-width:280px;
    margin:0;
    color:#ffffff;
    font-size:22px;
    font-weight:700;
    line-height:1.45;
}

@media (max-width:900px){

    .colr-mission-card{
        grid-template-columns:1fr;
    }

    .colr-mission-content{
        padding:46px 34px;
    }

    .colr-mission-visual{
        padding:44px 30px;
    }
}

@media (max-width:600px){

    .colr-mission-section{
        padding:50px 0;
    }

    .colr-mission-content{
        padding:38px 24px;
    }

    .colr-mission-content p{
        font-size:16px;
    }

    .colr-mission-actions{
        flex-direction:column;
    }

    .colr-mission-actions a{
        width:100%;
    }
}

.colr-mission-visual h3{
    margin:0 0 18px;
    color:#ffffff;
    font-size:22px;
    font-weight:800;
    line-height:1.3;
    text-align:center;
}

.colr-mission-impact-list{
    margin:0;
    padding:0;
    list-style:none;
    text-align:left;
}

.colr-mission-impact-list li{
    position:relative;
    margin:0 0 10px;
    padding-left:22px;
    color:#ffffff;
    font-size:18px;
    font-weight:700;
    line-height:1.35;
}

.colr-mission-impact-list li::before{
    content:"✓";
    position:absolute;
    left:0;
    top:0;
    color:#f58220;
    font-weight:900;
}

/* =====================================
   Newsletter Signup Section
===================================== */

.colr-newsletter-section{
    padding:110px 0 90px;
    background:#0b3b78;
}

.colr-newsletter-inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(500px,1fr);
    align-items:center;
    gap:72px;
}

.colr-newsletter-kicker{
    margin:0 0 10px;
    color:#ff7a18;
    font-size:13px;
    font-weight:800;
    letter-spacing:1.7px;
    text-transform:uppercase;
}

.colr-newsletter-copy h2{
    max-width:640px;
    margin:0 0 18px;
    color:#ffffff;
    font-size:clamp(34px,4vw,48px);
    line-height:1.08;
}

.colr-newsletter-copy p{
    max-width:650px;
    margin:0;
    color:rgba(255,255,255,.82);
    font-size:17px;
    line-height:1.7;
}

.colr-newsletter-form-wrap{
    padding:28px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    background:rgba(255,255,255,.08);
    box-shadow:0 18px 45px rgba(0,0,0,.14);
}

.colr-newsletter-fields{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
}

.colr-newsletter-fields input{
    width:100%;
    min-height:62px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:8px;
    background:#ffffff;
    color:#17314f;
    font-size:17px;
    outline:none;
}

.colr-newsletter-fields input::placeholder{
    font-size:18px;
    font-weight:500;
    color:#6b7280;
}

.colr-newsletter-fields input:focus{
    border-color:#ff7a18;
    box-shadow:0 0 0 3px rgba(255,122,24,.2);
}

.colr-newsletter-fields button{
    min-height:58px;
    padding:12px 34px;
    border:0;
    border-radius:8px;
    background:#ff7114;
    color:#ffffff;
    font-size:15px;
    font-weight:800;
    white-space:nowrap;
    cursor:pointer;
    box-shadow:0 10px 24px rgba(255,113,20,.28);
    transition:transform .2s ease, box-shadow .2s ease;
}

.colr-newsletter-fields button:hover{
    transform:translateY(-2px);
    box-shadow:0 14px 28px rgba(255,113,20,.34);
}

.colr-newsletter-privacy{
    margin:12px 0 0;
    color:rgba(255,255,255,.68);
    font-size:13px;
    line-height:1.5;
}

@media (max-width:1000px){

    .colr-newsletter-inner{
        grid-template-columns:1fr;
        gap:34px;
    }

}

@media (max-width:700px){

    .colr-newsletter-section{
        padding:58px 0;
    }

    .colr-newsletter-fields{
        grid-template-columns:1fr;
    }

    .colr-newsletter-form-wrap{
        padding:22px;
    }

    .colr-newsletter-fields button{
        width:100%;
    }

}

/* =====================================
   Custom Footer
===================================== */

.colr-site-footer{
    padding:90px 0 0;
    background:#071d43;
    color:#ffffff;
}

.colr-footer-grid{
    display:grid;
    grid-template-columns:
    minmax(380px,1.8fr)
    minmax(140px,.55fr)
    minmax(170px,.65fr)
    minmax(170px,.65fr);
    gap:70px;
    padding-bottom:56px;
}

.colr-footer-brand h2{
    margin:0 0 18px;
    color:#ffffff;
    font-size:28px;
    line-height:1.2;
}

.colr-footer-brand p{
    max-width:470px;
    margin:0 0 26px;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.7;
}

.colr-footer-donate{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:12px 22px;
    border-radius:8px;
    background:#ff7114;
    color:#ffffff;
    font-weight:800;
    text-decoration:none;
    box-shadow:0 10px 24px rgba(255,113,20,.22);
    transition:transform .2s ease, box-shadow .2s ease;
}

.colr-footer-donate:hover{
    background:#ff8930;
    color:#ffffff;
    transform:translateY(-2px);
    box-shadow:0 16px 32px rgba(255,113,20,.35);
}

.colr-footer-column h3{
    margin:0 0 18px;
    color:#ff7a18;
    font-size:17px;
    font-weight:800;
}

.colr-footer-column ul{
    margin:0;
    padding:0;
    list-style:none;
}

.colr-footer-column li{
    margin:0 0 12px;
}

.colr-footer-column a{
    display:inline-block;
    color:rgba(255,255,255,.7);
    text-decoration:none;
    transition:color .2s ease, transform .2s ease;
}

.colr-footer-column a:hover{
    color:#ff8a2a;
    transform:translateX(4px);
}

.colr-footer-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:22px 0;
    border-top:1px solid rgba(255,255,255,.12);
}

.colr-footer-bottom p{
    margin:0;
    color:rgba(255,255,255,.58);
    font-size:13px;
}

@media (max-width:1000px){

    .colr-footer-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media (max-width:650px){

    .colr-site-footer{
        padding-top:56px;
    }

    .colr-footer-grid{
        grid-template-columns:1fr;
        gap:34px;
    }

    .colr-footer-bottom{
        flex-direction:column;
        align-items:flex-start;
    }

}

/* Hide original EDigital footer */

.site-info,
.site-footer .site-info,
.copyright,
.footer-bottom{
    display:none !important;
}

/* =====================================
   Remove remaining EDigital footer
===================================== */

#colophon.site-footer{
    display:none !important;
    margin:0 !important;
    padding:0 !important;
    height:0 !important;
    min-height:0 !important;
}

/* Remove EDigital back-to-top button */
#scroll-up,
.scroll-to-top,
.back-to-top,
a.scrollup{
    display:none !important;
}

/* =========================================
   Homepage Hover Effects
========================================= */

/* Category Cards */
.colr-category-card{
    transition:all .28s ease;
}

.colr-category-card:hover{
    transform:translateY(-6px);
    box-shadow:0 22px 48px rgba(0,0,0,.12);
}

/* Featured Resources */
.colr-featured-card{
    transition:all .28s ease;
}

.colr-featured-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 50px rgba(0,0,0,.14);
}

/* Newest Resources */
.colr-resource-card{
    transition:all .28s ease;
}

.colr-resource-card:hover{
    transform:translateY(-6px);
    box-shadow:0 24px 50px rgba(0,0,0,.14);
}

/* Footer Links */
.colr-footer a{
    display:inline-block;
    transition:all .25s ease;
}

.colr-footer a:hover{
    color:#ff7418;
    transform:translateX(4px);
}

/* Buttons */
.colr-btn,
.colr-newsletter-fields button,
.colr-footer-button{
    transition:all .25s ease;
}

.colr-btn:hover,
.colr-newsletter-fields button:hover,
.colr-footer-button:hover{
    transform:translateY(-2px);
    filter:brightness(1.08);
}

/* Softer cards */

.colr-category-card,
.colr-featured-card,
.colr-resource-card{
    border-radius:18px;
    overflow:hidden;
}

.colr-resource-card img,
.colr-featured-card img{
    transition:transform .4s ease;
}

.colr-resource-card:hover img,
.colr-featured-card:hover img{
    transform:scale(1.05);
}

html{
    scroll-behavior:smooth;
}

a:focus,
button:focus,
input:focus{
    outline:3px solid #ff7418;
    outline-offset:3px;
}

.colr-mission-card{
    transition:all .35s ease;
}

.colr-mission-card:hover{
    transform:translateY(-4px);
    box-shadow:0 28px 60px rgba(0,0,0,.16);
}

.colr-newsletter-form-wrap{
    transition:all .35s ease;
}

.colr-newsletter-form-wrap:hover{
    box-shadow:0 24px 60px rgba(0,0,0,.20);
}

/* =====================================
   Catholic Resources Navigation
===================================== */

.colr-primary-nav{
    position:relative;
    z-index:100;
    border-top:1px solid rgba(12,56,112,.08);
    border-bottom:1px solid rgba(12,56,112,.12);
    background:#ffffff;
    box-shadow:0 6px 20px rgba(10,44,88,.06);
}

.colr-primary-nav .colr-home-container{
    position:relative;
}

.colr-primary-menu{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    margin:0;
    padding:0;
    list-style:none;
}

.colr-primary-menu > li{
    position:relative;
    margin:0;
}

.colr-primary-menu a{
    display:flex;
    align-items:center;
    min-height:58px;
    padding:0 17px;
    color:#123d73;
    font-size:14px;
    font-weight:800;
    line-height:1.2;
    text-decoration:none;
    white-space:nowrap;
    transition:color .2s ease, background .2s ease;
}

.colr-primary-menu > li > a:hover,
.colr-primary-menu > li > a:focus-visible{
    color:#f56f16;
    background:#fff8f2;
}

/* Highlight only the active TOP-LEVEL menu item */

.colr-primary-menu > .current-menu-item > a,
.colr-primary-menu > .current-menu-ancestor > a,
.colr-primary-menu > .current_page_item > a{
    color:#f56f16;
    box-shadow:inset 0 -2px 0 #f56f16;
}

/* Prevent orange underlines inside dropdown menus */

.colr-primary-menu .sub-menu a,
.colr-primary-menu .sub-menu .current-menu-item > a,
.colr-primary-menu .sub-menu .current_page_item > a{
    box-shadow:none !important;
    border-bottom:0 !important;
}

.colr-primary-menu .menu-item-has-children > a::after{
    content:"";
    width:7px;
    height:7px;
    margin-left:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
}

.colr-primary-menu .sub-menu{
    position:absolute;
    top:100%;
    left:0;
    z-index:120;
    min-width:230px;
    margin:0;
    padding:10px;
    list-style:none;
    border:1px solid rgba(12,56,112,.1);
    border-radius:12px;
    background:#ffffff;
    box-shadow:0 18px 45px rgba(9,40,82,.15);
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:
        opacity .2s ease,
        visibility .2s ease,
        transform .2s ease;
}

.colr-primary-menu li:hover > .sub-menu,
.colr-primary-menu li:focus-within > .sub-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.colr-primary-menu .sub-menu li{
    margin:0;
}

.colr-primary-menu .sub-menu a{
    min-height:44px;
    padding:10px 13px;
    border-radius:8px;
    color:#314967;
    font-size:14px;
    font-weight:700;
    white-space:normal;
}

.colr-primary-menu .sub-menu a:hover,
.colr-primary-menu .sub-menu a:focus-visible{
    color:#f56f16;
    background:#fff6ee;
}

/* Make Donate stand out */

.colr-primary-menu > li:last-child > a{
    min-height:42px;
    margin-left:10px;
    padding:0 20px;
    border-radius:8px;
    background:#f56f16;
    color:#ffffff;
    box-shadow:0 8px 20px rgba(245,111,22,.22);
}

.colr-primary-menu > li:last-child > a:hover,
.colr-primary-menu > li:last-child > a:focus-visible{
    background:#ff8430;
    color:#ffffff;
    transform:translateY(-1px);
}

/* Mobile toggle */

.colr-nav-toggle i{
    color:#f56f16;
    font-size:20px;
}

@media (max-width:1100px){

    .colr-primary-menu a{
        padding-right:11px;
        padding-left:11px;
        font-size:13px;
    }
}

/* =========================================
   Hide EDigital Pro Mobile Menu
   Use Custom Learning Resources Menu
========================================= */

@media (max-width:1024px){

    #masthead #site-navigation{
        display:none !important;
    }

}

/* =========================================
   Custom Mobile Navigation in Main Header
========================================= */

@media (max-width:820px){

    #masthead #site-navigation{
        display:none !important;
    }

    #masthead .mt-container{
        display:flex;
        align-items:center;
    }

    #masthead .colr-nav-toggle{
        position:static;
        display:flex !important;
        flex:0 0 48px;
        width:48px;
        height:48px;
        min-height:48px;
        margin-left:auto;
        padding:0;
        align-items:center;
        justify-content:center;
        border:0;
        background:transparent;
        color:#f56f16;
        box-shadow:none;
        cursor:pointer;
        z-index:9999;
    }

    #masthead .colr-nav-toggle span{
        position:absolute;
        width:1px;
        height:1px;
        margin:-1px;
        padding:0;
        overflow:hidden;
        clip:rect(0,0,0,0);
        white-space:nowrap;
        border:0;
    }

    #masthead .colr-nav-toggle i{
        display:none !important;
    }

    #masthead .colr-nav-toggle::before{
        content:"☰";
        display:block;
        color:#f56f16;
        font-family:Arial, sans-serif;
        font-size:28px;
        font-weight:700;
        line-height:1;
    }

    #masthead .colr-nav-toggle[aria-expanded="true"]::before{
        content:"×";
        font-size:34px;
        font-weight:400;
    }
    
    .colr-primary-nav .colr-primary-menu{
        display:none !important;
    }
    
    .colr-primary-nav.is-open .colr-primary-menu{
        display:flex !important;
        flex-direction:column;
    }
}

/* =========================================
   Final Navigation Visibility Fix
========================================= */

/* Desktop: hide the mobile toggle */
@media (min-width:821px){

    .colr-nav-toggle{
        display:none !important;
    }

}

/* Mobile: show our custom toggle */
@media (max-width:820px){

    .colr-nav-toggle{
        display:flex !important;
    }

}

/* =========================================
   Mobile Navigation Final Polish
========================================= */

@media (max-width:820px){

    .colr-primary-nav.is-open{
        background:#ffffff;
        border-bottom:1px solid #eef2f8;
        box-shadow:0 14px 30px rgba(9,40,82,.12);
    }

    .colr-primary-nav.is-open .colr-primary-menu{
        width:100%;
        margin:0;
        padding:10px 18px 18px;
        align-items:stretch;
        gap:0;
    }

    .colr-primary-menu > li{
        width:100%;
        margin:0;
        border-bottom:1px solid #edf1f6;
    }

    .colr-primary-menu > li > a{
        display:flex;
        width:100%;
        min-height:50px;
        padding:12px 10px;
        align-items:center;
        justify-content:space-between;
        color:#123d73;
        font-size:15px;
        font-weight:700;
        text-align:left;
        box-shadow:none !important;
    }

    .colr-primary-menu > li > a:hover,
    .colr-primary-menu > li > a:focus,
    .colr-primary-menu > .current-menu-item > a,
    .colr-primary-menu > .current-menu-ancestor > a{
        color:#f56f16;
        background:#fff8f1;
        box-shadow:none !important;
    }

    .colr-primary-menu .sub-menu{
        width:100%;
        margin:0;
        padding:2px 0 10px 16px;
        background:#f8faff;
    }

    .colr-primary-menu .sub-menu a{
        display:block;
        min-height:42px;
        padding:10px 14px;
        color:#17314f;
        font-size:14px;
        text-align:left;
    }

    .colr-primary-menu > li:last-child{
        margin-top:14px;
        border-bottom:0;
    }

    .colr-primary-menu > li:last-child > a{
        min-height:48px;
        justify-content:center;
        border-radius:8px;
        background:#f56f16;
        color:#ffffff;
        box-shadow:0 8px 20px rgba(245,111,22,.22) !important;
    }

    #masthead .colr-nav-toggle{
        border:0;
        border-radius:8px;
    }
}

@media (max-width:820px){

    #masthead .colr-nav-toggle,
    #masthead .colr-nav-toggle:focus,
    #masthead .colr-nav-toggle:active{
        border:0 !important;
        outline:0;
        box-shadow:none !important;
    }

}

/* =====================================
   COLR Resource Archive
===================================== */

.colr-resource-archive {
    width: 100%;
    padding: 32px 0 80px;
    color: #24364b;
}

/* Archive Hero */

.colr-archive-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 28px;
    padding: 46px 50px;
    border: 1px solid #dce7f4;
    border-radius: 18px;
    background:
        radial-gradient(
            circle at 90% 20%,
            rgba(245, 111, 22, 0.14),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #f4f8fd 0%,
            #ffffff 62%,
            #fff8f2 100%
        );
    box-shadow: 0 12px 34px rgba(19, 61, 115, 0.08);
}

.colr-archive-hero::after {
    position: absolute;
    right: -60px;
    bottom: -80px;
    width: 230px;
    height: 230px;
    border: 34px solid rgba(18, 61, 115, 0.045);
    border-radius: 50%;
    content: "";
}

.colr-archive-hero-content {
    position: relative;
    z-index: 1;
    max-width: 830px;
}

.colr-archive-eyebrow {
    display: inline-block;
    margin-bottom: 10px;
    color: #f56f16;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.colr-archive-hero h1 {
    margin: 0 0 15px;
    color: #123d73;
    font-size: clamp(34px, 4vw, 52px);
    font-weight: 800;
    line-height: 1.08;
}

.colr-archive-hero p {
    max-width: 780px;
    margin: 0;
    color: #516277;
    font-size: 17px;
    line-height: 1.75;
}

/* Search and Filtering */

.colr-archive-search-section {
    margin-bottom: 42px;
    padding: 26px;
    border: 1px solid #e0e7ef;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(18, 61, 115, 0.07);
}

.colr-archive-search-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 280px auto;
    gap: 16px;
    align-items: end;
    margin: 0;
}

.colr-archive-search-field,
.colr-archive-category-field {
    min-width: 0;
}

.colr-archive-search-form label {
    display: block;
    margin-bottom: 8px;
    color: #17314f;
    font-size: 13px;
    font-weight: 800;
}

.colr-archive-search-form input[type="search"],
.colr-archive-search-form select {
    width: 100%;
    height: 52px;
    margin: 0;
    padding: 0 16px;
    border: 1px solid #ccd7e4;
    border-radius: 8px;
    background: #ffffff;
    color: #24364b;
    font-size: 15px;
    box-shadow: none;
}

.colr-archive-search-form input[type="search"]:focus,
.colr-archive-search-form select:focus {
    border-color: #f56f16;
    outline: 3px solid rgba(245, 111, 22, 0.14);
}

.colr-archive-search-button {
    min-width: 175px;
    height: 52px;
    margin: 0;
    padding: 0 22px;
    border: 0;
    border-radius: 8px;
    background: #f56f16;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 52px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 8px 20px rgba(245, 111, 22, 0.22);
    transition:
        background 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.colr-archive-search-button:hover,
.colr-archive-search-button:focus {
    background: #d95708;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(245, 111, 22, 0.3);
}

/* Results Heading */

.colr-archive-results-heading {
    display: flex;
    gap: 24px;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 26px;
    padding-bottom: 18px;
    border-bottom: 1px solid #dce4ed;
}

.colr-archive-results-label {
    display: block;
    margin-bottom: 6px;
    color: #f56f16;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.colr-archive-results-heading h2 {
    margin: 0;
    color: #123d73;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.2;
}

.colr-archive-count {
    flex-shrink: 0;
    margin: 0;
    padding: 8px 14px;
    border-radius: 999px;
    background: #edf4fb;
    color: #123d73;
    font-size: 13px;
    font-weight: 800;
}

/* Resource Grid */

.colr-archive-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.colr-archive-card {
    display: flex;
    min-width: 0;
    overflow: hidden;
    flex-direction: column;
    margin: 0;
    border: 1px solid #dfe6ee;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(18, 61, 115, 0.07);
    transition:
        transform 0.22s ease,
        border-color 0.22s ease,
        box-shadow 0.22s ease;
}

.colr-archive-card:hover {
    border-color: rgba(245, 111, 22, 0.42);
    transform: translateY(-5px);
    box-shadow: 0 16px 36px rgba(18, 61, 115, 0.13);
}

.colr-archive-card-image {
    display: flex;
    width: 100%;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    padding: 20px;
    border-bottom: 1px solid #e5ebf1;
    background: #f6f8fb;
}

.colr-archive-card-image img {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
    object-fit: contain;
    transition: transform 0.25s ease;
}

.colr-archive-card:hover .colr-archive-card-image img {
    transform: scale(1.025);
}

.colr-archive-image-placeholder {
    display: flex;
    height: 100%;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 12px;
    color: #6d7d90;
    text-align: center;
}

.colr-archive-image-placeholder i {
    color: #f56f16;
    font-size: 46px;
}

.colr-archive-image-placeholder span {
    font-size: 14px;
    font-weight: 700;
}

.colr-archive-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: flex-start;
    padding: 22px;
}

.colr-archive-card-category {
    display: inline-block;
    margin-bottom: 10px;
    padding: 5px 10px;
    border-radius: 999px;
    background: #edf4fb;
    color: #123d73;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.035em;
    line-height: 1.3;
    text-transform: uppercase;
}

.colr-archive-card-category:hover,
.colr-archive-card-category:focus {
    background: #123d73;
    color: #ffffff;
}

.colr-archive-card-title {
    width: 100%;
    margin: 0 0 12px;
    font-size: 20px;
    font-weight: 800;
    line-height: 1.38;
    overflow-wrap: anywhere;
}

.colr-archive-card-title a {
    color: #17314f;
}

.colr-archive-card-title a:hover,
.colr-archive-card-title a:focus {
    color: #f56f16;
}

.colr-archive-card-description {
    width: 100%;
    margin-bottom: 20px;
    color: #5d6c7e;
    font-size: 14px;
    line-height: 1.7;
}

.colr-archive-card-button {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: auto;
    padding: 11px 17px;
    border: 2px solid #f56f16;
    border-radius: 7px;
    background: #f56f16;
    color: #ffffff;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.3;
    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.colr-archive-card-button:hover,
.colr-archive-card-button:focus {
    background: #ffffff;
    color: #d95708;
    transform: translateY(-1px);
}

/* Pagination */

.colr-archive-pagination {
    margin-top: 46px;
}

.colr-archive-pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    justify-content: center;
}

.colr-archive-pagination .page-numbers {
    display: inline-flex;
    min-width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    border: 1px solid #d8e1eb;
    border-radius: 7px;
    background: #ffffff;
    color: #123d73;
    font-size: 14px;
    font-weight: 800;
}

.colr-archive-pagination .page-numbers:hover,
.colr-archive-pagination .page-numbers:focus,
.colr-archive-pagination .page-numbers.current {
    border-color: #f56f16;
    background: #f56f16;
    color: #ffffff;
}

.colr-archive-pagination .dots {
    border-color: transparent;
    background: transparent;
}

/* No Results */

.colr-archive-no-results {
    padding: 70px 24px;
    border: 1px solid #dfe6ee;
    border-radius: 14px;
    background: #f8fafc;
    text-align: center;
}

.colr-archive-no-results i {
    margin-bottom: 18px;
    color: #f56f16;
    font-size: 50px;
}

.colr-archive-no-results h2 {
    margin: 0 0 10px;
    color: #123d73;
}

.colr-archive-no-results p {
    margin: 0 0 22px;
    color: #5d6c7e;
}

.colr-archive-no-results a {
    display: inline-block;
    padding: 12px 19px;
    border-radius: 7px;
    background: #f56f16;
    color: #ffffff;
    font-weight: 800;
}

/* Tablet */

@media (max-width: 991px) {

    .colr-archive-search-form {
        grid-template-columns: minmax(0, 1fr) 240px;
    }

    .colr-archive-search-button {
        grid-column: 1 / -1;
        width: 100%;
    }

    .colr-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px;
    }

}

/* Mobile */

@media (max-width: 640px) {

    .colr-resource-archive {
        padding: 20px 0 55px;
    }

    .colr-archive-hero {
        margin-bottom: 20px;
        padding: 30px 22px;
        border-radius: 12px;
    }

    .colr-archive-hero h1 {
        font-size: 34px;
    }

    .colr-archive-hero p {
        font-size: 15px;
        line-height: 1.65;
    }

    .colr-archive-search-section {
        margin-bottom: 32px;
        padding: 18px;
        border-radius: 11px;
    }

    .colr-archive-search-form {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .colr-archive-search-button {
        grid-column: auto;
    }

    .colr-archive-results-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .colr-archive-results-heading h2 {
        font-size: 26px;
    }

    .colr-archive-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .colr-archive-card-content {
        padding: 20px;
    }

    .colr-archive-card-title {
        font-size: 19px;
    }

    .colr-archive-card-button {
        width: 100%;
    }

    .colr-archive-pagination .page-numbers {
        min-width: 38px;
        height: 38px;
        padding: 0 9px;
    }

}

/* =====================================
   Archive Layout Alignment with Homepage
===================================== */

/* Override EDigital Pro's narrow archive content column */

body.post-type-archive-download #primary.colr-resource-archive {
    float: none;
    width: 100%;
    max-width: none;
}

/* Four resources across on desktop */

.colr-archive-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

/* Match the homepage card proportions */

.colr-archive-card-image {
    aspect-ratio: 4 / 3;
    padding: 16px;
}

.colr-archive-card-content {
    padding: 24px;
}

.colr-archive-card-title {
    font-size: 19px;
    line-height: 1.42;
}

/* Use the homepage-style resource link */

.colr-archive-card-button {
    min-height: auto;
    width: auto;
    margin-top: auto;
    padding: 8px 0 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #f56f16;
    box-shadow: none;
}

.colr-archive-card-button:hover,
.colr-archive-card-button:focus {
    background: transparent;
    color: #d95708;
    transform: translateX(3px);
}

/* Smaller desktop */

@media (max-width: 1199px) {

    .colr-archive-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

}

/* Tablet */

@media (max-width: 900px) {

    .colr-archive-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

/* Mobile */

@media (max-width: 640px) {

    .colr-archive-grid {
        grid-template-columns: 1fr;
    }

    .colr-archive-card-button {
        width: auto;
    }

}

/* =====================================
   Single Resource Full-Width Alignment
===================================== */

body.single-download #primary.colr-single-resource,
body.single-download .colr-single-resource {
    float: none;
    width: 100%;
    max-width: none;
}

/* =====================================
   COLR Single Resource Page
===================================== */

body.single-download #primary.colr-single-resource {
    float: none;
    width: 100%;
    max-width: none;
}

.colr-single-resource {
    padding: 30px 0 80px;
    color: #24364b;
}

/* Breadcrumbs */

.colr-resource-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
    margin-bottom: 24px;
    color: #718095;
    font-size: 13px;
    line-height: 1.6;
}

.colr-resource-breadcrumbs a {
    color: #f56f16;
    font-weight: 700;
}

.colr-resource-breadcrumbs a:hover,
.colr-resource-breadcrumbs a:focus {
    color: #123d73;
}

/* Main Two-Column Layout */

.colr-resource-main {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 48px;
    align-items: start;
}

/* Resource Preview */

.colr-resource-preview {
    display: flex;
    min-height: 600px;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    padding: 28px;
    border: 1px solid #dfe6ee;
    border-radius: 16px;
    background: #f6f8fb;
    box-shadow: 0 10px 30px rgba(18, 61, 115, 0.08);
}

.colr-resource-featured-image {
    display: block;
    width: 100%;
    height: auto;
    max-height: 760px;
    margin: 0;
    object-fit: contain;
}

.colr-resource-preview-placeholder {
    display: flex;
    min-height: 540px;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 15px;
    color: #6d7d90;
    text-align: center;
}

.colr-resource-preview-placeholder i {
    color: #f56f16;
    font-size: 60px;
}

/* Resource Information */

.colr-resource-information {
    padding: 10px 0;
}

.colr-resource-category {
    display: inline-block;
    width: auto;
    margin: 0 0 16px;
    padding: 7px 12px;
    border: 0;
    border-radius: 999px;
    background: #edf4fb;
    color: #123d73;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.06em;
    line-height: 1.3;
    text-transform: uppercase;
}

.colr-resource-category:hover,
.colr-resource-category:focus {
    background: #123d73;
    color: #ffffff;
}

.colr-resource-title {
    margin: 0 0 20px;
    color: #123d73;
    font-size: clamp(34px, 4vw, 48px);
    font-weight: 800;
    line-height: 1.12;
    overflow-wrap: anywhere;
}

.colr-resource-description {
    margin-bottom: 26px;
    color: #516277;
    font-size: 16px;
    line-height: 1.8;
}

.colr-resource-description p {
    margin: 0 0 16px;
}

.colr-resource-description p:last-child {
    margin-bottom: 0;
}

/* Resource Benefits */

.colr-resource-benefits {
    display: grid;
    gap: 11px;
    margin: 0 0 28px;
    padding: 22px;
    border: 1px solid #dce7f4;
    border-radius: 12px;
    background: #f7faff;
}

.colr-resource-benefits > div {
    display: flex;
    gap: 11px;
    align-items: flex-start;
    color: #31465f;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
}

.colr-resource-benefits i {
    flex-shrink: 0;
    margin-top: 3px;
    color: #f56f16;
}

/* Access Panel */

.colr-resource-access-box {
    padding: 27px;
    border: 1px solid #f5d2ba;
    border-radius: 14px;
    background:
        linear-gradient(
            135deg,
            #fff9f4 0%,
            #ffffff 70%
        );
    box-shadow: 0 10px 28px rgba(245, 111, 22, 0.1);
}

.colr-resource-access-heading {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 13px;
}

.colr-resource-access-heading > i {
    display: inline-flex;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #f56f16;
    color: #ffffff;
    font-size: 20px;
}

.colr-resource-access-heading div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.colr-resource-access-heading span {
    color: #f56f16;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.colr-resource-access-heading strong {
    color: #123d73;
    font-size: 20px;
    line-height: 1.3;
}

.colr-resource-access-box > p {
    margin: 0 0 19px;
    color: #5d6c7e;
    font-size: 14px;
    line-height: 1.7;
}

.colr-resource-download-button {
    margin-bottom: 11px;
}

.colr-resource-download-button .edd-submit,
.colr-resource-download-button .edd-add-to-cart,
.colr-resource-download-button .colr-edd-access-button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 13px 23px;
    border: 2px solid #f56f16;
    border-radius: 8px;
    background: #f56f16;
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.3;
    box-shadow: 0 8px 20px rgba(245, 111, 22, 0.22);
    transition:
        background 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.colr-resource-download-button .edd-submit:hover,
.colr-resource-download-button .edd-submit:focus,
.colr-resource-download-button .edd-add-to-cart:hover,
.colr-resource-download-button .edd-add-to-cart:focus,
.colr-resource-download-button .colr-edd-access-button:hover,
.colr-resource-download-button .colr-edd-access-button:focus {
    background: #ffffff;
    color: #d95708;
    transform: translateY(-2px);
    box-shadow: 0 11px 25px rgba(245, 111, 22, 0.28);
}

.colr-resource-access-note {
    display: block;
    color: #748296;
    font-size: 12px;
    line-height: 1.5;
}

/* Tablet */

@media (max-width: 991px) {

    .colr-resource-main {
        grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
        gap: 30px;
    }

    .colr-resource-preview {
        min-height: 500px;
        padding: 20px;
    }

}

/* Mobile */

@media (max-width: 760px) {

    .colr-single-resource {
        padding: 20px 0 55px;
    }

    .colr-resource-breadcrumbs {
        margin-bottom: 18px;
        font-size: 12px;
    }

    .colr-resource-main {
        grid-template-columns: 1fr;
        gap: 27px;
    }

    .colr-resource-preview {
        min-height: 0;
        padding: 18px;
        border-radius: 12px;
    }

    .colr-resource-featured-image {
        max-height: 600px;
    }

    .colr-resource-information {
        padding: 0;
    }

    .colr-resource-title {
        font-size: 32px;
    }

    .colr-resource-description {
        font-size: 15px;
    }

    .colr-resource-benefits,
    .colr-resource-access-box {
        padding: 20px;
    }

    .colr-resource-download-button .edd-submit,
    .colr-resource-download-button .edd-add-to-cart,
    .colr-resource-download-button .colr-edd-access-button {
        width: 100%;
    }

}

/* Fix single-resource category badge */

body.single-download a.colr-resource-category {
    display: inline-flex !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    align-items: center;
    margin: 0 0 16px !important;
    padding: 7px 12px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #edf4fb !important;
    color: #123d73 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em;
    line-height: 1.3 !important;
    text-transform: uppercase;
    box-shadow: none !important;
}

body.single-download a.colr-resource-category:hover,
body.single-download a.colr-resource-category:focus {
    background: #123d73 !important;
    color: #ffffff !important;
}

/* Hide EDD order details; retain the Resources/download table */
table#edd_purchase_receipt {
	display: none !important;
}

/* ==================================================
   COLR — EDD CHECKOUT PAGE
   Staging checkout page ID: 5155
================================================== */

body.edd-checkout .site-content > .mt-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 55px 24px 70px;
}

/* Cart and customer-information cards */
body.edd-checkout #edd_checkout_cart,
body.edd-checkout #edd_checkout_form_wrap fieldset {
	background: #ffffff;
	border: 1px solid #d7e2ef;
	border-radius: 16px;
	box-shadow: 0 12px 30px rgba(18, 61, 115, 0.06);
	overflow: hidden;
}

/* Cart table */
body.edd-checkout #edd_checkout_cart {
	margin-bottom: 32px;
}

body.edd-checkout #edd_checkout_cart th {
	background: #f4f8fc;
	color: #123d73;
	font-weight: 800;
	padding: 18px;
}

body.edd-checkout #edd_checkout_cart td {
	padding: 18px;
	vertical-align: middle;
}

/* Customer information */
body.edd-checkout #edd_checkout_form_wrap fieldset {
	padding: 28px;
	margin-bottom: 28px;
}

body.edd-checkout #edd_checkout_form_wrap legend {
	color: #123d73;
	font-size: 22px;
	font-weight: 800;
	padding: 0 10px;
}

body.edd-checkout #edd_checkout_form_wrap label {
	color: #123d73;
	font-weight: 700;
}

/* Checkout fields */
body.edd-checkout #edd_checkout_form_wrap input[type="text"],
body.edd-checkout #edd_checkout_form_wrap input[type="email"],
body.edd-checkout #edd_checkout_form_wrap input[type="password"] {
	width: 100%;
	min-height: 50px;
	padding: 12px 15px;
	border: 1px solid #cad7e6;
	border-radius: 8px;
	background: #ffffff;
	box-shadow: none;
}

body.edd-checkout #edd_checkout_form_wrap input:focus {
	border-color: #ff6b0b;
	box-shadow: 0 0 0 3px rgba(255, 107, 11, 0.12);
	outline: none;
}

body.edd-checkout #edd_checkout_form_wrap .edd-description {
	color: #64748b;
	margin-top: 6px;
}

/* Main checkout button */
body.edd-checkout #edd-purchase-button,
body.edd-checkout #edd_checkout_form_wrap .edd-submit {
	min-height: 52px;
	padding: 14px 26px;
	border: 0;
	border-radius: 9px;
	background: #ff6b0b;
	color: #ffffff;
	font-size: 15px;
	font-weight: 800;
	box-shadow: 0 10px 22px rgba(255, 107, 11, 0.18);
}

body.edd-checkout #edd-purchase-button:hover,
body.edd-checkout #edd_checkout_form_wrap .edd-submit:hover {
	background: #e85c00;
	color: #ffffff;
}

/* Mobile checkout */
@media (max-width: 767px) {
	body.edd-checkout .site-content > .mt-container {
		padding: 32px 16px 50px;
	}

	body.edd-checkout #edd_checkout_form_wrap fieldset {
		padding: 20px 16px;
	}

	body.edd-checkout #edd-purchase-button,
	body.edd-checkout #edd_checkout_form_wrap .edd-submit {
		width: 100%;
	}
}

/* Hide the optional Save Cart control on checkout */
body.edd-checkout #edd-save-cart-button,
body.edd-checkout .edd-save-cart-button,
body.edd-checkout .edd_cart_actions .edd-submit {
	display: none !important;
}

/* Tighten space below checkout page title */
body.edd-checkout .entry-header {
	margin-bottom: 0 !important;
}

body.edd-checkout .site-main,
body.edd-checkout .entry-content {
	padding-top: 45px !important;
	margin-top: 0 !important;
}

/* Tighten spacing below the checkout page title */
body.edd-checkout #content > .mt-container {
	padding-top: 45px !important;
}

body.edd-checkout #primary,
body.edd-checkout .site-main,
body.edd-checkout .entry-content,
body.edd-checkout #edd_checkout_form_wrap {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* ==================================================
   COLR — DOWNLOAD CATEGORY ARCHIVE LAYOUT
================================================== */

/* Remove the parent theme's duplicate taxonomy heading. */
body.tax-download_category #content > header.entry-header {
	display: none !important;
}

/* Give category archives the same full-width layout as /downloads/. */
body.tax-download_category #primary,
body.tax-download_category .site-main {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
}

/* Category archives do not use the parent theme sidebar. */
body.tax-download_category #secondary {
	display: none !important;
}

/* Category breadcrumb. */
body.tax-download_category .colr-archive-breadcrumb {
	margin: 0 0 10px;
	font-size: 14px;
	color: #475569;
}

body.tax-download_category .colr-archive-breadcrumb a {
	color: #ff6411;
	font-weight: 700;
	text-decoration: none;
}

body.tax-download_category .colr-archive-breadcrumb a:hover {
	text-decoration: underline;
}

/* ==================================================
   COLR — RESOURCE CATEGORY INDEX
================================================== */

body.page-template-page-resource-categories #content > header.entry-header {
	display: none !important;
}

body.page-template-page-resource-categories #primary,
body.page-template-page-resource-categories .site-main {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
}

body.page-template-page-resource-categories #secondary {
	display: none !important;
}

.colr-category-index-hero p {
	max-width: 780px;
	margin: 18px 0 0;
	color: #425b7c;
	font-size: 17px;
	line-height: 1.75;
}

.colr-category-index-search {
	grid-template-columns: minmax(0, 1fr) auto !important;
}

.colr-category-index-results {
	margin-top: 42px;
}

.colr-category-index-all-link {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 10px 16px;
	border-radius: 999px;
	background: #eef6ff;
	color: #123d73;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.colr-category-index-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
	margin-top: 26px;
}

.colr-category-index-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: 26px;
	border: 1px solid #d9e5f2;
	border-radius: 16px;
	background: #ffffff;
	box-shadow: 0 10px 28px rgba(18, 61, 115, 0.055);
	transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.colr-category-index-card:hover {
	transform: translateY(-3px);
	border-color: #bfd3e8;
	box-shadow: 0 16px 34px rgba(18, 61, 115, 0.1);
}

.colr-category-index-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.colr-category-index-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: linear-gradient(135deg, #eef6ff, #fff2e9);
	color: #ff6411;
	font-size: 20px;
}

.colr-category-index-count {
	color: #60738d;
	font-size: 12px;
	font-weight: 800;
}

.colr-category-index-card h3 {
	margin: 20px 0 11px;
	font-size: 23px;
	line-height: 1.25;
}

.colr-category-index-card h3 a {
	color: #123d73;
	text-decoration: none;
}

.colr-category-index-card h3 a:hover {
	color: #ff6411;
}

.colr-category-index-description {
	margin: 0;
	color: #526982;
	font-size: 14px;
	line-height: 1.7;
}

.colr-category-index-children {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 18px 0 0;
}

.colr-category-index-children a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 10px;
	border-radius: 999px;
	background: #f1f6fb;
	color: #123d73;
	font-size: 12px;
	font-weight: 750;
	text-decoration: none;
}

.colr-category-index-children a:hover {
	background: #e5f0fa;
	color: #ff6411;
}

.colr-category-index-children span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 21px;
	height: 21px;
	padding: 0 6px;
	border-radius: 999px;
	background: #ffffff;
	font-size: 10px;
}

.colr-category-index-button {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: auto;
	padding-top: 22px;
	color: #ff6411;
	font-size: 13px;
	font-weight: 850;
	text-decoration: none;
}

.colr-category-index-button:hover {
	color: #d94f00;
}

@media (max-width: 980px) {
	.colr-category-index-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.colr-category-index-hero p {
		font-size: 15px;
		line-height: 1.65;
	}

	.colr-category-index-search {
		display: grid !important;
		grid-template-columns: 1fr !important;
	}

	.colr-category-index-search .colr-archive-search-button {
		width: 100%;
	}

	.colr-category-index-results {
		margin-top: 32px;
	}

	.colr-category-index-all-link {
		margin-top: 14px;
	}

	.colr-category-index-grid {
		grid-template-columns: 1fr;
		gap: 16px;
		margin-top: 20px;
	}

	.colr-category-index-card {
		padding: 22px 20px;
	}
}

/* Hide duplicate theme heading on the Resource Categories page */
body:has(.colr-resource-archive) #content > .entry-header {
	display: none !important;
}

/* Authoritative compact mission banner layout */
.colr-mission-banner{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-height:52px!important;
  margin:0!important;
  padding:7px max(24px,calc((100% - 1120px)/2))!important;
  border:0!important;
  border-top:1px solid #efbd75!important;
  border-bottom:1px solid #efbd75!important;
  border-radius:0!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr) 150px!important;
  align-items:center!important;
  gap:12px!important;
  overflow:visible!important;
  background:#fffaf1!important;
}
.colr-mission-banner .colr-mission-icon{grid-column:1!important;width:30px!important;height:30px!important;margin:0!important;font-size:19px!important;background:transparent!important}
.colr-mission-banner .colr-mission-content{grid-column:2!important;min-width:0!important;margin:0!important}
.colr-mission-banner .colr-mission-content h2{margin:0 0 1px!important;font-size:18px!important;line-height:1.1!important;white-space:normal!important}
.colr-mission-banner .colr-mission-content p{margin:0!important;font-size:11px!important;line-height:1.3!important}
.colr-mission-banner .colr-mission-action{grid-column:3!important;min-width:0!important;padding:0!important;border:0!important;text-align:center!important}
.colr-mission-banner .colr-mission-button{display:inline-block!important;padding:7px 14px!important;font-size:12px!important;line-height:1.2!important}
.colr-mission-banner .colr-mission-action span{display:none!important}
.home .colr-mission-ribbon{display:none!important}
@media(max-width:760px){
 .colr-mission-banner{padding:8px 14px!important;grid-template-columns:25px minmax(0,1fr)!important;gap:6px 9px!important}
 .colr-mission-banner .colr-mission-icon{grid-column:1!important;width:25px!important;height:25px!important;font-size:16px!important}
 .colr-mission-banner .colr-mission-content{grid-column:2!important}
 .colr-mission-banner .colr-mission-action{grid-column:2!important;text-align:left!important}
 .colr-mission-banner .colr-mission-content h2{font-size:16px!important}
 .colr-mission-banner .colr-mission-content p{font-size:10px!important}
}


/* Remove legacy large-card padding from the compact ribbon */
.colr-mission-banner .colr-mission-content{padding:0!important}


/* Slightly roomier compact mission ribbon */
.colr-mission-banner{min-height:62px!important;padding-top:11px!important;padding-bottom:11px!important}
@media(max-width:760px){.colr-mission-banner{min-height:0!important;padding-top:10px!important;padding-bottom:10px!important}}


/* Recently Added resource landing page */
body:has(.colr-recent-page-hero) #content > .entry-header{display:none!important}
body:has(.colr-recent-page-hero) #content{padding-top:0}
.colr-recent-page-hero{
  position:relative;
  overflow:hidden;
  max-width:1200px;
  margin:36px auto 28px;
  padding:52px 50px;
  border:1px solid #dce7f2;
  border-radius:22px;
  background:linear-gradient(120deg,#f4f9ff 0%,#fffaf6 58%,#fff0e5 100%);
  box-shadow:0 10px 30px rgba(10,55,105,.07);
}
.colr-recent-page-hero:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-95px;
  width:250px;
  height:250px;
  border:34px solid rgba(255,100,17,.07);
  border-radius:50%;
}
.colr-recent-page-kicker{
  margin:0 0 12px!important;
  color:#f15a13;
  font-size:13px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.colr-recent-page-hero h1{
  position:relative;
  z-index:1;
  margin:0 0 16px;
  color:#123f78;
  font-size:48px;
  line-height:1.08;
}
.colr-recent-page-hero>p:last-child{
  position:relative;
  z-index:1;
  max-width:850px;
  margin:0;
  color:#355b82;
  font-size:18px;
  line-height:1.7;
}
.colr-recent-page-library{max-width:1200px;margin:0 auto 54px}
.colr-recent-page-heading{text-align:center;max-width:780px;margin:0 auto 30px}
.colr-recent-page-heading h2{margin:0 0 12px;color:#123f78;font-size:36px;line-height:1.15}
.colr-recent-page-heading>p:last-child{margin:0;color:#55708d;font-size:16px;line-height:1.65}
.colr-recent-page-library .edd_downloads_list{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0!important}
.colr-recent-page-library .edd_download{width:auto!important;float:none!important;margin:0!important}
.colr-recent-page-library .edd_download_inner{
  display:flex;
  flex-direction:column;
  height:100%;
  padding:0!important;
  overflow:hidden;
  border:1px solid #dce6f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 7px 22px rgba(11,51,95,.08);
  transition:transform .18s ease,box-shadow .18s ease;
}
.colr-recent-page-library .edd_download_inner:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,51,95,.13)}
.colr-recent-page-library .edd_download_image{aspect-ratio:4/3;overflow:hidden;background:#f6f8fb}
.colr-recent-page-library .edd_download_image a,.colr-recent-page-library .edd_download_image img{display:block;width:100%;height:100%}
.colr-recent-page-library .edd_download_image img{object-fit:cover}
.colr-recent-page-library .edd-extra-wrapper{display:flex;flex:1;flex-direction:column;padding:20px}
.colr-recent-page-library .edd_download_title{margin:0 0 10px;font-size:18px;line-height:1.35}
.colr-recent-page-library .edd_download_title a{color:#123f78;text-decoration:none}
.colr-recent-page-library .edd_download_excerpt{flex:1;color:#5c6f82;font-size:14px;line-height:1.55}
.colr-recent-page-library .edd_purchase_submit_wrapper{margin-top:16px}
.colr-recent-page-library .edd-submit{width:100%;border-radius:8px!important;background:#ff6411!important;border-color:#ff6411!important;font-weight:750!important}
.colr-recent-page-library .edd_pagination{text-align:center;margin:36px 0 0}
.colr-recent-page-library .edd_pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;margin:3px;padding:0 10px;border:1px solid #d9e3ec;border-radius:8px;text-decoration:none}
.colr-recent-page-library .edd_pagination .current{color:#fff;background:#123f78;border-color:#123f78}
@media(max-width:980px){.colr-recent-page-library .edd_downloads_list{grid-template-columns:repeat(2,minmax(0,1fr))}.colr-recent-page-hero{margin:26px 20px;padding:42px 34px}.colr-recent-page-library{margin-left:20px;margin-right:20px}}
@media(max-width:620px){.colr-recent-page-library .edd_downloads_list{grid-template-columns:1fr}.colr-recent-page-hero{padding:32px 24px}.colr-recent-page-hero h1{font-size:34px}.colr-recent-page-hero>p:last-child{font-size:16px}.colr-recent-page-heading h2{font-size:29px}}


/* Popular Resources hybrid landing page */
body:has(.colr-popular-page-hero) #content > .entry-header{display:none!important}
body:has(.colr-popular-page-hero) #content{padding-top:0}
.colr-popular-page-hero{
  position:relative;
  overflow:hidden;
  max-width:1200px;
  margin:36px auto 28px;
  padding:52px 50px;
  border:1px solid #eadfce;
  border-radius:22px;
  background:linear-gradient(120deg,#fff9f0 0%,#fff 52%,#f3f8ff 100%);
  box-shadow:0 10px 30px rgba(10,55,105,.07);
}
.colr-popular-page-hero:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-95px;
  width:250px;
  height:250px;
  border:34px solid rgba(18,63,120,.055);
  border-radius:50%;
}
.colr-popular-page-kicker{
  margin:0 0 12px!important;
  color:#f15a13;
  font-size:13px;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.colr-popular-page-hero h1{
  position:relative;
  z-index:1;
  margin:0 0 16px;
  color:#123f78;
  font-size:48px;
  line-height:1.08;
}
.colr-popular-page-hero>p:last-child{
  position:relative;
  z-index:1;
  max-width:850px;
  margin:0;
  color:#355b82;
  font-size:18px;
  line-height:1.7;
}
.colr-popular-page-library{max-width:1200px;margin:0 auto 54px}
.colr-popular-page-heading{text-align:center;max-width:820px;margin:0 auto 30px}
.colr-popular-page-heading h2{margin:0 0 12px;color:#123f78;font-size:36px;line-height:1.15}
.colr-popular-page-heading>p:last-child{margin:0;color:#55708d;font-size:16px;line-height:1.65}
.colr-popular-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.colr-popular-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid #dce6f0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 7px 22px rgba(11,51,95,.08);
  transition:transform .18s ease,box-shadow .18s ease;
}
.colr-popular-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(11,51,95,.13)}
.colr-popular-image{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#f6f8fb}
.colr-popular-image img{display:block;width:100%;height:100%;object-fit:cover}
.colr-popular-placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#f15a13;font-size:44px}
.colr-popular-badge{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;color:#fff;background:#f15a13;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 4px 10px rgba(0,0,0,.12)}
.colr-popular-content{display:flex;flex:1;flex-direction:column;padding:20px}
.colr-popular-content h3{margin:0 0 9px;font-size:18px;line-height:1.35}
.colr-popular-content h3 a{color:#123f78;text-decoration:none}
.colr-popular-count{margin:0 0 10px!important;color:#f15a13;font-size:12px;font-weight:750}
.colr-popular-count i{margin-right:5px}
.colr-popular-excerpt{flex:1;margin:0;color:#5c6f82;font-size:14px;line-height:1.55}
.colr-popular-link{display:inline-flex;align-items:center;justify-content:center;margin-top:17px;padding:10px 14px;border-radius:8px;color:#fff!important;background:#123f78;font-size:13px;font-weight:750;text-decoration:none!important}
.colr-popular-link:hover{background:#ff6411}
.colr-popular-pagination{margin:36px 0 0;text-align:center}
.colr-popular-pagination ul{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:0;padding:0;list-style:none}
.colr-popular-pagination a,.colr-popular-pagination .current{display:inline-flex;min-width:40px;height:40px;align-items:center;justify-content:center;padding:0 11px;border:1px solid #d9e3ec;border-radius:8px;text-decoration:none}
.colr-popular-pagination .current{color:#fff;background:#123f78;border-color:#123f78}
@media(max-width:980px){.colr-popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.colr-popular-page-hero{margin:26px 20px;padding:42px 34px}.colr-popular-page-library{margin-left:20px;margin-right:20px}}
@media(max-width:620px){.colr-popular-grid{grid-template-columns:1fr}.colr-popular-page-hero{padding:32px 24px}.colr-popular-page-hero h1{font-size:34px}.colr-popular-page-hero>p:last-child{font-size:16px}.colr-popular-page-heading h2{font-size:29px}}


/* COLR Contact Us page */
body:has(.colr-contact-hero) #content > .entry-header{display:none!important}
body:has(.colr-contact-hero) #primary,body:has(.colr-contact-hero) #main,body:has(.colr-contact-hero) article.page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body:has(.colr-contact-hero) article.page{background:transparent!important;box-shadow:none!important}
body:has(.colr-contact-hero) .entry-content{margin:0!important}
.colr-contact-hero{max-width:1200px;margin:46px auto 30px;padding:58px 52px;border:1px solid #d8e3ee;border-radius:20px;background:linear-gradient(125deg,#f5f9ff 0%,#fff3e8 100%);overflow:hidden;position:relative}
.colr-contact-hero:after{content:"";position:absolute;right:-55px;bottom:-85px;width:230px;height:230px;border:22px solid rgba(18,63,120,.055);border-radius:50%}
.colr-contact-hero__inner{position:relative;z-index:1;max-width:820px}
.colr-contact-eyebrow{margin:0 0 12px!important;color:#f15a13!important;font-size:13px!important;font-weight:800!important;letter-spacing:.09em;text-transform:uppercase}
.colr-contact-hero h1{margin:0 0 16px;color:#123f78;font-size:52px;line-height:1.08}
.colr-contact-hero p:last-child{margin:0;color:#445e76;font-size:18px;line-height:1.7}
.colr-contact-section{max-width:1200px;margin:0 auto;padding:36px 0 52px}
.colr-contact-intro{text-align:center;max-width:760px;margin:0 auto 28px}
.colr-contact-intro h2{margin:0 0 10px;color:#123f78;font-size:34px}
.colr-contact-intro>p:last-child{margin:0;color:#5d7184;font-size:16px}
.colr-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.colr-contact-card{display:flex;min-height:295px;flex-direction:column;align-items:flex-start;padding:30px;border:1px solid #dce5ed;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,63,120,.07);transition:transform .2s ease,box-shadow .2s ease}
.colr-contact-card:hover{transform:translateY(-3px);box-shadow:0 13px 30px rgba(18,63,120,.12)}
.colr-contact-icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;margin:0 0 20px;border-radius:13px;background:#fff2e8;color:#f15a13;font-size:26px;font-weight:700}
.colr-contact-card h3{margin:0 0 9px;color:#123f78;font-size:24px}
.colr-contact-card p{margin:0 0 18px;color:#5c6f82;font-size:15px;line-height:1.65}
.colr-contact-link{margin-top:auto;color:#f15a13!important;font-weight:750;text-decoration:none!important;overflow-wrap:anywhere}
.colr-contact-link:hover{text-decoration:underline!important}
.colr-contact-help{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:34px;max-width:1200px;margin:0 auto 54px;padding:34px 38px;border:1px solid #efc485;border-radius:16px;background:#fffaf1}
.colr-contact-help h2{margin:0 0 9px;color:#123f78;font-size:29px}
.colr-contact-help p:not(.colr-contact-eyebrow){margin:0;color:#526a80;line-height:1.65}
.colr-contact-button{display:inline-flex;align-items:center;justify-content:center;min-width:190px;padding:13px 22px;border-radius:9px;background:#d71920;color:#fff!important;font-weight:800;text-decoration:none!important}
.colr-contact-button:hover{background:#b80f16}
@media(max-width:1248px){.colr-contact-hero,.colr-contact-section,.colr-contact-help{margin-left:24px;margin-right:24px}}
@media(max-width:820px){.colr-contact-hero{padding:42px 32px}.colr-contact-hero h1{font-size:42px}.colr-contact-grid{grid-template-columns:1fr}.colr-contact-card{min-height:0}.colr-contact-help{grid-template-columns:1fr;text-align:center}.colr-contact-button{justify-self:center}}
@media(max-width:520px){.colr-contact-hero,.colr-contact-section,.colr-contact-help{margin-left:16px;margin-right:16px}.colr-contact-hero{padding:34px 24px}.colr-contact-hero h1{font-size:36px}.colr-contact-section{padding-top:26px}.colr-contact-intro h2{font-size:29px}.colr-contact-card{padding:25px}.colr-contact-help{padding:28px 23px}}


/* COLR About Us page */
body:has(.colr-about-hero) #content > .entry-header{display:none!important}
body:has(.colr-about-hero) #primary,body:has(.colr-about-hero) #main,body:has(.colr-about-hero) article.page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body:has(.colr-about-hero) article.page{background:transparent!important;box-shadow:none!important}
body:has(.colr-about-hero) .entry-content{margin:0!important}
.colr-about-eyebrow{margin:0 0 12px!important;color:#f15a13!important;font-size:13px!important;font-weight:800!important;letter-spacing:.09em;text-transform:uppercase}
.colr-about-hero{position:relative;max-width:1200px;margin:46px auto 30px;padding:60px 52px;overflow:hidden;border:1px solid #d8e3ee;border-radius:20px;background:linear-gradient(125deg,#f5f9ff 0%,#fff3e8 100%)}
.colr-about-hero:after{content:"";position:absolute;right:-50px;bottom:-82px;width:235px;height:235px;border:22px solid rgba(18,63,120,.055);border-radius:50%}
.colr-about-hero__inner{position:relative;z-index:1;max-width:880px}
.colr-about-hero h1{margin:0 0 18px;color:#123f78;font-size:50px;line-height:1.12}
.colr-about-hero p:last-child{margin:0;color:#445e76;font-size:18px;line-height:1.7}
.colr-about-mission{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:38px;max-width:1200px;margin:0 auto;padding:50px 0}
.colr-about-mission__copy h2,.colr-about-heading h2,.colr-about-library h2,.colr-about-use h2,.colr-about-foundation h2{margin:0 0 14px;color:#123f78;font-size:34px;line-height:1.22}
.colr-about-mission__copy>p:not(.colr-about-eyebrow),.colr-about-heading>p:last-child,.colr-about-library p:not(.colr-about-eyebrow),.colr-about-use p:not(.colr-about-eyebrow),.colr-about-foundation p:not(.colr-about-eyebrow){color:#536c82;font-size:16px;line-height:1.7}
.colr-about-stats{display:grid;gap:12px}
.colr-about-stats>div{display:flex;min-height:94px;flex-direction:column;justify-content:center;padding:18px 22px;border:1px solid #dce5ed;border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(18,63,120,.06)}
.colr-about-stats strong{color:#f15a13;font-size:26px;line-height:1.1}
.colr-about-stats span{margin-top:5px;color:#123f78;font-size:13px;font-weight:750;text-transform:uppercase;letter-spacing:.045em}
.colr-about-audience{padding:52px max(24px,calc((100% - 1200px)/2));background:#f7faff}
.colr-about-heading{max-width:760px;margin:0 auto 30px;text-align:center}
.colr-about-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.colr-about-grid article{padding:27px 24px;border:1px solid #dce5ed;border-radius:15px;background:#fff;box-shadow:0 7px 20px rgba(18,63,120,.055)}
.colr-about-grid article>span{display:flex;width:46px;height:46px;align-items:center;justify-content:center;margin-bottom:17px;border-radius:12px;background:#fff1e7;color:#f15a13;font-size:22px;font-weight:800}
.colr-about-grid h3{margin:0 0 9px;color:#123f78;font-size:22px}
.colr-about-grid p{margin:0;color:#5b7084;font-size:14px;line-height:1.65}
.colr-about-library,.colr-about-foundation{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:35px;max-width:1200px;margin:48px auto;padding:35px 39px;border-radius:16px}
.colr-about-library{border:1px solid #cfdeeb;background:#f7fbff}
.colr-about-foundation{border:1px solid #efc485;background:#fffaf1}
.colr-about-library p,.colr-about-foundation p{margin-bottom:0}
.colr-about-button{display:inline-flex;align-items:center;justify-content:center;min-width:190px;padding:13px 22px;border-radius:9px;color:#fff!important;font-weight:800;text-decoration:none!important}
.colr-about-button--blue{background:#123f78}.colr-about-button--blue:hover{background:#0b315f}
.colr-about-button--red{background:#d71920}.colr-about-button--red:hover{background:#b80f16}
.colr-about-use{display:grid;grid-template-columns:58px minmax(0,1fr);gap:23px;max-width:1200px;margin:48px auto;padding:35px 39px;border:1px solid #d8e3ee;border-radius:16px;background:#fff}
.colr-about-use__icon{display:flex;width:52px;height:52px;align-items:center;justify-content:center;border-radius:50%;background:#eef5fd;color:#123f78;font-size:25px;font-weight:900}
.colr-about-use p{margin:0 0 10px}
.colr-about-text-link{color:#f15a13!important;font-weight:800;text-decoration:none!important}
.colr-about-text-link:hover{text-decoration:underline!important}
.colr-about-actions{display:flex;flex-direction:column;align-items:center;gap:12px}
@media(max-width:1248px){.colr-about-hero,.colr-about-mission,.colr-about-library,.colr-about-use,.colr-about-foundation{margin-left:24px;margin-right:24px}}
@media(max-width:980px){.colr-about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.colr-about-mission{grid-template-columns:1fr}.colr-about-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.colr-about-stats>div{min-height:105px}}
@media(max-width:760px){.colr-about-hero{padding:42px 32px}.colr-about-hero h1{font-size:40px}.colr-about-library,.colr-about-foundation{grid-template-columns:1fr;text-align:center}.colr-about-button{justify-self:center}.colr-about-use{grid-template-columns:1fr}.colr-about-use__icon{margin:0 auto}.colr-about-use>div:last-child{text-align:center}}
@media(max-width:560px){.colr-about-hero,.colr-about-mission,.colr-about-library,.colr-about-use,.colr-about-foundation{margin-left:16px;margin-right:16px}.colr-about-hero{padding:34px 24px}.colr-about-hero h1{font-size:34px}.colr-about-mission{padding-top:30px}.colr-about-stats,.colr-about-grid{grid-template-columns:1fr}.colr-about-audience{padding:40px 16px}.colr-about-library,.colr-about-use,.colr-about-foundation{padding:29px 23px}.colr-about-mission__copy h2,.colr-about-heading h2,.colr-about-library h2,.colr-about-use h2,.colr-about-foundation h2{font-size:29px}}


/* COLR Copyright Use Statement */
body:has(.colr-copyright-hero) #content > .entry-header{display:none!important}
body:has(.colr-copyright-hero) #primary,body:has(.colr-copyright-hero) #main,body:has(.colr-copyright-hero) article.page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body:has(.colr-copyright-hero) article.page{background:transparent!important;box-shadow:none!important}
body:has(.colr-copyright-hero) .entry-content{margin:0!important}
.colr-copyright-eyebrow{margin:0 0 12px!important;color:#f15a13!important;font-size:13px!important;font-weight:800!important;letter-spacing:.09em;text-transform:uppercase}
.colr-copyright-hero{position:relative;max-width:1200px;margin:46px auto 30px;padding:58px 52px;overflow:hidden;border:1px solid #d8e3ee;border-radius:20px;background:linear-gradient(125deg,#f5f9ff 0%,#fff3e8 100%)}
.colr-copyright-hero:after{content:"";position:absolute;right:-52px;bottom:-84px;width:235px;height:235px;border:22px solid rgba(18,63,120,.055);border-radius:50%}
.colr-copyright-hero__inner{position:relative;z-index:1;max-width:880px}
.colr-copyright-hero h1{margin:0 0 17px;color:#123f78;font-size:50px;line-height:1.1}
.colr-copyright-hero p:last-child{margin:0;color:#445e76;font-size:18px;line-height:1.7}
.colr-copyright-permitted{max-width:1200px;margin:0 auto;padding:45px 0 50px}
.colr-copyright-heading{max-width:760px;margin:0 auto 28px;text-align:center}
.colr-copyright-heading h2,.colr-copyright-guidelines h2,.colr-copyright-permission h2,.colr-copyright-note h2{margin:0 0 13px;color:#123f78;font-size:34px;line-height:1.22}
.colr-copyright-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.colr-copyright-grid article{padding:30px;border:1px solid #dce5ed;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(18,63,120,.07)}
.colr-copyright-grid article>span{display:flex;width:50px;height:50px;align-items:center;justify-content:center;margin-bottom:19px;border-radius:13px;background:#fff1e7;color:#f15a13;font-size:24px;font-weight:800}
.colr-copyright-grid h3{margin:0 0 9px;color:#123f78;font-size:23px}
.colr-copyright-grid p{margin:0;color:#5a7084;font-size:15px;line-height:1.68}
.colr-copyright-guidelines{display:grid;grid-template-columns:60px minmax(0,1fr);gap:24px;max-width:1200px;margin:0 auto 44px;padding:36px 39px;border:1px solid #cfdeeb;border-radius:16px;background:#f7fbff}
.colr-copyright-guidelines__icon{display:flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:50%;background:#eaf3fc;color:#123f78;font-size:27px;font-weight:900}
.colr-copyright-guidelines ul{margin:12px 0 0;padding-left:22px;color:#536b80}
.colr-copyright-guidelines li{margin:0 0 10px;line-height:1.65}
.colr-copyright-permission{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:35px;max-width:1200px;margin:0 auto 44px;padding:36px 39px;border:1px solid #efc485;border-radius:16px;background:#fffaf1}
.colr-copyright-permission p{margin:0 0 11px;color:#536b80;line-height:1.7}
.colr-copyright-button{display:inline-flex;align-items:center;justify-content:center;min-width:185px;padding:13px 21px;border-radius:9px;background:#123f78;color:#fff!important;font-weight:800;text-decoration:none!important}
.colr-copyright-button:hover{background:#0b315f}
.colr-copyright-note{max-width:900px;margin:0 auto 54px;padding:28px 32px;text-align:center}
.colr-copyright-note h2{font-size:28px}
.colr-copyright-note p{margin:0;color:#566e82}
.colr-copyright-note a{color:#f15a13;font-weight:800}
@media(max-width:1248px){.colr-copyright-hero,.colr-copyright-permitted,.colr-copyright-guidelines,.colr-copyright-permission{margin-left:24px;margin-right:24px}}
@media(max-width:820px){.colr-copyright-hero{padding:42px 32px}.colr-copyright-hero h1{font-size:40px}.colr-copyright-grid{grid-template-columns:1fr}.colr-copyright-guidelines{grid-template-columns:1fr}.colr-copyright-guidelines__icon{margin:0 auto}.colr-copyright-guidelines>div:last-child{text-align:center}.colr-copyright-guidelines ul{display:inline-block;text-align:left}.colr-copyright-permission{grid-template-columns:1fr;text-align:center}.colr-copyright-button{justify-self:center}}
@media(max-width:520px){.colr-copyright-hero,.colr-copyright-permitted,.colr-copyright-guidelines,.colr-copyright-permission{margin-left:16px;margin-right:16px}.colr-copyright-hero{padding:34px 24px}.colr-copyright-hero h1{font-size:34px}.colr-copyright-permitted{padding-top:30px}.colr-copyright-grid article,.colr-copyright-guidelines,.colr-copyright-permission{padding:27px 23px}.colr-copyright-heading h2,.colr-copyright-guidelines h2,.colr-copyright-permission h2{font-size:29px}}


/* COLR homepage resource-category dropdown visibility */
#colr-resource-category,
#colr-resource-category option {
    color: #073f7d !important;
    background-color: #ffffff !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #073f7d !important;
}
#colr-resource-category:focus {
    color: #073f7d !important;
    background-color: #ffffff !important;
}
#colr-resource-category option:checked {
    color: #ffffff !important;
    background-color: #2468cf !important;
    -webkit-text-fill-color: #ffffff !important;
}


/* COLR donation modal close-control visibility */
.colr-appeal-dialog .colr-appeal-x {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    border: 2px solid #f56b18 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    color: #073f7d !important;
    -webkit-text-fill-color: #073f7d !important;
    font-size: 30px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    opacity: 1 !important;
}
.colr-appeal-dialog .colr-appeal-x:hover,
.colr-appeal-dialog .colr-appeal-x:focus {
    background: #fff1e7 !important;
    color: #d94f0b !important;
    -webkit-text-fill-color: #d94f0b !important;
}
.colr-appeal-dialog .colr-appeal-close {
    color: #465d78 !important;
    -webkit-text-fill-color: #465d78 !important;
    opacity: 1 !important;
    font-weight: 700 !important;
}
.colr-appeal-dialog .colr-appeal-close:hover,
.colr-appeal-dialog .colr-appeal-close:focus {
    color: #073f7d !important;
    -webkit-text-fill-color: #073f7d !important;
}


/* COLR primary navigation and mission-ribbon typography */
@media (min-width: 761px) {
    #primary-menu > li > a {
        font-size: 16px !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;
    }
    .colr-mission-banner .colr-mission-content h2 {
        font-size: 21px !important;
        line-height: 1.15 !important;
    }
    .colr-mission-banner .colr-mission-content p {
        font-size: 13px !important;
        line-height: 1.35 !important;
    }
    .colr-mission-banner .colr-mission-button {
        font-size: 13px !important;
        padding: 8px 15px !important;
    }
}
@media (max-width: 760px) {
    #primary-menu > li > a {
        font-size: 16px !important;
    }
    .colr-mission-banner .colr-mission-content h2 {
        font-size: 18px !important;
        line-height: 1.15 !important;
    }
    .colr-mission-banner .colr-mission-content p {
        font-size: 12px !important;
        line-height: 1.35 !important;
    }
    .colr-mission-banner .colr-mission-button {
        font-size: 12px !important;
        padding: 7px 12px !important;
    }
}
