/*
Theme Name: Roofing Maintenance Company
Theme URI: https://scintillawpthemes.com/product/roofing-maintenance-company/
Author: scintillawpthemes
Author URI: https://scintillawpthemes.com/
Description: Roofing Maintenance Company is a modern, professional, and responsive WordPress theme designed for roofing contractors, roof repair specialists, maintenance companies, construction businesses, home improvement services, and building professionals. With a clean and trustworthy design, the theme helps roofing businesses showcase their services, projects, team, testimonials, and contact information in a professional way. Its flexible layout makes it easy to create a strong online presence for businesses offering roof installation, roof repair, roof inspection, roof replacement, maintenance, and related services. The theme is designed with usability and performance in mind and works smoothly across desktops, tablets, and mobile devices. It provides a professional foundation for creating business websites without requiring advanced technical knowledge. Whether you run a local roofing contractor business or a professional roof maintenance company, Roofing Maintenance Company provides the essential design and flexibility needed to build a credible and engaging business website.
Version: 1.0
Requires at least: 6.7
Requires PHP: 7.4
Tested up to: 7.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: roofing-maintenance-company
Domain Path: /languages
Tags: blog, portfolio, photography, one-column, two-columns, custom-colors, custom-menu, custom-logo, sticky-post, threaded-comments, grid-layout, custom-background, rtl-language-support, featured-images, wide-blocks, editor-style, full-site-editing, block-patterns, block-styles, template-editing, translation-ready
*/

/* ==========================================================================
   1. Design tokens
   ========================================================================== */
:root,
body {
	--rmc-brand: #ef5f23;
	--rmc-brand-dark: #d54c14;
	--rmc-brand-soft: #fdece3;
	--rmc-ink: #0f1b27;
	--rmc-navy: #101f30;
	--rmc-navy-deep: #0a1420;
	--rmc-slate: #16333f;
	--rmc-slate-light: #1d3d4a;
	--rmc-body: #5b6b7a;
	--rmc-muted: #8a97a4;
	--rmc-line: #e4e7ec;
	--rmc-surface: #f4f5f7;
	--rmc-base: #ffffff;
	--rmc-star: #f5a623;

	--rmc-r-sm: 8px;
	--rmc-r-md: 14px;
	--rmc-r-lg: 20px;

	--rmc-pad: clamp(20px, calc((100vw - 1380px) / 2), 300px);
	--rmc-sp: clamp(64px, 7vw, 104px);

	--rmc-shadow-sm: 0 2px 10px rgba(15, 27, 39, .06);
	--rmc-shadow-md: 0 14px 40px rgba(15, 27, 39, .1);

	/* Header bar height, and how far the admin bar pushes it down. */
	--rmc-header-h: 88px;
	--rmc-header-offset: 0px;
}

/* ==========================================================================
   2. Base
   ========================================================================== */
html {
	-webkit-text-size-adjust: 100%;
}

/* No position:relative here on purpose. Below 600px WordPress switches the
   logged-in admin bar to position:absolute, and a positioned body would become
   its containing block, dropping that bar onto the header. body::before is
   fixed, so nothing here needs body to be positioned. */
body {
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

/* The two soft radial washes the reference design paints behind everything. */
body::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(900px 520px at 8% -6%, rgba(239, 95, 35, .07), transparent 62%),
		radial-gradient(760px 480px at 100% 12%, rgba(22, 51, 63, .07), transparent 60%);
}

.wp-site-blocks {
	position: relative;
}

img {
	max-width: 100%;
	height: auto;
}

:focus-visible {
	outline: 3px solid var(--rmc-brand);
	outline-offset: 3px;
	border-radius: 4px;
}

.skip-link.screen-reader-text {
	background: var(--rmc-brand);
	color: var(--rmc-base);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 14px;
	padding: 14px 22px;
	border-radius: var(--rmc-r-sm);
	text-decoration: none;
}

/* ==========================================================================
   3. Layout helpers
   ========================================================================== */
.rmc-wrap {
	padding-inline: var(--rmc-pad);
}

.rmc-section {
	padding-block: var(--rmc-sp);
}

/* ==========================================================================
   4. Typography helpers
   ========================================================================== */
.rmc-eyebrow {
	font-family: var(--wp--preset--font-family--display);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--rmc-brand);
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 16px;
	line-height: 1.4;
}

.rmc-eyebrow::before {
	content: "";
	width: 22px;
	height: 2px;
	background: var(--rmc-brand);
	flex: none;
}

.rmc-eyebrow.has-text-align-center {
	justify-content: center;
}

/* The accent words in a heading arrive as <mark>; the design wants the colour
   without the browser's yellow highlight behind it. */
mark.has-inline-color {
	background-color: transparent;
}

/* ==========================================================================
   5. Buttons
   ========================================================================== */
.wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	transition: background-color .25s ease, transform .25s ease, color .25s ease, border-color .25s ease;
}

.wp-block-button__link:hover {
	transform: translateY(-2px);
}

.rmc-btn-lg .wp-block-button__link {
	padding: 18px 30px;
	font-size: 15px;
}

/* Arrow that trails the label on the primary calls to action. */
.rmc-btn-arrow .wp-block-button__link::after {
	content: "";
	width: 16px;
	height: 16px;
	flex: none;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8h11M9 4l4 4-4 4' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
}

/* Ghost variant used beside the solid orange button. */
.wp-block-button.is-style-rmc-ghost .wp-block-button__link {
	background: transparent;
	color: var(--rmc-ink);
	border-color: var(--rmc-line);
}

.wp-block-button.is-style-rmc-ghost .wp-block-button__link:hover,
.wp-block-button.is-style-rmc-ghost .wp-block-button__link:focus {
	background: var(--rmc-ink);
	color: var(--rmc-base);
	border-color: var(--rmc-ink);
}

/* Light variant for dark panels. */
.wp-block-button.is-style-rmc-light .wp-block-button__link {
	background: var(--rmc-base);
	color: var(--rmc-ink);
}

.wp-block-button.is-style-rmc-light .wp-block-button__link:hover,
.wp-block-button.is-style-rmc-light .wp-block-button__link:focus {
	background: var(--rmc-brand);
	color: var(--rmc-base);
}

/* ==========================================================================
   6. Reveal on scroll (only runs once the script adds .rmc-js)
   ========================================================================== */
.rmc-js .rmc-rv {
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .7s ease, transform .7s ease;
}

.rmc-js .rmc-rv.is-revealed {
	opacity: 1;
	transform: none;
}

.rmc-js .rmc-rv-d1 { transition-delay: .08s; }
.rmc-js .rmc-rv-d2 { transition-delay: .16s; }

@media ( prefers-reduced-motion: reduce ) {

	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}

	.rmc-js .rmc-rv {
		opacity: 1;
		transform: none;
	}
}

/* ==========================================================================
   7. Header
   ========================================================================== */
.rmc-header {
	position: sticky;
	top: var(--rmc-header-offset);
	z-index: 60;
	background: var(--rmc-base);
	border-bottom: 1px solid var(--rmc-line);
	transition: box-shadow .25s ease;
}

.rmc-header.is-stuck {
	box-shadow: var(--rmc-shadow-sm);
}

/* Logged-in: the admin bar is fixed above 600px and WordPress pushes the page
   down with html{margin-top}, so the sticky header has to start below it or it
   hides underneath. Below 600px the bar scrolls away and the offset is zero. */
.admin-bar {
	--rmc-header-offset: 32px;
}

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

	.admin-bar {
		--rmc-header-offset: 46px;
	}
}

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

	.admin-bar {
		--rmc-header-offset: 0px;
	}
}

.rmc-header__inner {
	display: flex;
	align-items: center;
	gap: 28px;
	min-height: var(--rmc-header-h);
	max-width: 1380px;
	margin-inline: auto;
}

.rmc-brand {
	flex: none;
	margin: 0;
}

.rmc-brand img {
	max-width: clamp(112px, 13vw, 148px);
	height: auto;
	display: block;
}

.rmc-header__inner .rmc-header__nav {
	flex: 1 1 auto;
	justify-content: center;
}

.rmc-header__nav .wp-block-navigation__container {
	gap: 30px;
}

.rmc-header__nav .wp-block-navigation-item__content {
	color: var(--rmc-ink);
	padding: 6px 0;
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

/* Orange rule that grows under the active and hovered links. */
.rmc-header__nav .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
	width: 0;
	background: var(--rmc-brand);
	transition: width .25s ease;
}

.rmc-header__nav .wp-block-navigation-item__content:hover::after,
.rmc-header__nav .current-menu-item > .wp-block-navigation-item__content::after {
	width: 100%;
}

.rmc-header__nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--rmc-brand);
}

.rmc-header__nav .wp-block-navigation__submenu-icon {
	opacity: .55;
}

/* Dropdown for menu items with children. Core's default is a square white box
   with a grey hairline; this brings it onto the theme's radius, line colour
   and shadow. */
.rmc-header__nav .wp-block-navigation__submenu-container {
	background: var(--rmc-base);
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-sm);
	box-shadow: var(--rmc-shadow-md);
	padding: 8px;
	min-width: 220px;
}

.rmc-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	width: 100%;
	padding: 9px 14px;
	border-radius: 6px;
	font-size: 14.5px;
	color: var(--rmc-ink);
	transition: background-color .2s ease, color .2s ease;
}

.rmc-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.rmc-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus {
	background: var(--rmc-surface);
	color: var(--rmc-brand);
}

/* The growing underline belongs to top-level items only. */
.rmc-header__nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after {
	display: none;
}

.rmc-header__cta {
	flex: none;
	gap: 14px;
}

/* Burger + overlay so the core navigation matches the reference breakpoints. */
.rmc-header__nav .wp-block-navigation__responsive-container-open {
	width: 44px;
	height: 44px;
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-sm);
	display: none;
	align-items: center;
	justify-content: center;
	color: var(--rmc-ink);
}

/* The open menu is a panel dropping out of the header rather than core's
   full-screen modal, which is how the reference design behaves. */
/* Core's open animation ends on transform:translateY(0) with fill-mode:forwards.
   That identity transform still makes the panel a containing block for fixed
   descendants, which would trap the close button inside it. Swap in an
   opacity-only fade so the close button can anchor to the viewport instead. */
@keyframes rmc-menu-fade-in {

	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open {
	animation: rmc-menu-fade-in .18s ease-out;
	transform: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	bottom: auto;
	background: var(--rmc-base);
	border-bottom: 1px solid var(--rmc-line);
	padding: 14px var(--rmc-pad) 22px;
	z-index: 59;
	/* Core sets overflow:auto here, which would clip the close button where it
	   sits above the panel. Scrolling moves to the content wrapper below. */
	overflow: visible;
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	max-height: calc( 100vh - var(--rmc-header-h) - 60px );
	overflow-y: auto;
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	align-items: flex-start;
	justify-content: flex-start;
	padding-top: 0;
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	gap: 4px;
	align-items: flex-start;
	justify-content: flex-start;
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
}

.rmc-header__nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	font-size: 17px;
	padding: 11px 0;
	width: 100%;
	color: var(--rmc-ink);
}

/* One control at a time: the burger hands over to the close button, which is
   drawn as the same 44px bordered square in the same spot. */
.has-modal-open .rmc-header__nav .wp-block-navigation__responsive-container-open {
	visibility: hidden;
}

/* Core anchors the close button to .wp-block-navigation__responsive-dialog, which
   would drop it into the panel on the first menu row. Making that wrapper static
   hands the containing block to the sticky header, so the close button lands
   exactly where the burger was instead of appearing to jump down. */
/* Core makes the dialog wrapper position:relative, which would inset the close
   button by the panel's padding. Going static hands the containing block to the
   panel itself, so the button lines up with the burger exactly. */
.rmc-header__nav .wp-block-navigation__responsive-close,
.rmc-header__nav .wp-block-navigation__responsive-dialog {
	position: static;
}

.rmc-header__nav .wp-block-navigation__responsive-container-close {
	position: absolute;
	top: calc( -1 * ( var(--rmc-header-h) + 44px ) / 2 );
	right: var(--rmc-pad);
	color: var(--rmc-ink);
	width: 44px;
	height: 44px;
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-sm);
	display: grid;
	place-items: center;
	padding: 0;
}

/* ==========================================================================
   8. Hero
   ========================================================================== */
.rmc-hero {
	min-height: clamp(560px, 66vh, 740px);
	align-items: flex-end;
	padding: 0;
}

.rmc-hero .wp-block-cover__inner-container {
	width: 100%;
	padding: clamp(44px, 6vw, 84px) var(--rmc-pad);
}

.rmc-hero__inner {
	max-width: 1380px;
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1.25fr .85fr;
	gap: clamp(28px, 3vw, 48px);
	align-items: end;
}

.rmc-hero h1 {
	color: var(--rmc-base);
	max-width: 16ch;
	margin: 0;
}

.rmc-hero__aside p {
	color: rgba(255, 255, 255, .8);
	font-size: 15.5px;
	margin: 0 0 24px;
	max-width: 46ch;
}

.rmc-hero__rating {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 22px;
}

/* Overlapping circular customer avatars. */
.rmc-avatars {
	display: flex;
	gap: 0;
}

.rmc-avatars .wp-block-image {
	margin: 0 0 0 -11px;
}

.rmc-avatars .wp-block-image:first-child {
	margin-left: 0;
}

.rmc-avatars img {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	object-fit: cover;
	border: 2px solid rgba(255, 255, 255, .85);
	display: block;
}

/* Five gold stars stacked above the rating sentence. */
.rmc-stars {
	font-family: var(--wp--preset--font-family--display);
	font-size: 12.5px;
	font-weight: 600;
	color: rgba(255, 255, 255, .85);
	letter-spacing: .02em;
	line-height: 1.5;
	margin: 0;
}

.rmc-stars::before {
	content: "";
	display: block;
	width: 82px;
	height: 14px;
	margin-bottom: 4px;
	background-color: var(--rmc-star);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M10 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M30 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M50 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M70 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M90 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3C/g%3E%3C/svg%3E") left center / 82px 14px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M10 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M30 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M50 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M70 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M90 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3C/g%3E%3C/svg%3E") left center / 82px 14px no-repeat;
}

/* ==========================================================================
   9. About
   ========================================================================== */
.rmc-about {
	background: var(--rmc-surface);
}

.rmc-about__shell {
	display: grid;
	grid-template-columns: .92fr 1.08fr;
	gap: clamp(32px, 4.2vw, 70px);
	align-items: center;
	margin-bottom: clamp(36px, 4vw, 58px);
}

.rmc-about__photo {
	position: relative;
	border-radius: var(--rmc-r-lg);
	overflow: hidden;
	aspect-ratio: 5 / 6;
	margin: 0;
}

.rmc-about__photo .wp-block-image,
.rmc-about__photo .wp-block-image img {
	margin: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.rmc-about__photo .wp-block-image {
	position: absolute;
	inset: 0;
}

/* The two floating labels pinned to opposite corners of the photo. */
.rmc-pill {
	position: absolute;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--wp--preset--font-family--display);
	font-size: 12.5px;
	font-weight: 700;
	line-height: 1.3;
	padding: 10px 16px;
	border-radius: var(--rmc-r-sm);
	color: var(--rmc-base);
	margin: 0;
	max-width: calc(100% - 40px);
}

.rmc-pill::before {
	content: "";
	width: 14px;
	height: 14px;
	flex: none;
	background-color: currentColor;
}

.rmc-pill--brand {
	background: var(--rmc-brand);
	right: 20px;
	top: 20px;
}

.rmc-pill--brand::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8.5 6 12.5 14 4' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2 8.5 6 12.5 14 4' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
}

.rmc-pill--dark {
	background: rgba(10, 20, 32, .88);
	left: 20px;
	bottom: 20px;
}

.rmc-pill--dark::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.5 13.5 4v4.2c0 3.2-2.3 5.5-5.5 6.3-3.2-.8-5.5-3.1-5.5-6.3V4z' fill='none' stroke='%23000' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.5 13.5 4v4.2c0 3.2-2.3 5.5-5.5 6.3-3.2-.8-5.5-3.1-5.5-6.3V4z' fill='none' stroke='%23000' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
}

.rmc-about__copy p {
	margin: 18px 0 0;
	max-width: 60ch;
}

.rmc-about__copy .rmc-eyebrow {
	margin: 0 0 16px;
}

.rmc-about__points {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px 26px;
	margin: 30px 0 0;
	padding: 28px 0 0;
	border-top: 1px solid var(--rmc-line);
	list-style: none;
}

.rmc-about__points li {
	display: flex;
	gap: 11px;
	align-items: flex-start;
	font-size: 14.5px;
	color: var(--rmc-ink);
	font-weight: 500;
	line-height: 1.5;
}

.rmc-about__points li::before {
	content: "";
	width: 19px;
	height: 19px;
	flex: none;
	margin-top: 3px;
	background-color: var(--rmc-brand);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10.5 7.5 15 17 5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 19px 19px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M3 10.5 7.5 15 17 5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 19px 19px no-repeat;
}

.rmc-about__actions {
	gap: 26px;
	margin-top: 32px;
}

.rmc-about__call {
	display: flex;
	align-items: center;
	gap: 11px;
}

.rmc-about__call::before {
	content: "";
	width: 34px;
	height: 34px;
	flex: none;
	background-color: var(--rmc-brand);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Ccircle cx='12' cy='12' r='10.5' opacity='.28'/%3E%3Cpath d='M8 8.2c0 4.4 3.4 7.8 7.8 7.8l.8-1.9-2.4-1-1 1.1a6.7 6.7 0 0 1-3.4-3.4l1.1-1-1-2.4z' stroke-linejoin='round'/%3E%3C/svg%3E") center / 34px 34px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6'%3E%3Ccircle cx='12' cy='12' r='10.5' opacity='.28'/%3E%3Cpath d='M8 8.2c0 4.4 3.4 7.8 7.8 7.8l.8-1.9-2.4-1-1 1.1a6.7 6.7 0 0 1-3.4-3.4l1.1-1-1-2.4z' stroke-linejoin='round'/%3E%3C/svg%3E") center / 34px 34px no-repeat;
}

.rmc-about__call-label {
	font-size: 12px;
	color: var(--rmc-muted);
	line-height: 1.4;
	margin: 0 !important;
}

.rmc-about__call-number {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 15.5px;
	color: var(--rmc-ink);
	line-height: 1.4;
	margin: 0 !important;
}

/* Vision and mission cards under the about split. */
.rmc-vm-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.rmc-vm-card {
	background: var(--rmc-slate);
	border-radius: var(--rmc-r-md);
	padding: 30px;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 20px;
	align-items: start;
}

.rmc-vm-card.rmc-vm-card--navy {
	background: var(--rmc-navy);
}

.rmc-vm-card h3 {
	font-size: 18px;
	color: var(--rmc-base);
	margin: 0 0 10px;
}

.rmc-vm-card p {
	font-size: 14px;
	color: rgba(255, 255, 255, .68);
	margin: 0;
}

.rmc-vm-card__badge {
	width: 52px;
	height: 52px;
	border-radius: 13px;
	background: rgba(239, 95, 35, .16);
	flex: none;
	position: relative;
}

.rmc-vm-card__badge::before {
	content: "";
	position: absolute;
	inset: 0;
	margin: auto;
	width: 23px;
	height: 23px;
	background-color: var(--rmc-brand);
}

.rmc-vm-card__badge--vision::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M1.6 12S5.2 5.5 12 5.5 22.4 12 22.4 12 18.8 18.5 12 18.5 1.6 12 1.6 12z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='3.2'/%3E%3C/svg%3E") center / 23px 23px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M1.6 12S5.2 5.5 12 5.5 22.4 12 22.4 12 18.8 18.5 12 18.5 1.6 12 1.6 12z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='3.2'/%3E%3C/svg%3E") center / 23px 23px no-repeat;
}

.rmc-vm-card__badge--mission::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='4.4'/%3E%3Ccircle cx='12' cy='12' r='1' fill='%23000' stroke='none'/%3E%3C/svg%3E") center / 23px 23px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='4.4'/%3E%3Ccircle cx='12' cy='12' r='1' fill='%23000' stroke='none'/%3E%3C/svg%3E") center / 23px 23px no-repeat;
}

/* ==========================================================================
   10. Section heading pair
   ========================================================================== */
.rmc-sec-head {
	display: grid;
	grid-template-columns: 1fr .8fr;
	gap: 40px;
	align-items: end;
	margin-bottom: 44px;
}

.rmc-sec-head h2 {
	margin: 0;
}

.rmc-sec-head p {
	max-width: 58ch;
	margin: 0;
}

.rmc-head-center {
	max-width: 640px;
	margin: 0 auto 46px;
	text-align: center;
}

.rmc-head-center h2 {
	margin: 0 0 16px;
}

.rmc-head-center p {
	margin: 0;
}

/* ==========================================================================
   11. Testimonials
   ========================================================================== */
.rmc-tst__top {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 24px;
	margin-bottom: 24px;
}

.rmc-tst__feature {
	border-radius: var(--rmc-r-md);
	overflow: hidden;
	min-height: 400px;
	align-items: flex-start;
	padding: 32px;
	margin: 0;
	height: 100%;
}

.rmc-tst__feature .wp-block-cover__inner-container {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.rmc-tst__quote {
	max-width: 24ch;
	color: var(--rmc-base);
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(20px, 2.1vw, 26px);
	font-weight: 700;
	line-height: 1.3;
	margin: 0;
}

.rmc-tst__play {
	margin: auto 0 0;
	display: inline-flex;
	align-items: center;
	gap: 12px;
	color: var(--rmc-base);
	font-family: var(--wp--preset--font-family--display);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
}

.rmc-tst__play::before {
	content: "";
	width: 44px;
	height: 44px;
	flex: none;
	border-radius: 50%;
	background: var(--rmc-base) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M4 2.5v9l7-4.5z' fill='%230f1b27'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
}

.rmc-tst__col {
	display: grid;
	gap: 24px;
	align-content: start;
}

.rmc-tst__row {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}

.rmc-review {
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-md);
	padding: 24px;
	background: var(--rmc-base);
	transition: box-shadow .3s ease;
}

.rmc-review:hover {
	box-shadow: var(--rmc-shadow-md);
}

.rmc-review p {
	font-size: 14px;
	margin: 0 0 16px;
}

/* Star row on a review card carries no caption text of its own. */
.rmc-review__stars {
	width: 82px;
	height: 14px;
	margin: 0 0 12px;
	text-indent: -999em;
	overflow: hidden;
	white-space: nowrap;
	background-color: var(--rmc-star);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M10 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M30 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M50 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M70 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M90 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3C/g%3E%3C/svg%3E") left center / 82px 14px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M10 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M30 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M50 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M70 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3Cpath d='M90 1.6l2.5 5.2 5.7.8-4.1 4 1 5.7-5.1-2.7-5.1 2.7 1-5.7-4.1-4 5.7-.8z'/%3E%3C/g%3E%3C/svg%3E") left center / 82px 14px no-repeat;
}

.rmc-review__name {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 13.5px;
	color: var(--rmc-ink);
	line-height: 1.4;
	margin: 0 !important;
}

.rmc-review__role {
	font-weight: 500;
	color: var(--rmc-muted);
	font-size: 12px;
	line-height: 1.4;
	margin: 2px 0 0 !important;
}

/* ==========================================================================
   12. FAQ
   ========================================================================== */
.rmc-faq {
	background: var(--rmc-surface);
}

.rmc-faq__grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

.rmc-faq__item {
	background: var(--rmc-base);
	border-radius: var(--rmc-r-md);
	border: 1px solid var(--rmc-line);
	overflow: hidden;
	align-self: start;
	margin: 0;
	padding: 0;
}

.rmc-faq__item > summary {
	list-style: none;
	display: flex;
	align-items: center;
	gap: 0;
	padding: 20px 22px;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 15px;
	line-height: 1.45;
	color: var(--rmc-ink);
	cursor: pointer;
}

.rmc-faq__item > summary::-webkit-details-marker {
	display: none;
}

.rmc-faq__item > summary::marker {
	content: "";
}

/* Rounded square behind the plus glyph. */
.rmc-faq__item > summary::before {
	content: "";
	order: 2;
	margin-left: auto;
	width: 30px;
	height: 30px;
	flex: none;
	border-radius: 7px;
	background: var(--rmc-surface);
	transition: background-color .25s ease;
}

/* The plus itself, laid back over that square and rotated to a cross on open. */
.rmc-faq__item > summary::after {
	content: "";
	order: 3;
	width: 13px;
	height: 13px;
	flex: none;
	margin-left: -21.5px;
	background-color: var(--rmc-ink);
	transition: transform .25s ease, background-color .25s ease;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M7 2v10M2 7h10' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / 13px 13px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M7 2v10M2 7h10' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / 13px 13px no-repeat;
}

.rmc-faq__item[open] > summary::before {
	background: var(--rmc-brand);
}

.rmc-faq__item[open] > summary::after {
	background-color: var(--rmc-base);
	transform: rotate(45deg);
}

.rmc-faq__item p {
	padding: 0 22px 22px;
	font-size: 14px;
	margin: 0;
}

/* Height animation where the browser supports interpolating to auto. */
@supports ( interpolate-size: allow-keywords ) {

	:root {
		interpolate-size: allow-keywords;
	}

	.rmc-faq__item::details-content {
		block-size: 0;
		overflow: hidden;
		transition: block-size .35s ease, content-visibility .35s allow-discrete;
	}

	.rmc-faq__item[open]::details-content {
		block-size: auto;
	}
}

/* ==========================================================================
   13. Footer
   ========================================================================== */
.rmc-footer {
	background: var(--rmc-navy-deep);
	position: relative;
	overflow: hidden;
}

.rmc-footer__inner {
	max-width: 1380px;
	margin-inline: auto;
	position: relative;
	z-index: 2;
}

.rmc-footer__grid {
	display: grid;
	grid-template-columns: .95fr .55fr .55fr .95fr;
	gap: clamp(24px, 3vw, 48px);
	padding-block: clamp(48px, 5vw, 76px) 40px;
}

.rmc-newsletter {
	background: var(--rmc-slate);
	border-radius: var(--rmc-r-md);
	padding: 26px;
	align-self: start;
}

.rmc-newsletter__label {
	font-family: var(--wp--preset--font-family--display);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--rmc-brand);
	margin: 0;
	line-height: 1.4;
}

.rmc-newsletter h3 {
	font-size: 19px;
	color: var(--rmc-base);
	margin: 10px 0;
}

.rmc-newsletter p:not(.rmc-newsletter__label) {
	font-size: 13px;
	color: rgba(255, 255, 255, .62);
	margin: 0 0 16px;
}

.rmc-newsletter .wp-block-button__link {
	width: 100%;
	justify-content: center;
	padding: 13px 16px;
}

.rmc-fcol h4 {
	font-family: var(--wp--preset--font-family--display);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .45);
	margin: 0 0 18px;
	line-height: 1.4;
}

.rmc-fcol ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rmc-fcol li {
	margin-bottom: 11px;
	font-size: 14px;
	color: rgba(255, 255, 255, .78);
	line-height: 1.5;
}

.rmc-fcol a {
	color: rgba(255, 255, 255, .78);
	transition: color .2s ease;
}

.rmc-fcol a:hover,
.rmc-fcol a:focus {
	color: var(--rmc-brand);
}

.rmc-fbrand img {
	max-width: min(172px, 100%);
	height: auto;
	display: block;
}

.rmc-fbrand > p {
	font-size: 13.5px;
	color: rgba(255, 255, 255, .6);
	margin: 16px 0 18px;
	max-width: 34ch;
}

.rmc-fcontact {
	list-style: none;
	margin: 0;
	padding: 0;
}

.rmc-fcontact li {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 13.5px;
	color: rgba(255, 255, 255, .78);
	margin-bottom: 10px;
	line-height: 1.6;
}

.rmc-fcontact li::before {
	content: "";
	width: 15px;
	height: 15px;
	flex: none;
	margin-top: 4px;
	background-color: var(--rmc-brand);
}

.rmc-fcontact li:nth-child(1)::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M4.5 5.5c0 8 6 14 14 14l1.5-3.4-4.2-1.8-1.9 2a12 12 0 0 1-6.2-6.2l2-1.9L7.9 4z' stroke-linejoin='round'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M4.5 5.5c0 8 6 14 14 14l1.5-3.4-4.2-1.8-1.9 2a12 12 0 0 1-6.2-6.2l2-1.9L7.9 4z' stroke-linejoin='round'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
}

.rmc-fcontact li:nth-child(2)::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='3' y='5.5' width='18' height='13' rx='2'/%3E%3Cpath d='m3.8 6.7 8.2 6 8.2-6'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Crect x='3' y='5.5' width='18' height='13' rx='2'/%3E%3Cpath d='m3.8 6.7 8.2 6 8.2-6'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
}

.rmc-fcontact li:nth-child(3)::before {
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M12 21.5s7-5.6 7-11a7 7 0 1 0-14 0c0 5.4 7 11 7 11z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='10.3' r='2.6'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.7'%3E%3Cpath d='M12 21.5s7-5.6 7-11a7 7 0 1 0-14 0c0 5.4 7 11 7 11z' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='10.3' r='2.6'/%3E%3C/svg%3E") center / 15px 15px no-repeat;
}

.rmc-footbar {
	border-top: 1px solid rgba(255, 255, 255, .1);
	padding-block: 20px;
	gap: 20px;
}

.rmc-footbar p {
	font-size: 13px;
	color: rgba(255, 255, 255, .55);
	margin: 0;
}

.rmc-footbar .wp-block-social-links {
	margin-left: auto;
	gap: 8px;
}

.rmc-footbar .wp-block-social-links .wp-block-social-link {
	box-sizing: border-box;
	width: 34px;
	height: 34px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, .14);
	transition: background-color .25s ease, border-color .25s ease;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.rmc-footbar .wp-block-social-links .wp-block-social-link-anchor {
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 0;
}

.rmc-footbar .wp-block-social-link svg {
	width: 15px;
	height: 15px;
	fill: rgba(255, 255, 255, .7);
}

.rmc-footbar .wp-block-social-link:hover {
	background: var(--rmc-brand);
	border-color: var(--rmc-brand);
	transform: none;
}

.rmc-footbar .wp-block-social-link:hover svg {
	fill: var(--rmc-base);
}

/* ==========================================================================
   14. Inner page templates
   ========================================================================== */
.rmc-banner {
	min-height: clamp(220px, 22vw, 300px);
	padding: clamp(40px, 5vw, 64px) var(--rmc-pad);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.rmc-banner__inner {
	max-width: 1380px;
	margin-inline: auto;
	width: 100%;
}

.rmc-banner h1,
.rmc-banner .wp-block-query-title,
.rmc-banner .wp-block-post-title {
	color: var(--rmc-base);
	margin: 0;
	max-width: 24ch;
}

.rmc-banner .wp-block-post-title {
	max-width: 30ch;
}

.rmc-banner p,
.rmc-banner .wp-block-post-terms,
.rmc-banner .wp-block-post-date,
.rmc-banner .wp-block-post-author-name {
	color: rgba(255, 255, 255, .72);
	margin: 0;
}

.rmc-banner .wp-block-query-title span {
	color: var(--rmc-brand);
}

.rmc-post-card {
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-md);
	overflow: hidden;
	background: var(--rmc-base);
	height: 100%;
	transition: box-shadow .3s ease;
}

.rmc-post-card:hover {
	box-shadow: var(--rmc-shadow-md);
}

.rmc-post-card .wp-block-post-featured-image {
	margin: 0;
}

.rmc-post-card .wp-block-post-featured-image img {
	width: 100%;
	object-fit: cover;
}

.rmc-post-card__body {
	padding: 24px;
}

.rmc-post-card .wp-block-post-title {
	font-size: 19px;
	margin: 0 0 10px;
	line-height: 1.3;
}

.rmc-post-card .wp-block-post-excerpt__excerpt {
	font-size: 14px;
	margin: 0 0 14px;
}

.rmc-post-card .wp-block-post-date,
.rmc-post-card .wp-block-post-terms {
	font-size: 12.5px;
	color: var(--rmc-muted);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
}

.rmc-post-card .wp-block-read-more {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 13.5px;
	color: var(--rmc-brand);
}

.rmc-pagination {
	margin-top: clamp(36px, 4vw, 58px);
	gap: 8px;
}

.rmc-pagination .page-numbers,
.rmc-pagination .wp-block-query-pagination-previous,
.rmc-pagination .wp-block-query-pagination-next {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 13.5px;
	color: var(--rmc-ink);
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-sm);
	padding: 9px 15px;
	display: inline-block;
	transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

.rmc-pagination .page-numbers:hover,
.rmc-pagination .page-numbers.current {
	background: var(--rmc-brand);
	border-color: var(--rmc-brand);
	color: var(--rmc-base);
}

.rmc-content > * {
	margin-block: 22px;
}

.rmc-content > *:first-child {
	margin-top: 0;
}

.rmc-content h2,
.rmc-content h3,
.rmc-content h4 {
	margin-top: 38px;
}

.rmc-postnav {
	border-top: 1px solid var(--rmc-line);
}

.rmc-postnav a {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 14px;
	color: var(--rmc-ink);
}

.rmc-postnav a:hover {
	color: var(--rmc-brand);
}

.rmc-comments {
	border-top: 1px solid var(--rmc-line);
}

.rmc-comments .wp-block-comments-title {
	font-size: clamp(22px, 2.1vw, 28px);
	margin-bottom: 8px;
}

.rmc-comments .wp-block-comment-author-name a {
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	color: var(--rmc-ink);
}

.rmc-comments input:not([type="submit"]),
.rmc-comments textarea,
.wp-block-search__input {
	width: 100%;
	padding: 13px 15px;
	border: 1px solid var(--rmc-line);
	border-radius: var(--rmc-r-sm);
	background: var(--rmc-base);
	color: var(--rmc-ink);
	font: inherit;
	font-size: 14px;
}

.wp-block-search__button {
	background: var(--rmc-brand);
	color: var(--rmc-base);
	border: 0;
	border-radius: var(--rmc-r-sm);
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-size: 14px;
	padding: 13px 22px;
	transition: background-color .25s ease;
}

.wp-block-search__button:hover {
	background: var(--rmc-brand-dark);
}

.rmc-404 {
	padding-block: clamp(80px, 10vw, 150px);
	text-align: center;
}

.rmc-404 .rmc-404__code {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(90px, 16vw, 180px);
	font-weight: 800;
	line-height: .9;
	letter-spacing: -.04em;
	color: var(--rmc-brand);
	margin: 0 0 12px;
}

/* ==========================================================================
   15. Responsive
   ========================================================================== */
@media ( max-width: 1080px ) {

	.rmc-header__inner {
		gap: 16px;
	}

	/* Core sets position:relative on .wp-block-navigation, which would make the
	   open panel resolve against the burger. Going static hands the containing
	   block to the sticky header, so the panel spans its full width and sits
	   directly beneath it -- admin bar included, with no hard-coded offset. */
	.rmc-header__inner .rmc-header__nav {
		flex: 0 0 auto;
		order: 3;
		position: static;
	}

	.rmc-header__inner .rmc-header__cta {
		margin-left: auto;
	}

	.rmc-header__cta .wp-block-button__link {
		padding: 12px 18px;
	}

	.rmc-header__nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}

	.rmc-header__nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}

	.rmc-hero__inner {
		grid-template-columns: 1fr;
		gap: 26px;
	}

	.rmc-about__shell {
		grid-template-columns: 1fr;
		gap: 32px;
	}

	.rmc-about__photo {
		aspect-ratio: 16 / 10;
	}

	.rmc-vm-row {
		grid-template-columns: 1fr;
	}

	.rmc-sec-head {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.rmc-tst__top {
		grid-template-columns: 1fr;
	}

	.rmc-footer__grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media ( max-width: 720px ) {

	.rmc-about__points {
		grid-template-columns: 1fr;
	}

	.rmc-faq__grid {
		grid-template-columns: 1fr;
	}

	.rmc-tst__row {
		grid-template-columns: 1fr;
	}

	.rmc-footer__grid {
		grid-template-columns: 1fr;
	}

	.rmc-header__inner {
		gap: 10px;
	}

	.rmc-header__cta .wp-block-button__link {
		padding: 12px 14px;
		font-size: 13px;
	}

	.rmc-hero {
		min-height: 520px;
	}

	.rmc-footbar {
		flex-direction: column;
		align-items: flex-start;
	}

	.rmc-footbar .wp-block-social-links {
		margin-left: 0;
	}
}
