/*
Theme Name: CCC
Theme URI:
Author: Helen + Helene
Author URI:
Description: A blank WordPress block theme.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ccc
Tags: block-patterns, full-site-editing
*/

/* Scroll reveal */
.reveal-on-scroll {
	opacity: 0;
	transform: translateY(100px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.reveal-on-scroll.is-revealed {
	opacity: 1;
	transform: translateY(0);
}

body {
	color: #343331;
	/* Content/LG/Body Regular */
	font-family: "Inter", sans-serif;
	font-size: 1.1rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2rem;
}

.wp-site-blocks {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.wp-site-blocks > main {
	flex: 1;
}

a { color: #343331; text-decoration: underline; }
a:link { color: #343331; text-decoration: underline; }
a:active { color: #343331; text-decoration: underline; }
a:visited { color: #343331; text-decoration: underline; }
a:hover { color: #FB695A; text-decoration: underline; }

header {
	background-color: #E7F2EA;
	padding: 3rem;
}

.ccc-header-inner {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

header .ccc-logo {
	max-width: 250px;
}

/* Featured image hero — green top half, white bottom half */
.featured-image-hero {
	background: linear-gradient(to bottom, #E7F2EA 50%, #ffffff 50%);
	padding-top: 0;
	margin-top: -3rem;
}

.featured-image-hero .wp-block-post-featured-image img, .featured-image-hero img {
	max-width: 1000px;
	width: 100%;
	height: auto;
	display: block;
}

/* Heading 1 */
h1 {
	color: #000;
	font-family: "Libertinus Serif" !important;
	font-size: 4rem !important;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin: 3rem 0 !important;
	text-align: left;
}

/* No breadcrumb above — give h1 extra top breathing room */
main:not(:has(.breadcrumb)) h1 {
	margin-top: 5rem !important;
}

/* Heading 2 */
h2 {
	color: #000;
	text-align: center;
	font-family: "Libertinus Serif" !important;
	font-size: 2.5rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-align: left;
	margin: 5rem 0 2rem 0 !important;
}

/* Heading 3 */
h3 {
	color: #343331;
	font-family: "Inter", sans-serif !important;
	font-size: 2rem;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	text-align: left;
}

/* Heading 4 */
h4 {
	color: #000;
	font-family: "Inter", sans-serif !important;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-align: left;
}

/* Heading 5 */
h5 {
	color: #000;
	font-family: "Inter", sans-serif !important;
	font-size: 1.25rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-align: left;
}

/* Heading 6 */
h6 {
	color: #000;
	font-family: "Inter", sans-serif !important;
	font-size: 1rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-align: left;
}

strong {
	font-weight: 600;
}

/* Main Navigation */
header .wp-block-navigation a {
	color: #343331;
	font-family: "Inter", sans-serif;
	font-size: 1.15rem;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	letter-spacing: 0;
	text-decoration: underline;
	text-decoration-color: transparent;
	text-decoration-thickness: 4px;
	text-underline-offset: 8px;
	transition: text-decoration-color 0.2s ease;
}

header .wp-block-navigation a:hover,
header .wp-block-navigation .current-menu-item > a {
	text-decoration-color: #343331;
}

/* Login button */
header .wp-block-navigation .nav-btn-login > a {
	padding: 0.75rem 1.5rem !important;
	border: 2px solid #FB695A !important;
	border-radius: 8px !important;
	background: #FB695A !important;
	color: #ffffff !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	text-decoration-color: transparent !important;
	transition: all 0.3s ease !important;
}

header .wp-block-navigation .nav-btn-login > a:hover {
	border: 2px solid #4C492A !important;
	background: #4C492A !important;
	text-decoration-color: transparent !important;
}

.gform_wrapper p + p {
	margin-top: 0 !important;
}

.mpcs-classroom p {
	margin: 1.5rem 0 0 0;
}

/* Lead Paragraph */
p.is-style-lead-paragraph {
	color: #000;
	font-family: "Libertinus Serif";
	font-size: 2rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.75rem; /* 150% */
}

.contact-cta-bar p {
	margin: 0 !important;
}

.boxit {
	background-color: rgba(240, 234, 218, 0.5);
	padding: 3rem;
	margin: 1rem 0 !important;
	border-radius: 12px;
}

.boxit h1:first-child, .boxit h2:first-child, .boxit h3:first-child, .boxit h4:first-child, .boxit h5:first-child, .boxit h6:first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.home .boxit {
	margin-top: 0 !important;
}

/* Breadcrumb */
.breadcrumb {
	color: #343331;
	font-family: "Inter", sans-serif;
	font-size: 0.75rem !important;
	font-style: normal;
	font-weight: 400;
	line-height: 2rem; /* 200% */
	margin-top: 3rem !important;
	margin-bottom: 0 !important;
}

.breadcrumb i {
	margin: 0.7rem 0.1rem 0 0.1rem;
}

.wp-block-button a, .btn-light {
	padding: 1rem 2rem !important;
	border: 2px solid #4C492A !important;
	border-radius: 8px !important;
	background: transparent !important;
	color: #4C492A !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	transition: all 0.3s ease !important;
}

.wp-block-button a:hover, .btn-light:hover {
	border: 2px solid #FB695A !important;
	color: #FB695A !important;
}

.btn-dark, .gform_wrapper input[type="submit"] {
	padding: 1rem 2rem !important;
	border: 2px solid #4C492A !important;
	border-radius: 8px !important;
	background: #4C492A !important;
	color: #ffffff !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	transition: all 0.3s ease;
}

.btn-dark:hover, .gform_wrapper input[type="submit"]:hover {
	border: 2px solid #FB695A !important;
	background: #FB695A !important;
}

.btn-secondary, .logout-btn a {
	padding: 1rem 2rem !important;
	border: 2px solid #FB695A !important;
	border-radius: 8px !important;
	background: #FB695A !important;
	color: #ffffff !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	font-size: 1rem !important;
	transition: all 0.3s ease;
}

.btn-secondary a:hover, .logout-btn a:hover {
	border: 2px solid #4C492A !important;
	background: #4C492A !important;
}

.badge {
  display: inline-block;
  padding: 0rem 0.75rem;
  font-size: 0.75rem;
  font-weight: 600;
  border-radius: 999px;
  border: 1px solid #343331;
  color: #343331;
}

.badge.section-complete {
  border: 1px solid #3F9C74;
  color: #3F9C74;
}

.badge.section-in-progress {
  border: 1px solid #FB695A;
  color: #FB695A;
}

.badge.section-incomplete {
  border: 1px solid #343331;
  color: #343331;
}

.badge-container {
	margin: 0 0 1.5rem 0;
}

/* Accordion */

.wp-block-accordion {
	border: 1px solid #B2B05D;
	padding: 1.5rem;
	border-radius: 12px;
	margin-top: -1px;
}

.wp-block-accordion:first-of-type {
	margin-top: 2rem;
}

.wp-block-accordion:last-of-type {
	margin-bottom: 2rem;
}

.wp-block-accordion-heading {
	font-family: Graphik;
	font-size: 21px;
	font-style: normal;
	line-height: normal;	
}

.wp-block-accordion-heading strong {
	font-weight: 600;
}

.wp-block-accordion-heading__toggle-icon {
  color: #FB695A;
  pointer-events: none;
}

.wp-block-accordion-panel {
	border-top: 1px solid #B2B05D;
	padding-top: 1.5rem;
}


footer {
	margin-top: 10rem;
	font-size: 0.8rem !important;
	line-height: 1.25rem !important;
}

footer h6 {
	font-weight:700;
	letter-spacing:0 !important;
	text-transform:uppercase;
	color: #fff;
}

.ccc-footer-container {
	padding: 5rem !important;
}

.ccc-footer-col1 {
	margin-right: 4rem !important;
}

.ccc-footer-content {
	padding: 5rem;
}

footer .wp-block-columns {
	--wp--style--block-gap: 4rem;
	gap: 4rem !important;
	align-items: stretch !important;
}

footer .wp-block-navigation__container {
	gap: 0.25rem !important;
}

.ccc-footer-col-copy {
	flex-basis: 50% !important;
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
}

.ccc-footer-col-copy > *:last-child {
	margin-top: auto !important;
}

.ccc-footer-col-nav {
	flex-basis: 33.33% !important;
}

.ccc-footer-nav-label,
footer h6 {
	font-size: 0.8rem !important;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

footer .wp-block-navigation a {
	font-size: 0.8rem !important;
	text-decoration: underline !important;
	text-decoration-color: currentColor !important;
}

footer .wp-block-navigation__container {
	gap: 0.25rem !important;
}

/* Gravity Forms */

.grecaptcha-badge {
  display: none !important;
}

.gform-theme--api, .gform-theme--foundation {
	--gf-form-gap-y: 1rem !important;
}

h2.gform_title {
	color: #000;
	text-align: left;
	font-family: "Inter", sans-serif !important;
	font-size: 2rem;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.gform_wrapper .gfield {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin-bottom: 1rem;
}

.gform_wrapper label, .gfield_label {
	font-family: "Inter", sans-serif !important;
	font-size: 1rem !important;
	font-weight: 500 !important;
	color: #343331 !important;
}

.gform_wrapper input[type="text"], .gform_wrapper input[type="email"], .gform_wrapper input[type="password"], .gform_wrapper textarea {
	width: 100% !important;
	padding: 12px 16px !important;
	border: 1px solid #D9D9D9 !important;
	border-radius: 8px !important;
	font-family: "Inter", sans-serif !important;
	font-size: 1rem !important;
	color: #343331 !important;
	background: #fff !important;
	box-sizing: border-box !important;
}

.gform_wrapper input:focus {
	outline: none;
	border-color: #4C492A;
}

.gform_wrapper label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.gf_login_links {
	border-top: 1px solid #4C492A;
	padding-top: 1rem;
	margin-top: 2rem;
	font-family: "Inter", sans-serif;
	font-size: 0.875rem;
}

.gf_login_links a:link {
	color: #4C492A !important;
	text-decoration: underline;
}

.gf_login_links a:hover {
	color: #FB695A !important;
	text-decoration: underline;
}

.gform_wrapper .gfield_validation_message {
	color: #c0392b;
	font-size: 0.875rem;
}

.page-template-our-toolkit .gform_wrapper p {
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	font-size: 0 !important;
}

.page-template-our-toolkit .gform_wrapper br {
	display: none !important;
}

.gfield_required, .gfield_required_text {
	color: #FB695A !important;
	font-size: 0.8rem;
}

.gform-footer.gform_footer.top_label {
	margin-top: 0;
}

/* Contact CTA Bar */
.contact-cta-bar {
	margin-top: 1rem !important;
	margin-bottom: 0rem !important;
	padding: 3rem;
	background-color: #E7F2EA;
	border-radius: 12px;
}

.contact-cta-bar p,
.contact-cta-bar a {
	color: #343331;
	font-family: "Inter", sans-serif;
	font-size: 1.25rem;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.contact-cta-bar > .wp-block-group {
	gap: 8px;
}

.contact-cta-icon {
	font-size: 1.25rem;
	color: #343331;
	flex-shrink: 0;
	margin-right: 8px;
}

.contact-cta-link a {
	white-space: nowrap;
}

/* Blockquote Pattern */
.ccc-blockquote {
	background: #E7F2EA;
	border-radius: 12px;
	padding: 4rem;
	position: relative;
	margin: 5rem 0 3rem 0;
}

.ccc-quote-icon {
	display: block;
	font-size: 8rem;
	color: #6BBD9B;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 3rem;
	transform: translateY(-50%);
}

.ccc-quote-text {
	font-family: "Libertinus Serif" !important;
	font-size: 2rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
	color: #000 !important;
	margin-bottom: 1.5rem !important;
}

.ccc-quote-attribution {
	font-family: "Inter", sans-serif !important;
	font-size: 0.875rem !important;
	font-weight: 700 !important;
	color: #343331 !important;
	margin-top: 0 !important;
}

/* WP Styles */

.wp-block-separator:not(.is-style-wide):not(.is-style-dots) {
	width: 100%;
}


/* Cards Grid Pattern */

.ccc-cards-grid {
	margin: 2rem 0;
}

.ccc-card {
	border: 1px solid #D9D9D9;
	border-radius: 12px;
	background: #fff;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.ccc-card-image {
	margin: 0 !important;
}

.ccc-card-image img {
	width: 100%;
	display: block;
	aspect-ratio: 2 / 1;
	object-fit: cover;
	border-radius: 0;
	margin: 0 !important;
}

.ccc-card-content h3 {
	font-size: 1.5rem;
	font-weight: 600;
	margin: 0 0 1rem 0;
}

.ccc-card-content h4 {
	font-size: 1rem;
	font-weight: 600;
	margin: 0 0 1rem 0;
	color: #333333;
}

.ccc-card-content {
	font-size: 1rem;
	line-height: 1.75;
	padding: 0 2rem 2rem 2rem;
	margin-top: 2rem;
	flex: 1;
	display: flex;
	flex-direction: column;
}

/* Cards are always equal width — works for 1, 2, or 3 cards */
.ccc-cards-grid .wp-block-columns .wp-block-column {
	flex: 1 1 0 !important;
	min-width: 0 !important;
}

.ccc-card .wp-block-buttons {
	margin-top: auto;
}

/* 1 column on mobile */
@media (max-width: 599px) {
	.ccc-cards-grid .wp-block-columns .wp-block-column {
		flex-basis: 100% !important;
	}
}

/* CTA Block Pattern */
.ccc-cta-block {
	margin-top: 4rem;
	margin-bottom: 4rem;
	padding: 4rem !important;
	background-color: rgba(240, 234, 218, 0.5);
	border-radius: 12px !important;
}

.ccc-cta-image-col,
.ccc-cta-block .wp-block-columns .wp-block-column:first-child {
	flex: 0 0 200px !important;
	width: 200px !important;
	max-width: 200px !important;
	min-width: 0 !important;
}

.ccc-cta-block .wp-block-columns {
	gap: 3rem !important;
}

.ccc-cta-block .wp-block-columns .wp-block-column:last-child {
	flex: 1 1 0 !important;
	width: auto !important;
}

.ccc-cta-block .wp-block-image img {
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
	width: 100%;
	max-width: 200px;
	max-height: 200px;
}

@media (max-width: 767px) {
	.ccc-cta-block .wp-block-columns {
		flex-direction: column;
	}
	.ccc-cta-block .wp-block-column {
		width: 100% !important;
		flex-basis: 100% !important;
	}
}

/* MEMBERPRESS INLINE CSS OVERRIDE */

#mpcs-main #bookmark, .mpcs-lesson.current {
	background: none !important;
}

/* PROGRESS BAR */

.progress {
  display: flex;
  align-items: center;
  justify-content: space-between; /* 🔥 THIS is key */
  width: 100%;
  margin: 0 0 2rem 0;
}

.progress .section-number {
  display: flex;
  flex-direction: column; /* 👈 stack icon above */
  align-items: center;   /* center everything */
  flex: 1;
}

.icon {
  width: 50%;
  margin-left: auto;
  height: 80px; /* or your set height */
  display: flex;
  align-items: flex-end; /* 👈 THIS aligns image to bottom */
  justify-content: flex-end; /* keeps it right aligned */
}

.progress .icon img {
  max-height: 100%;
  width: auto;
  display: block;
}

.progress .section-incomplete .icon img, .progress .section-in-progress .icon img {
	opacity: 0;
}

.progress .circle-line {
  display: flex;
  align-items: center;
  width: 100%;
}

.progress .circle {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #d9cebc;
}

.progress .section-complete .circle-1, .progress .section-in-progress .circle-1 { background-color: #79c9a6; }
.progress .section-complete .circle-2, .progress .section-in-progress .circle-2 { background-color: #b4b25d; }
.progress .section-complete .circle-3, .progress .section-in-progress .circle-3 { background-color: #efbf60; }
.progress .section-complete .circle-4, .progress .section-in-progress .circle-4 { background-color: #a88f72; }
.progress .section-complete .circle-5, .progress .section-in-progress .circle-5 { background-color: #ff826e; }

.progress .line {
  flex: 1;
  height: 5px;
  background-color: #d9cebc;
}

.progress .section-complete .line-1, .progress .section-in-progress .line-1 { background-color: #79c9a6; }
.progress .section-complete .line-2, .progress .section-in-progress .line-2 { background-color: #b4b25d; }
.progress .section-complete .line-3, .progress .section-in-progress .line-3 { background-color: #efbf60; }
.progress .section-complete .line-4, .progress .section-in-progress .line-4 { background-color: #a88f72; }
.progress .section-complete .line-5, .progress .section-in-progress .line-5 { background-color: #ff826e; }

/* COURSES */

.single-mpcs-course .mpcs-section .section-description {
	font-size: 0.8rem;
	line-height: 1.5;
}

.single-mpcs-course .mpcs-lessons {
	border-top: 1px solid #cccccc;
	margin-top: 2rem !important;
	padding-top: 2rem !important;
}

.single-mpcs-course .sections {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.single-mpcs-course .sections .mpcs-section {
	border: 1px solid #D9D9D9;
	border-radius: 12px;
	padding: 3rem;
}

.single-mpcs-course .mpcs-section ul {
	list-style: none;
	padding: 1rem 0 0 0;
	margin: 0;
}

/* Section heading styles */
.single-mpcs-course .mpcs-section-header {
	color: #343331;
	font-family: "Inter", sans-serif !important;
	font-size: 2rem;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	background-color: transparent;
	border: none;
	padding: 0;
	margin-bottom: 0.5rem;
}

.single-mpcs-course .mpcs-lesson-row-link {
	display: flex !important;
	flex-direction: row;
	gap: 5px;
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.course-progress .progress-text, .mpcs-lesson i.mpcs-circle-regular {
	color: #343331;
}

.single-mpcs-course .mpcs-lesson-icon {
	display: none;
}

.single-mpcs-course .mpcs-lesson-button {
	display: none;
}

#breadcrumb {
	display: none;
}

.single-mpcs-course .bookmark {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 0 !important;
}

.single-mpcs-course .bookmark.completed {
  justify-content: flex-start;
}

.single-mpcs-course .bookmark.completed img {
	margin: 0;
	padding: 0;
}
.single-mpcs-course .bookmark h4 {
	margin: 0;
}

/* LESSONS */

.single-mpcs-lesson .badge-container {
	display: none;
}

.single-mpcs-lesson .sections { 
	margin-top: 3rem; 
}

.single-mpcs-lesson .mpcs-main-content {
	margin-bottom: 5rem;	
}

.single-mpcs-lesson h1 {
	margin-top: 0 !important;
}

/* Hide the main heading of the course name */
.single-mpcs-lesson .course-progress h2 {
	display: none;
}

/* Layout the section title and progress bar side by side */
.single-mpcs-lesson .mpcs-section {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* Don't display any of the inactive heading */
.single-mpcs-lesson .mpcs-section .mpcs-section-header {
	display: none;
}

/* Display the active heading */
.single-mpcs-lesson .mpcs-section .mpcs-section-header.active {
	display: unset;
}

.single-mpcs-lesson .section-number {
	display: none;
}

/* Section heading styles */
.section-number, .mpcs-sidebar-with-accordion #mpcs-sidebar .mpcs-section-header {
	text-transform: uppercase;
	color: #FB695A;
	font-size: 1rem;
	font-weight: 600;
	border: none;
	background-color: transparent;
	width: auto;
}

.section-name {
	font-size: 0.9rem;
	color: rgba(52, 51, 49, 0.5);
}

/* Remove the accordion arrow */
.mpcs-sidebar-with-accordion #mpcs-sidebar .mpcs-section-header:after {
	content: none;
}

.mpcs-sidebar-with-accordion #mpcs-sidebar .mpcs-section-title {
	padding: 1rem 0 !important;
}

.single-mpcs-lesson .mpcs-lessons {
	display: none;
}

.single-mpcs-lesson .section-active .mpcs-lessons {
  display: flex !important;
  flex-direction: row;
  gap: 0;
  padding-left: 0;
  margin: 0;
  list-style: none;
}

.single-mpcs-lesson .mpcs-lessons li {
  margin: 0;
}

.single-mpcs-lesson .mpcs-lesson-link {
	display: none;
}

/* Have the next button align right on first lesson */
#mpcs-lesson-navigation {
  display: flex !important;
  width: 100%;
}

/* Have the next button align right on first lesson */
#mpcs-lesson-navigation #mpcs-classroom-next-lesson-link {
  margin-left: auto;
}

/* Align Previous and Next properly */
.single-mpcs-lesson .navbar-section {
	display: flex !important;
	justify-content: space-between;
}

.single-mpcs-lesson .navbar-section a {
	padding: 1rem;
	border: 2px solid #4C492A;
	border-radius: 8px;
	background: transparent;
	color: #4C492A;
	text-decoration: none;
	font-weight: 600;
}

.single-mpcs-lesson .hide-md {
	display: none;
}

.single-mpcs-lesson .sidebar-open {
	display: none;
}

/* Disable section headings */
.mpcs-classroom .mpcs-section button {
	pointer-events: none;
	cursor: default;
	text-align: left;
}

.mpcs-classroom  .mpcs-lessons .completed .mpcs-lesson-row-link {
	color: #3F9C74;
}

.single-mpcs-course .mpcs-lessons .current .mpcs-lesson-row-link {
	color: #FB695A;
}

.single-mpcs-lesson .mpcs-lessons .current .mpcs-lesson-row-link {
	color: #4C492A;
}

.mpcs-classroom .mpcs-lessons .locked {
	color: rgba(52, 51, 49, 0.5);
}

.single-mpcs-course .fa-circle {
	display: none;
}

.single-mpcs-lesson .fa-lock {
	display: none;
}

.mpcs-classroom .mpcs-lessons .completed .mpcs-lesson-row-link:hover, .mpcs-classroom  .mpcs-lessons .current .mpcs-lesson-row-link:hover {
	color: #4C492A;
}

/* Make the Toolkit menu item active when in the lessons/course */
.mpcs-classroom header .wp-block-navigation .nav-btn-toolkit > a {
	text-decoration-color: #343331;
}

.single-mpcs-lesson .progress {
	display: none;
}

/* FIXES */

.mpcs-classroom .wp-block-group.is-layout-flex {
  display: flex;
  align-items: center;
  
}

.mpcs-classroom .wp-block-navigation {
  margin-left: auto;
}

.mpcs-classroom .contact-cta-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.mpcs-classroom .contact-cta-link {
  margin-left: auto;
}

.mpcs-classroom .content-layout {
  display: flex;
  flex-direction: column;
}

.progress {
  order: 1;
}

.bookmark, .congratulations {
  order: 2;
}

.sections {
  order: 3;
}

.mepr-login-form-wrap {
	display: none;
}

/* Constrained layout centering — required for MemberPress classroom templates
   that bypass the block template renderer (which normally injects margin: auto) */
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Bootstrap-style responsive container widths for WP constrained layout */
@media (max-width: 575.98px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 100% !important;
	}
}

@media (min-width: 576px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 540px !important;
	}
}

@media (min-width: 768px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 720px !important;
	}
}

@media (min-width: 992px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 960px !important;
	}
}

@media (min-width: 1200px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 1140px !important;
	}
}

@media (min-width: 1400px) {
	.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
		max-width: 1320px !important;
	}
}

/* Hide floating reCAPTCHA badge — branding text shown inline on forms instead */
.grecaptcha-badge {
	visibility: hidden !important;
}

.recaptcha-notice {
	font-size: 12px;
	color: #666666;
	margin-top: 8px;
	line-height: 1.5;
}

.recaptcha-notice a {
	color: #666666;
}
