/*
Theme Name: Bridge To Bold Child
Theme URI: https://bridgetobold.com/
Description: Child theme of Bridge To Bold — foundation, content structure, and Opportunities Portal backend for Bridge To Bold International.
Author: Bridge To Bold
Author URI: https://bridgetobold.com/
Template: bridge-to-bold
Version: 1.0.0
Requires at least: 4.4
Tested up to: 7.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bridge-to-bold-child
*/

/* Inner page content (editor-backed pages & CPTs) — scope link reset so footer/header V2 nav keeps readable hovers */
.v2-page-entry__content a:hover,
.v2-page-entry__content a:focus,
.v2-page-entry__content a:active,
.v2-page-shell a:hover,
.v2-page-shell a:focus,
.v2-page-shell a:active {
	color: initial;
}
.v2-page-shell {
	padding: 3rem 0 4rem;
}

.v2-page-entry__title {
	font-family: var(--font-display, "Fraunces", Georgia, serif);
	font-size: clamp(2rem, 4vw, 2.75rem);
	line-height: 1.15;
	margin: 0 0 1.5rem;
	color: var(--ink, #0d1b2a);
}

.v2-page-entry__content {
	font-size: 1.05rem;
	line-height: 1.7;
	color: var(--ink-muted, #4a5568);
}

.v2-page-entry__content > :first-child {
	margin-top: 0;
}

.v2-archive-list {
	display: grid;
	gap: 1.5rem;
	margin-top: 2rem;
}

.v2-archive-item__title {
	margin: 0 0 0.5rem;
	font-size: 1.25rem;
}

.v2-archive-item__title a {
	text-decoration: none;
	color: var(--ink, #0d1b2a);
}

.v2-archive-item__excerpt {
	color: var(--ink-muted, #4a5568);
}

body {
	background-color: transparent;
 }
 .site {
	margin: 0;
	background-color: transparent;
 }
 .site-inner {
	max-width: 100%;   
 }
 
 .site-header { padding: 0;}
 
 body:not(.custom-background-image):before, 
 body:not(.custom-background-image):after {
	display: none;
 }
 .site-content {
	padding: 0;
 }
 
 .site-main {
	margin: 0;
 }
 
 .page-default .site-content,
 .page-default #primary.content-area,
 .page-default .page-default-main {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
 }
 
 .page-default .site-main {
	margin: 0;
 }
 
 .page-error-404 .site-content,
 .page-error-404 #primary.content-area,
 .error404 .site-content,
 .error404 #primary.content-area {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
 }

 .error404 .sidebar,
 .error404 .widget-area,
 .error404 .content-bottom-widgets {
	display: none !important;
 }
 
 .single-post-default .site-content,
 .single-post-default #primary.content-area,
 .page-blog .site-content,
 .page-blog #primary.content-area {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
 }
 
 .archive-default .site-content,
 .archive-default #primary.content-area {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
 }
 
 .accordion-custom .accordion-button {
	text-transform: none;
 }
 
 @media screen and (min-width: 61.5625em) {
	body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content{
		float: none;
		margin: 20px 0;
		width: auto;
	}
 }
 
 @media screen and (min-width: 56.875em) {
	.no-sidebar .entry-header,
	.no-sidebar .entry-content,
	.no-sidebar .entry-summary,
	.no-sidebar .entry-footer,
	.no-sidebar .comments-area,
	.no-sidebar .image-navigation,
	.no-sidebar .post-navigation,
	.no-sidebar .pagination,
	.no-sidebar .page-header,
	.no-sidebar .page-content,
	.no-sidebar .content-bottom-widgets {
		margin-right: 0;
		margin-left:0;
	}
 }
 @media screen and (min-width: 44.375em) {
	.entry-content blockquote:not(.alignleft):not(.alignright), .entry-summary blockquote, .comment-content blockquote {
		margin-left: 0;
	}
 }
 
 .section-title {
	margin-bottom: .5rem;
 }
 
 /* Client note: watch desktop/mobile header spacing during dynamic build */
 /*.site-header#siteHeader {
	 position: relative;
	 z-index: 100;
 }*/
 .site-header .header-bar {
	 padding-top: 0.75rem;
	 padding-bottom: 0.75rem;
 }
 @media (max-width: 991.98px) {
	 .site-header .header-bar {
		 padding-top: 0.5rem;
		 padding-bottom: 0.5rem;
	 }
	 .site-header .header-brand__lockup--horizontal {
		 max-width: 160px;
		 height: auto;
	 }
 }
 
 /* Header cart — gold icon on dark header (do not use dark #111 icon) */
 .header-cart {
	 position: relative;
	 display: inline-flex;
	 align-items: center;
	 justify-content: center;
	 width: 40px;
	 height: 40px;
	 border-radius: 10px;
	 background: rgba(201, 162, 39, 0.16);
	 border: 1px solid rgba(201, 162, 39, 0.45);
	 color: #c9a227;
	 font-size: 1.15rem;
	 text-decoration: none;
 }
 .header-cart:hover,
 .header-cart:focus-visible {
	 background: #c9a227;
	 border-color: #c9a227;
	 color: #111;
 }
 .header-cart i {
	 color: inherit;
 }
 .header-cart__count {
	 position: absolute;
	 top: -6px;
	 right: -6px;
	 min-width: 18px;
	 height: 18px;
	 padding: 0 4px;
	 border-radius: 999px;
	 background: #c9a227;
	 color: #111;
	 font-size: 0.65rem;
	 font-weight: 700;
	 line-height: 18px;
	 text-align: center;
 }
 
 button, button[disabled]:hover, button[disabled]:focus, input[type="button"], input[type="button"][disabled]:hover, input[type="button"][disabled]:focus, input[type="reset"], input[type="reset"][disabled]:hover, input[type="reset"][disabled]:focus, input[type="submit"], input[type="submit"][disabled]:hover, input[type="submit"][disabled]:focus {
	color: initial;
	padding: initial;
 }
 button:hover, button:focus, input[type="button"]:hover, input[type="button"]:focus, input[type="reset"]:hover, input[type="reset"]:focus, input[type="submit"]:hover, input[type="submit"]:focus {
	background: initial;
 }
 
 .hero-book__form .avail-form__options {
	margin-top: 2px;
 }
 
 .hero-book__note {
	grid-column: 1 / -1;
	margin: 2px 0 0;
	text-align: center;
	font-size: 0.72rem;
	color: var(--text-muted);
 }
 
 .hero-book__note a {
	color: var(--accent);
	font-weight: 600;
	text-decoration: none;
 }
 
 .hero-book__note a:hover {
	text-decoration: underline;
 }


/* People roster pages (Officers, Council, Partners) */
.v2-people-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
	gap: 1.75rem;
	margin-top: 2.5rem;
}

.v2-people-card {
	background: #fff;
	border: 1px solid rgba(13, 27, 42, 0.08);
	border-radius: 1rem;
	overflow: hidden;
	box-shadow: 0 12px 32px rgba(13, 27, 42, 0.06);
}

.v2-people-card__media {
	aspect-ratio: 5 / 6;
	background: #e8edf2;
	overflow: hidden;
}

.v2-people-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.v2-people-card--placeholder .v2-people-card__media img {
	object-fit: contain;
	padding: 0.75rem;
	background: #eef2f6;
}

.v2-people-card__body {
	padding: 1.15rem 1.25rem 1.35rem;
}

.v2-people-card__name {
	margin: 0 0 0.35rem;
	font-family: var(--font-display, "Fraunces", Georgia, serif);
	font-size: 1.15rem;
	line-height: 1.25;
	color: var(--ink, #0d1b2a);
}

.v2-people-card__role {
	margin: 0 0 0.65rem;
	font-size: 0.92rem;
	font-weight: 600;
	color: var(--accent, #b8923a);
}

.v2-people-card__bio {
	margin: 0;
	font-size: 0.92rem;
	line-height: 1.55;
	color: var(--ink-muted, #4a5568);
}

.v2-section-head {
	max-width: 46rem;
	margin-bottom: 0.5rem;
}

.v2-section-head__desc {
	margin: 0.75rem 0 0;
	font-size: 1.05rem;
	line-height: 1.65;
	color: var(--ink-muted, #4a5568);
}

/* Footer / header text links — readable hovers (exclude V2 buttons; they have their own styles) */
.v2-footer a:not(.v2-btn):hover,
.v2-footer a:not(.v2-btn):focus,
.v2-footer a:not(.v2-btn):active,
.v2-header a:not(.v2-btn):hover,
.v2-header a:not(.v2-btn):focus,
.v2-header a:not(.v2-btn):active {
	color: var(--gold, #b8923a);
}

.v2-footer__menu a:hover,
.v2-footer__menu a:focus,
.v2-footer__menu a:active {
	color: var(--white, #fff);
}

.v2-footer__legal-links a:hover,
.v2-footer__legal-links a:focus,
.v2-footer__legal-links a:active,
.v2-footer__legal-all:hover,
.v2-footer__legal-all:focus,
.v2-footer__legal-all:active,
.v2-footer__legal-btn:hover,
.v2-footer__legal-btn:focus,
.v2-footer__legal-btn:active {
	color: var(--gold, #b8923a);
}