/* CSS fmcm v9
* Stripping out booking form styling and keeping it basic
* Stripping out hero and footer section styling for booking form page
* Stripped out reliance on body.fmcm-booking-page and .fmcm-booking-page
*/

/* Keep Cover block parallax working when reduced-motion styles disable fixed backgrounds. */
@media (prefers-reduced-motion: reduce) {
	.wp-block-cover.has-parallax,
	.wp-block-cover.has-parallax .wp-block-cover__image-background {
		background-attachment: fixed !important;
	}
}

.fmcm-machine-resource-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
}

.fmcm-machine-directory-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
}

.fmcm-machine-directory-card {
    flex: 1 1 260px;
    max-width: 280px;
    box-sizing: border-box;
}

.fmcm-machine-resource-card,.fmcm-machine-directory-card {
    background:#fff;
    border:1px solid var(--wp--preset--color--secondary,#d9c0a2);
    border-radius:12px;
    padding:28px;
    display:flex;
    flex-direction:column
}

.fmcm-machine-directory-card {
	background: #4a3528;
	border-color: #4a3528;
	color: #fff;
}

.fmcm-machine-directory-card strong,
.fmcm-machine-directory-card span {
	color: #fff;
}

.fmcm-machine-directory-card:hover,
.fmcm-machine-directory-card:focus-visible {
	background: #38271d;
	border-color: #38271d;
	color: #fff;
}

.fmcm-machine-directory-card:focus-visible {
	outline: 3px solid var(--wp--preset--color--secondary, #d9c0a2);
	outline-offset: 3px;
}

.fmcm-machine-directory-card__image {
	width: 160px;
	height: 160px;
	object-fit: contain;
	display: block;
	margin: 0 auto 6px;
	border-radius: 10px;
}

.fmcm-machine-resource-card {
    flex: 1 1 260px;
    max-width: 280px;
    box-sizing: border-box;
}

/*
 * Hide resources beyond the initial display limit.
 */
.fmcm-machine-resource-card--hidden {
	display: none;
}

/*
 * Reveal hidden resources when the grid is expanded.
 */
.fmcm-machine-resource-grid.is-expanded .fmcm-machine-resource-card--hidden {
	display: flex;
}

/*
 * Show more / Show less button.
 */
.fmcm-machine-resource-show-more {
	display: block;
	margin: 24px auto 0;
	padding: 10px 18px;

	background: transparent;
	border: 1px solid var(--wp--preset--color--contrast, #333);
	border-radius: 6px;

	color: var(--wp--preset--color--contrast, #333);
	font: inherit;
	font-weight: 600;

	cursor: pointer;
}

.fmcm-machine-resource-show-more:hover,
.fmcm-machine-resource-show-more:focus {
	background: var(--wp--preset--color--contrast, #333);
	color: #fff;
}

.fmcm-machine-resource-show-more:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

/** Brands page - used in shortcode: fmcm_codex_mcp_machine_brand_directory_shortcode()*/
.fmcm-machine-directory-card-unavailable {
	background: #6a574a;
	border-color: #6a574a;
	color: #fff;
	cursor: default;
}

.fmcm-machine-directory-card-unavailable strong,
.fmcm-machine-directory-card-unavailable span {
	color: #fff;
}

.fmcm-machine-directory-card-unavailable:hover,
.fmcm-machine-directory-card-unavailable:focus {
	transform: none;
	box-shadow: none;
}

.fmcm-machine-directory-card {
    text-decoration:none;
    gap:8px
}

.fmcm-machine-directory-card span {
    font-size:.9em
}

.fmcm-machine-resource-card h3 {
    margin-top:0
}

.fmcm-machine-resource-card p {
    flex:1
}

.fmcm-machine-resource-card a {
    font-weight:700
}

.fmcm-machine-resource-empty {
    margin:0
}

.fmcm-final-machine-cta {
    margin-left:clamp(16px,3vw,48px)!important;
    margin-right:clamp(16px,3vw,48px)!important
}

.fmcm-other-machine-switcher {
    max-width:900px;
    margin:0 auto;
    text-align:center
}

.fmcm-other-machine-switcher__label {
    font-size:14px;
    letter-spacing:.06em;
    text-transform:uppercase;
    margin-bottom:14px
}

.fmcm-other-machine-switcher__links {
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px
}

.fmcm-other-machine-switcher__links a {
    display:inline-flex;
    border:1px solid #d9c0a2;
    border-radius:999px;
    padding:10px 16px;
    text-decoration:none;
    font-weight:700
}

.fmcm-machine-page-breadcrumbs-wrap {
	margin-bottom: 2rem;
}

.fmcm-machine-page-breadcrumbs {
	margin: 0;
}
                  
.fmcm-machine-article .wp-block-breadcrumbs {
    display:none
}

.fmcm-machine-article-hero {
    max-width:1100px;
    margin:clamp(40px,7vw,96px) auto 40px;
    padding:0 clamp(20px,4vw,48px)
}

.fmcm-machine-article-hero__crumbs {
    font-size:.95rem;
    margin-bottom:22px
}

.fmcm-machine-article-hero__crumbs a {
    text-decoration:underline
}

.fmcm-machine-article-hero h1 {
    margin:0;
    max-width:900px
}

.fmcm-machine-article-hero__label {
    text-transform:uppercase;
    letter-spacing:.08em;
    font-size:.82rem;
    margin-bottom:12px
}

@media(max-width:781px) {
    .fmcm-machine-directory-card,
    .fmcm-machine-resource-card {
        flex-basis: 100%;
        max-width: none;
    }
}

.fmcm-booking-form .wpforms-image-choices {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:14px;
}

.fmcm-booking-form .wpforms-image-choices-item {
    width:auto !important;
    margin:0 !important;
}

.fmcm-booking-form .wpforms-image-choices-label {
    font-size:.9rem !important;
    line-height:1.25;
}

.fmcm-booking-form .wpforms-image-choices-image img {
    aspect-ratio:1;
    object-fit:contain;
}

.fmcm-booking-help {
    margin:26px auto 0 !important;
    text-align:center;
}

.fmcm-booking-help a {
    font-weight:700;
}

@media(max-width:781px) {
    .fmcm-booking-form .wpforms-image-choices {
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:10px;
    }
    .fmcm-booking-form .wpforms-image-choices-label {
        font-size:.78rem !important;
    }
}

.fmcm-booking-help {
    display:none
}

/*
 * Secondary link from a machine resource section to its
 * complete common-problems overview.
 */
.fmcm-machine-resource-intro {
	margin-bottom: 24px;
	font-size: 1.1rem;
	line-height: 1.5;
}

.fmcm-machine-resource-overview-note {
	margin-top: 28px;
	margin-bottom: 12px;
}

.fmcm-machine-resource-overview .wp-block-button__link {
	background: transparent;
	border: 2px solid #333434;
	border-radius: 7px;
	color: #333434;
	font-weight: 700;
	padding: 11px 18px;
}

.fmcm-machine-resource-overview .wp-block-button__link:hover,
.fmcm-machine-resource-overview .wp-block-button__link:focus {
	background: #333434;
	color: #fff;
}

/*
* What happens next
*/
/* Journey: show repair steps before supporting content on mobile. */
@media (max-width: 781px) {
    .fmcm-journey-columns {
        flex-direction: column-reverse;
    }
}