/*
Theme Name:   Rose City Child
Description:  Child theme for the Twenty Twenty-Five theme
Template:     twentytwentyfive
Version:      1.0.82
Tags:         block-theme, full-site-editing
Text Domain:  rosecitychild
*/

/* ==========================================================================
   Release History
   Release 1.0.82 Change padding from 40-20 for header no title 
   Release 1.0.81 Change padding from 40 to 20 in header centered title
   Release 1.0.80 initial load from Billings no changes
   Release 1.0.79 theme.json updated to remove tenor-sans for for headings. Still defined in theme.
   Release 1.0.78 add matching mobile spacing and logo sizing for no-title header
   Release 1.0.77 change 850 to 700 width for page-home-no-title.html  
   Release 1.0.76 change to page-home-no-title.html to remove left/right padding
   Release 1.0.75 comment updated for why 40 pixels of padding on mobile inner header is about right for now.
   Release 1.0.74 change 40 pixels
   Release 1.0.73 add 40 pixels of padding to inner header on mobile to align with content gutters
   Release 1.0.72 Remove duplicate mobile inner padding so logo and menu align with content gutters
   Release 1.0.71 Move mobile horizontal alignment to inner header; preserve top/bottom header spacing
   Release 1.0.70 image back to 52 pixels after validation that break point worked on phone and desktop
   Release 1.0.69 image 32 pixels on mobile (was 52) for testing 
   Release 1.0.68 same
   Release 1.0.67 Improve centered header spacing and title fit on mobile
   Release 1.0.66 Change site title width to 700px in child-centered-header
   Release 1.0.65 Update child-centered-header to use Biryani font for site title, 750 wide
   Release 1.0.64 Increase center-title in child-centered-header to x-large font size
   Release 1.0.63 Revert to LineHeight 1.0 for site title in centered header variant
   Release 1.0.62 Increase lineHeight to 1.2 for site title in centered header variant
   Release 1.0.61 Increase font of header site title to large 
   Release 1.0.59 Fix typo in theme.json  
   Release 1.0.58 Push site to style2 and reapply theme for testing style2
   Release 1.0.57 No style or theme change, just tweak header children to remove fontweight 700
   Release 1.0.56 Decrease background padding on column headings  
   Release 1.0.55 remove autoyear copyright test of 2036
   Release 1.0.54 change home page no title to use autoyear.
   Release 1.0.53 test autoyear copyright shortcode
   Release 1.0.52 add in new footer template with spacing and variant with auto year copyright
   Release 1.0.50 add in two new page templates using new header variants (no css changes)
   Release 1.0.49 Same as 1.0.48    
   Release 1.0.48 adds standard, centered-title, and no-title header variants
   Release 1.0.47 update child-header.html to version 32 pad 20 square
   Release 1.0.46 update child-header.html to version 31 pad 15 square
   Release 1.0.45 update child-header.html to version 30 pad 15 top on desktop
   Release 1.0.44 update child-header.html to version 28 pad 20 on desktop
   Release 1.0.43 update child-header.html to version 26 with corrected div tags
   Release 1.0.42 child-header.html change only 
   Release 1.0.41 theme.json update styles/site-title font weight 400  
   Release 1.0.40 theme.json update to 1.0.40 for font weight 400 for site title and paragraph blocks
   Release 1.0.39 makes content width slightly wider to 800px  
   Release 1.0.38 adds a spacing blockGap for columns and blocks to styles area

   Rose City Rockets evaluation release 1.0.37
   Preserves the working 1.0.36 typography and navigation behavior.
   Adds a small semantic button system for committee evaluation.
   ========================================================================== */


/* --------------------------------------------------------------------------
   Typography
   global-styles-inline-css previously supplied font-weight: 300.
   These rules ensure the installed Biryani 400 and 700 files are used.
   -------------------------------------------------------------------------- */

body,
.wp-block-paragraph {
	font-weight: 400;
}

strong,
b {
	font-weight: 700;
}

/* Column background padding changes when white background behind text */
/* Reduce default WordPress background padding on headings and callout paragraphs inside Columns. */

.wp-block-column :is(
	h1,
	h2,
	h3,
	h4,
	h5,
	h6,
	.wp-block-heading,
	p.has-background
).has-background {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
	padding-left: 8px !important;
	padding-right: 8px !important;
}

/* --------------------------------------------------------------------------
   Cards and text helpers
   -------------------------------------------------------------------------- */

.accessible-card-container {
	background-color: var(--wp--preset--color--card-bg);
	border: 1px solid var(--wp--preset--color--border-subtle);
	border-radius: 8px;
	padding: 1.5rem;
}

.accessible-card-container .is-style-secondary-text,
.meta-text {
	color: var(--wp--preset--color--text-secondary);
}

.text-accent-callout {
	color: var(--wp--preset--color--text-accent);
}


/* --------------------------------------------------------------------------
   Navigation overlay
   -------------------------------------------------------------------------- */

.main-nav .wp-block-navigation__responsive-container.is-menu-open {
	background-color: #776391 !important;
	color: #ffffff !important;
	padding-right: var(--wp--style--spacing--50) !important;
	padding-left: var(--wp--style--spacing--50) !important;
}

.main-nav .wp-block-navigation__responsive-dialog,
.main-nav .wp-block-navigation__responsive-container-content {
	background: transparent !important;
	color: inherit !important;
}

.main-nav .wp-block-navigation__responsive-container-content {
	align-items: flex-end !important;
	text-align: right;
}

.main-nav .wp-block-navigation__responsive-container-content
.wp-block-navigation__container {
	align-items: flex-end !important;
	justify-content: flex-start !important;
}

.main-nav .wp-block-navigation__responsive-container-content
.wp-block-navigation-item {
	align-items: flex-end;
	text-align: right;
}

.main-nav .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation-item__content {
	color: #ffffff !important;
	font-family: var(--wp--preset--font-family--biryani);
	font-size: 1.5rem;
	text-decoration: none;
}

.main-nav .wp-block-navigation__responsive-container-open,
.main-nav .wp-block-navigation__responsive-container-close {
	color: #ffffff !important;
}

.main-nav .wp-block-navigation__responsive-container-open {
	position: relative;
	width: 32px;
	height: 32px;
	padding: 4px;
}

.main-nav .wp-block-navigation__responsive-container-open svg {
	display: none;
}

.main-nav .wp-block-navigation__responsive-container-open::before {
	content: "";
	display: block;
	width: 24px;
	height: 3px;
	background-color: currentColor;
	border-radius: 2px;
	box-shadow:
		0 7px 0 currentColor,
		0 14px 0 currentColor;
	position: absolute;
	top: 6px;
	left: 4px;
}

.main-nav .wp-block-navigation__responsive-container-close svg {
	fill: currentColor !important;
	stroke: currentColor;
}

.main-nav .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation-item__content:hover,
.main-nav .wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--text-link) !important;
}


/* --------------------------------------------------------------------------
   Semantic button system — evaluation release

   Default button: Join
   Other styles use WordPress block style classes:
     is-style-donate
     is-style-uniforms
     is-style-waiver
     is-style-sponsor
   -------------------------------------------------------------------------- */

.wp-block-button__link {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	border: 2px solid var(--wp--preset--color--text-primary);
	border-radius: 8px;
	font-family: var(--wp--preset--font-family--biryani);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition:
		background-color 0.2s ease-in-out,
		color 0.2s ease-in-out,
		border-color 0.2s ease-in-out,
		transform 0.1s ease-in-out;
}

/* Join — default */
.wp-block-button:not(.is-style-donate):not(.is-style-uniforms):not(.is-style-waiver):not(.is-style-sponsor)
.wp-block-button__link {
	background-color: #E09F63;
	color: #1C1427;
}

.wp-block-button:not(.is-style-donate):not(.is-style-uniforms):not(.is-style-waiver):not(.is-style-sponsor)
.wp-block-button__link:hover {
	background-color: #C98549;
	color: #1C1427;
}

/* Donate */
.wp-block-button.is-style-donate .wp-block-button__link {
	background-color: #8247C5;
	color: #FFFFFF;
}

.wp-block-button.is-style-donate .wp-block-button__link:hover {
	background-color: #6E32AA;
	color: #FFFFFF;
}

/* Order Uniforms */
.wp-block-button.is-style-uniforms .wp-block-button__link {
	background-color: #4D668C;
	color: #FFFFFF;
}

.wp-block-button.is-style-uniforms .wp-block-button__link:hover {
	background-color: #3F5679;
	color: #FFFFFF;
}

/* Sign Waiver */
.wp-block-button.is-style-waiver .wp-block-button__link {
	background-color: #A4B8D2;
	color: #3A2F4B;
}

.wp-block-button.is-style-waiver .wp-block-button__link:hover {
	background-color: #BED0E5;
	color: #3A2F4B;
}

/* Become a Sponsor */
.wp-block-button.is-style-sponsor .wp-block-button__link {
	background-color: #C98A4D;
	color: #1C1427;
}

.wp-block-button.is-style-sponsor .wp-block-button__link:hover {
	background-color: #B9833F;
	color: #1C1427;
}

/* Shared interaction states */
.wp-block-button__link:focus-visible {
	outline: 3px solid #FFFFFF;
	outline-offset: 3px;
}

.wp-block-button__link:active {
	transform: translateY(1px);
}

.wp-block-button__link[aria-disabled="true"],
.wp-block-button__link.is-disabled,
.wp-block-button__link:disabled {
	cursor: not-allowed;
	opacity: 0.55;
	pointer-events: none;
}

@media (prefers-reduced-motion: reduce) {
	.wp-block-button__link {
		transition: none;
	}
}

/* --------------------------------------------------------------------------
   Shared header architecture — release 1.0.48
   -------------------------------------------------------------------------- */

.rcr-header .rcr-header-inner {
	box-sizing: border-box;
	width: 100%;
}

.rcr-header-standard .rcr-header-inner,
.rcr-header-no-title .rcr-header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: nowrap;
}

.rcr-header-brand {
	display: flex;
	align-items: center;
	min-width: 0;
}

.rcr-header-logo,
.rcr-header-nav {
	flex: 0 0 auto;
}

.rcr-header-title {
	min-width: 0;
}

.rcr-site-title {
	margin: 0;
}

.rcr-site-title a {
	text-decoration: none;
}

/* The unlinked Site Title block is the accessible mobile version. */
.rcr-site-title-unlinked {
	display: none;
}

/* A true three-column grid keeps the title centered in the full header. */
.rcr-header-centered .rcr-header-inner {
	display: grid;
	grid-template-columns: minmax(64px, 1fr) auto minmax(64px, 1fr);
	align-items: center;
	column-gap: var(--wp--preset--spacing--20);
}

.rcr-header-centered .rcr-header-logo {
	justify-self: start;
}

.rcr-header-centered .rcr-header-title {
	justify-self: center;
	text-align: center;
}

.rcr-header-centered .rcr-header-nav {
	justify-self: end;
}

@media (max-width: 600px) {
	.rcr-site-title-linked {
		display: none;
	}

	.rcr-site-title-unlinked {
		display: block;
	}

	/*
	 * Reduce horizontal padding on phones while preserving
	 * the desktop spacing declared in the header template.
	 */
	/*
	 * Place the logo, title, and menu in the same grid area.
	 * This keeps the title centered across the full header
	 * instead of centering it between unequal side columns.
	 */
	.rcr-header-centered .rcr-header-inner {
		position: relative;
		display: grid;
		grid-template-columns: 1fr;
		align-items: center;
		min-height: 56px;
		padding-left: 20px;
		padding-right: 20px;
	}

	/*
	 * Review tuning point:
	 * Verson 1.0.74 and above is 40 pixels. Much bigger and will wrap title. 
	 * To move the logo and hamburger closer together later,
	 * add equal left/right padding here (for example 4px or 6px).
	 * Keep the values equal so the Site Title remains centered.
	 */

	.rcr-header-centered .rcr-header-logo {
		position: relative;
		z-index: 2;
		grid-column: 1;
		grid-row: 1;
		justify-self: start;
	}

/* should be 52 pixels on mobile less than 600, but can change to 32 to check if cache is clearing */
	.rcr-header-centered .rcr-header-logo img {
		width: 52px;
		height: auto;
	}

	.rcr-header-centered .rcr-header-title {
		position: relative;
		z-index: 1;
		grid-column: 1;
		grid-row: 1;
		justify-self: center;
		max-width: calc(100% - 112px);
		margin: 0;
		text-align: center;
		pointer-events: none;
	}

	.rcr-header-centered .rcr-site-title {
		margin: 0;
		white-space: nowrap;
	}

	.rcr-header-centered .rcr-header-nav {
		position: relative;
		z-index: 2;
		grid-column: 1;
		grid-row: 1;
		justify-self: end;
		margin: 0;
	}


	/*
	 * Match the centered-header mobile gutters on the
	 * logo-and-menu-only home-page header.
	 */
	.rcr-header-no-title .rcr-header-inner {
		padding-left: 20px;
		padding-right: 20px;
	}

	.rcr-header-no-title .rcr-header-logo img {
		width: 52px;
		height: auto;
	}
}

@media (max-width: 360px) {
	.rcr-header-centered .rcr-header-logo img,
	.rcr-header-no-title .rcr-header-logo img {
		width: 46px;
	}

	.rcr-header-centered .rcr-header-title {
		max-width: calc(100% - 96px);
	}

	.rcr-header-centered .rcr-site-title {
		font-size: 18px;
	}
}


