/**
 * About Us — production polish for Elementor-native page.
 * Matches homepage gutters (--wds-gutter: 53px) + theme color tokens.
 */

/* -------------------------------------------------------------------------- */
/* Tokens — same brand system as homepage / header                              */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us,
body.rjw-about-us,
.elementor-963 {
	/* Align with homepage header inset (Figma ~53px @ 1920) */
	--wds-gutter: 53px;
	--rjw-about-navy: var(--wds-color-navy, #1f2641);
	--rjw-about-purple: var(--wds-color-primary, #6a4972);
	--rjw-about-purple-dark: var(--wds-color-primary-dark, #553a5c);
	--rjw-about-teal: var(--wds-color-blue-gray, #4a94a8);
	--rjw-about-teal-hover: #3f8294;
	--rjw-about-muted: var(--wds-color-text-muted, #6b6b76);
	--rjw-about-text: var(--wds-color-text, #3a3a3a);
	--rjw-about-white: #ffffff;
	/* Homepage page canvas is pure white — no gray band contrast */
	--rjw-about-light: #ffffff;
	--rjw-about-section-y: clamp(72px, 8.5vw, 120px);
	--rjw-about-radius: 4px;
	--rjw-about-shadow: 0 8px 24px rgba(31, 38, 65, 0.06);
	--rjw-about-shadow-hover: 0 18px 40px rgba(31, 38, 65, 0.12);
	--rjw-about-ease: 300ms cubic-bezier(0.22, 1, 0.36, 1);
	--wd-main-bgcolor: #ffffff;
	background-color: var(--rjw-about-white) !important;
}

@media (max-width: 1199px) {
	body.page-slug-about-us,
	body.rjw-about-us,
	.elementor-963 {
		--wds-gutter: clamp(18px, 2.5vw, 48px);
	}
}

body.page-slug-about-us .rjw-about-home-heading-hide,
body.page-slug-about-us .elementor-element.rjw-about-home-heading-hide {
	display: none !important;
}

/* Center About titles that reuse homepage Why / People header rows */
body.page-slug-about-us .elementor-element-d79913e,
body.page-slug-about-us .elementor-element-d79913e > .e-con-inner,
body.page-slug-about-us .elementor-element-43971b2,
body.page-slug-about-us .elementor-element-43971b2 > .e-con-inner,
body.page-slug-about-us .elementor-element-d88e636,
body.page-slug-about-us .elementor-element-d88e636 > .e-con-inner,
body.page-slug-about-us .elementor-element-be1a4bd,
body.page-slug-about-us .elementor-element-be1a4bd > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	text-align: center !important;
	width: 100% !important;
	max-width: none !important;
	gap: 0 !important;
}

body.page-slug-about-us .rjw-about-home-heading-center,
body.page-slug-about-us .elementor-element-19877f0,
body.page-slug-about-us .elementor-element-fd85a07 {
	width: 100% !important;
	text-align: center !important;
}

body.page-slug-about-us .elementor-element-19877f0 .elementor-heading-title,
body.page-slug-about-us .elementor-element-fd85a07 .elementor-heading-title {
	text-align: center !important;
	margin-inline: auto !important;
}

/* Why cards on About — keep overlay copy fully visible (no bottom clip) */
body.page-slug-about-us .elementor-element-9dc119f,
body.page-slug-about-us .elementor-element-9dc119f > .e-con-inner {
	overflow: visible !important;
}

body.page-slug-about-us .elementor-element-7bb60b6.wd-negative-gap,
body.page-slug-about-us .elementor-element-032bdcf.wd-negative-gap,
body.page-slug-about-us .elementor-element-02e5c3e.wd-negative-gap {
	margin-inline: 0 !important;
	width: 100% !important;
	left: auto !important;
	right: auto !important;
}

body.page-slug-about-us .elementor-element-7bb60b6,
body.page-slug-about-us .elementor-element-032bdcf,
body.page-slug-about-us .elementor-element-02e5c3e {
	--padding-top: 0px !important;
	--padding-right: 28px !important;
	--padding-bottom: 56px !important;
	--padding-left: 34px !important;
	--padding-block-start: 0px !important;
	--padding-block-end: 56px !important;
	--padding-inline-start: 34px !important;
	--padding-inline-end: 28px !important;
	padding: 0 28px 56px 34px !important;
}

body.page-slug-about-us .elementor-element-7bb60b6 > .e-con-inner,
body.page-slug-about-us .elementor-element-032bdcf > .e-con-inner,
body.page-slug-about-us .elementor-element-02e5c3e > .e-con-inner {
	overflow: visible !important;
	--padding-top: 0px !important;
	--padding-right: 28px !important;
	--padding-bottom: 0px !important;
	--padding-left: 34px !important;
	--padding-inline-start: 34px !important;
	--padding-inline-end: 28px !important;
	padding: 0 28px 0 34px !important;
}

/* -------------------------------------------------------------------------- */
/* Page shell — pure white like homepage (beats WoodMart rgb(250,250,250))      */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .wd-page-title,
body.page-slug-about-us .page-title,
body.rjw-about-us .wd-page-title,
body.rjw-about-us .page-title,
.elementor-963 .wd-page-title {
	display: none !important;
}

body.page-slug-about-us,
body.rjw-about-us,
body.page-slug-about-us .wd-page-wrapper,
body.page-slug-about-us .main-page-wrapper,
body.page-slug-about-us .wd-page-content,
body.page-slug-about-us .site-content,
body.page-slug-about-us .entry-content,
body.page-slug-about-us main.wd-content-layout {
	background-color: var(--rjw-about-white) !important;
	background-image: none !important;
}

body.page-slug-about-us .wd-content-area,
body.page-slug-about-us main.wd-content-layout,
body.page-slug-about-us .content-layout-wrapper {
	max-width: none !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
	overflow-x: clip;
}

/*
 * Equal L/R gutters like homepage: pad Elementor root, sections = 100% width.
 * Avoids "width:100% + margin-left" right-edge bleed.
 */
body.page-slug-about-us .elementor-963 {
	width: 100% !important;
	max-width: none !important;
	padding-left: var(--wds-gutter) !important;
	padding-right: var(--wds-gutter) !important;
	padding-inline: var(--wds-gutter) !important;
	box-sizing: border-box !important;
	overflow-x: clip;
}

/* Kill WoodMart full-bleed / negative-gap stretch */
body.page-slug-about-us .elementor-963 .wd-negative-gap,
body.page-slug-about-us .elementor-963 .e-con.e-parent.wd-negative-gap {
	margin-inline: 0 !important;
	padding-inline: 0 !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	max-width: none !important;
}

body.page-slug-about-us .elementor-963 > .e-con.e-parent.e-con-boxed > .e-con-inner,
body.page-slug-about-us .elementor-963 .e-con.e-parent > .e-con-inner {
	max-width: none !important;
	width: 100% !important;
	padding-inline: 0 !important;
}

/* Section backgrounds — match homepage (white canvas; navy only for hero/CTA) */
body.page-slug-about-us .rjw-about-story,
body.page-slug-about-us .rjw-about-details,
body.page-slug-about-us .rjw-about-team,
body.page-slug-about-us .rjw-about-pillars,
body.page-slug-about-us .rjw-about-stores,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-absto00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abpil00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abdet00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-absrv00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtem00 {
	background-color: #ffffff !important;
	background-image: none !important;
}

body.page-slug-about-us .rjw-about-pillars:not(.elementor-motion-effects-element-type-background),
body.page-slug-about-us .rjw-about-stores:not(.elementor-motion-effects-element-type-background),
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abpil00:not(.elementor-motion-effects-element-type-background),
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-absrv00:not(.elementor-motion-effects-element-type-background) {
	background-color: #ffffff !important;
}

body.page-slug-about-us .rjw-about-hero,
body.page-slug-about-us .rjw-about-hero__copy,
body.page-slug-about-us .rjw-about-cta {
	background-color: var(--rjw-about-navy) !important;
}

/* Top-level sections fill padded root — NO extra side margin */
body.page-slug-about-us .elementor-963 > .e-con.e-parent,
body.page-slug-about-us .elementor-963 > .elementor-element.e-con.e-parent,
body.page-slug-about-us .rjw-about-hero,
body.page-slug-about-us .rjw-about-story,
body.page-slug-about-us .rjw-about-pillars,
body.page-slug-about-us .rjw-about-details,
body.page-slug-about-us .rjw-about-stores,
body.page-slug-about-us .rjw-about-team,
body.page-slug-about-us .rjw-about-cta,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abhro00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-absto00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abpil00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abdet00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-absrv00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtem00,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abcta00 {
	--width: 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	--margin-left: 0px !important;
	--margin-right: 0px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	margin-inline: 0 !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	padding-inline: 0 !important;
	box-sizing: border-box !important;
	left: auto !important;
	right: auto !important;
	position: relative !important;
}

/* Vertical rhythm only */
body.page-slug-about-us .rjw-about-story,
body.page-slug-about-us .rjw-about-pillars,
body.page-slug-about-us .rjw-about-details,
body.page-slug-about-us .rjw-about-stores,
body.page-slug-about-us .rjw-about-team {
	padding-block: var(--rjw-about-section-y) !important;
}

/* Tighten gap between details media (scrub image) and "Two Stores, One Standard" */
body.page-slug-about-us .rjw-about-details {
	--padding-bottom: clamp(40px, 5vw, 64px) !important;
	padding-bottom: clamp(40px, 5vw, 64px) !important;
}

body.page-slug-about-us .rjw-about-stores {
	--padding-top: clamp(40px, 5vw, 64px) !important;
	padding-top: clamp(40px, 5vw, 64px) !important;
}

body.page-slug-about-us .rjw-about-cta {
	padding-block: clamp(96px, 11vw, 132px) !important;
}

/* Typography — force brand faces over WoodMart Jost */
body.page-slug-about-us .elementor-963,
body.page-slug-about-us .elementor-963 .elementor-widget-text-editor,
body.page-slug-about-us .elementor-963 .elementor-widget-text-editor p {
	font-family: var(--wds-font-body, Inter, sans-serif) !important;
	line-height: 1.7 !important;
	letter-spacing: 0.005em;
}

body.page-slug-about-us .elementor-963 h1,
body.page-slug-about-us .elementor-963 h2,
body.page-slug-about-us .elementor-963 h3,
body.page-slug-about-us .elementor-963 h4,
body.page-slug-about-us .elementor-963 .elementor-heading-title,
body.page-slug-about-us .elementor-963 .elementor-button {
	font-family: var(--wds-font-heading, "Space Grotesk", sans-serif) !important;
}

body.page-slug-about-us .elementor-963 .elementor-widget-heading .elementor-heading-title {
	letter-spacing: -0.02em;
}

body.page-slug-about-us .rjw-about-hero__copy .elementor-widget:not(:last-child),
body.page-slug-about-us .rjw-about-story__copy .elementor-widget:not(:last-child),
body.page-slug-about-us .rjw-about-details__copy .elementor-widget:not(:last-child),
body.page-slug-about-us .rjw-about-pillar__body .elementor-widget:not(:last-child),
body.page-slug-about-us .rjw-about-store__body .elementor-widget:not(:last-child),
body.page-slug-about-us .rjw-about-person .elementor-widget:not(:last-child) {
	margin-bottom: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* Images                                                                     */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-hero__media,
body.page-slug-about-us .rjw-about-story__media,
body.page-slug-about-us .rjw-about-details__media,
body.page-slug-about-us .rjw-about-pillar > .elementor-widget-image,
body.page-slug-about-us .rjw-about-store > .elementor-widget-image,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image {
	overflow: hidden;
}

body.page-slug-about-us .rjw-about-story__media,
body.page-slug-about-us .rjw-about-details__media,
body.page-slug-about-us .rjw-about-pillar,
body.page-slug-about-us .rjw-about-store,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image {
	border-radius: var(--rjw-about-radius);
}

/*
 * Cover-crop images — scope to media / top image widgets ONLY.
 * Never set height:100% on all .elementor-widget-container inside cards
 * (that made store images swallow the card and clip city/address/hours).
 */
body.page-slug-about-us .rjw-about-fill-img img,
body.page-slug-about-us .rjw-about-hero__media img,
body.page-slug-about-us .rjw-about-story__media img,
body.page-slug-about-us .rjw-about-details__media img,
body.page-slug-about-us .rjw-about-pillar > .elementor-widget-image img,
body.page-slug-about-us .rjw-about-store > .elementor-widget-image img,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center center !important;
	display: block;
}

/* Split/media panels may fill their column */
body.page-slug-about-us .rjw-about-hero__media .elementor-widget-image,
body.page-slug-about-us .rjw-about-hero__media .elementor-widget-container,
body.page-slug-about-us .rjw-about-hero__media .elementor-image,
body.page-slug-about-us .rjw-about-story__media .elementor-widget-image,
body.page-slug-about-us .rjw-about-story__media .elementor-widget-container,
body.page-slug-about-us .rjw-about-story__media .elementor-image,
body.page-slug-about-us .rjw-about-details__media .elementor-widget-image,
body.page-slug-about-us .rjw-about-details__media .elementor-widget-container,
body.page-slug-about-us .rjw-about-details__media .elementor-image {
	height: 100%;
	width: 100%;
}

/*
 * Card top-images: widget stays height:auto (aspect-ratio drives size).
 * Only inner figure/img fill that box — never height:100% on the widget
 * itself or the text body gets clipped under overflow:hidden.
 */
body.page-slug-about-us .rjw-about-pillar > .elementor-widget-image .elementor-widget-container,
body.page-slug-about-us .rjw-about-pillar > .elementor-widget-image .elementor-image,
body.page-slug-about-us .rjw-about-store > .elementor-widget-image .elementor-widget-container,
body.page-slug-about-us .rjw-about-store > .elementor-widget-image .elementor-image,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image .elementor-widget-container,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image .elementor-image {
	position: absolute !important;
	inset: 0 !important;
	height: 100% !important;
	width: 100% !important;
}

/* -------------------------------------------------------------------------- */
/* 1. Hero — same side inset as homepage (via root padding)                     */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-hero {
	align-items: stretch !important;
	min-height: min(74vh, 680px);
	overflow: hidden;
	border-radius: 0;
}

body.page-slug-about-us .rjw-about-hero__copy {
	justify-content: center !important;
	align-items: flex-start !important;
	padding: clamp(56px, 8vw, 96px) clamp(40px, 6vw, 72px) !important;
}

body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-heading:nth-child(1) {
	margin-bottom: 18px !important;
}

body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-heading:nth-child(2) {
	margin-bottom: 20px !important;
}

/* Eyebrow — Space Grotesk, tracked uppercase teal (premium fashion label) */
body.page-slug-about-us .rjw-about-hero__copy .rjw-about__eyebrow .elementor-heading-title,
body.page-slug-about-us .elementor-963 .elementor-element-abhro02 .elementor-heading-title,
body.page-slug-about-us .elementor-963 .elementor-element-abhro02 .elementor-heading-title span {
	font-family: "Space Grotesk", var(--wds-font-heading, sans-serif) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.2em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	color: var(--rjw-about-teal) !important;
	font-style: normal !important;
}

body.page-slug-about-us .rjw-about-hero__copy h1.elementor-heading-title,
body.page-slug-about-us .elementor-963 .elementor-element-abhro03 .elementor-heading-title {
	font-family: var(--wds-font-heading, "Space Grotesk", sans-serif) !important;
	font-size: clamp(2.15rem, 4.4vw, 3.55rem) !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
	letter-spacing: -0.025em !important;
	max-width: 11.5ch;
	color: #ffffff !important;
}

body.page-slug-about-us .rjw-about-hero__copy .rjw-about__lede,
body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-text-editor {
	max-width: 370px;
}

body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-text-editor,
body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-text-editor p,
body.page-slug-about-us .elementor-963 .elementor-element-abhro04,
body.page-slug-about-us .elementor-963 .elementor-element-abhro04 p {
	font-family: var(--wds-font-body, Inter, sans-serif) !important;
	font-size: 1.0625rem !important;
	line-height: 1.65 !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.82) !important;
}

body.page-slug-about-us .rjw-about-hero__media {
	min-height: 100%;
	align-self: stretch !important;
}

body.page-slug-about-us .rjw-about-hero__media img {
	object-position: center 18% !important;
}

/* -------------------------------------------------------------------------- */
/* 2. Our Story                                                                 */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-story {
	align-items: center !important;
	gap: clamp(40px, 6vw, 84px) !important;
	column-gap: clamp(40px, 6vw, 84px) !important;
	row-gap: clamp(28px, 4vw, 40px) !important;
}

body.page-slug-about-us .rjw-about-story__media {
	aspect-ratio: 4 / 5;
	align-self: center !important;
	overflow: hidden;
}

body.page-slug-about-us .rjw-about-story__copy {
	justify-content: center !important;
	align-self: center !important;
}

body.page-slug-about-us .rjw-about-story__copy .elementor-widget-heading {
	margin-bottom: 22px !important;
}

body.page-slug-about-us .rjw-about-story__copy .elementor-heading-title {
	font-size: clamp(1.7rem, 2.8vw, 2.35rem) !important;
	line-height: 1.15 !important;
	max-width: 16ch;
}

body.page-slug-about-us .rjw-about-story__copy .rjw-about__body,
body.page-slug-about-us .rjw-about-story__copy .elementor-widget-text-editor {
	max-width: 460px;
}

body.page-slug-about-us .rjw-about-story__copy .elementor-widget-text-editor p {
	margin: 0 0 1.15em !important;
	line-height: 1.75 !important;
	color: var(--rjw-about-text);
}

body.page-slug-about-us .rjw-about-story__copy .elementor-widget-text-editor p:last-child {
	margin-bottom: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* 3. What We Stand For — 3 equal columns via CSS grid                          */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-pillars > .elementor-widget-heading {
	margin-bottom: 8px !important;
}

body.page-slug-about-us .rjw-about-pillars > .elementor-widget-heading .elementor-heading-title {
	font-size: clamp(1.7rem, 2.8vw, 2.35rem) !important;
}

body.page-slug-about-us .rjw-about-pillars__grid,
body.page-slug-about-us .rjw-about-pillars__grid.e-con,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-pillars__grid {
	--display: grid !important;
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: clamp(18px, 2.4vw, 28px) !important;
	align-items: stretch !important;
	width: 100% !important;
	flex-wrap: nowrap !important;
	--flex-wrap: nowrap !important;
}

body.page-slug-about-us .rjw-about-pillars__grid {
	padding-top: 40px !important;
}

body.page-slug-about-us .rjw-about-pillars__grid > .e-con-inner {
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

body.page-slug-about-us .rjw-about-pillar,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-pillar {
	--width: 100% !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: auto !important;
	align-self: stretch !important;
	--display: flex !important;
	display: flex !important;
	flex-direction: column !important;
	--flex-direction: column !important;
	overflow: hidden;
	background: var(--rjw-about-white) !important;
	box-shadow: var(--rjw-about-shadow);
	transition: transform var(--rjw-about-ease), box-shadow var(--rjw-about-ease);
	will-change: transform;
}

body.page-slug-about-us .rjw-about-pillar:hover {
	transform: translateY(-6px);
	box-shadow: var(--rjw-about-shadow-hover);
}

body.page-slug-about-us .rjw-about-pillar > .elementor-widget-image {
	aspect-ratio: 1 / 1.05;
	flex: 0 0 auto !important;
	align-self: stretch !important;
	width: 100% !important;
	height: auto !important;
	max-height: none !important;
	position: relative !important;
	overflow: hidden;
}

body.page-slug-about-us .rjw-about-pillar__body,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-pillar__body {
	flex: 1 0 auto !important;
	flex-shrink: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	--flex-direction: column !important;
	justify-content: flex-start !important;
	padding: 24px 24px 28px !important;
	border-style: solid !important;
	border-width: 0 0 3px 0 !important;
	--border-style: solid !important;
	--border-top-width: 0px !important;
	--border-right-width: 0px !important;
	--border-bottom-width: 3px !important;
	--border-left-width: 0px !important;
	background: var(--rjw-about-white) !important;
	position: relative;
	z-index: 1;
	min-height: min-content !important;
	height: auto !important;
	width: 100% !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.page-slug-about-us .rjw-about-pillar--navy .rjw-about-pillar__body,
body.page-slug-about-us .rjw-about-pillar--navy .elementor-element.rjw-about-pillar__body {
	border-color: var(--rjw-about-navy) !important;
	--border-color: var(--rjw-about-navy) !important;
}

body.page-slug-about-us .rjw-about-pillar--purple .rjw-about-pillar__body,
body.page-slug-about-us .rjw-about-pillar--purple .elementor-element.rjw-about-pillar__body {
	border-color: var(--rjw-about-purple) !important;
	--border-color: var(--rjw-about-purple) !important;
}

body.page-slug-about-us .rjw-about-pillar--teal .rjw-about-pillar__body,
body.page-slug-about-us .rjw-about-pillar--teal .elementor-element.rjw-about-pillar__body {
	border-color: var(--rjw-about-teal) !important;
	--border-color: var(--rjw-about-teal) !important;
}

body.page-slug-about-us .rjw-about-pillar__body .elementor-widget-heading {
	margin-bottom: 10px !important;
}

body.page-slug-about-us .rjw-about-pillar__body .elementor-heading-title {
	font-size: 1.25rem !important;
	line-height: 1.25 !important;
}

body.page-slug-about-us .rjw-about-pillar__body .elementor-widget-text-editor p {
	margin: 0 !important;
	line-height: 1.55 !important;
	color: var(--rjw-about-muted) !important;
}

/* -------------------------------------------------------------------------- */
/* 4. Details                                                                   */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-details {
	align-items: center !important;
	gap: clamp(40px, 6vw, 84px) !important;
	column-gap: clamp(40px, 6vw, 84px) !important;
	row-gap: clamp(28px, 4vw, 40px) !important;
}

body.page-slug-about-us .rjw-about-details__copy {
	justify-content: center !important;
	align-self: center !important;
}

body.page-slug-about-us .rjw-about-details__copy .elementor-widget-heading {
	margin-bottom: 20px !important;
}

body.page-slug-about-us .rjw-about-details__copy .elementor-heading-title {
	font-size: clamp(1.7rem, 2.8vw, 2.35rem) !important;
	line-height: 1.15 !important;
	max-width: 14ch;
}

body.page-slug-about-us .rjw-about-details__copy .rjw-about__body,
body.page-slug-about-us .rjw-about-details__copy .elementor-widget-text-editor {
	max-width: 440px;
}

body.page-slug-about-us .rjw-about-details__copy .elementor-widget-text-editor p {
	margin: 0 !important;
	line-height: 1.75 !important;
	color: var(--rjw-about-text);
}

body.page-slug-about-us .rjw-about-details__media {
	aspect-ratio: 5 / 4;
	align-self: center !important;
	min-height: 320px;
}

@media (min-width: 1025px) {
	body.page-slug-about-us .rjw-about-details__copy {
		width: 46% !important;
		max-width: 46% !important;
	}

	body.page-slug-about-us .rjw-about-details__media {
		width: 54% !important;
		max-width: 54% !important;
	}
}

/* -------------------------------------------------------------------------- */
/* 5. Store cards — 2 equal columns                                             */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-stores > .elementor-widget-heading {
	margin-bottom: 12px !important;
}

body.page-slug-about-us .rjw-about-stores > .elementor-widget-heading .elementor-heading-title {
	font-size: clamp(1.7rem, 2.8vw, 2.35rem) !important;
}

body.page-slug-about-us .rjw-about-stores > .elementor-widget-text-editor {
	max-width: 640px;
	margin-inline: auto !important;
}

body.page-slug-about-us .rjw-about-stores > .elementor-widget-text-editor p {
	line-height: 1.65 !important;
}

body.page-slug-about-us .rjw-about-stores__grid,
body.page-slug-about-us .rjw-about-stores__grid.e-con,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-stores__grid {
	--display: grid !important;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: clamp(18px, 2.4vw, 28px) !important;
	align-items: stretch !important;
	width: 100% !important;
	flex-wrap: nowrap !important;
	--flex-wrap: nowrap !important;
}

body.page-slug-about-us .rjw-about-stores__grid {
	padding-top: 40px !important;
}

body.page-slug-about-us .rjw-about-stores__grid > .e-con-inner {
	padding: 0 !important;
	width: 100% !important;
	max-width: none !important;
}

body.page-slug-about-us .rjw-about-store,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-store {
	--width: 100% !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	height: auto !important;
	align-self: stretch !important;
	--display: flex !important;
	display: flex !important;
	flex-direction: column !important;
	--flex-direction: column !important;
	overflow: hidden;
	background: var(--rjw-about-white) !important;
	border-radius: var(--rjw-about-radius);
	box-shadow: var(--rjw-about-shadow);
	transition: transform var(--rjw-about-ease), box-shadow var(--rjw-about-ease);
	will-change: transform;
}

body.page-slug-about-us .rjw-about-store:hover {
	transform: translateY(-4px);
	box-shadow: var(--rjw-about-shadow-hover);
}

body.page-slug-about-us .rjw-about-store > .elementor-widget-image {
	aspect-ratio: 16 / 10;
	flex: 0 0 auto !important;
	align-self: stretch !important;
	width: 100% !important;
	max-height: none !important;
	height: auto !important;
	border-radius: 0;
	position: relative !important;
	overflow: hidden;
	z-index: 0;
}

body.page-slug-about-us .rjw-about-store__body,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-store__body {
	flex: 1 0 auto !important;
	flex-shrink: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	--flex-direction: column !important;
	padding: 28px 28px 30px !important;
	background: var(--rjw-about-white) !important;
	position: relative;
	z-index: 1;
	min-height: min-content !important;
	height: auto !important;
	width: 100% !important;
	visibility: visible !important;
	opacity: 1 !important;
}

body.page-slug-about-us .rjw-about-store__body .elementor-widget-heading:nth-child(1) {
	margin-bottom: 8px !important;
}

body.page-slug-about-us .rjw-about-store__body .elementor-widget-heading:nth-child(2) {
	margin-bottom: 12px !important;
}

body.page-slug-about-us .rjw-about-store__body .rjw-about-store__address {
	margin-bottom: 10px !important;
}

body.page-slug-about-us .rjw-about-store__body .rjw-about-store__hours {
	margin-bottom: 18px !important;
}

body.page-slug-about-us .rjw-about-store__hours .elementor-widget-container p,
body.page-slug-about-us .rjw-about-store__hours p {
	margin: 0 !important;
	line-height: 1.55 !important;
	color: var(--rjw-about-muted) !important;
}

body.page-slug-about-us .rjw-about-store__body .elementor-widget-button {
	margin-top: auto !important;
}

body.page-slug-about-us .rjw-about-store__link .elementor-button,
body.page-slug-about-us .rjw-about-store__link .elementor-button-link {
	display: inline-flex !important;
	align-items: center;
	padding: 0 !important;
	min-height: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	font-family: "Space Grotesk", sans-serif !important;
	font-weight: 600 !important;
	font-size: 0.9375rem !important;
	letter-spacing: 0.01em;
	color: var(--rjw-about-purple) !important;
	position: relative;
	transition: color 200ms ease;
}

body.page-slug-about-us .rjw-about-store__link .elementor-button-text {
	position: relative;
	display: inline-block;
}

body.page-slug-about-us .rjw-about-store__link .elementor-button-text::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: -3px;
	height: 1px;
	background: currentColor;
	transition: right 250ms ease;
}

body.page-slug-about-us .rjw-about-store__link .elementor-button:hover,
body.page-slug-about-us .rjw-about-store__link .elementor-button:focus {
	color: var(--rjw-about-purple-dark) !important;
	background: transparent !important;
}

body.page-slug-about-us .rjw-about-store__link .elementor-button:hover .elementor-button-text::after,
body.page-slug-about-us .rjw-about-store__link .elementor-button:focus .elementor-button-text::after {
	right: 0;
}

/* -------------------------------------------------------------------------- */
/* 6. Meet the Team — FORCE 4-across desktop                                    */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-team > .elementor-widget-heading {
	margin-bottom: 8px !important;
}

body.page-slug-about-us .rjw-about-team > .elementor-widget-heading .elementor-heading-title {
	font-size: clamp(1.7rem, 2.8vw, 2.35rem) !important;
}

body.page-slug-about-us .rjw-about-team__grid,
body.page-slug-about-us .rjw-about-team__grid.e-con,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-team__grid,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtem02 {
	--display: grid !important;
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(20px, 2.5vw, 28px) !important;
	align-items: stretch !important;
	width: 100% !important;
	flex-direction: row !important;
	--flex-direction: row !important;
	flex-wrap: nowrap !important;
	--flex-wrap: nowrap !important;
}

body.page-slug-about-us .rjw-about-team__grid {
	padding-top: 40px !important;
}

body.page-slug-about-us .rjw-about-person,
body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-person,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtema,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtemb,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtemc,
body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtemd {
	--width: 100% !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	flex: none !important;
	height: auto !important;
	align-self: stretch !important;
	--display: flex !important;
	display: flex !important;
	flex-direction: column !important;
	background: transparent !important;
	transition: transform var(--rjw-about-ease);
	will-change: transform;
}

body.page-slug-about-us .rjw-about-person:hover {
	transform: translateY(-4px);
}

body.page-slug-about-us .rjw-about-person .elementor-widget-image,
body.page-slug-about-us .rjw-about-person > .elementor-widget-image {
	aspect-ratio: 3 / 4;
	width: 100% !important;
	height: auto !important;
	flex: 0 0 auto !important;
	margin-bottom: 18px !important;
	overflow: hidden;
	position: relative !important;
}
	border-radius: var(--rjw-about-radius);
	background: var(--rjw-about-light);
}

body.page-slug-about-us .rjw-about-person .elementor-widget-heading {
	margin-bottom: 8px !important;
}

body.page-slug-about-us .rjw-about-person .elementor-widget-heading .elementor-heading-title {
	font-size: 0.72rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1.35 !important;
	color: var(--rjw-about-teal) !important;
}

body.page-slug-about-us .rjw-about-person .elementor-widget-heading + .elementor-widget-heading .elementor-heading-title {
	font-size: 1.0625rem !important;
	font-weight: 700 !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
	color: var(--rjw-about-navy) !important;
}

body.page-slug-about-us .rjw-about-person .elementor-widget-text-editor p {
	margin: 0 !important;
	font-size: 0.95rem !important;
	line-height: 1.55 !important;
	font-weight: 400 !important;
	color: var(--rjw-about-muted) !important;
}

/* -------------------------------------------------------------------------- */
/* 7. CTA                                                                       */
/* -------------------------------------------------------------------------- */

body.page-slug-about-us .rjw-about-cta {
	align-items: center !important;
	justify-content: center !important;
	text-align: center;
	padding-block: clamp(96px, 11vw, 132px) !important;
}

body.page-slug-about-us .rjw-about-cta > .elementor-widget-heading {
	margin-bottom: 18px !important;
	width: 100%;
}

body.page-slug-about-us .rjw-about-cta > .elementor-widget-heading .elementor-heading-title {
	font-size: clamp(1.9rem, 3.4vw, 2.75rem) !important;
	line-height: 1.12 !important;
}

body.page-slug-about-us .rjw-about-cta > .elementor-widget-text-editor {
	max-width: 640px;
	margin-inline: auto !important;
	width: 100%;
}

body.page-slug-about-us .rjw-about-cta > .elementor-widget-text-editor p {
	line-height: 1.65 !important;
}

body.page-slug-about-us .rjw-about-cta__actions {
	padding-top: 32px !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 16px !important;
	column-gap: 16px !important;
	row-gap: 14px !important;
	width: 100%;
}

body.page-slug-about-us .rjw-about-btn .elementor-button,
body.page-slug-about-us .rjw-about-btn .elementor-button-link,
body.page-slug-about-us .rjw-about-btn .elementor-button-text {
	text-decoration: none !important;
	box-shadow: none !important;
}

body.page-slug-about-us .rjw-about-btn .elementor-button-text::after,
body.page-slug-about-us .rjw-about-btn .elementor-button-text::before,
body.page-slug-about-us .rjw-about-btn .elementor-button::after,
body.page-slug-about-us .rjw-about-btn .elementor-button::before {
	content: none !important;
	display: none !important;
}

/* CTA buttons — optically centered label (matches header For Business) */
body.page-slug-about-us .rjw-about-btn .elementor-button,
body.page-slug-about-us .elementor-963 .rjw-about-btn .elementor-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0 !important;
	box-sizing: border-box !important;
	height: 52px !important;
	min-height: 52px !important;
	max-height: 52px !important;
	padding: 0 28px !important;
	border-radius: 0 !important;
	font-family: var(--wds-font-heading, "Space Grotesk", sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	letter-spacing: 0.01em;
	text-align: center !important;
	white-space: nowrap;
	border-style: solid !important;
	border-width: 1px !important;
	transition:
		background-color var(--rjw-about-ease),
		border-color var(--rjw-about-ease),
		color var(--rjw-about-ease),
		transform var(--rjw-about-ease),
		box-shadow var(--rjw-about-ease) !important;
}

body.page-slug-about-us .rjw-about-btn .elementor-button-content-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	gap: 0 !important;
	line-height: 1 !important;
}

body.page-slug-about-us .rjw-about-btn .elementor-button-text {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1 !important;
	vertical-align: middle;
	position: static !important;
	transform: none !important;
}

/* Primary CTA — brand purple (matches For Business / theme primary) */
body.page-slug-about-us .rjw-about-btn--primary .elementor-button {
	background: var(--rjw-about-purple) !important;
	background-color: var(--rjw-about-purple) !important;
	border-color: var(--rjw-about-purple) !important;
	color: #ffffff !important;
	text-decoration: none !important;
}

body.page-slug-about-us .rjw-about-btn--primary .elementor-button:hover,
body.page-slug-about-us .rjw-about-btn--primary .elementor-button:focus {
	background: var(--rjw-about-purple-dark) !important;
	background-color: var(--rjw-about-purple-dark) !important;
	border-color: var(--rjw-about-purple-dark) !important;
	color: #ffffff !important;
	text-decoration: none !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 24px rgba(106, 73, 114, 0.28) !important;
}

body.page-slug-about-us .rjw-about-btn--ghost .elementor-button:hover,
body.page-slug-about-us .rjw-about-btn--ghost .elementor-button:focus {
	background: rgba(255, 255, 255, 0.08) !important;
	border-color: #ffffff !important;
	transform: translateY(-2px);
	text-decoration: none !important;
}

/* -------------------------------------------------------------------------- */
/* Responsive                                                                   */
/* -------------------------------------------------------------------------- */

@media (max-width: 1280px) {
	body.page-slug-about-us {
		--rjw-about-section-y: clamp(68px, 7.5vw, 100px);
	}

	body.page-slug-about-us .rjw-about-hero {
		min-height: min(70vh, 620px);
	}
}

@media (max-width: 1024px) {
	body.page-slug-about-us .rjw-about-hero {
		min-height: 0;
	}

	body.page-slug-about-us .rjw-about-hero__copy {
		padding: 52px 36px !important;
	}

	body.page-slug-about-us .rjw-about-hero__media {
		min-height: 300px;
		aspect-ratio: 16 / 11;
	}

	body.page-slug-about-us .rjw-about-story__media,
	body.page-slug-about-us .rjw-about-details__media {
		aspect-ratio: 16 / 11;
		min-height: 0;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-slug-about-us .rjw-about-story__copy,
	body.page-slug-about-us .rjw-about-details__copy {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.page-slug-about-us .rjw-about-pillars__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-pillars__grid {
		grid-template-columns: 1fr !important;
	}

	body.page-slug-about-us .rjw-about-team__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-team__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtem02 {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		--flex-direction: row !important;
		flex-direction: row !important;
	}

	body.page-slug-about-us .rjw-about-stores__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-stores__grid {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 768px) {
	body.page-slug-about-us {
		--rjw-about-section-y: clamp(56px, 10vw, 80px);
	}

	body.page-slug-about-us .rjw-about-hero__copy {
		padding: 44px var(--wds-gutter) !important;
	}

	body.page-slug-about-us .rjw-about-hero__copy h1.elementor-heading-title {
		font-size: clamp(1.9rem, 7vw, 2.4rem) !important;
	}

	body.page-slug-about-us .rjw-about-hero__media {
		min-height: 240px;
	}

	body.page-slug-about-us .rjw-about-pillar:hover,
	body.page-slug-about-us .rjw-about-store:hover,
	body.page-slug-about-us .rjw-about-person:hover {
		transform: none;
	}

	body.page-slug-about-us .rjw-about-cta {
		padding-block: clamp(72px, 14vw, 96px) !important;
	}

	body.page-slug-about-us .rjw-about-details {
		--padding-bottom: clamp(32px, 7vw, 48px) !important;
		padding-bottom: clamp(32px, 7vw, 48px) !important;
	}

	body.page-slug-about-us .rjw-about-stores {
		--padding-top: clamp(32px, 7vw, 48px) !important;
		padding-top: clamp(32px, 7vw, 48px) !important;
	}

	body.page-slug-about-us .rjw-about-cta__actions {
		padding-top: 28px !important;
	}
}

@media (max-width: 576px) {
	body.page-slug-about-us .rjw-about-hero__copy .rjw-about__lede,
	body.page-slug-about-us .rjw-about-hero__copy .elementor-widget-text-editor {
		max-width: 100%;
	}

	body.page-slug-about-us .rjw-about-team__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.rjw-about-team__grid,
	body.page-slug-about-us .elementor-963 .elementor-element.elementor-element-abtem02 {
		grid-template-columns: 1fr !important;
	}

	body.page-slug-about-us .rjw-about-store__body {
		padding: 22px 20px 24px !important;
	}

	body.page-slug-about-us .rjw-about-pillar__body {
		padding: 20px 20px 24px !important;
	}

	body.page-slug-about-us .rjw-about-cta__actions .elementor-widget-button,
	body.page-slug-about-us .rjw-about-cta__actions .elementor-button {
		width: 100%;
	}
}

@media (max-width: 390px) {
	body.page-slug-about-us .rjw-about-hero__copy h1.elementor-heading-title {
		font-size: 1.85rem !important;
	}

	body.page-slug-about-us .rjw-about-btn .elementor-button {
		height: 50px !important;
		min-height: 50px !important;
		max-height: 50px !important;
		padding: 0 22px !important;
		white-space: normal;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.page-slug-about-us .rjw-about-pillar,
	body.page-slug-about-us .rjw-about-store,
	body.page-slug-about-us .rjw-about-person,
	body.page-slug-about-us .rjw-about-btn .elementor-button,
	body.page-slug-about-us .rjw-about-store__link .elementor-button-text::after {
		transition: none !important;
	}

	body.page-slug-about-us .rjw-about-pillar:hover,
	body.page-slug-about-us .rjw-about-store:hover,
	body.page-slug-about-us .rjw-about-person:hover,
	body.page-slug-about-us .rjw-about-btn .elementor-button:hover,
	body.page-slug-about-us .rjw-about-btn .elementor-button:focus {
		transform: none !important;
	}
}
