/*
Theme Name: lowvol 25
Theme URI: 
Author: We Are Volume
Author URI: 
Description: low volume (less code, less bloat, little complication)
Version: 1.07
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lowvol
*/

html {
	box-sizing: border-box;
	scroll-behavior: smooth;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

.is-layout-flex {
	display: flex;
}

.is-layout-stack {
	flex-direction:column;
}

.is-layout-grid {
	display: grid;
}

img, 
picture, 
video, 
canvas, 
svg {
	display: block;
}

.wp-block-columns.is-layout-flex > .wp-block-column {
	flex-basis: 50%;
}

input,
button,
textarea,
select {
	font: inherit;
}

html,
body {
	font-size: 62.5%;
}

em {
	font-style: italic;
}

strong {
	font-weight: bold;
}

ol,
ul{
	list-style:none
}

.margin-auto-cntr {
	margin: 0 auto;
}

* {
	margin: 0;
}

* {
	padding: 0;
}

.max-width-640 {
	max-width: 640px;
}

img,
picture,
video,
canvas,
svg {
	max-width: 100%;
}

.has-text-align-center {
	text-align: center;
}

.has-text-align-right {
	text-align: right;
}

body {
	-webkit-font-smoothing: antialiased;
}


/* BxD Styles */
:root {
	--bxd-black: #000;
	--bxd-gray: #757575;
	--bxd-red: #D02C2E;
}

body {
	font-family: "bio-sans", sans-serif;
	font-size: 1.6rem;
	line-height: 1.4;
}

h1 {
	font-size: 5.2rem;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 6px;
}

h2 {
	font-size: 4.2rem;
	line-height: 1.2;
	font-weight: 700;
	margin-bottom: 6px;
}

h3 {
	font-size: 2.8rem; /*frank updated 4/10*/
	line-height: 1.2;
	font-weight: 800;
	
	/*letter-spacing: calc(3.1rem * 0.3);*/
}

main p {
	font-size: 1.6rem;
	line-height: 1.4;
}

	main p + p {
		margin-top: ;
	}


.container {
	max-width: 1440px;
	margin: 0 auto;
	padding: 0 80px;
}

.container--small {
	max-width: 1200px;
}




header#global_header {
	margin-top: 30px;
	position: sticky;
	top: 30px;
	padding: 0;
	max-width: 1280px;

	.header-wrapper {
		display: flex;
		padding: 20px;
		gap: 30px;
		background: black;

		.custom-logo-link img {
			max-width: 154px;
			height: auto;
		}

		.menu-button {
			display: none;
			padding: 15px;

			@media screen and (max-width: 1279px) {
				display: block;
			}

			.menu-toggle {
				background-color: transparent;
				border: none;
				cursor: pointer;
				color: #fff;
				position: relative;
				width: 40px;
				height: 40px;

				span.menu-icon {
					position: absolute;
					width: 40px;
					height: 4px;
					left: 0;
					background-color: #fff;
					border-radius: 2px;
					transition: all 0.3s ease;
				}

				span.menu-icon:nth-child(1) {
					top: 10px;
				}
				span.menu-icon:nth-child(2) {
					top: 18px;
				}
				span.menu-icon:nth-child(3) {
					top: 26px;
				}
			}

			&.active span.menu-icon:nth-child(1) {
				transform: rotate(45deg);
				top: 18px;
			}
			&.active span.menu-icon:nth-child(2) {
				opacity: 0;
			}
			&.active span.menu-icon:nth-child(3) {
				transform: rotate(-45deg);
				top: 18px;
			}
			
		}

		


		.header-menu {
			display: flex;
			gap: 30px;
			height: 100%;

			@media screen and (max-width: 1279px) {
				position: absolute;
				top: 100%;
				left: calc(-100% - 10px); /* Hide the menu off-screen */
				width: 100%;
				height: auto;
				padding: 20px;
				/* height: 100vh; */
				max-height: calc(100svh - 96px);
				overflow-y: auto;
				background-color: #000;
				flex-direction: column;
				transition: left 0.3s ease;
				z-index: 1000;

				.menu-header-side-items-container {
					margin-left: unset;
					align-self: center;

					ul#menu-header-side-items {
						flex-wrap: wrap;
						justify-content: center;
					}
				}
			}
		}


		.menu-button.active + .header-menu {
			@media screen and (max-width: 1279px) {
				left: 0; /* Show the menu when active */
			}
		}
		

		ul#menu-header-side-items {
			display: flex;
			height: 100%;
			gap: 30px;			
		}

		.menu-header-side-items-container {
			margin-left: auto;
		}

		ul#menu-global-header {
			display: flex;
			height: 100%;
			gap: 30px;
			font-size:1.4rem;

			> li.menu-item {
				font-weight: 700;
				letter-spacing: calc(1.6rem * 0.15);
				text-transform: uppercase;
				a {
					color: #fff;
					text-decoration: none;
				}
			}

			li.menu-item-has-children {
				position: relative;
				display: flex;
				align-items: center;

				ul.sub-menu {
					position: absolute;
					bottom: 0px;
					transform: translateY(100%);
					left: 0;
					display: none;
					padding: 24px;
					border-radius: 9px;
					background-color: #F4F4F4;
					flex-direction: column;
					gap: 30px;

					li {
						width: max-content;
						max-width: 250px;
						text-transform: none;
						font-weight: 600;
						letter-spacing: calc(1.6rem * 0.1);

						a {
							color: #000;
						}
					}
				}

				@media screen and (max-width: 1279px) {
					flex-direction: column;

					ul.sub-menu {
						gap: 0;
					}
					
				}
			}

			@media screen and (min-width: 1280px) {
				li.menu-item-has-children:hover ul.sub-menu {
					display: flex;
				}
			}

			@media screen and (max-width: 1279px) {
				li.menu-item-has-children ul.sub-menu.active {
					display: flex;
					max-height: 500px; /* Limit the height of the dropdown */
				}
			}
		}
	}
}


/* Footer */
footer {

	font-size:1.2rem;
	padding-bottom:100px;
	letter-spacing:0.2rem;
	margin-top: 53px;

	.footer-wrapper {
			display: flex;
			padding: 0 20px;
			gap: 36px;
			/* max-width:1280px; */
					max-width: 1320px;
			margin:0 auto;
			margin-bottom:54px;

					@media screen and (max-width: 1279px) {
						flex-wrap: wrap;	
						gap: 27px;
					}

					@media screen and (max-width: 768px) {
						flex-direction: column;
						gap: 18px;
					}
	}

	.footer-logo {
		width:157px;
		margin-top:-10px;
		margin-left:-14px;
	}

	h4 {
		font-weight:bold;
		text-transform:uppercase;
	}

	a {
		color:#000;
		text-decoration:none;
	}

	.footer-content {
		margin-top:78px;
		@media screen and (max-width: 1279px) {
			flex-wrap: wrap;	
		}

		@media screen and (max-width: 768px) {
			flex-direction: column;
		}
	}

	.form {
		display: flex;
		max-width: 450px;
		width: 100%;

			@media screen and (max-width: 480px) {
				flex-direction: column;

				input[type="text"] {
					text-align: center;
				}	
			}
	}

	/* Input field styling */
	.form input[type="text"],
	.form textarea {
		flex: 1;
		border: 1px solid #000;
		padding: 20px;
		font-size: 16px;
		color: #000;
		background-color: #fff;
		box-sizing: border-box;
		height: 60px;
	}

	.form input[type="text"]::placeholder,
	.form textarea::placeholder {
		color: #000;
		opacity: 1;
	}

	/* Button styling */
	.form button,
	.button-a {
		border: none;
		background-color: #000;
		color: #fff;
		text-transform: uppercase;
		letter-spacing: 1px;
		font-weight: bold;
		padding: 0 20px;
		cursor: pointer;
		font-size: 16px;
		height: 60px;
		width: 180px;

			@media screen and (max-width: 480px) {
				width: 100%;
			}
	}
	
	.button-a {
		line-height: 60px;
		text-align: center;
	}

	.form button:hover,
	.button-a:hover {
		background-color: #222;
	}

	.form-content {
		display: flex;
		align-items: flex-start;
		gap: 20px;
		margin-left: auto;
				@media screen and (max-width: 1279px) {
					margin-right: auto;
				}

				@media screen and (max-width: 768px) {
					flex-direction: column;
					align-items: center;
				}

				@media screen and (max-width: 480px) {
					width: 100%;
					align-items: stretch;
				}
	}


	.form-content a {
		background-color: var(--bxd-red);
		color: #fff;
		cursor: pointer;
		display: inline-block;
		font-size: 1.4rem;
		line-height: 58px;
		min-height: 60px;
		letter-spacing: 0.2rem;
		padding: 0 30px;
		text-align: center;
		text-decoration:none;
		text-transform:uppercase;
		font-weight:bold;
	}

	nav a {
		text-transform:uppercase;
	}

	nav li {
		margin-top:8px;
	}

	.footer-wrapper > div:nth-child(2),
	.footer-wrapper > div:nth-child(3), 
	.footer-wrapper > div:nth-child(4) {
		margin-top:10px;
	}
	

	.footer-contact-info {
		margin-top:10px;
		line-height:2rem;
	}

}

/* elements */
.wp-element-button {
	background-color: var(--bxd-red);
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 1.4rem;
	line-height: 58px;
	min-height: 58px;
	letter-spacing: 0.2rem;
	min-width: 180px;
	text-align: center;
}

ul#menu-header-side-items a {
	background-color: var(--bxd-red);
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 1.4rem;
	line-height: 58px;
	min-height: 58px;
	letter-spacing: 0.2rem;
	padding: 0 30px;
	text-align: center;
	text-decoration:none;
	text-transform:uppercase;
	font-weight:bold;
}

ul#menu-header-side-items li:first-child a {
	background-color: #fff;
	color:#000;
}

ul#menu-header-side-items li:last-child a {

}

/* sections */
section {
	scroll-margin-top: 160px;
	padding: 40px 80px;

	@media screen and (max-width: 1080px) {
		padding: 30px 60px;
	}

	@media screen and (max-width: 768px) {
		padding: 30px 18px;
	}
}

/* additional offsets */
.scroll-margin-offset,
#volunteer,
#pro-bono {
	scroll-margin-top: 160px;
}

#lgbtq-defense {
	scroll-margin-top: 60px;
}

section > div {
	margin: 0 auto;
	max-width: 1280px;
}

.wp-block-heading + div,
p + .wp-block-columns {
	margin-top: 30px;
}

.bxd-text-header-p {
	font-size: 2rem;
	margin: 0 auto;
	max-width: 750px;
}



/* cards */
.cards {
	display: grid;
	/* grid-template-columns: repeat(auto-fill, minmax(296px, 1fr)); */
	grid-template-columns: repeat(4, 1fr);
	gap: 25px; /*frank updated 4/10*/
	max-width:1280px;
	margin: 0 auto;

	
	@media (max-width: 1280px) {
		grid-template-columns: repeat(2, 1fr);
	}
	@media (max-width: 768px) {
		grid-template-columns: repeat(1, 1fr);
	}
	@media (max-width: 480px) {
		grid-template-columns: 1fr;
	}
}

.cards .wp-block-column > .wp-block-group {
	background-color: var(--bxd-red);
	color: #fff;
	display: flex;
	height: 100%;
	padding: 20px 20px; /*frank updated 4/10*/

	.wp-block-heading {
		font-size: 2.5rem; /*frank updated 4/10*/
		min-height: 109px;
	}
}

/* stats img */

section.stats-img > div {
	max-width:1440px;
}


section.stats-img {
	background-color: var(--bxd-black);
	padding: 0;

	img {
		height: auto;
	}

	.wp-block-group {
		color:#fff;
		position:relative;
		width:75%;
		min-width:250px;
		margin-bottom:29px;
		margin-bottom: clamp(20px, 2.01vw, 29px);

		&:last-of-type {
			margin-bottom:0;
		}
	}


	.wp-block-group:after {
		content: " ";
		position: relative;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 6px;
		margin-top: 10px;
		margin-bottom: 20px;
		background-color: #ff0000;
		border-radius: 3px;
		display: block;
	}

	h3 {
		font-size: 5.4rem;
		/* font-size: clamp(2.5rem, 3.75vw, 5.4rem); */
		font-size: clamp(1.9125rem, 2.86875vw, 4.131rem);
		text-transform: uppercase;
		letter-spacing:0.55rem;
	}

	p {
		font-size:2.2rem;
		font-size: clamp(1.6rem, 1.527vw, 2.2rem);
		text-wrap: balance;
	}

	.wp-block-columns.is-layout-flex > .wp-block-column:first-child {
		display: flex;
		flex-direction: column;
		justify-content:center;
		align-items: center;		
	}

	/* Temporary */
	.wp-block-image figcaption {
		display:none;
	}
}

/* section.stats-img.cool-grey,
section.stats-img.alt-stats {
	h2 {
		font-size: 3.8rem;
	}

	h3 {
	  font-size: clamp(1.67rem, 2.5vw, 3.6rem);
	}

	.wp-block-columns.is-layout-flex > .wp-block-column:first-child {
		justify-content: flex-start;
	}
} */

section.stats-img.alt-stats {
	background-color: #000;
}

section.stats-img.cool-grey {
	background-color: #CCCCCC;

	h2,
	h3,
	h6,
	p {
		color: #000;
	}

	.wp-block-group:after {
		background-color: #333;
	}
}

/* quotes */

section.quotes {
	.cards {
		grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
		max-width:1280px;
		margin:0 auto;
	}
	.wp-block-column {
		background-color: var(--bxd-red);
		color: #fff;
		padding: 50px 34px;
	}
	img {
		max-width: 155px;
		width: 100%;
		height: auto;
		margin-top: 45px;
	}
	.wp-block-quote {
		position: relative;
		margin: 0; /* Remove default margins */
	}
	.wp-block-quote p {
		margin: 0 0 15px 0; /* Control spacing between paragraphs */
	}
	.wp-block-quote p:first-child {
		position: relative; /* Position context for quote mark */
		padding-left: 55px; /* Consistent left padding for all paragraphs */        
		margin-bottom:60px;
	}
	.wp-block-quote p:first-child:before {
		content: "\201C";
		font-weight: bold;
		font-size: 10rem;
		position: absolute;
		left: -5px;
		top: -30px; /* Adjust vertical alignment */
		line-height: 1;
		color: #fff;
	}
}

/* article cards */

section.article-cards > div > div {
		display: grid;
			grid-template-columns: 1fr 1fr; /* Two equal width columns */
			gap: 10px; /* 30px gap between columns and rows */	
}

section.article-cards {

	figure {
		width:100%;
		flex: 0 0 265px
	}

	h3 {
		font-size: 2.5rem;
		text-transform:uppercase;
		letter-spacing:0.8rem;
		flex: 1;
	}

	img {
		width: 100%;
		max-width: 265px;
		height: auto;
		min-height: 300px;
		object-fit: cover;
	}

	.wp-block-buttons {
		flex: 0 0 auto;
	}

	.wp-block-column {
		background-color:#000;
		color:#fff;
		min-height:300px;
	}

	figure + .wp-block-group{
		padding: 25px;
	}

}

/* subscribe */

section.subscribe > div {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	max-width:1100px;
	padding: 120px 0;
}

section.subscribe {
	background-color: var(--bxd-red);
	color:#fff;

	h2 {
		text-transform: uppercase;
		font-size: 5.643rem;
		font-weight: 800;
		letter-spacing: 1.1rem;
		margin-bottom:2.7rem;
	}

	p {
		text-align:center;
		margin-bottom:2.2rem;
	}


	.form {
		display: flex;
		max-width: 450px;
		width: 100%;
	}

	.mc-field-group {
		display: flex;
		
		@media screen and (max-width: 480px) {
			flex-direction: column;
			
			#mc-embedded-subscribe {
				width: 100%;
			}
		}
	}

	/* Input field styling */
	.form input[type="text"],
	.form textarea,
	.form input[type="email"] {
		flex: 1;
		border: none;
		padding: 20px;
		font-size: 16px;
		color: #000;
		background-color: #fff;
		box-sizing: border-box;
		height: 60px;
	}

	.form input[type="text"]::placeholder,
	.form textarea::placeholder,
	.form input[type="email"]::placeholder {
		color: #000;
		opacity: 1;
	}

	/* Button styling */
	.form button,
	.form .button-a {
		border: none;
		background-color: #000;
		color: #fff;
		text-transform: uppercase;
		letter-spacing: 1px;
		font-weight: bold;
		padding: 0 20px;
		cursor: pointer;
		font-size: 16px;
		height: 60px;
		width: 180px;
	}

	.form button:hover,
	.form .button-a:hover {
		background-color: #222;
	}

}


/* general beg */
.sec-h-p {
	& h2 + p {
		margin: 30px auto;
		max-width: 720px;
		text-wrap: balance;
	}
}

.mt-60 {
	margin-top: 60px;
}
/* general end */



/* new hero block beg  */
#hero-block-a {
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	color: #fff;
	display: grid;
	place-items: center;
	height: 100svh;
	margin-top: -129px;

	#hero-content {
		position: relative;
	}

	#hero-block-mobile {
		display: none;
	}

	@media (width <= 1279px) {
		margin-top: -79px;
	}

	@media (width <=767px) {
		&[style] {
			background-image: none !important;
		}

		#hero-block-mobile {
			background-position: center;
			background-size: cover;
			display: block;
			position: absolute;
			top: 0;
			left: 0;
			z-index: -1;
			width: 100%;
			height: 100%;
		}
	}
}
/* new hero block end */



/* about page - profiles beg */
.page-about-us .wp-block-genesis-blocks-gb-profile-box {
	width: auto;
	height: 378px;

	.gb-profile-title {
		height: 60px;
		padding-bottom: 6px;
	}

	.gb-profile-text {
		height: 242px;
		overflow-y: scroll;
	}
}
/* about page - profiles end */






/* ======================================
	 TABLE OF CONTENTS
	 ======================================
	 1. Global Utility Styles
	 2. Header & Navigation
	 3. Interior Hero (page-header-sm)
	 4. Large Cover Hero
	 5. Cards & Content Blocks
	 6. Section Blocks
	 7. Accordions
	 8. Background Utilities
	 9. Typography Utilities
	 10. Responsive Adjustments
	 ====================================== */

/* ======================================
	 1. Global Utility Styles
	 ====================================== */

/* Soft bevel for images */
.bevel-4px {
	border-radius: 10px !important;
}

/* Set card background */
.cool-grey {
	background-color: #CCCCCC;
}
.cool-pink {
	background-color: #F4A9AA;
}

.cool-lightred {
	background-color: #EB8384;
}

.cool-black {
	background-color: #000000;
}

/* Text color utilities */
.copy-white {
	color: #ffffff;
}

.copy-red {
	color: #D02C2E;
}

/* Large headline style */
.headline-large {
	font-size: 65px;
	text-align: justify;
	text-transform: uppercase;
	letter-spacing: .6em;
	font-weight: 700;
	line-height: 1.2;
	text-wrap: balance;
	text-justify: distribute; /* For better browser compatibility */
}

/* ======================================
	 2. Header & Navigation
	 ====================================== */

/* Push header to be above Hero sections */
header, nav, .site-header, .main-navigation {
	position: relative;
	z-index: 10 !important; /* Force higher z-index on navigation elements */
}

/* Hide the default header h1 globally */
header h1 {
	display: none;
}

/* ======================================
	 3. Interior Hero (page-header-sm)
	 ====================================== */

.page-header-sm {
	background-image: url("https://bxd.checkoutdev.com/wp-content/uploads/2025/04/220707_SouthBronx0002.jpg");
	background-position: center center;
	background-size: cover; /* Ensures image covers the entire container */
	color: white;
	padding: 0;
	margin: 0;
	min-height: 65vh; 
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 0; 
}

/* Create the red overlay with pseudo-element */
.page-header-sm::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #D02C2E;
	opacity: 0.79; /* 79% opacity for the overlay */
	z-index: 0; /* Place behind the content but on same level as background image */
}

/* Make sure content inside is positioned above the overlay */
.page-header-sm > * {
	position: relative;
	z-index: 1; /* Ensures content is above the overlay */
}

/* H6 Styling - "Our Work" */
.page-header-sm h6.wp-block-heading.has-text-align-center {
	font-size: 12px;
	font-weight: 600;
	color: white;
	margin-top: 95px;
	margin-bottom: 5px;
	text-transform: uppercase; /* Optional, for emphasis */
}


.wp-block-column figure.wp-block-image + h6.wp-block-heading,
.card-large h6.wp-block-heading,
.wp-block-column h6.wp-block-heading {
	font-size: 1.5rem;
}

/* H1 Styling - "Defending New Yorkers" */
.page-header-sm h1.wp-block-heading.has-text-align-center {
	font-size: 52px;
	font-weight: 700;
	color: white;
	margin-top: 0;
	margin-bottom: 20px;
}

/* Paragraph Styling */
.page-header-sm p.has-text-align-center {
	font-size: 16px;
	color: white;
	max-width: 782px;
	margin-left: auto;
	margin-right: auto;
	line-height: 1.6;
}

/* Fix for following content - add appropriate spacing */
.page-header-sm + * {
	margin-top: 50vh; /* Match the height of the header */
	position: relative; /* Ensure proper stacking context */
	z-index: 1; /* Higher than the header but lower than nav */
}

/* ======================================
	 4. Large Cover Hero
	 ====================================== */

/* Main cover block styling */
.wp-block-cover {
	margin-top: 0 !important;
	padding: 0 !important;
	min-height: 85vh !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	overflow: hidden !important;
	z-index: 1 !important;
	margin-bottom: 25px;
}

/* Background elements */
.wp-block-cover__image-background {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	z-index: -1 !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Black overlay at 50% opacity - directly on the cover background */
.wp-block-cover__background {
	background-color: #000000 !important;
	opacity: 0.5 !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 0 !important;
}

/* Inner content container */
.wp-block-cover__inner-container {
	position: relative !important;
	z-index: 5 !important;
	width: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 20px !important;

	margin-top: 129px;
}

/* Heading styles */
.wp-block-cover .wp-block-heading {
	color: #fff !important;
	text-align: center !important;
	line-height: 1 !important;
	margin-bottom: 30px !important;
	width: 100% !important;
}

/* DEFENDING text */
.wp-block-cover .wp-block-heading::first-line {
	font-size: 116px !important;
	font-weight: 800 !important;
	display: inline-block !important;
}

/* FIERCLY text - using a custom approach with data attributes */
.wp-block-cover .wp-block-heading::after {
	content: "FIERCELY";
	display: block !important;
	font-size: 165px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
}

/* To hide the original FIERCLY text */
.wp-block-cover .wp-block-heading br + * {
	display: none !important;
}

/* Paragraph styling */
.wp-block-cover__inner-container p {
	text-align: center !important;
	max-width: 755px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	color: #fff !important;
	font-size: 18px !important;
	margin-bottom: 20px !important;
}

/* ======================================
	 5. Cards & Content Blocks
	 ====================================== */

/* Horizontal Black Card styling */
/* Target the outer container that holds both image and text */
.horizontal-black-card-outer .wp-block-column > .wp-block-group {
	display: flex !important;
	max-width: 600px !important;
	margin: 0 auto 30px !important;
	border: 1px solid #e0e0e0 !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) !important;
}

/* Remove any borders from inner container */
.horizontal-black-card .wp-block-group[class*="vertical"] {
	border: none !important;
	box-shadow: none !important;
	padding: 20px !important;
	flex-grow: 1 !important;
}

/* Image container styling */
.horizontal-black-card .wp-block-image {
	width: 160px !important;
	flex: 0 0 160px !important;
	margin: 0 !important;
	padding: 10px;
}

.horizontal-black-card .wp-block-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Fix for figure margins */
.horizontal-black-card figure {
	margin: 0 !important;
}

/* Heading styling */
.horizontal-black-card h3.wp-block-heading {
	font-size: 20px !important;
	font-weight: 600 !important;
	margin-top: 0 !important;
	margin-bottom: 10px !important;
	color: #333 !important;
	padding-top: 10px
}

/* Paragraph styling */
.horizontal-black-card p {
	font-size: 16px !important;
	line-height: 1.5 !important;
	margin: 0 !important;
	color: #666 !important;
}

/* Main heading styling */
.horizontal-black-card h2.wp-block-heading {
	text-align: center !important;
	font-size: 32px !important;
	margin-bottom: 40px !important;
	font-weight: 700 !important;
}

/* Columns container */
.horizontal-black-card .wp-block-columns {
	gap: 30px !important;
}

/* Image-Card Component */
.image-card {
	display: flex;
	width: 100%;
	max-width: 750px;
	overflow: hidden;
	margin: 0 auto;
}

/* Main group container - the flex container */
.image-card .wp-block-group {
	display: flex;
	width: 100%;
}

/* Image container */
.image-card .wp-block-image {
	margin: 0;
	padding: 0;
	flex-shrink: 0;
	flex: 1;
}

.image-card .wp-block-image img {
	display: block;
	width: 100%;
	height: 354px;
	object-fit: cover;
	object-position: center;
}

/* Content group container */
.image-card .wp-block-group .wp-block-group {
	padding: 0px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	flex: 1;
	background-color: #000000;
	margin-right: 10px;
}

/* Heading styles - to match the reference image */
.image-card h2.wp-block-heading {
	font-size: 25px;
	font-weight: 800;
	letter-spacing: 0.3em;
	color: #ffffff;
	margin: 0 0 0px 0;
	line-height: 1.4;
	text-align: left;
	text-transform: uppercase;
	text-wrap: balance;
}

.image-card p {
	color: #fff;
	padding-top: 2px;
	margin-top: 2px;
	font-size: 16px;
}

/* Button container */
.image-card .wp-block-buttons {
	padding: 0; 
	margin: 0;
}

/* Button styles - to match the reference image */
.image-card .wp-block-button {
	display: block;
	margin-right: auto;
	margin-left: 0;
	text-align: left;
}

/* ======================================
	 6. Section Blocks
	 ====================================== */

/* Section Block Alt - Black background */
.section-block-alt {
	background-color: #000; /* Black */
	border: 1px solid #999999; /* Cool Gray 6 C */
	border-radius: 10px;
	box-shadow: 0 2px 4px rgba(153, 153, 153, 0.2); /* Cool Gray 6 C with opacity */
	padding: 30px;
	margin: 20px 0;
}

/* Section Block - Red background */
.section-block {
	background-color: #D02C2E; /* Red */
	border: 1px solid #999999; /* Cool Gray 6 C */
	border-radius: 10px;
	box-shadow: 0 2px 4px rgba(153, 153, 153, 0.2); /* Cool Gray 6 C with opacity */
	padding: 30px;
	margin: 20px 0;
}

/* Section Block inset - grey background */
.section-block-inset {
	background-color: #CCCCCC; /* Cool Gray 4 C */
	border: 1px solid #999999; /* Cool Gray 6 C */
	border-radius: 10px;
	box-shadow: inset 0 1px 3px rgba(153, 153, 153, 0.3); /* Cool Gray 6 C with opacity */
	padding: 30px;
	margin: 20px 0;
}

/* ======================================
	 7. Accordions
	 ====================================== */

/* Default Accordion */
.accordion-default {
	width: 100%;
	background-color: #F4A9AA;
	padding: 20px 0;
	margin-bottom: -55px;
}

.accordion-default .summary {
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
	padding: 15px
}

.accordion-default .wp-block-details {
	max-width: 1200px;
	margin: 0 auto 1px;
	border: none;
	overflow: hidden;
	border-top: 1px solid #EB8384;
}

.accordion-default .wp-block-details > summary {
	background-color: #F4A9AA;
	padding: 15px 15px;
	font-size: 24px;
	font-weight: 600;
	cursor: pointer;
	list-style: none;
	position: relative;
	text-align: justify;
	text-transform: uppercase;
	letter-spacing: .6em;
	font-weight: 700;
	line-height: 1.2;
}

.accordion-default .wp-block-details > summary::-webkit-details-marker {
	display: none;
}

.accordion-default .wp-block-details > summary::after {
	content: '+';
	position: absolute;
	right: 15px;
	transition: transform 0.2s ease;
}

.accordion-default .wp-block-details[open] > summary::after {
	content: '-';
}

.accordion-default .wp-block-details > p,
.accordion-default .wp-block-details > .html-contents {
	background-color: #FFFFFF;
	margin: 0;
	padding: 25px 25px 55px 25px;
	border: 1px solid #EB8384;
	font-size: 18px;
	border-radius: 10px;
	margin-bottom: 15px;
}

.accordion-default .wp-block-details a {
	text-decoration: underline;
}

/* Accordion for a side by side */
.accordion-small .wp-block-details > summary { 
	padding: 15px 15px;
	font-size: 16px;
	font-weight: 600;
	cursor: pointer;
	list-style: none;
	position: relative;
	font-weight: 700;
	line-height: 1.2;
}

.accordion-small .wp-block-details > summary::-webkit-details-marker {
	display: none;
}

.accordion-small .wp-block-details > summary::after {
	content: '+';
	position: absolute;
	right: 15px;
	transition: transform 0.2s ease;
}

.accordion-small .wp-block-details[open] > summary::after {
	content: '-';
}

.accordion-small .wp-block-details > p {
	background-color: #FFFFFF;
	margin: 0;
	padding: 25px 25px 55px 25px;
	border: 1px solid #EB8384;
	font-size: 18px;
	border-radius: 10px;
	margin-bottom: 15px;
}

.accordion-small .wp-block-details a {
	text-decoration: underline;
}

/* ======================================
	 8. Background Utilities
	 ====================================== */

.cool-grey-background {
	background-color: #CCCCCC;
}

.pink-wide {
	width: 100%;
	background-color: #F4A9AA;
	padding: 20px 0;
	margin-bottom: -55px;
}

.black-wide {
	width: 100%;
	background-color: #000000;
}

/* ======================================
	 9. Button Styles
	 ====================================== */

/* Button container */
.wp-block-buttons {
	justify-content: center !important;
	display: flex !important;
	width: 100% !important;
	margin-top: 10px !important;
	margin-bottom: 75px !important;
}

/* Button styling */
.wp-block-button__link {
	background-color: rgba(208, 44, 46, 1) !important;
	color: #fff !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	border-radius: 4px !important;
	text-decoration: none !important;
	transition: all 0.3s ease !important;
}

	#learn-more-section .wp-block-button__link {
		border: 1px solid rgba(255,255,255,.33);
	}

.wp-block-button__link:hover {
	background-color: rgba(188, 34, 36, 1) !important;
	transform: translateY(-2px) !important;
}

/* Image-card specific button styling */
.image-card .wp-block-button__link {
	background-color: #D02C2E !important;
	color: white !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	border-radius: 0 !important;
	text-decoration: none !important;
	transition: all 0.3s ease !important;
	letter-spacing: 0.1em !important;
}

.image-card .wp-block-button__link:hover {
	background-color: #B22527 !important;
}

/* ======================================
	 10. Responsive Adjustments
	 ====================================== */

/* Responsive for Cover block */
@media (max-width: 1200px) {
	.wp-block-cover .wp-block-heading::first-line {
	font-size: 90px !important;
	}
	
	.wp-block-cover .wp-block-heading::after {
	font-size: 130px !important;
	}
}

@media (max-width: 768px) {
	.wp-block-cover {
	min-height: 1200px !important;
	}
	
	.wp-block-cover .wp-block-heading::first-line {
	font-size: 70px !important;
	}
	
	.wp-block-cover .wp-block-heading::after {
	font-size: 100px !important;
	}
	
	.wp-block-cover__inner-container p {
	font-size: 16px !important;
	padding: 0 20px !important;
	}

	/* Image card responsive */
	.image-card .wp-block-group {
	flex-direction: column;
	}
	
	.image-card .wp-block-image img {
	width: 100%;
	height: auto;
	max-height: 300px;
	}
	
	.image-card .wp-block-group .wp-block-group {
	padding: 30px 20px;
	border: 10px solid white;
	}
	
	.image-card h2.wp-block-heading {
	font-size: 20px;
	}

	/* Horizontal black card responsive */
	.horizontal-black-card .wp-block-column > .wp-block-group {
	flex-direction: column !important;
	max-width: 100% !important;
	}
	
	.horizontal-black-card .wp-block-image {
	width: 100% !important;
	height: 200px !important;
	}
}

@media (max-width: 480px) {
	.wp-block-cover {
	min-height: 900px !important;
	}
	
	.wp-block-cover .wp-block-heading::first-line {
	font-size: 50px !important;
	}
	
	.wp-block-cover .wp-block-heading::after {
	font-size: 70px !important;
	}
}

/* side by side */

/* Side-by-side layout */
.side-by-side {
	max-width: 1380px;
	margin-left: auto;
	margin-right: auto;
}

.side-by-side .wp-block-columns {
	align-items: center;
}

.side-by-side .wp-block-column {
	flex-basis: 50% !important;
}

/* Typography */
.side-by-side h2 {
	font-size: 24px;
	line-height: 1.2;
	margin-bottom: 10px;
}

.side-by-side h3 {
	font-size: 20px;
	line-height: 1.4;
	margin-bottom: 10px;
}

.side-by-side p {
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 20px;
}

/* List styling */
.side-by-side ul {
	padding-left: 30px;
	font-size: 14px;
	line-height: 1.6;
	list-style-type: disc;
}

.side-by-side li {
	margin-bottom: 10px;
	display: list-item;
}

/* Responsive styles */
@media (max-width: 781px) {
	.side-by-side .wp-block-column {
	flex-basis: 100% !important;
	}
	
	.side-by-side h2 {
	font-size: 42px;
	}
	
	.side-by-side h3 {
	font-size: 20px;
	}
}



/* Card Large - CSS for WordPress Columns and Column Blocks */

/* ================================
	 GENERAL SPACING IMPROVEMENTS 
	 ================================ */

/* Add consistent gap between columns */
.wp-block-columns {
	gap: 30px !important; /* Force consistent gap between columns */
	margin-bottom: 30px;
}

/* ================================
	 INDIVIDUAL COLUMN CARD STYLING 
	 ================================ */

/* Base styling for individual column with card-large class */
.wp-block-column.card-large {
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	padding: 24px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	height: 100%; /* Full height */
	box-sizing: border-box;
	margin-bottom: 0; /* Remove bottom margin to avoid double spacing */
}

/* Fix for columns height */
.wp-block-columns:has(.wp-block-column.card-large) {
	align-items: stretch; /* Make all columns the same height */
}

.wp-block-column.card-large:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* Heading styles for individual card columns */
.wp-block-column.card-large h2 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 10px;
	font-weight: 600;
	min-height: 32px; /* Consistent height for headings */
}

.wp-block-column.card-large h3 {
	font-size: 20px;
	margin-top: 0;
	margin-bottom: 0px;
	font-weight: 400;
	min-height: 54px; /* Consistent height for subheadings */
}

/* Image styles for individual card columns */
.wp-block-column.card-large figure {
	margin: 0 0 20px 0;
	overflow: hidden;
	border-radius: 6px;
	width: 100%;
	aspect-ratio: 16 / 9; /* Consistent aspect ratio */
}

.wp-block-column.card-large img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* Ensure uniform image display */
	transition: transform 0.5s ease;
	display: block;
}

.wp-block-column.card-large figure:hover img {
	transform: scale(1.03);
}

/* Content area for individual card columns */
.wp-block-column.card-large > p {
	flex-grow: 1;
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 16px;
}

/* List styling */
.wp-block-column.card-large > ul {
	padding-left: 30px;
	font-size: 14px;
	line-height: 1.6;
	list-style-type: disc;
}

.wp-block-column.card-large > li {
	margin-bottom: 10px;
	display: list-item;
}

/* Button styles for individual card columns - Always left aligned */
.wp-block-column.card-large .wp-block-buttons {
	margin-top: auto;
	padding-top: 10px;
	justify-content: flex-start !important;
}

.wp-block-column.card-large .wp-block-buttons.is-content-justification-center,
.wp-block-column.card-large .wp-block-buttons.is-content-justification-right {
	justify-content: flex-start !important; /* Override any other alignment */
}

.wp-block-column.card-large .wp-block-button .wp-block-button__link {
	background-color: #0073aa;
	color: #ffffff;
	border-radius: 4px;
	padding: 0px 20px;
	text-decoration: none;
	font-weight: 500;
	transition: background-color 0.3s ease;
	display: inline-block;
	border: none;
}

.wp-block-column.card-large .wp-block-button .wp-block-button__link:hover {
	background-color: #005a87;
}

/* ================================
	 WHOLE COLUMNS BLOCK CARD STYLING 
	 ================================ */

/* Styling for the parent columns block with card-large class */
.wp-block-columns.card-large {
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
	padding: 30px 0px 0px 30px;
	margin-bottom: 30px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-wrap: wrap;
	gap: 30px !important; /* Maintain gap inside the unified card */
}

.wp-block-columns.card-large:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

/* Column styling within a card-large parent */
.wp-block-columns.card-large > .wp-block-column {
	display: flex;
	flex-direction: column;
	padding: 0;
	margin: 0;
}

/* For 50/50 layouts - ensure columns have proper width accounting for padding and gap */
.wp-block-columns.card-large > .wp-block-column {
	flex-basis: calc(50% - 15px) !important; /* Account for gap */
}

/* Heading styles within parent card-large */
.wp-block-columns.card-large h2 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 10px;
	font-weight: 600;
}

.wp-block-columns.card-large h3 {
	font-size: 20px;
	margin-top: 0;
	margin-bottom: 20px;
	font-weight: 400;
}

/* Image styles within parent card-large */
.wp-block-columns.card-large figure {
	margin: 0 0 30px 0px;
	overflow: hidden;
	border-radius: 6px;
	width: 100%;
}

.wp-block-columns.card-large img {
	width: 100%;
	height: auto;
	transition: transform 0.5s ease;
	display: block;
		padding-right:0px;
}

.wp-block-columns.card-large figure:hover img {
	transform: scale(1.03);
}

/* Content area within parent card-large */
.wp-block-columns.card-large p {
	flex-grow: 1;
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 0px;
		margin-right:30px;
}

/* List styling */
.wp-block-columns ul {
	margin-top: 10px;
	margin-right: 30px;
	padding-top: 0px;
	padding-left: 30px;
	font-size: 14px;
	line-height: 1.6;
	list-style-type: disc;
}

.wp-block-columns  li {
	margin-bottom: 1px;
	display: list-item;
}

/* Button styles within parent card-large - Always left aligned */
.wp-block-columns.card-large .wp-block-column .wp-block-buttons {
	margin-top: auto;
	padding-top: 10px;
	justify-content: flex-start !important;
}

.wp-block-columns.card-large .wp-block-column .wp-block-buttons.is-content-justification-center,
.wp-block-columns.card-large .wp-block-column .wp-block-buttons.is-content-justification-right {
	justify-content: flex-start !important; /* Override any other alignment */
}

/* Prevent double card effect when both columns and column have card-large */
.wp-block-columns.card-large > .wp-block-column.card-large {
	background-color: transparent;
	box-shadow: none;
	padding: 0;
	margin: 0;
	transform: none !important;
}

.wp-block-columns.card-large > .wp-block-column.card-large:hover {
	box-shadow: none;
}

/* ================================
	 BUTTON COLOR VARIATIONS 
	 ================================ */

/* For individual column cards */
.wp-block-columns .wp-block-column.card-large:nth-child(1) .wp-block-button .wp-block-button__link,
.wp-block-columns.card-large .wp-block-column:nth-child(1) .wp-block-button .wp-block-button__link {
	background-color: #0073aa;
}

.wp-block-columns .wp-block-column.card-large:nth-child(2) .wp-block-button .wp-block-button__link,
.wp-block-columns.card-large .wp-block-column:nth-child(2) .wp-block-button .wp-block-button__link {
	background-color: #007e54;
}

.wp-block-columns .wp-block-column.card-large:nth-child(3) .wp-block-button .wp-block-button__link,
.wp-block-columns.card-large .wp-block-column:nth-child(3) .wp-block-button .wp-block-button__link {
	background-color: #d54e21;
}

.wp-block-columns .wp-block-column.card-large:nth-child(4) .wp-block-button .wp-block-button__link,
.wp-block-columns.card-large .wp-block-column:nth-child(4) .wp-block-button .wp-block-button__link {
	background-color: #826eb4;
}

.wp-block-columns .wp-block-column.card-large:nth-child(5) .wp-block-button .wp-block-button__link,
.wp-block-columns.card-large .wp-block-column:nth-child(5) .wp-block-button .wp-block-button__link {
	background-color: #d54e21;
}

/* ================================
	 RESPONSIVE ADJUSTMENTS 
	 ================================ */

@media (max-width: 768px) {
	/* Fix gap on mobile */
	.wp-block-columns {
		gap: 20px !important;
			flex-direction: column;
	}
	
	/* Individual card columns */
	.wp-block-column.card-large {
		margin-bottom: 0;
		min-height: auto;
	}
	
	/* Reset fixed heights on mobile */
	.wp-block-column.card-large h2,
	.wp-block-column.card-large h3 {
		min-height: unset;
	}
	
	/* Parent card-large */
	.wp-block-columns.card-large {
		padding: 20px;
		gap: 20px !important;
	}
	
	.wp-block-columns.card-large > .wp-block-column {
		flex-basis: 100% !important;
		margin-bottom: 0;
	}
}

/* small card */
.small-card {
	background-color: #ffffff;
	height: 150px;
	border-radius:5px;
	margin-bottom: 30px;
	padding:15px;
}

.small-card-tall {
	background-color: #ffffff;
	height: 360px;
	border-radius:5px;
	margin-bottom: 30px;
	padding:15px;
}


/* Mobile Breakpoint CSS - Updated */
@media screen and (max-width: 1279px) {
	header#global_header {
	margin-left:  10px;
		margin-right: 10px;
		margin-top: 0;
/*     position: relative; */
	top: 10px;

	.header-wrapper {
/*       flex-direction: column; */
			justify-content: space-between;
		align-items: center;
		padding: 0;
		gap: 0;
		
		/* Logo container styling */
		.custom-logo-link {
			padding: 15px;
			align-self: flex-start;
			
			img {
				max-width: 120px;
			}
		}
		
		/* Menu container */
		nav.nav-menu {
			width: 100%;
		}
		
		/* Main menu styling for mobile */
		ul#menu-global-header {
		flex-direction: column;
		gap: 0;
		width: 100%;
		margin: 0;
		padding: 0;
		
		> li.menu-item {
			width: 100%;
			padding: 0;
			margin: 0;
			border-top: 1px solid rgba(255, 255, 255, 0.15);
			
			a {
			display: block;
			padding: 20px;
			width: 100%;
			position: relative;
			font-size: clamp(1.2rem, 2vw, 1.6rem);
			}
			
			/* Arrow indicator for dropdown menus */
			&.menu-item-has-children > a:after {
				content: "\003E";
				position: absolute;
				right: 20px;
				top: 50%;
				transform: translateY(-50%);
				font-size: 1.8rem;
			}
		}
		
		/* Submenu styling */
		li.menu-item-has-children {
			ul.sub-menu {
			position: static;
			transform: none;
			width: 100%;
			background-color: #000;
			border-radius: 0;
			border-top: 1px solid rgba(255, 255, 255, 0.15);
			padding: 0;
						display: flex;
						max-height: 0;
						overflow: hidden;
			transition: max-height 0.5s ease-in-out;
			li {
				width: 100%;
				max-width: 100%;
				border-top: 1px solid rgba(255, 255, 255, 0.1);
				margin: 0;
				
				a {
				color: #fff;
				padding: 15px 30px;
				}
			}
			}
		}
		}
		
		/* Red section at bottom */
		.mobile-cta-container {
		width: 100%;
		background-color: #DB3A34;
		padding: 30px 20px;
		display: flex;
		justify-content: center;
		
		.get-legal-help-button {
			background-color: white;
			color: #DB3A34;
			text-transform: uppercase;
			font-weight: bold;
			padding: 15px 30px;
			border: none;
			text-align: center;
			text-decoration: none;
			font-size: 1rem;
			letter-spacing: calc(1rem * 0.15);
			display: inline-block;
		}
		}
	}
	}
	
	/* Fix for menu toggle and close buttons */
	.mobile-menu-toggle,
	.mobile-menu-close {
	display: none !important; /* Hide these since we're using a different approach */
	}
}


.card-img-copy-button figure + .is-layout-stack  {
	padding: 21px;
	padding-bottom: 21px !important;
	
	.wp-block-group {
		padding: 0 3px;
	}
	
	.wp-block-buttons {
		margin-bottom: 15px !important;
		padding: 0 3px;
	}
}

.quotes p + .wp-block-image {
	margin-bottom: 0;
}

@media (min-width: 1260px) {
	#post-2 .wp-block-cover.large-cover-hero {
		height: 100svh;
		margin-top: -129px !important;
		margin-bottom: 0;
		min-height: 720px !important;
		position: relative;
		/*min-height: 78vh !important*/
	}

	#post-2 .wp-block-cover.large-cover-hero + section > div > p {
		margin-bottom: 51px;
	}
}

@media (max-width: 1259px) {
	#post-2 .wp-block-cover.large-cover-hero {
		margin-top: -76px !important;
		margin-bottom: 0;
		position: relative;
	}

	#post-2 .wp-block-cover.large-cover-hero + section > div > p {
		margin-bottom: 39px;
	}
}

@media (max-width: 1080px) {
	#post-2 .wp-block-cover.large-cover-hero + section > div > p {
		/*margin-bottom: 39px;*/
	}
}




.client-story-quote blockquote.wp-block-quote > h3 {
	min-height: 78px;
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}

.client-story-quote blockquote.wp-block-quote > p.eplus-wrapper {
	min-height: 126px;
}

.client-story-quote blockquote.wp-block-quote p.eplus-wrapper {
	padding-left: 60px;
	position:relative;
}

.client-story-quote blockquote.wp-block-quote p.eplus-wrapper::before {
	content: "\201C";
	font-weight: bold;
	font-size: 10rem;
	position: absolute;
	left: -5px;
	top: -18px;
	line-height: 1;
	color: #fff;
}

.client-story-quote blockquote.wp-block-quote > p.eplus-wrapper + p + .wp-block-buttons {
	margin-bottom: 20px !important;
}


.client-story-quote figure.aligncenter img {
	margin: 0 auto;
}

.client-story-quote .wp-block-buttons {
	margin-bottom: 5px !important;
	
	.wp-block-button__link.wp-element-button {
/*		background-color: #000 !important;*/
		border-radius: 0 none !important;
		padding-right: 14px;
		padding-left: 14px;
	}
	
}

/* BENNY'S ADDITIONAL STYLES */

footer .subscribe p {
	font-size:1.6em !important;
	max-width: 920px !important;
	margin-bottom: 40px !important;
}
footer .subscribe h2 {
	text-align:center;
}

.page-id-2 .wp-block-image {
	margin-bottom:0px;
}

.page-id-2 .image-card .wp-block-group .wp-block-group {
	margin-right:0px;
}
.page-id-2 .quotes .cards {
	 grid-template-columns: repeat(auto-fill, minmax(420px, 1fr));
	 justify-content:center;

}

.page-id-2 .quotes blockquote, .page-id-2 .quotes .is-layout-row{
	height:100% !important;
} 
.page-id-2 .quotes .wp-block-group__inner-container .cards:first-child {
	margin-bottom:30px;
}
.page-id-2 .quote-image {
	width:40%;
}
.page-id-2 .quote-copy {
	width:60%;
	padding:30px 15px 30px 30px;
	justify-content: center;
}
.page-id-2 .quote-copy h3{
	text-align: center;
}
.page-id-2 .quote-image figure{
	height:100% !important;
}
.page-id-2 .quote-copy .wp-block-button__link{
	background-color:transparent !important;
	text-decoration: underline !important;
	font-weight: bold !important;
	padding-left:0px !important;
	padding-right:0px !important;
}
.page-id-2 .quote-copy .wp-block-buttons {
	margin-top:0px !important;
}
.page-id-2 .quote-copy .wp-block-button a {
	min-height:0px !important;
	min-width:0px !important;
	line-height:0px !important;
}
.page-id-2 .quote-copy p {
	margin-top:10px !important;
	margin-bottom:10px !important;
}
.page-id-2 section.quotes img{
	max-width:10000px !important;
	height:100%;
	}
.page-id-2 .quotes-second-row {
	display:flex !important;
}
.page-id-2 .client-story-quote {
	padding:0px !important;
}

.card-large {
	padding:35px !important;
	
	@media screen and (max-width: 1023px) {
		padding: 21px !important;
	}
}

.card-large .wp-block-image {
	margin-bottom:40px !important;
}

.card-large h6 {
	margin-bottom:15px !important;
}

.card-large .wp-block-buttons {
	margin-bottom:20px !important;
}
.page-id-34 .entry-content section .wp-block-group__inner-container .are-vertically-aligned-center .wp-block-image {
	margin-bottom:20px !important;
}

.wp-block-column.card-large {
	height:auto !important;
}
.wp-block-column.card-large .wp-block-spacer {
	height:0px !important;
}
.page-id-28 .first-column {
	margin-top:80px;
}
.page-id-28 .legal-help-headline {
	margin-top:40px;
	margin-bottom:20px;
}
.page-id-28 .know-your-rights .wp-block-image {
	margin-bottom:0px !important;
}
.page-id-28 .know-your-rights-copy {
	margin:60px 0 40px 0 !important;
	display:inline !important;
}
.page-id-28 .accordion-default .wp-block-details > summary {
	letter-spacing:0.1em !important;
	padding:20px 65px 20px 15px !important;
}
.page-id-28 .accordion-default .wp-block-details > summary::after {
		top: calc(50% - 17px);
	}
summary {
	letter-spacing:0.1em !important;
}
a {
	color:#931d1f;
	font-weight: bold;
}
.cool-black a {
	color:#F4A9AA;
}
.postid-15740 .description-copy {
	margin:0 auto;
	padding:35px 50px;
}
.page-header-sm {
	height:45vh;
	min-height:450px;
}

.entry-content section:nth-child(2) {
	margin-top: max(320px, calc(48vh - 170px));

	@media screen and (max-width: 1279px) {
		margin-top: max(360px, calc(48vh - 170px));
	}

	@media screen and (max-width: 767px) {
		margin-top: max(420px, calc(48vh - 170px));
	}
}

.page-header-sm .wp-block-group__inner-container {
	margin-top:90px !important;
}
.page-header-sm .wp-block-group__inner-container h6{
	margin-top:30px !important;
}

.page-id-2 .entry-content section:nth-child(2) {
	/*margin-top: 10vh;*/
	margin-top: 0;

	@media screen and (max-width: 1279px) {
		/*margin-top:10vh;*/
	}
}

.page-id-30 .join-our-team {
	margin:0 auto;
}
.page-id-30 .join-our-team .wp-block-buttons {
	margin-bottom:0px !important;
}
.page-id-30 .finance-column, .page-id-30 .finance-column h3, .page-id-30 .finance-column li {
	justify-content:center;
	text-align:center; 
}
.page-id-30 footer {
	margin-top:0px !important;
}
.page-id-30 .finance-list {
	max-width: 70px;
	margin: 0 auto;
}
.page-id-30 .finance-container {
	justify-content:center;
}
.page-id-30 .finance-column {

	flex-basis:40% !important;
}

.post footer {
	max-width:1280px;
	margin:0 auto;
	padding-bottom:30px !important;
}
.post footer .post-categories a{
	text-decoration:underline;
	color:#931d1f;
	font-size:16px;
}


@media screen and (max-width: 767px) {

	footer .subscribe .wp-block-group__inner-container {
		padding-top:20px;
		padding-bottom:0px;
	}
	footer .subscribe h2 { 
		font-size: 4.3rem;
	}
	footer .subscribe { 
		padding:30px;
	}
	footer .form button{ 
		margin:20px auto;
	}
	footer .footer-copyright {
		width:80%;
		margin:0 auto;
	}
	footer {
		padding-bottom:60px;
		margin-top:0px;
	}

	/* HOME PAGE id-2 */
	.page-id-2 .large-cover-hero {
		/*min-height:85vh !important;*/
		min-height: 100svh !important;
	}

	.page-id-2 .entry-content section:nth-child(2) {
		margin-top:20px;
	}
	.page-id-2 .cards .wp-block-heading {
		min-height:auto !important;
		margin-bottom:25px;
	}
	.page-id-2 .stats-img {
		padding-top:40px;
	}
	.page-id-2 .quotes .cards {
		grid-template-columns:auto;
	}
	.page-id-2 .quotes .is-layout-row {
		flex-direction:column;
	}
	.page-id-2 .quote-image {
		width:auto;
	}
	.page-id-2 .quote-image img {
		aspect-ratio:16/9 !important;
	}
	.page-id-2 .quote-copy {
		width:auto;
	}
	.page-id-2 .quote-copy h3 {
		margin-bottom:15px !important;
		font-size:2.4rem;
	}
	.page-id-2 .quotes .wp-block-group__inner-container .cards:first-child {
		margin-bottom: 20px;
	}
	.page-id-2 .card-img-copy-button img {
		aspect-ratio: 16/9;
	}
	.page-id-2 .card-img-copy-button .tile-stack h3, .page-id-2 .card-img-copy-button .tile-stack p {
		margin-bottom:15px;
	}
	.page-id-2 .card-img-copy-button .tile-stack, .page-id-2 .card-img-copy-button .tile-stack .wp-block-group {
		border:0px;
	}
	.page-id-2 .card-img-copy-button .image-orient-top img {
		object-position:top;
	}
	.page-header-sm {
		min-height:60vh;
	}
	.page-header-sm .wp-block-group__inner-container {
		padding-left:25px;
		padding-right:25px;
	}
	

	/* .entry-content section:nth-child(2) {
		margin-top: max(380px, calc(45vh - 170px));
	} */

	/* ABOUT PAGE id-28 */
	.page-id-28 .accordion-default .wp-block-details > summary {
		text-align:left;
	}

	/* OUR IMPACT PAGE id-26 */
	.wp-block-columns.is-layout-flex > .wp-block-column:nth-child(2) {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

}



/* contact */
#contact-us-form {
	h3 {
		margin-bottom: 1rem;
		
		p {
			margin-bottom: 1.5rem;
		}
	}
	
	.wpcf7-form p {
		margin-bottom: 1.5rem;
	}
	
	.form input[type="text"],
	.form textarea,
	.form input[type="email"] {
		width: 100%;
	}

	.form input[type="text"],
	.form textarea,
	.form input[type="email"],
	.form input[type="checkbox"] {
		flex: 1;
		border: 1px solid #000;
		padding: 0 20px;
		font-size: 16px;
		color: #000;
		background-color: #fff;
		box-sizing: border-box;
		height: 60px;
	}
	
	.form textarea {
		padding-top: 20px;
		padding-bottom: 20px;
		min-height: 110px;
	}

	@media screen and (max-width: 480px) {
		.form input[type="text"],
		.form textarea,
		.form input[type="email"] {
			width: calc(100vw - 36px);
		}
		
	}

		.form input[type="checkbox"] {
			margin-left: -1rem;
			width: 24px;
			height: 24px;
		}

		label:has(input[type="checkbox"]) {
			align-items: center;
			display: flex;
			gap: 15px;
			padding: 15px 0;
			
			
		}
	
	.form input[type="text"]::placeholder,
	.form textarea::placeholder,
	.form input[type="email"]::placeholder {
		color: #000;
		opacity: 1;
		width: 100%;
	}

	.form button,
	.form .button {
		border: none;
		background-color: #000;
		color: #fff;
		text-transform: uppercase;
		letter-spacing: 1px;
		font-weight: bold;
		padding: 0 20px;
		cursor: pointer;
		font-size: 16px;
		height: 60px;
		width: 180px;
	}
}

.footer-wrapper {
	
	.mc-field-group {
		display: flex;

		@media screen and (max-width: 480px) {
			flex-direction: column;
			
			#mc-embedded-subscribe-2 {
				width: 100%;
			}
		}
	}
	/* Input field styling */
	.form input[type="text"],
	.form textarea,
	.form input[type="email"] {
		border: 1px solid #000;
		flex: 1;
		padding: 20px;
		font-size: 16px;
		color: #000;
		background-color: #fff;
		box-sizing: border-box;
		height: 60px;
	}
	
	.form input[type="text"]::placeholder,
	.form textarea::placeholder,
	.form input[type="email"]::placeholder {
		color: #000;
		opacity: 1;
	}
	
	/* Button styling */
	.form button,
	.form .button {
		border: none;
		background-color: #000;
		color: #fff;
		text-transform: uppercase;
		letter-spacing: 1px;
		font-weight: bold;
		padding: 0 20px;
		cursor: pointer;
		font-size: 16px;
		height: 60px;
		width: 180px;
	}
	
	.form button:hover,
	.form .button:hover {
		background-color: #222;
	}
}


.single-post {
	.entry-content {
		/* margin: 30px auto; */
		/* max-width: 640px; */
		
		p {
			margin-bottom: 1rem;
		}
	}
}



.footer-links-a {
	min-width: 183px;

	a {
		display: block;
		margin: 3px 0;
		padding: 3px 0;
	}
}

#social-container {
	display: flex;
	width: 100%;

	nav {
		margin: 0 auto;
	}
}


#menu-follow-us li {
	float: left;
}

#menu-follow-us a {
	display: inline-block;
	width: 36px;
	height: 48px;
	text-indent: -9999px;
	overflow: hidden;
	position: relative;
}

#menu-follow-us li {
	margin-right: 1px;
	margin-left: 1px;
}

#menu-follow-us li a::before {
	font-family: "Font Awesome 6 Brands";
	font-size: 24px;
	line-height: 48px;
	text-align: center;
	text-indent: 0;
	position: absolute;
	left: 0;
	right: 0;
	color: #333;
}

/* Instagram */
.social-ig a::before {
	content: "\f16d";
}

/* LinkedIn */
.social-li a::before {
	content: "\f0e1";
}

/* Facebook */
.social-fb a::before {
	content: "\f09a";
}

/* YouTube */
.social-yt a::before {
	content: "\f167";
}

/* X (formerly Twitter) */
.social-x a::before {
	content: "\e61b"; /* Font Awesome 6 Brands for X */
}

#menu-follow-us li a:hover::before {
	color: #1B1B1B; /* or whatever accent color you prefer */
}


/* news and commentary */
.entries-list h1,
.entries-list h2,
.entries-list h3 {
	padding-bottom: 1.2rem;
	text-align: center;
}

.entries-list h2,
.entries-list h3 {
	padding-bottom: .6rem;
}

.entries-list p,
.entries-list ul {
	margin: 1rem auto;
	max-width: 640px;
}

.entries-list hr {
	display: block;
	margin: 45px 15px;
}



#four-pillars .wp-block-column .wp-block-group__inner-container {
	display: flex;
	flex-direction: column;
	
	p.eplus-wrapper {
		margin-bottom: 36px;
	}

	.wp-block-buttons {
		margin-top: auto !important;
		margin-bottom: 24px !important;
		
		
		.wp-block-button__link:hover {
			background-color: rgba(150, 20, 22, 1) !important;
		}
	}
}



/* additional layout classes */
.wp-block-group.is-layout-grid.grid-2-col {
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
	margin-right: auto;
	margin-left: auto;
	max-width: 1080px;
	
	.wp-block-group {
		padding: 1.5rem .5rem; 

		h3 {
			text-wrap: balance;
		}

		h3 + h5 {
			margin-bottom: 1.2rem;
		}

		p {
			text-wrap: balance;

		}
	}
	
	@media screen and (max-width: 768px) {
		grid-template-columns: 1fr;
	}
}

.case-list {

	margin-right: auto;
	margin-left: auto;
	max-width: 1080px;

	p {
		margin-bottom: 1.2rem;
	}
}

/* outliers  */
#policy-our-priorities img {
	max-height: 600px;
	object-position: center calc(100% - 33%);
}

#proactive-litigation-overview img {
	max-height: 330px;
}

figure.aligncenter img {
	margin: 0 auto;
}

.wp-block-column.card-large > .wp-block-group.flex-fix {
	flex-grow: 1;
	margin-top: 0;

	p {
		font-size: 16px;
		line-height: 1.6;
		margin-bottom: 16px;
	}
}

section.condense-spacing {
	padding-bottom: 0;
}

section.condense-spacing + section.condense-spacing {
	padding-top: 0;
}

.wp-block-columns.no-margin-bottom {
	margin-bottom: 0;
}

.wp-block-columns.card-large p.no-flex-grow,
.wp-block-column.card-large p.no-flex-grow {
	flex-grow: initial;
}

.wp-block-column.card-large figure {
	overflow: initial;
}

.show-caption figure {
	position: relative;

	figcaption {
		bottom: 0;
		font-size: 1.2rem;
		position: absolute;
		transform: translateY(calc(100% + 3px));
	}
}



/* temp */
.temp-hide {
	display: none !important;
}



/* additional responsive adjustments */
@media screen and (max-width: 768px) {
	.page-header-sm h1.wp-block-heading.has-text-align-center {
		font-size: 42px;
	}

	section.stats-img  {
		padding: 12px;
		
		.wp-block-column {
			padding: 12px 15px;
		}
		
		.wp-block-group {
			padding: 6px;
			width: 100%;
		}
	}

	.accordion-default .wp-block-details > summary {
		font-size: 1.6rem;
	}
	
	.page-about-us .wp-block-genesis-blocks-gb-profile-box {
		height: auto;
	}
	
	.card-large h6.has-text-align-left,
	.card-large h6.wp-block-heading {
		margin-right: auto;
	}
	
	.card-large h6 + h2.wp-block-heading {
		margin-right: auto;

		br {
			display: none;
		}
	}
	
	.image-copy-stat {
		margin-bottom: 0;
	}

	div[style="height:50px"] {
		height: 21px !important;
	}
	
	.page-id-28 .first-column {
		margin-top: 0;
	}
	
	#event-highlight .wp-block-column + .wp-block-column {
		padding: 3px 15px 30px;
	}
	
	.wp-block-columns.card-large p {
		margin-right: 0;
	}
	
	.card-large .wp-block-image {
		margin-bottom: 15px !important;
	}
}

.archive.category  {
	article {
		margin: 12px 15px;
		
		h2 {
			font-size: 1.5rem;
		}
	}
	
	.navigation.pagination {
		margin: 36px auto 3px;
		padding-top: 18px;
		text-align: center;
	}
}

#archive-entry-content {
	padding: 30px 18px;
}

	#archive-title h1 {
		display: block;
		font-size: 3.0rem;
		margin-bottom: 24px;
		text-align: center;
	}
	
	.page-numbers {
		margin-right: 3px;
		margin-left: 3px;
		padding-right: 3px;
		padding-left: 3px;
	}
	
	.archive-excepert {
		padding: 3px 6px;
	}
	
.text-distribute-none,
.headline-large.text-distribute-none {
	text-align: left;
	text-distribute: none;
}