/*
Theme Name: Knights of Columbus 8074
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Description: Official Knights of Columbus 8074 child theme based off of Twenty-Twenty Five.
Author: Daniel Constance
Author URI: https://dxc.co/
Template: twentytwentyfive
Version: 1.0.0
*/

/* Set minimum height to 100 viewport height and stick footer to the bottom */
body > .wp-site-blocks {
    min-height: 100vh;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

body > .wp-site-blocks footer {
    margin-top: auto;
}

/* Make bold text and links bold */
strong, p a, .wp-block-list a {
    font-weight: bold;
}

/* Keep time stamps from wrapping */
time {
    white-space: nowrap;
}

/* Button Styling */
:root :where(.wp-element-button:hover, .wp-block-button__link:hover) {
    outline: 2px solid var(--wp--preset--color--accent-3);
}

/* File Styling */
.wp-block-file a {
	font-size: var(--wp--preset--font-size--large);
}

/* Link Styling */
.external-link a:after, .external-link-2 a:after {
	content: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNi4wLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8cGF0aCBkPSJNMzIwLDBjLTE3LjcsMC0zMiwxNC4zLTMyLDMyczE0LjMsMzIsMzIsMzJoODIuN0wyMDEuNCwyNjUuNGMtMTIuNSwxMi41LTEyLjUsMzIuOCwwLDQ1LjNzMzIuOCwxMi41LDQ1LjMsMEw0NDgsMTA5LjNWMTkyDQoJYzAsMTcuNywxNC4zLDMyLDMyLDMyczMyLTE0LjMsMzItMzJWMzJjMC0xNy43LTE0LjMtMzItMzItMzJIMzIweiBNODAsMzJDMzUuOCwzMiwwLDY3LjgsMCwxMTJ2MzIwYzAsNDQuMiwzNS44LDgwLDgwLDgwaDMyMA0KCWM0NC4yLDAsODAtMzUuOCw4MC04MFYzMjBjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyLDE0LjMtMzIsMzJ2MTEyYzAsOC44LTcuMiwxNi0xNiwxNkg4MGMtOC44LDAtMTYtNy4yLTE2LTE2VjExMg0KCWMwLTguOCw3LjItMTYsMTYtMTZoMTEyYzE3LjcsMCwzMi0xNC4zLDMyLTMycy0xNC4zLTMyLTMyLTMySDgweiIvPg0KPC9zdmc+DQo=");
	width: 14px;
    height: 14px;
	padding-left: 7px;
	display: inline-block;
    line-height: normal;
}
.external-link-2 a:after {
	content: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNi4wLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPg0KCS5zdDB7ZmlsbDojRkZGRkZGO30NCjwvc3R5bGU+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNMzIwLDBjLTE3LjcsMC0zMiwxNC4zLTMyLDMyczE0LjMsMzIsMzIsMzJoODIuN0wyMDEuNCwyNjUuNGMtMTIuNSwxMi41LTEyLjUsMzIuOCwwLDQ1LjNzMzIuOCwxMi41LDQ1LjMsMA0KCUw0NDgsMTA5LjNWMTkyYzAsMTcuNywxNC4zLDMyLDMyLDMyczMyLTE0LjMsMzItMzJWMzJjMC0xNy43LTE0LjMtMzItMzItMzJIMzIweiBNODAsMzJDMzUuOCwzMiwwLDY3LjgsMCwxMTJ2MzIwDQoJYzAsNDQuMiwzNS44LDgwLDgwLDgwaDMyMGM0NC4yLDAsODAtMzUuOCw4MC04MFYzMjBjMC0xNy43LTE0LjMtMzItMzItMzJzLTMyLDE0LjMtMzIsMzJ2MTEyYzAsOC44LTcuMiwxNi0xNiwxNkg4MA0KCWMtOC44LDAtMTYtNy4yLTE2LTE2VjExMmMwLTguOCw3LjItMTYsMTYtMTZoMTEyYzE3LjcsMCwzMi0xNC4zLDMyLTMycy0xNC4zLTMyLTMyLTMySDgweiIvPg0KPC9zdmc+DQo=");
}
.wp-block-button.external-link a:after, .wp-block-button.external-link-2 a:after {
	width: 11px;
	height: 11px;
}

/* Media & Text Styling */
.wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content {
	padding-right: 0;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
	padding-left: 0;
}
.wp-block-media-text h2 {
	margin-top: 0;
}
@media (max-width: 600px) {
	.wp-block-media-text h2 {
		margin: 20px 0;
	}
    .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
		padding: 0;
	}
	.wp-block-media-text.is-stacked-on-mobile .has-text-align-right {
		text-align: left;
	}
	.wp-block-media-text.is-stacked-on-mobile .wp-block-buttons.is-content-justification-right {
		justify-content: flex-start;
	}
	.make-left-mobile .has-text-align-right, .make-left-mobile .has-text-align-center {
		text-align: left;
	}
	.make-left-mobile .wp-block-buttons.is-content-justification-right, .make-left-mobile .wp-block-buttons.is-content-justification-center {
		justify-content: flex-start;
	}
}

/* Pull Quote Styling */
.wp-block-pullquote cite {
    font-size: var(--wp--preset--font-size--medium);
}
@media (max-width: 600px) {
	.wp-block-pullquote {
		text-align: left;
	}
	.wp-block-pullquote cite {
		text-align: right;
	}
}

/* Table Styling */
body .wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
	background-color: #fff;
}

/* Events Styling */
body .wp-block-jetpack-google-calendar {
    min-width: 100%;
}

/* Nav Styling */
.wp-block-navigation .wp-block-navigation-item {
    width: 100%;
}
a.wp-block-navigation-item__content {
	width: 100%;
}
.current-menu-item > a.wp-block-navigation-item__content span {
	text-decoration: underline;
}
header .wp-element-button {
	word-break: normal;
}
.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content .wp-block-spacer {
    height: 1px !important;
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content {
    justify-content: center;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
	gap: 1.2rem;
}
@media all and (max-width: 768px) {
	.nav-size-adjust {
		gap: 10px;
	}
	.nav-size-adjust img {
		width: 60px !important;
		max-width: unset !important;
	}
	.nav-size-adjust h1 {
		font-size: 22px !important;
	}
	.nav-size-adjust h2 {
		font-size: 12px !important;
	}
}
@media all and (max-width: 599px) {
	nav .wp-block-navigation__responsive-container-content a {
		font-size: 28px !important;
	}
}

/* Mobile Nav Styling */
.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open {
	width: 100%;
	justify-content: center;
	font-size: var(--wp--preset--font-size--large);
	text-transform: uppercase;
}
.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open:before {
	content: "Open\00a0";
}
.wp-block-navigation__responsive-container-close {
	font-size: var(--wp--preset--font-size--large);
	text-transform: uppercase;
}
.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content ul {
    border-top: 1px solid var(--wp--preset--color--accent-6);
    width: 100%;
    padding-top: 20px;
}
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
    text-align: center;
}
@media (min-width: 600px) {
    .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content ul {
        border-top: none;
        padding-top: 0;
    }
	.mobile-show {
		display: none !important;
	}
}
@media all and (max-width: 599px) {
    .mobile-hide {
        display: none !important;
    }
}

/* Officers Styling */
.officers {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  column-gap: 1.2rem;
  row-gap: 1.2rem;
}
@media all and (max-width: 1024px) {
  .officers {
    grid-template-columns: 1fr 1fr;
  }
}
@media all and (max-width: 768px) {
  .officers {
    grid-template-columns: 1fr;
  }
}
.officers > div {
  border: 3px solid #1127641a;
  border-radius: 10px;
  padding: 1.2rem;
  display: flex;
  align-items: center;
  position: relative;
}
.officers > div:before {
  content: "";
  background-color: #fff;
  background-size: 175%;
  background-position-x: 50%;
  background-repeat: no-repeat;
  width: 80px;
  height: 100%;
  position: absolute;
}
.officers > div > div {
  margin-left: 90px;
}
.officers > div > div .o-rank {
  color: var(--wp--preset--color--accent-5);
  font-size: var(--wp--preset--font-size--medium);
  font-weight: 600;
}
.officers > div > div .o-name {
  font-size: var(--wp--preset--font-size--large);
  font-weight: bold;
}
.officers > div > div a {
  font-size: var(--wp--preset--font-size--medium);
}
.officers > div.grand-knight:before {
  background-image: url("/wp-content/uploads/2025/07/grand-knight.webp");
  background-position-y: 50%;
}
.officers > div.deputy-grand-knight:before {
  background-image: url("/wp-content/uploads/2025/07/deputy-grand-knight.webp");
  background-position-y: 70%;
}
.officers > div.chaplain:before {
  background-image: url("/wp-content/uploads/2025/07/chaplain.webp");
  background-position-y: 75%;
}
.officers > div.chancellor:before {
  background-image: url("/wp-content/uploads/2025/07/chancellor.webp");
  background-position-y: 100%;
}
.officers > div.warden:before {
  background-image: url("/wp-content/uploads/2025/07/warden.webp");
  background-position-y: 75%;
}
.officers > div.treasurer:before {
  background-image: url("/wp-content/uploads/2025/07/treasurer.webp");
  background-position-y: 50%;
}
.officers > div.advocate:before {
  background-image: url("/wp-content/uploads/2025/07/advocate.webp");
  background-position-y: 95%;
}
.officers > div.recorder:before {
  background-image: url("/wp-content/uploads/2025/07/recorder.webp");
  background-position-y: 65%;
}
.officers > div.financial-secretary:before {
  background-image: url("/wp-content/uploads/2025/07/financial-secretary.webp");
  background-position-y: 80%;
}
.officers > div.inside-guard:before {
  background-image: url("/wp-content/uploads/2025/07/inside-guard.webp");
  background-position-y: 60%;
}
.officers > div.outside-guard:before {
  background-image: url("/wp-content/uploads/2025/07/outside-guard.webp");
  background-position-y: 80%;
}
.officers > div.lecturer:before {
  background-image: url("/wp-content/uploads/2025/07/lecturer.webp");
  background-position-y: 60%;
}
.officers > div.trustee-1-yr:before,
.officers > div.trustee-2-yr:before,
.officers > div.trustee-3-yr:before {
  background-image: url("/wp-content/uploads/2025/07/trustee.webp");
  background-position-y: 75%;
}
.officers.contacts {
  grid-template-columns: 1fr 1fr;
}
@media all and (max-width: 768px) {
  .officers.contacts {
    grid-template-columns: 1fr;
  }
}
.officers.contacts > div {
  background-color: rgba(0, 0, 0, 0.1);
  border: none;
  justify-content: center;
}
.officers.contacts > div:before {
  display: none;
}
.officers.contacts > div > div {
  margin-left: unset;
  text-align: center;
}
.officers.contacts > div > div .o-rank {
  color: inherit;
}

/* The Beacon Block Styling */
body.single-post .wp-block-pullquote blockquote cite {
	font-size: var(--wp--preset--font-size--small);
}

body.single-post .wp-block-group .shadow {
	background: linear-gradient(145deg, #fffefe, #dad5d5);
	box-shadow: 20px 20px 60px #cec9c9, -20px -20px 60px #ffffff;
}

body.single-post .wp-block-group.has-accent-3-background-color img {
	filter: brightness(110%) contrast(110%) grayscale(100%);
}









/* Beacon Styling */
.beacon-archive {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 1.2rem;
  row-gap: 1.2rem;
}
.beacon-archive h1,
.beacon-archive .beacon-year-nav,
.beacon-archive .no-results {
  grid-column: 1 / -1;
}
.beacon-archive .no-results {
  margin: 5vh auto 15vh auto;
  font-size: var(--wp--preset--font-size--large);
  font-weight: bold;
}
.beacon-archive article {
  grid-column: span 4;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
  -webkit-transition: 0.25s;
  -moz-transition: 0.25s;
  -ms-transition: 0.25s;
  -o-transition: 0.25s;
  transition: 0.25s;
}
.beacon-archive article a {
  text-decoration: none;
}
.beacon-archive article a img {
  border-radius: 10px;
  width: 100%;
  height: 200px;
  margin: 0 0 10px;
  object-fit: cover;
}
.beacon-archive article a h3 {
  margin: 0 0 2px;
  color: var(--wp--preset--color--contrast);
  font-size: var(--wp--preset--font-size--large);
  font-weight: bold;
}
.beacon-archive article a p {
  margin: 0;
}
.beacon-archive article a p time {
  display: block;
  font-size: var(--wp--preset--font-size--normal);
  font-weight: 600;
}
.beacon-archive article:nth-of-type(2),
.beacon-archive article:nth-of-type(3) {
  grid-column: span 6;
}
.beacon-archive article:nth-of-type(2) a img,
.beacon-archive article:nth-of-type(3) a img {
  height: 56.25vw;
  min-height: 200px;
  max-height: 270px;
}
.beacon-archive article.featured,
.beacon-archive article:first-child {
  grid-column: 1 / -1;
  display: inline-block;
}
.beacon-archive article.featured a img,
.beacon-archive article:first-child a img {
  height: 56.25vw;
  min-height: 200px;
  max-height: 540px;
}
.beacon-archive article.featured a h3,
.beacon-archive article:first-child a h3 {
  font-size: var(--wp--preset--font-size--x-large);
}
.beacon-archive article.featured a p time,
.beacon-archive article:first-child a p time {
  font-size: var(--wp--preset--font-size--medium);
}
.beacon-archive article:hover {
  -webkit-transform: scale(1.02);
  -moz-transform: scale(1.02);
  -ms-transform: scale(1.02);
  -o-transform: scale(1.02);
  transform: scale(1.02);
}
.beacon-archive article:hover a {
  text-decoration: underline;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.1em;
}
@media all and (max-width: 960px) {
  .beacon-archive {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .beacon-archive article {
    grid-column: span 1;
  }
  .beacon-archive article a img {
    height: 270px;
  }
  .beacon-archive article:nth-of-type(2),
  .beacon-archive article:nth-of-type(3) {
    grid-column: inherit;
  }
  .beacon-archive article:nth-of-type(2) a img,
  .beacon-archive article:nth-of-type(3) a img {
    height: 270px;
  }
}
@media all and (max-width: 768px) {
  .beacon-archive {
    grid-template-columns: 1fr;
    column-gap: 0;
  }
  .beacon-archive article {
    grid-column: 1 / -1;
  }
  .beacon-archive article.featured a img,
  .beacon-archive article:first-child a img {
    height: 270px;
  }
  .beacon-archive article.featured a h3,
  .beacon-archive article:first-child a h3 {
    font-size: var(--wp--preset--font-size--large);
  }
  .beacon-archive article.featured a p time,
  .beacon-archive article:first-child a p time {
    font-size: var(--wp--preset--font-size--normal);
  }
}