/***
 * Theme Name:	CDR Astra Theme
 * Author:	CDR IT Team
 * Author URI:	https://richmonddiocese.org/office/office-of-information-technology/
 * Description:	Based on the latest version of WP Astra, this allows you to customize a theme without affecting the parent theme's base files. This also means that WordPress updates to the parent theme will not break the site or child theme files. 
 * Version:	1.0.0
 * License:	GNU General Public License v2 or later
 * License URI:	http://www.gnu.org/licenses/gpl-2.0.html
 * Text Domain:	cdrastra
 * Template:	astra
 *
 * SITE COLORS
 *
 *	Blue	#0033a0 (headings, links)
 *	Gold	#Ffd700 (not really in use)
 */
body.ast-header-break-point span[class^="olmcTitle"] {
	display: none !important;
}

body.ast-header-break-point .site-header {
	background: #0033A0 !important;
}

body.ast-header-break-point .site-title,
body.ast-header-break-point .site-title a {
	display: initial !important;
	font-size: 1.6rem !important;
	font-weight: bold !important;
	color: #ffffff !important;
	line-height: initial !important;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: bold !important;
}

.noBMarg {
	margin-bottom: 0px !important;
	padding-bottom: 3px !important;
}

.main-header-bar {
	background-color: transparent !important;
}

.site-header {
	background: url(/wp-content/uploads/2025/06/bgr-header.png) no-repeat bottom center !important;
	background-size: contain !important;
}

.ast-logo-title-inline .ast-site-identity {
	align-items: flex-start !important;
}

.site-primary-header-wrap	.ast-builder-grid-row .site-header-section {
	align-items: flex-start !important;
}

.site-header-primary-section-right {
	padding-top: 30px;
}


.widget_nav_menu .widget-title {
	display: none;
}

.fullWidth {
	width: 100%;
	height: auto;
	border: 0;
}

.olmcBlueBG {
	background: #244c83 !important;
}

.olmcBlue {
	color: #244c83 !important;
}

.olmcGoldBG {
	background: #f6d01a !important;
}

.olmcGold {
	color: #f6d01a !important;
}

.olmcBar {
	min-height: 30px;
	width: 100%;
	text-align: center;
}


.olmcButton {
	display: inline-block;
	text-decoration: none !important;
	font-weight: bold;
	padding: 10px 23px;
	font-size: 16px;
	color: #4f4f4f !important;
	text-shadow: 0 1px 1px rgba(255, 255, 255, 0.25);
	-webkit-box-shadow: inset 0 0 0 1px #dcdcdc;
	-moz-box-shadow: inset 0 0 0 1px #dcdcdc;
	box-shadow: inset 0 0 0 1px #dcdcdc;
	background-color: #f0f0f0;
	background-image: -moz-linear-gradient(bottom,#e6e6e6,#fefefe);
	background-image: -webkit-gradient(linear, 0 100%, 0 0, from(#e6e6e6), to(#fefefe));
	background-image: -webkit-linear-gradient(bottom, #e6e6e6, #fefefe);
	background-image: -o-linear-gradient(bottom,#e6e6e6,#fefefe);
	background-image: linear-gradient(to top, #e6e6e6, #fefefe);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe6e6e6',endColorstr='#fffefefe',GradientType=0);
	display: inline-block;
	margin: 10px 0 10px 0;
	color: #fff;
	line-height: 1em;
	text-decoration: none;
	border: 0;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.niceList {
	list-style: none;
}

.niceList li:before {
	content: "\f105";
	font: normal normal bolder 16px / 1 FontAwesome;
	color: #0033a0;
	padding-right: 10px;
}

.niceList li {
	padding: 3px 0;
	font-size: 15px;
}

/***
 * Styling the Disclosure Widgets
 */

.faqs {
	margin-bottom: 13px;
}
.faqs > summary {
	background: #0033a0;
	color: #f6d01a;
	cursor: pointer;
	padding: .5rem 1rem;
	width: 100% !important;
}

.faqs > summary > h2 {
	color: #fff;
	font-size: .98em;
	width: 100%;
}

.faqs > summary > * {
	display: inline;
	width: 100%;
}

.faqs > div {
	border: 2px solid #fdb;
	margin-top: 0;
	padding: 1rem;
	width: 100%;
}

.testimonial {
	padding: 10.5px 21px;
	margin: 0 0 21px;
	font-size: 16px;
	border-left: 5px solid #fff;
	color: #initial;
	quotes: "\201C" "\201D";
}

.testimonial:before {
	font-family: "Bookman Old Style", serif;
	color: #ffd000;
	content: open-quote;
	font-size: 4em;
	line-height: 0.1em;
	margin-right: 0.25em;
	vertical-align: -0.2em;
}

.noTitle .widget-title {
	display: none;
}

.olmcWidgetTitle {
	font-weight: 600;
	font-size: 1.375rem;
}

.olmcTitle1 {
	font-size: 24px;
}

.olmcTitle2 {
	font-size: 18px;
}

.olmcTitle1, .olmcTitle2 {
	color: #0033a0;
}

/* Testimonial quote style */
.fpTestimonial, .fpTestimonial .n2-ss-item-content {
	font-family: "Bookman Old Style", "Times New Roman", Times, serif !important;
	font-style: italic !important;
	font-size: 18px !important;
	line-height: 25px !important;
	position: relative !important;
	padding-left: 40px !important;
}

/* Left quote icon */
.fpTestimonial:before, .fpTestimonial .n2-ss-item-content:before {
	content: "\f10d" !important;
	font: normal normal normal 32px / 1 FontAwesome !important;
	position: absolute !important;
	left: 0 !important;
	top: 0 !important;
	font-style: italic !important;
	color: #f6d01a !important;
	z-index: -1 !important;
}

.n2-ss-slider-wrapper-inside {
	width: 80%;
/*	margin: 0 auto; */
}

.olmcFPBoxes {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	gap: 20px;
	max-width: 1200px;
	margin: 13px auto;
	padding: 0 25px;
}

.olmcFPBoxes .box {
	flex: 1 1 calc(25% - 25px); 
	max-width: 275px !important;;
	border: 3px solid #0033a0;
	text-align: center;
	padding: 20px 13px 10px 13px;
	transition: transform 0.3s ease, background-color 0.3s ease;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

.olmcFPBoxes .box:hover {
	transform: translateY(-13px);
}

.olmcFPBoxes .box h3 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: 0;
	text-transform: uppercase;
	color: #0033a0;
}

/* Responsive adjustments */
@media (max-width: 750px) {
	.olmcFPBoxes .box {
		flex: 1 1 calc(50% - 25px); /* two per row */
	}
}

@media (max-width: 450px) {
	.olmcFPBoxes .box {
		flex: 1 1 100%; /* one per row */
		max-width: 300px;
		margin: 0 auto;
	}
}

.olmcButtonTop {
	cursor: pointer;
	display: inline-block;
	white-space: nowrap;
	background: #0033a0;
	border-radius: 7px;
	border: 1px solid #0033a0;
	padding: 2px 10px;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	font-style: normal;
	text-decoration: none;
	text-align: center;
	transition: color 0.3s ease-in-out, background 0.3s ease-in-out;
}
.olmcButtonTop:hover {
	color: #0033a0;
	background: #fff;
}

.olmcButton2 {
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	transition: border 0.3s ease, background 0.3s ease, color 0.3s ease;
	color: #fff;
	padding: 10px 16px;
	border: solid 1px #fff;
	display: inline-block;
	min-width: 125px;
}

.olmcButton2:hover {
	background: #fff;
	color: #0033a0 !important;
}
