@import '../../lib/bootstrap-5.3.8/css/bootstrap.min.css';

/* Keyframes */

/* WordPress Overrides */

.screen-reader-text {

	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;

}

/* Bootstrap Overrides */

:root {

	--rs-dark-blue: #15263B;
	--rs-light-blue: #195F6F;
	--rs-light-blue-rgb: 25,95,111;
	--rs-lighter-blue: #24889E;
	--rs-orange: #E67734;
	--rs-beige: #EFE7DF;
	--rs-dark-beige: #E8DDD1;
	--rs-indigo: #1A272C;
	--rs-slate: #4E5B61;
	--rs-pastel-orange: #D3926A;
	--rs-pastel-teal: #76AC9F;
	--rs-pastel-green: #A2BC85;
	--rs-pastel-blue: #85AABC;
	--rs-pastel-yellow: #D3BB6A;
	--rs-pastel-red: #BC8585;


	--bs-font-sans-serif: "Montserrat", sans-serif;
	--bs-body-bg: var(--rs-light-blue);
	--bs-body-color: var(--rs-indigo);
	--bs-link-color: var(--rs-light-blue);
	--bs-link-color-rgb: var(--rs-light-blue-rgb);
	--bs-link-hover-color: black;
	--bs-link-hover-color-rgb: 0,0,0;

	font-optical-sizing: auto;

}

.modal {

	--bs-modal-bg: white;

}

.form-control,
.form-select {

	--bs-body-bg: white;

}

.btn-primary {

	--bs-btn-color: black;
	--bs-btn-bg: var(--rs-orange);
	--bs-btn-border-color: var(--rs-orange);
	--bs-btn-hover-color: black;
	--bs-btn-hover-bg: white;
	--bs-btn-hover-border-color: black;
	--bs-btn-active-color: black;
	--bs-btn-active-bg: white;
	--bs-btn-active-border-color: white;
	--bs-btn-disabled-color: black;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;

}

.btn-secondary {

	--bs-btn-color: white;
	--bs-btn-bg: var(--rs-light-blue);
	--bs-btn-border-color: var(--rs-light-blue);
	--bs-btn-hover-color: var(--rs-light-blue);
	--bs-btn-hover-bg: white;
	--bs-btn-hover-border-color: white;
	--bs-btn-active-color: black;
	--bs-btn-active-bg: white;
	--bs-btn-active-border-color: white;
	--bs-btn-disabled-color: white;
	--bs-btn-disabled-bg: #666;
	--bs-btn-disabled-border-color: #666;

}

.btn-light {

	--bs-btn-bg: #ECECEC;

}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {

	margin-bottom: 1rem;
	font-weight: 600;

}

.badge {

	--bs-badge-font-size: 0.6rem;
	--bs-badge-font-weight: 600;

}

.form-check-input {

	--bs-form-check-bg: white;

}

.form-floating>textarea:focus~label::after,
.form-floating>textarea:not(:placeholder-shown)~label::after {

	--bs-body-bg: white;

}

/* Bootstrap Extensions */

.bg-dark-blue {

	background-color: var(--rs-dark-blue);

}

.bg-light-blue {

	background-color: var(--rs-light-blue);

}

.bg-lighter-blue {

	background-color: var(--rs-lighter-blue);

}

.bg-beige {

	background-color: var(--rs-beige);

}

.bg-dark-beige {

	background-color: var(--rs-dark-beige);

}

.bg-indigo {

	background-color: var(--rs-indigo);

}

.bg-graphic-top-left {

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

		background-image: url("../images/bg-graphic-top-left.png");
		background-repeat: no-repeat;
		background-position: 0 140px;

	}

}

.bg-graphic-top-right {

	background-image: url("../images/bg-graphic-top-right.png");
	background-repeat: no-repeat;
	background-position: top right;

}

.bg-graphic-bottom-right {

	background-image: url("../images/bg-graphic-bottom-right.png");
	background-repeat: no-repeat;
	background-position: bottom right;

}

.bg-slate {

	background-color: var(--rs-slate);

}

.bg-rowntree-sig {

	background-image: url("../images/jr-sig-bg.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: bottom;

}

.border-top-light-blue {

	border-top: 0.375rem solid var(--rs-light-blue);

}

.text-indigo {

	color: var(--rs-indigo);

}

.links-black {

	a:not(.btn) {

		color: black;

	}

}

.links-light {

	a:not(.btn) {

		color: var(--bs-light);

	}

}

.links-text-decoration-none {

	a:not(.btn) {

		text-decoration: none;

	}

}

.col-count-md-2 {

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

		column-count: 2;
		column-gap: 3rem;

	}

}

.col-count-xl-3 {

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

		column-count: 3;
		column-gap: 3rem;

	}

}

/* Custom Styles */

a {

	transition-duration: 0.2s;
	transition-property: color;

}

.jr100-grid {

	display: grid;
	grid-auto-flow: dense;
	grid-gap: 3px;
	padding: 3px;
	grid-template-columns: 1fr;
	color: white;

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

		grid-template-columns: 1fr 1fr;

	}

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

		grid-template-columns: 1fr 1fr 1fr 1fr;

	}

	a, .item, & > div {

		overflow: hidden;

		&.width-3 {

			grid-column: span 3;

		}

		&.width-2, &.featured {

			grid-column: span 2;

		}

		&.width-2:not(.featured) {

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

				.ratio {

					--bs-aspect-ratio: 50%;

				}

			}

		}

		&.height-2, &.featured {

			grid-row: span 2;

		}

	}

}

.polaroid {

	border: 10px solid white;
	background-color: white;

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

		border-width: 20px;

	}

	&.polaroid-sm {

		border-width: 10px;

	}

}

.desktop-menu {

	display: none;
	gap: 0.375rem;
	justify-content: end;
	align-items: baseline;
	padding: 0;
	margin: 0;
	list-style: none;

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

		display: flex;

	}

	a {

		color: white;
		text-decoration: none;

	}

	> li {

		position: relative;
		z-index: 10;

		> a {

			padding: 0.75rem;
			display: inline-block;

		}

		&.menu-item-has-children {

			> a {

				&::after {

					font: var(--fa-font-light);
					display: inline-block;
					text-rendering: auto;
					-webkit-font-smoothing: antialiased;
					content: '\f107';
					color: white;
					margin-left: 0.5rem;

				}

			}

			&:hover {

				> .sub-menu {

					transform: translate(50%, 0);
					opacity: 1;
					pointer-events: all;

				}

			}

		}

		&.button {

			> a {

				padding: 0.375rem 0.75rem;
				color: black;
				text-align: center;
				text-decoration: none;
				vertical-align: middle;
				cursor: pointer;
				-webkit-user-select: none;
				-moz-user-select: none;
				user-select: none;
				border: 1px solid var(--rs-orange);
				border-radius: 0.375rem;
				background-color: var(--rs-orange);
				transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;

				&:hover {

					background-color: white;
					border-color: white;

				}

			}

		}

		> .sub-menu {

			position: absolute;
			top: 100%;
			right: 50%;
			width: 200px;
			background-color: var(--bs-dark);
			padding: 0;
			text-align: center;
			transform: translate(50%, 5rem);
			transition-duration: 0.2s;
			transition-property: all;
			opacity: 0;
			pointer-events: none;
			list-style: none;
			border-radius: var(--bs-border-radius);
			overflow: hidden;

			a {

				display: block;
				padding: 0.375rem 0.75rem;

				&:hover {

					background-color: black;

				}

			}

			ul {

				display: none;

			}

		}

	}

}

.mobile-menu {

	list-style: none;
	padding: 0;
	margin: 0;

	a {

		display: block;
		padding: 0.375rem 0.75rem;
		color: white;
		text-decoration: none;

	}

	.sub-menu {

		list-style: none;
		padding: 0 0 0 1.5rem;
		margin: 0;

	}

}

.footer-menu {

	padding: 0;
	margin: 0;
	list-style: none;

	a {

		color: white;
		text-decoration: none;

	}

}

.soenbdgiakk {

  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  z-index: -1;

}

.awaken {

  opacity: 0;
  transform: translateY(5rem);
  transition-property: opacity, transform;
  transition-duration: 1s;

  &.fade {

    transform: none;
    transition-duration: 0.5s;

  }

  &.in-viewport {

    opacity: 1;
    transform: translateY(0);

  }

}

.wysiwyg-content {

	.wp-caption {

		max-width: 100%;
		border: 10px solid white;
		background-color: white;
		box-shadow: var(--bs-box-shadow);

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

			max-width: 670px;

		}

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

			max-width: 910px;

		}

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

			max-width: 1090px;

		}

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

			max-width: 1270px;

		}

		img {

			max-width: 100%;
			height: auto;

		}

		.wp-caption-text {

			margin: 0;
			padding: 10px 0 0 0;
			font-size: 0.8rem;

		}

	}

  iframe {

		max-width: 100%;
		border: 10px solid white;
		background-color: white;
		box-shadow: var(--bs-box-shadow);

		&[src*="youtube-nocookie.com"],
		&[src*="youtube.com"] {

			width: 100vw;
			max-width: 100%;
			height: auto;
			aspect-ratio: 1.777;

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

				max-width: 670px;

			}

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

				max-width: 910px;

			}

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

				max-width: 1090px;

			}

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

				max-width: 1270px;

			}

		}

  }

  .alignleft,
  .alignright {

    max-width: 100%;
		margin-bottom: 1.5rem;
    display: block;

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

      display: inline;
      max-width: calc(50% - 1.5rem);

    }

  }

  .alignleft {

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

      float: left;
      margin: 0 1.5rem 1.5rem 0;

    }

  }

  .alignright {

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

      float: right;
      margin: 0 0 1.5rem 1.5rem;

    }

  }

  .aligncenter {

    margin: auto;
    display: block;

  }

	.alignnone {

		display: block;
		margin-bottom: 1.5rem;

	}

	.h1, .h2, .h3, .h4, .h5, h1, h2, h3, h4, h5 {

		margin-bottom: 1rem;

	}

	blockquote {

		padding: 1.5rem 1.5rem 0.5rem 1.5rem;
		border-left: 4px solid var(--rs-light-blue);
		font-style: italic;
		background-color: rgba(255,255,255,0.3);

	}

}

.psuedo-container {

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

		max-width: 432px;

	}

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

		max-width: 522px;

	}

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

		max-width: 612px;

	}

}

.az-wrap {

	.az-search {

		position: relative;

		&::before {

			display: inline-block;
			text-rendering: auto;
			-webkit-font-smoothing: antialiased;
			font: var(--fa-font-light);
			content: "\f002";
			position: absolute;
			top: 11px;
			left: 15px;

		}

	}

	[data-bs-toggle="collapse"] {

		i {

			transition-property: transform;
			transition-duration: 0.2s;

		}

		&[aria-expanded="true"] {

			i {

				transform: rotate(180deg);

			}

		}

	}

}

.timeline-item {

	.thumbnail {

		position: relative;
		display: inline-block;
		width: 115px;
		height: 115px;
		margin-bottom: 1rem;

		i {

			position: absolute;
			width: 100%;
			height: 100%;
			top: 0;
			left: 0;
			display: flex;
			justify-content: center;
			align-items: center;
			color: white;

		}

		&:hover {

			i {

				color: #33CCA8;

			}

		}

		.carousel-inner {

			display: none;

		}

	}

}

.ratio {

	picture {

		* {

			width: 100%;
			height: auto;

		}

	}

}