@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;0,800;0,900;1,400;1,700&display=swap');

/* ==========================================================================
   RCGroups Australia - Central Premium Design System (DRY)
   ========================================================================== */
:root {
	--rcg-primary: #0341e6; /* Brand Blue */
	--rcg-primary-hover: #022fb3;
	--rcg-primary-light: #ebf0ff;
	--rcg-dark: #0f172a; /* Slate 900 */
	--rcg-dark-card: #1e293b; /* Slate 800 */
	--rcg-light: #f8fafc; /* Slate 50 */
	--rcg-border: #e2e8f0; /* Slate 200 */
	--rcg-text-dark: #1e293b;
	--rcg-text-light: #f8fafc;
	--rcg-text-muted: #64748b;
	--rcg-font-head: 'Outfit', sans-serif;
	--rcg-font-body: 'Inter', sans-serif;
	--rcg-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.05), 0 2px 4px -2px rgb(0 0 0 / 0.05);
	--rcg-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
	--rcg-shadow-glow: 0 0 20px rgba(3, 65, 230, 0.2);
}

/* ==========================================================================
   A. HOMEPAGE CUSTOM LAYOUT STYLING
   ========================================================================== */
.rcg-home {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}

/* Common Section Styles */
.rcg-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-section-alt {
	background-color: var(--rcg-light);
}
.rcg-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-section-header {
	text-align: center;
	margin-bottom: 60px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.rcg-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 42px;
	line-height: 1.2;
	color: var(--rcg-dark);
	margin-bottom: 18px;
}
.rcg-section-subtitle {
	color: var(--rcg-text-muted);
	font-size: 18px;
	font-weight: 400;
}

/* BUTTONS */
.rcg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}
.rcg-btn-outline {
	background-color: transparent;
	color: var(--rcg-text-light) !important;
	border-color: rgba(255, 255, 255, 0.4);
}
.rcg-btn-outline:hover {
	background-color: rgba(255, 255, 255, 0.1);
	border-color: #ffffff;
	transform: translateY(-2px);
}
.rcg-btn-dark-outline {
	background-color: transparent;
	color: var(--rcg-dark) !important;
	border-color: var(--rcg-dark);
}
.rcg-btn-dark-outline:hover {
	background-color: var(--rcg-dark);
	color: #ffffff !important;
	transform: translateY(-2px);
}

/* 1. HERO SECTION */
.rcg-hero {
	position: relative;
	min-height: 65vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
	padding: 50px 24px;
}
.rcg-hero-content {
	max-width: 800px;
}
.rcg-hero-title {
	font-family: 'Playfair Display', serif;
	font-size: 48px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.5px;
	margin-bottom: 18px;
	color: #ffffff;
}
.rcg-hero-title span {
	color: #C9A84C; /* Gold/amber accent for "Perfect Home" highlight */
	font-style: italic;
}
.rcg-hero-description {
	font-size: 17px;
	font-weight: 300;
	line-height: 1.65;
	color: rgba(248, 250, 252, 0.85);
	margin-bottom: 30px;
	max-width: 620px;
}
.rcg-hero-btns {
	display: flex;
	gap: 16px;
}

@keyframes pulse {
	0% { transform: scale(0.9); opacity: 0.6; }
	50% { transform: scale(1.1); opacity: 1; }
	100% { transform: scale(0.9); opacity: 0.6; }
}

/* 2. WHY CHOOSE US SECTION */
.rcg-why-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
	margin-top: 20px;
}
.rcg-why-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px;
	border-radius: 8px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}
.rcg-why-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: var(--rcg-primary);
	transform: scaleY(0);
	transform-origin: bottom;
	transition: transform 0.3s ease;
}
.rcg-why-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: transparent;
}
.rcg-why-card:hover::before {
	transform: scaleY(1);
}
.rcg-why-icon {
	width: 64px;
	height: 64px;
	background-color: var(--rcg-primary-light);
	color: var(--rcg-primary);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
}
.rcg-why-icon svg {
	width: 32px;
	height: 32px;
}
.rcg-why-card-title {
	font-family: var(--rcg-font-head);
	font-size: 22px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-why-card-desc {
	color: var(--rcg-text-muted);
	font-size: 15px;
}

/* 3. SERVICES GRID */
.rcg-services-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.rcg-service-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	flex-direction: column;
	height: 100%;
}
.rcg-service-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: var(--rcg-primary);
}
.rcg-service-img-wrapper {
	height: 180px;
	background-color: var(--rcg-dark);
	position: relative;
	overflow: hidden;
}
.rcg-service-img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
	opacity: 0.85;
}
.rcg-service-card:hover .rcg-service-img-wrapper img {
	transform: scale(1.08);
	opacity: 1;
}
.rcg-service-badge {
	position: absolute;
	top: 16px;
	right: 16px;
	background-color: var(--rcg-primary);
	color: #ffffff;
	font-family: var(--rcg-font-head);
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: 4px;
	letter-spacing: 0.5px;
}
.rcg-service-body {
	padding: 30px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.rcg-service-icon-inline {
	width: 48px;
	height: 48px;
	background-color: var(--rcg-light);
	color: var(--rcg-primary);
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	border: 1px solid var(--rcg-border);
}
.rcg-service-icon-inline svg {
	width: 24px;
	height: 24px;
}
.rcg-service-title {
	font-family: var(--rcg-font-head);
	font-size: 20px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-service-desc {
	color: var(--rcg-text-muted);
	font-size: 14px;
	margin-bottom: 24px;
	flex-grow: 1;
}
.rcg-service-link {
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 14px;
	color: var(--rcg-primary);
	display: inline-flex;
	align-items: center;
	text-decoration: none !important;
	transition: color 0.2s ease;
	margin-top: auto;
}
.rcg-service-link svg {
	width: 16px;
	height: 16px;
	margin-left: 6px;
	transition: transform 0.2s ease;
}
.rcg-service-card:hover .rcg-service-link {
	color: var(--rcg-primary-hover);
}
.rcg-service-card:hover .rcg-service-link svg {
	transform: translateX(4px);
}

/* 4. SHOWCASE & STATS SECTION */
.rcg-showcase-split {
	display: flex;
	gap: 60px;
	align-items: center;
}
.rcg-showcase-left {
	flex: 1;
}
.rcg-showcase-right {
	flex: 1.1;
	position: relative;
}
.rcg-showcase-img {
	width: 100%;
	border-radius: 12px;
	box-shadow: var(--rcg-shadow-lg);
	border: 1px solid var(--rcg-border);
}
.rcg-showcase-badge {
	position: absolute;
	bottom: -30px;
	left: -30px;
	background-color: var(--rcg-dark);
	color: #ffffff;
	padding: 30px;
	border-radius: 10px;
	box-shadow: var(--rcg-shadow-lg);
	border-left: 5px solid var(--rcg-primary);
}
.rcg-showcase-badge-val {
	font-family: var(--rcg-font-head);
	font-size: 36px;
	font-weight: 900;
	color: var(--rcg-primary);
	line-height: 1;
}
.rcg-showcase-badge-txt {
	font-family: var(--rcg-font-head);
	font-size: 14px;
	text-transform: uppercase;
	font-weight: 600;
	letter-spacing: 1px;
	margin-top: 4px;
}

/* 5. TESTIMONIALS SECTION */
.rcg-testi-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.rcg-testi-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px;
	border-radius: 8px;
	position: relative;
}
.rcg-testi-quote-icon {
	position: absolute;
	top: 30px;
	right: 40px;
	color: rgba(3, 65, 230, 0.1);
	width: 60px;
	height: 60px;
}
.rcg-testi-stars {
	color: #f59e0b;
	margin-bottom: 20px;
	display: flex;
	gap: 2px;
}
.rcg-testi-stars svg {
	width: 18px;
	height: 18px;
}
.rcg-testi-content {
	font-style: italic;
	color: var(--rcg-text-dark);
	font-size: 15px;
	margin-bottom: 24px;
	line-height: 1.7;
}
.rcg-testi-author {
	display: flex;
	align-items: center;
	gap: 16px;
}
.rcg-testi-author-initial {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: var(--rcg-primary-light);
	color: var(--rcg-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 700;
	font-size: 18px;
}
.rcg-testi-author-info h4 {
	font-family: var(--rcg-font-head);
	font-weight: 700;
	font-size: 16px;
	color: var(--rcg-dark);
	margin: 0;
}
.rcg-testi-author-info p {
	font-size: 13px;
	color: var(--rcg-text-muted);
	margin: 2px 0 0 0;
}

/* 6. CONTACT & QUOTE SECTION (GLASSMORPHISM) */
.rcg-contact-section {
	background-image: linear-gradient(rgba(15, 23, 42, 0.92), rgba(15, 23, 42, 0.96)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
}
.rcg-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 60px;
	align-items: start;
}
.rcg-contact-info-title {
	font-family: var(--rcg-font-head);
	font-size: 42px;
	font-weight: 800;
	margin-bottom: 24px;
	color: #ffffff;
}
.rcg-contact-info-desc {
	font-size: 17px;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.8);
	margin-bottom: 40px;
}
.rcg-contact-details {
	display: flex;
	flex-direction: column;
	gap: 24px;
}
.rcg-contact-item {
	display: flex;
	gap: 20px;
	align-items: flex-start;
}
.rcg-contact-item-icon {
	width: 52px;
	height: 52px;
	background-color: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--rcg-primary);
	flex-shrink: 0;
}
.rcg-contact-item-icon svg {
	width: 24px;
	height: 24px;
}
.rcg-contact-item-content h4 {
	font-family: var(--rcg-font-head);
	font-size: 16px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 4px 0;
}
.rcg-contact-item-content p {
	margin: 0;
	color: rgba(248, 250, 252, 0.7);
	font-size: 15px;
}

/* Glassmorphism Form */
.rcg-form-box {
	background: rgba(30, 41, 59, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 50px;
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}
.rcg-form-title {
	font-family: var(--rcg-font-head);
	font-size: 24px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 8px;
}
.rcg-form-subtitle {
	color: rgba(248, 250, 252, 0.7);
	font-size: 14px;
	margin-bottom: 30px;
}
.rcg-form-group-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 20px;
}
.rcg-form-group {
	margin-bottom: 20px;
}
.rcg-form-label {
	display: block;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: rgba(255, 255, 255, 0.85);
	margin-bottom: 8px;
}
.rcg-form-input, .rcg-form-select, .rcg-form-textarea {
	width: 100%;
	background-color: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff !important;
	padding: 14px 18px;
	border-radius: 6px;
	font-family: var(--rcg-font-body);
	font-size: 15px;
	transition: all 0.3s ease;
	outline: none !important;
	box-sizing: border-box;
}
.rcg-form-select option {
	background-color: var(--rcg-dark);
	color: #ffffff;
}
.rcg-form-input:focus, .rcg-form-select:focus, .rcg-form-textarea:focus {
	border-color: var(--rcg-primary);
	background-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 0 0 3px rgba(3, 65, 230, 0.25);
}
.rcg-form-textarea {
	resize: vertical;
	min-height: 120px;
}
.rcg-form-btn {
	width: 100%;
	border: none;
}
.rcg-form-alert {
	padding: 16px;
	border-radius: 6px;
	margin-bottom: 24px;
	font-weight: 500;
	display: none;
	animation: slideIn 0.3s ease;
}
.rcg-form-alert-success {
	background-color: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	color: #34d399;
}
.rcg-form-alert-error {
	background-color: rgba(239, 68, 68, 0.15);
	border: 1px solid rgba(239, 68, 68, 0.4);
	color: #f87171;
}

@keyframes slideIn {
	from { transform: translateY(-10px); opacity: 0; }
	to { transform: translateY(0); opacity: 1; }
}

/* ==========================================================================
   B. ABOUT US CUSTOM LAYOUT STYLING
   ========================================================================== */
.rcg-about {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}

/* Common Section Styles */
.rcg-about-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-about-section-alt {
	background-color: var(--rcg-light);
}
.rcg-about-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-about-section-header {
	text-align: center;
	margin-bottom: 60px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.rcg-about-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-about-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 42px;
	line-height: 1.2;
	color: var(--rcg-dark);
	margin-bottom: 18px;
}
.rcg-about-section-subtitle {
	color: var(--rcg-text-muted);
	font-size: 18px;
	font-weight: 400;
}

/* BUTTONS */
.rcg-about-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-about-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-about-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}
.rcg-about-btn-outline {
	background-color: transparent;
	color: var(--rcg-text-light) !important;
	border-color: rgba(255, 255, 255, 0.4);
}
.rcg-about-btn-outline:hover {
	background-color: rgba(255, 255, 255, 0.1);
	border-color: #ffffff;
	transform: translateY(-2px);
}

/* HERO SECTION */
.rcg-about-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-about-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-about-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-about-hero-title span {
	color: var(--rcg-primary);
}
.rcg-about-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* STORY & VISION SECTION */
.rcg-about-story-grid {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: 60px;
	align-items: center;
}
.rcg-about-story-left {
	position: relative;
}
.rcg-about-story-right {
	position: relative;
}
.rcg-about-story-img {
	width: 100%;
	border-radius: 12px;
	box-shadow: var(--rcg-shadow-lg);
	border: 1px solid var(--rcg-border);
}
.rcg-about-story-title {
	font-family: var(--rcg-font-head);
	font-size: 36px;
	font-weight: 800;
	color: var(--rcg-dark);
	margin-bottom: 20px;
}
.rcg-about-story-p {
	color: var(--rcg-text-muted);
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 24px;
}

/* CORE PILLARS SECTION */
.rcg-about-pillars-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 32px;
	margin-top: 20px;
}
.rcg-about-pillar-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px;
	border-radius: 8px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	position: relative;
	overflow: hidden;
}
.rcg-about-pillar-card::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 100%;
	background-color: var(--rcg-primary);
	transform: scaleY(0);
	transform-origin: bottom;
	transition: transform 0.3s ease;
}
.rcg-about-pillar-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: transparent;
}
.rcg-about-pillar-card:hover::before {
	transform: scaleY(1);
}
.rcg-about-pillar-icon {
	width: 64px;
	height: 64px;
	background-color: var(--rcg-primary-light);
	color: var(--rcg-primary);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
}
.rcg-about-pillar-icon svg {
	width: 32px;
	height: 32px;
}
.rcg-about-pillar-title {
	font-family: var(--rcg-font-head);
	font-size: 22px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-about-pillar-desc {
	color: var(--rcg-text-muted);
	font-size: 15px;
}

/* PROCESS SECTION */
.rcg-about-process-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	position: relative;
}
.rcg-about-process-step {
	background: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px 30px;
	border-radius: 8px;
	position: relative;
	z-index: 2;
}
.rcg-about-process-num {
	position: absolute;
	top: 20px;
	right: 30px;
	font-family: var(--rcg-font-head);
	font-size: 64px;
	font-weight: 900;
	color: rgba(3, 65, 230, 0.08);
	line-height: 1;
}
.rcg-about-process-title {
	font-family: var(--rcg-font-head);
	font-size: 20px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
	position: relative;
	z-index: 3;
}
.rcg-about-process-desc {
	color: var(--rcg-text-muted);
	font-size: 15px;
	position: relative;
	z-index: 3;
}

/* SERVICES HIGHLIGHT */
.rcg-about-services-wrap {
	margin-top: 40px;
}
.rcg-about-services-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.rcg-about-service-item {
	background: #ffffff;
	padding: 20px;
	border-radius: 6px;
	border: 1px solid var(--rcg-border);
	display: flex;
	align-items: center;
	gap: 15px;
	transition: all 0.2s ease;
}
.rcg-about-service-item:hover {
	border-color: var(--rcg-primary);
	background-color: var(--rcg-light);
	transform: translateX(4px);
}
.rcg-about-service-icon {
	color: var(--rcg-primary);
	flex-shrink: 0;
	display: flex;
	align-items: center;
}
.rcg-about-service-icon svg {
	width: 22px;
	height: 22px;
}
.rcg-about-service-name {
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	color: var(--rcg-dark);
}

/* CTA GLASSMORPHISM */
.rcg-about-cta-section {
	background-image: linear-gradient(rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.95)), url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
	text-align: center;
}
.rcg-about-cta-box {
	background: rgba(30, 41, 59, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 60px 40px;
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
	max-width: 800px;
	margin: 0 auto;
}
.rcg-about-cta-title {
	font-family: var(--rcg-font-head);
	font-size: 38px;
	font-weight: 800;
	margin-bottom: 16px;
	color: #ffffff;
}
.rcg-about-cta-desc {
	font-size: 18px;
	color: rgba(248, 250, 252, 0.8);
	margin-bottom: 32px;
	line-height: 1.6;
}

/* ==========================================================================
   C. PREMIUM REDESIGNED BESPOKE FOOTER STYLING
   ========================================================================== */
.rcg-premium-footer {
	background-color: #0b0f19; /* Ultra dark luxury slate */
	color: #f8fafc;
	padding: 80px 24px 40px 24px;
	font-family: 'Inter', sans-serif;
	border-top: 2px solid #0341e6; /* Blue brand line */
	position: relative;
}
.rcg-footer-grid {
	max-width: 1200px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 1.2fr 0.9fr 0.9fr 1fr;
	gap: 40px;
	margin-bottom: 60px;
}
.rcg-footer-col {
	display: flex;
	flex-direction: column;
}
.rcg-footer-brand-title {
	font-family: 'Outfit', sans-serif;
	font-size: 26px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 15px 0;
	letter-spacing: -0.5px;
}
.rcg-footer-brand-title span {
	color: #0341e6;
}
.rcg-footer-brand-desc {
	color: #94a3b8;
	font-size: 14px;
	line-height: 1.6;
	margin: 0 0 25px 0;
}
.rcg-footer-socials {
	display: flex;
	gap: 12px;
}
.rcg-footer-social-link {
	width: 38px;
	height: 38px;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #94a3b8;
	transition: all 0.3s ease;
	text-decoration: none !important;
}
.rcg-footer-social-link:hover {
	background: #0341e6;
	color: #ffffff;
	border-color: #0341e6;
	transform: translateY(-3px);
	box-shadow: 0 5px 15px rgba(3, 65, 230, 0.3);
}
.rcg-footer-social-link svg {
	width: 16px;
	height: 16px;
}
.rcg-footer-heading {
	font-family: 'Outfit', sans-serif;
	font-size: 16px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #ffffff;
	margin: 0 0 25px 0;
	position: relative;
	padding-bottom: 10px;
}
.rcg-footer-heading::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 2px;
	background-color: #0341e6;
}
.rcg-footer-links {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.rcg-footer-links li a {
	color: #94a3b8;
	font-size: 14px;
	text-decoration: none !important;
	transition: all 0.2s ease;
	display: inline-flex;
	align-items: center;
}
.rcg-footer-links li a::before {
	content: '→';
	margin-right: 8px;
	opacity: 0;
	transform: translateX(-5px);
	transition: all 0.2s ease;
	color: #0341e6;
}
.rcg-footer-links li a:hover {
	color: #ffffff;
}
.rcg-footer-links li a:hover::before {
	opacity: 1;
	transform: translateX(0);
}
.rcg-footer-contact-list {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.rcg-footer-contact-item {
	display: flex;
	align-items: flex-start;
	gap: 15px;
}
.rcg-footer-contact-icon {
	width: 38px;
	height: 38px;
	background: rgba(3, 65, 230, 0.08);
	border: 1px solid rgba(3, 65, 230, 0.15);
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #0341e6;
	flex-shrink: 0;
}
.rcg-footer-contact-icon svg {
	width: 18px;
	height: 18px;
}
.rcg-footer-contact-text h5 {
	font-family: 'Outfit', sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	color: #64748b;
	margin: 0 0 3px 0;
	letter-spacing: 0.5px;
}
.rcg-footer-contact-text p {
	margin: 0;
	font-size: 14px;
	color: #cbd5e1;
	line-height: 1.4;
}
.rcg-footer-contact-text p a {
	color: #cbd5e1 !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}
.rcg-footer-contact-text p a:hover {
	color: #0341e6 !important;
}

/* Bottom Copyright Bar */
.rcg-footer-bottom {
	max-width: 1200px;
	margin: 0 auto;
	padding-top: 30px;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}
.rcg-footer-copy {
	font-size: 14px;
	color: #64748b;
	margin: 0;
}
.rcg-footer-copy a {
	color: #0341e6 !important;
	text-decoration: none !important;
	font-weight: 600;
}
.rcg-footer-legal-links {
	display: flex;
	gap: 20px;
	font-size: 13px;
	color: #64748b;
}
.rcg-footer-legal-links a {
	color: #64748b !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}
.rcg-footer-legal-links a:hover {
	color: #ffffff !important;
}

/* ==========================================================================
   D. GENERAL RESPONSIVE LAYOUT MEDIA QUERIES
   ========================================================================== */
@media (max-width: 1024px) {
	.rcg-hero-title { font-size: 52px; }
	.rcg-why-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-services-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-testi-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-contact-grid { grid-template-columns: 1fr; gap: 40px; }
	.rcg-showcase-split { flex-direction: column; gap: 40px; }
	.rcg-showcase-right { margin-top: 30px; width: 80%; margin-left: auto; margin-right: auto; }
	
	.rcg-about-hero-title { font-size: 48px; }
	.rcg-about-story-grid { grid-template-columns: 1fr; gap: 40px; }
	.rcg-about-pillars-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-about-process-grid { grid-template-columns: 1fr; }
	.rcg-about-services-list { grid-template-columns: repeat(2, 1fr); }
	
	.rcg-footer-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	.rcg-section { padding: 60px 16px; }
	.rcg-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-hero-title { font-size: 40px; }
	.rcg-hero-description { font-size: 17px; }
	.rcg-hero-btns { flex-direction: column; gap: 12px; }
	.rcg-section-title { font-size: 32px; }
	.rcg-why-grid { grid-template-columns: 1fr; gap: 20px; }
	.rcg-services-grid { grid-template-columns: 1fr; gap: 24px; }
	.rcg-testi-grid { grid-template-columns: 1fr; gap: 24px; }
	.rcg-showcase-right { width: 100%; }
	.rcg-showcase-badge { bottom: -10px; left: -10px; padding: 20px; }
	.rcg-form-box { padding: 30px 20px; }
	.rcg-form-group-row { grid-template-columns: 1fr; gap: 0; }
	
	.rcg-about-section { padding: 60px 16px; }
	.rcg-about-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-about-hero-title { font-size: 36px; }
	.rcg-about-hero-description { font-size: 17px; }
	.rcg-about-story-title { font-size: 30px; }
	.rcg-about-section-title { font-size: 32px; }
	.rcg-about-pillars-grid { grid-template-columns: 1fr; }
	.rcg-about-services-list { grid-template-columns: 1fr; }
	.rcg-about-cta-title { font-size: 28px; }
	.rcg-about-cta-box { padding: 40px 20px; }
	
	.rcg-premium-footer { padding: 60px 16px 30px 16px; }
	.rcg-footer-grid { grid-template-columns: 1fr; gap: 30px; }
	.rcg-footer-bottom { flex-direction: column; text-align: center; }
}

/* ==========================================================================
   E. FOOTER COPYRIGHT SECTION STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-footer-contacts-section {
	padding: 30px 0 25px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	margin-bottom: 20px;
}
.rcg-footer-contacts-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	text-align: left;
}
.rcg-footer-contact-item {
	display: flex;
	align-items: flex-start;
	gap: 15px;
	transition: transform 0.3s ease;
}
.rcg-footer-contact-item:hover {
	transform: translateY(-2px);
}
.rcg-footer-contact-icon {
	width: 42px;
	height: 42px;
	background: rgba(3, 65, 230, 0.1);
	border: 1px solid rgba(3, 65, 230, 0.2);
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #0341e6;
	flex-shrink: 0;
}
.rcg-footer-contact-icon svg {
	width: 20px;
	height: 20px;
}
.rcg-footer-contact-info {
	font-family: 'Inter', sans-serif;
}
.rcg-footer-contact-title {
	font-family: 'Outfit', sans-serif;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: #ffffff;
	margin: 0 0 4px 0;
}
.rcg-footer-contact-value {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.7);
	margin: 0;
	line-height: 1.4;
}
.rcg-footer-contact-value a {
	color: rgba(255, 255, 255, 0.7) !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}
.rcg-footer-contact-value a:hover {
	color: #0341e6 !important;
}
@media (max-width: 768px) {
	.rcg-footer-contacts-grid {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.rcg-footer-contacts-section {
		padding: 20px 0;
	}
}

/* ==========================================================================
   F. OUR SERVICES PAGE CUSTOM LAYOUT STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-services-page {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}
.rcg-services-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-services-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-services-section-alt {
	background-color: var(--rcg-light);
}
.rcg-services-section-header {
	text-align: center;
	margin-bottom: 60px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.rcg-services-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-services-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 42px;
	line-height: 1.2;
	color: var(--rcg-dark);
	margin-bottom: 18px;
}
.rcg-services-section-subtitle {
	color: var(--rcg-text-muted);
	font-size: 18px;
	font-weight: 400;
}

/* HERO SECTION */
.rcg-services-page-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-services-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-services-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-services-hero-title span {
	color: var(--rcg-primary);
}
.rcg-services-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* BUTTONS */
.rcg-services-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-services-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-services-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}

/* SERVICES GRID */
.rcg-services-page-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.rcg-services-page-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	flex-direction: column;
	height: 100%;
}
.rcg-services-page-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: var(--rcg-primary);
}
.rcg-services-img-wrapper {
	height: 180px;
	background-color: var(--rcg-dark);
	position: relative;
	overflow: hidden;
}
.rcg-services-img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
	opacity: 0.85;
}
.rcg-services-page-card:hover .rcg-services-img-wrapper img {
	transform: scale(1.08);
	opacity: 1;
}
.rcg-services-badge {
	position: absolute;
	top: 16px;
	right: 16px;
	background-color: var(--rcg-primary);
	color: #ffffff;
	font-family: var(--rcg-font-head);
	font-weight: 700;
	font-size: 11px;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: 4px;
	letter-spacing: 0.5px;
}
.rcg-services-body {
	padding: 30px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
}
.rcg-services-icon-inline {
	width: 48px;
	height: 48px;
	background-color: var(--rcg-light);
	color: var(--rcg-primary);
	border-radius: 6px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	border: 1px solid var(--rcg-border);
}
.rcg-services-icon-inline svg {
	width: 24px;
	height: 24px;
}
.rcg-services-title {
	font-family: var(--rcg-font-head);
	font-size: 20px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-services-desc {
	color: var(--rcg-text-muted);
	font-size: 14px;
	margin-bottom: 24px;
	flex-grow: 1;
}
.rcg-services-link {
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 14px;
	color: var(--rcg-primary);
	display: inline-flex;
	align-items: center;
	text-decoration: none !important;
	transition: color 0.2s ease;
	margin-top: auto;
}
.rcg-services-link svg {
	width: 16px;
	height: 16px;
	margin-left: 6px;
	transition: transform 0.2s ease;
}
.rcg-services-page-card:hover .rcg-services-link {
	color: var(--rcg-primary-hover);
}
.rcg-services-page-card:hover .rcg-services-link svg {
	transform: translateX(4px);
}

/* WORKING PROCESS */
.rcg-services-process-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 24px;
	position: relative;
}
.rcg-services-process-step {
	background: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px 24px;
	border-radius: 8px;
	position: relative;
	z-index: 2;
}
.rcg-services-process-num {
	position: absolute;
	top: 20px;
	right: 24px;
	font-family: var(--rcg-font-head);
	font-size: 48px;
	font-weight: 900;
	color: rgba(3, 65, 230, 0.08);
	line-height: 1;
}
.rcg-services-process-title {
	font-family: var(--rcg-font-head);
	font-size: 18px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
	position: relative;
	z-index: 3;
}
.rcg-services-process-desc {
	color: var(--rcg-text-muted);
	font-size: 14px;
	position: relative;
	z-index: 3;
}

/* CTA GLASSMORPHISM */
.rcg-services-cta-section {
	background-image: linear-gradient(rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.95)), url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
	text-align: center;
	padding: 100px 24px;
}
.rcg-services-cta-box {
	background: rgba(30, 41, 59, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 60px 40px;
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
	max-width: 800px;
	margin: 0 auto;
}
.rcg-services-cta-title {
	font-family: var(--rcg-font-head);
	font-size: 38px;
	font-weight: 800;
	margin-bottom: 16px;
	color: #ffffff;
}
.rcg-services-cta-desc {
	font-size: 18px;
	color: rgba(248, 250, 252, 0.8);
	margin-bottom: 32px;
	line-height: 1.6;
}

/* RESPONSIVE QUERIES */
@media (max-width: 1024px) {
	.rcg-services-hero-title { font-size: 48px; }
	.rcg-services-page-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-services-process-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	.rcg-services-section { padding: 60px 16px; }
	.rcg-services-page-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-services-hero-title { font-size: 36px; }
	.rcg-services-hero-description { font-size: 17px; }
	.rcg-services-section-title { font-size: 32px; }
	.rcg-services-page-grid { grid-template-columns: 1fr; gap: 24px; }
	.rcg-services-process-grid { grid-template-columns: 1fr; }
	.rcg-services-cta-title { font-size: 28px; }
	.rcg-services-cta-box { padding: 40px 20px; }
}

/* ==========================================================================
   G. GLOBAL BRAND COLOR OVERRIDES & THEME ALIGNMENT (FORCE BLUE BRAND)
   ========================================================================== */
/* Force all orange accent colors in Elementor, ThemeREX buttons, and header areas to Brand Blue */
.elementor-button,
.elementor-button-wrapper .elementor-button,
.sc_button,
.sc_button_default,
.theme_button,
a.sc_button:not(.sc_button_simple),
.sc_layouts_item a.sc_button,
.sc_layouts_row .sc_button,
[class*="sc_button_hover_style_"] {
	background-color: #0341e6 !important;
	border-color: #0341e6 !important;
	color: #ffffff !important;
}

.sc_button:hover,
.elementor-button:hover,
.theme_button:hover,
a.sc_button:not(.sc_button_simple):hover {
	background-color: #022fb3 !important;
	border-color: #022fb3 !important;
	color: #ffffff !important;
}

/* Beautiful Text-Only Hover styles for standard menu links (NO background block) */
.sc_layouts_menu_nav > li > a:hover,
.sc_layouts_menu_nav > li.sfHover > a,
.sc_layouts_menu_nav > li.current-menu-item > a,
.menu_main_nav > li > a:hover,
.menu_main_nav > li.sfHover > a {
	color: #0341e6 !important;
	background: transparent !important;
	background-color: transparent !important;
}

/* Remove block hover from logo and layouts items */
.sc_layouts_logo:hover,
.sc_layouts_logo a:hover,
.sc_layouts_logo img:hover,
.custom-logo-link:hover,
.sc_layouts_item_logo:hover,
.sc_layouts_item_logo a:hover {
	background: transparent !important;
	background-color: transparent !important;
	border: none !important;
}

/* ==========================================================================
   H. OUR TEAM PAGE CUSTOM LAYOUT STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-team-page {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}
.rcg-team-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-team-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-team-section-alt {
	background-color: var(--rcg-light);
}
.rcg-team-section-header {
	text-align: center;
	margin-bottom: 60px;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.rcg-team-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-team-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 42px;
	line-height: 1.2;
	color: var(--rcg-dark);
	margin-bottom: 18px;
}
.rcg-team-section-subtitle {
	color: var(--rcg-text-muted);
	font-size: 18px;
	font-weight: 400;
}

/* HERO SECTION */
.rcg-team-page-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-team-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-team-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-team-hero-title span {
	color: var(--rcg-primary);
}
.rcg-team-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* BUTTONS */
.rcg-team-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-team-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-team-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}

/* TEAM GRID */
.rcg-team-page-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.rcg-team-card {
	background-color: #ffffff;
	border: 1px solid var(--rcg-border);
	border-radius: 8px;
	overflow: hidden;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	display: flex;
	flex-direction: column;
	height: 100%;
}
.rcg-team-card:hover {
	transform: translateY(-8px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: var(--rcg-primary);
}
.rcg-team-img-wrapper {
	height: 300px;
	background-color: var(--rcg-dark);
	position: relative;
	overflow: hidden;
}
.rcg-team-img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top center;
	transition: transform 0.5s ease;
	opacity: 0.9;
}
.rcg-team-card:hover .rcg-team-img-wrapper img {
	transform: scale(1.05);
	opacity: 1;
}
.rcg-team-body {
	padding: 24px;
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	text-align: center;
}
.rcg-team-role {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 11px;
	color: var(--rcg-primary);
	letter-spacing: 1px;
	margin-bottom: 6px;
	display: block;
}
.rcg-team-name {
	font-family: var(--rcg-font-head);
	font-size: 22px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-team-desc {
	color: var(--rcg-text-muted);
	font-size: 14px;
	margin-bottom: 20px;
	line-height: 1.5;
	flex-grow: 1;
}
.rcg-team-socials {
	display: flex;
	justify-content: center;
	gap: 12px;
	margin-top: auto;
}
.rcg-team-social-link {
	width: 36px;
	height: 36px;
	background: var(--rcg-light);
	border: 1px solid var(--rcg-border);
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--rcg-text-muted);
	transition: all 0.2s ease;
}
.rcg-team-social-link:hover {
	background: var(--rcg-primary);
	color: #ffffff;
	border-color: var(--rcg-primary);
	transform: translateY(-2px);
}
.rcg-team-social-link svg {
	width: 16px;
	height: 16px;
}

/* ACCREDITATIONS */
.rcg-team-accreditations {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}
.rcg-team-acc-card {
	background: #ffffff;
	border: 1px solid var(--rcg-border);
	padding: 40px 30px;
	border-radius: 8px;
	text-align: center;
	transition: all 0.3s ease;
}
.rcg-team-acc-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--rcg-shadow-lg);
	border-color: var(--rcg-primary);
}
.rcg-team-acc-icon {
	width: 56px;
	height: 56px;
	background: var(--rcg-primary-light);
	color: var(--rcg-primary);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px auto;
}
.rcg-team-acc-icon svg {
	width: 28px;
	height: 28px;
}
.rcg-team-acc-card h3 {
	font-family: var(--rcg-font-head);
	font-size: 18px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 12px;
}
.rcg-team-acc-card p {
	color: var(--rcg-text-muted);
	font-size: 14px;
	margin: 0;
	line-height: 1.5;
}

/* CTA GLASSMORPHISM */
.rcg-team-cta-section {
	background-image: linear-gradient(rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.95)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
	text-align: center;
	padding: 100px 24px;
}
.rcg-team-cta-box {
	background: rgba(30, 41, 59, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 60px 40px;
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
	max-width: 800px;
	margin: 0 auto;
}
.rcg-team-cta-title {
	font-family: var(--rcg-font-head);
	font-size: 38px;
	font-weight: 800;
	margin-bottom: 16px;
	color: #ffffff;
}
.rcg-team-cta-desc {
	font-size: 18px;
	color: rgba(248, 250, 252, 0.8);
	margin-bottom: 32px;
	line-height: 1.6;
}

/* RESPONSIVE QUERIES */
@media (max-width: 1024px) {
	.rcg-team-hero-title { font-size: 48px; }
	.rcg-team-page-grid { grid-template-columns: repeat(2, 1fr); }
	.rcg-team-accreditations { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
	.rcg-team-section { padding: 60px 16px; }
	.rcg-team-page-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-team-hero-title { font-size: 36px; }
	.rcg-team-hero-description { font-size: 17px; }
	.rcg-team-section-title { font-size: 32px; }
	.rcg-team-page-grid { grid-template-columns: 1fr; gap: 24px; }
	.rcg-team-accreditations { grid-template-columns: 1fr; }
	.rcg-team-cta-title { font-size: 28px; }
	.rcg-team-cta-box { padding: 40px 20px; }
}

/* ==========================================================================
   I. FAQs PAGE CUSTOM LAYOUT STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-faq-page {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}
.rcg-faq-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-faq-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-faq-layout-grid {
	display: grid;
	grid-template-columns: 0.8fr 2.2fr;
	gap: 50px;
	align-items: start;
}

/* HERO SECTION */
.rcg-faq-page-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-faq-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-faq-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-faq-hero-title span {
	color: var(--rcg-primary);
}
.rcg-faq-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* SIDEBAR CATEGORIES */
.rcg-faq-sticky-box {
	position: sticky;
	top: 120px;
	background: var(--rcg-light);
	border: 1px solid var(--rcg-border);
	padding: 30px;
	border-radius: 8px;
}
.rcg-faq-sidebar-title {
	font-family: var(--rcg-font-head);
	font-size: 18px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin-bottom: 20px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.rcg-faq-category-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.rcg-faq-cat-btn {
	display: block;
	color: var(--rcg-text-muted) !important;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 15px;
	text-decoration: none !important;
	transition: all 0.2s ease;
	border-left: 3px solid transparent;
	padding-left: 12px;
}
.rcg-faq-cat-btn:hover, .rcg-faq-cat-btn.active {
	color: var(--rcg-primary) !important;
	border-left-color: var(--rcg-primary);
}

/* ACCORDIONS */
.rcg-faq-group-title {
	font-family: var(--rcg-font-head);
	font-size: 28px;
	font-weight: 800;
	color: var(--rcg-dark);
	margin-bottom: 24px;
	border-bottom: 2px solid var(--rcg-primary);
	padding-bottom: 10px;
}
.rcg-faq-item {
	background: #ffffff;
	border: 1px solid var(--rcg-border);
	border-radius: 6px;
	margin-bottom: 16px;
	overflow: hidden;
	transition: border-color 0.2s ease;
}
.rcg-faq-item.active {
	border-color: var(--rcg-primary);
}
.rcg-faq-question {
	width: 100%;
	background: transparent;
	border: none;
	padding: 22px 30px;
	font-family: var(--rcg-font-head);
	font-weight: 700;
	font-size: 18px;
	color: var(--rcg-dark);
	text-align: left;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	outline: none !important;
	transition: color 0.2s ease;
}
.rcg-faq-question:hover {
	color: var(--rcg-primary);
}
.rcg-faq-icon {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--rcg-text-muted);
	transition: transform 0.3s ease, color 0.3s ease;
}
.rcg-faq-icon svg {
	width: 20px;
	height: 20px;
}
.rcg-faq-item.active .rcg-faq-icon {
	transform: rotate(180deg);
	color: var(--rcg-primary);
}
.rcg-faq-answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease-out;
}
.rcg-faq-answer-inner {
	padding: 0 30px 24px 30px;
}
.rcg-faq-answer-inner p {
	margin: 0;
	color: var(--rcg-text-muted);
	font-size: 15px;
	line-height: 1.6;
}

/* CTA FAQs */
.rcg-faq-cta-section {
	background-image: linear-gradient(rgba(15, 23, 42, 0.9), rgba(15, 23, 42, 0.95)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	color: var(--rcg-text-light);
	text-align: center;
	padding: 100px 24px;
}
.rcg-faq-cta-box {
	background: rgba(30, 41, 59, 0.65);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border: 1px solid rgba(255, 255, 255, 0.1);
	padding: 60px 40px;
	border-radius: 12px;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
	max-width: 800px;
	margin: 0 auto;
}
.rcg-faq-cta-title {
	font-family: var(--rcg-font-head);
	font-size: 38px;
	font-weight: 800;
	margin-bottom: 16px;
	color: #ffffff;
}
.rcg-faq-cta-desc {
	font-size: 18px;
	color: rgba(248, 250, 252, 0.8);
	margin-bottom: 32px;
	line-height: 1.6;
}
.rcg-faq-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-faq-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-faq-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}

/* RESPONSIVE QUERIES */
@media (max-width: 991px) {
	.rcg-faq-layout-grid { grid-template-columns: 1fr; gap: 40px; }
	.rcg-faq-sidebar { display: none; } /* Hide sidebar on mobile/tablet to give full accordion width */
}

@media (max-width: 768px) {
	.rcg-faq-section { padding: 60px 16px; }
	.rcg-faq-page-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-faq-hero-title { font-size: 36px; }
	.rcg-faq-hero-description { font-size: 17px; }
	.rcg-faq-group-title { font-size: 24px; }
	.rcg-faq-question { padding: 18px 20px; font-size: 16px; }
	.rcg-faq-answer-inner { padding: 0 20px 20px 20px; }
	.rcg-faq-cta-title { font-size: 28px; }
	.rcg-faq-cta-box { padding: 40px 20px; }
}

/* ==========================================================================
   J. CONTACT PAGE CUSTOM LAYOUT STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-contact-page {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}
.rcg-contact-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-contact-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-contact-page-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 60px;
	align-items: start;
}

/* HERO SECTION */
.rcg-contact-page-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-contact-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-contact-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-contact-hero-title span {
	color: var(--rcg-primary);
}
.rcg-contact-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* INFO COLUMN */
.rcg-contact-section-header-inline {
	margin-bottom: 40px;
}
.rcg-contact-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-contact-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 38px;
	line-height: 1.2;
	color: #ffffff;
	margin-bottom: 18px;
}
.rcg-contact-section-subtitle {
	color: rgba(255, 255, 255, 0.7);
	font-size: 16px;
	line-height: 1.5;
}
.rcg-contact-cards-stack {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-bottom: 30px;
}
.rcg-contact-info-card {
	background: var(--rcg-light);
	border: 1px solid var(--rcg-border);
	padding: 24px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	gap: 20px;
	transition: all 0.3s ease;
}
.rcg-contact-info-card:hover {
	transform: translateX(5px);
	border-color: var(--rcg-primary);
	box-shadow: var(--rcg-shadow);
}
.rcg-contact-icon-box {
	width: 52px;
	height: 52px;
	background: var(--rcg-primary-light);
	color: var(--rcg-primary);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.rcg-contact-icon-box svg {
	width: 24px;
	height: 24px;
}
.rcg-contact-card-content h4 {
	font-family: var(--rcg-font-head);
	font-size: 16px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin: 0 0 4px 0;
}
.rcg-contact-card-content p {
	margin: 0;
	font-size: 15px;
	color: var(--rcg-text-muted);
}
.rcg-contact-card-content p a {
	color: var(--rcg-text-muted) !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}
.rcg-contact-card-content p a:hover {
	color: var(--rcg-primary) !important;
}

/* INTERACTIVE MAP PANEL */
.rcg-contact-map-wrapper {
	border: 1px solid var(--rcg-border);
	border-radius: 8px;
	overflow: hidden;
	box-shadow: var(--rcg-shadow);
}
.rcg-contact-map-wrapper iframe {
	display: block;
}

/* GLASSMORPHISM FORM */
.rcg-contact-form-box {
	background: var(--rcg-dark);
	border: 1px solid rgba(255, 255, 255, 0.05);
	padding: 50px;
	border-radius: 12px;
	box-shadow: var(--rcg-shadow-lg);
	color: var(--rcg-text-light);
}
.rcg-contact-form-title {
	font-family: var(--rcg-font-head);
	font-size: 26px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 8px;
}
.rcg-contact-form-subtitle {
	color: rgba(248, 250, 252, 0.7);
	font-size: 14px;
	margin-bottom: 30px;
	line-height: 1.5;
}
.rcg-contact-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 20px;
}
.rcg-contact-form-group {
	margin-bottom: 20px;
}
.rcg-contact-form-label {
	display: block;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: rgba(255, 255, 255, 0.85);
	margin-bottom: 8px;
}
.rcg-contact-form-input, .rcg-contact-form-select, .rcg-contact-form-textarea {
	width: 100%;
	background-color: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff !important;
	padding: 14px 18px;
	border-radius: 6px;
	font-family: var(--rcg-font-body);
	font-size: 15px;
	transition: all 0.3s ease;
	outline: none !important;
	box-sizing: border-box;
}
.rcg-contact-form-select option {
	background-color: var(--rcg-dark);
	color: #ffffff;
}
.rcg-contact-form-input:focus, .rcg-contact-form-select:focus, .rcg-contact-form-textarea:focus {
	border-color: var(--rcg-primary);
	background-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 0 0 3px rgba(3, 65, 230, 0.25);
}
.rcg-contact-form-textarea {
	resize: vertical;
	min-height: 120px;
}
.rcg-contact-form-btn {
	width: 100%;
	border: none;
}
.rcg-contact-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-contact-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-contact-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}
.rcg-contact-form-alert {
	padding: 16px;
	border-radius: 6px;
	margin-bottom: 24px;
	font-weight: 500;
	display: none;
	animation: slideIn 0.3s ease;
}
.rcg-contact-form-alert-success {
	background-color: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	color: #34d399;
}
.rcg-contact-form-alert-error {
	background-color: rgba(239, 68, 68, 0.15);
	border: 1px solid rgba(239, 68, 68, 0.4);
	color: #f87171;
}

/* RESPONSIVE QUERIES */
@media (max-width: 1024px) {
	.rcg-contact-hero-title { font-size: 48px; }
	.rcg-contact-page-grid { grid-template-columns: 1fr; gap: 40px; }
}

@media (max-width: 768px) {
	.rcg-contact-section { padding: 60px 16px; }
	.rcg-contact-page-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-contact-hero-title { font-size: 36px; }
	.rcg-contact-hero-description { font-size: 17px; }
	.rcg-contact-section-title { font-size: 30px; }
	.rcg-contact-form-box { padding: 30px 20px; }
	.rcg-contact-form-row { grid-template-columns: 1fr; gap: 0; }
}

/* ==========================================================================
   K. GET A QUOTE PAGE CUSTOM LAYOUT STYLING (DRY & CENTRALIZED)
   ========================================================================== */
.rcg-quote-page {
	font-family: var(--rcg-font-body);
	color: var(--rcg-text-dark);
	background-color: #ffffff;
	line-height: 1.6;
	overflow-x: hidden;
}
.rcg-quote-container {
	max-width: 1200px;
	margin: 0 auto;
	width: 100%;
}
.rcg-quote-section {
	padding: 100px 24px;
	position: relative;
}
.rcg-quote-page-grid {
	display: grid;
	grid-template-columns: 1fr 1.2fr;
	gap: 60px;
	align-items: start;
}

/* HERO SECTION */
.rcg-quote-page-hero {
	position: relative;
	min-height: 50vh;
	display: flex;
	align-items: center;
	background-image: linear-gradient(rgba(15, 23, 42, 0.8), rgba(15, 23, 42, 0.9)), url('https://images.unsplash.com/photo-1541888946425-d81bb19240f5?auto=format&fit=crop&w=1920&q=80');
	background-size: cover;
	background-position: center;
	color: var(--rcg-text-light);
	padding: 100px 24px 80px 24px;
}
.rcg-quote-hero-content {
	max-width: 800px;
	text-align: center;
	margin: 0 auto;
}
.rcg-quote-hero-title {
	font-family: var(--rcg-font-head);
	font-size: 56px;
	font-weight: 900;
	line-height: 1.1;
	letter-spacing: -1px;
	margin-bottom: 20px;
	color: #ffffff;
}
.rcg-quote-hero-title span {
	color: var(--rcg-primary);
}
.rcg-quote-hero-description {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.6;
	color: rgba(248, 250, 252, 0.85);
	max-width: 680px;
	margin: 0 auto;
}

/* INFO COLUMN */
.rcg-quote-section-header-inline {
	margin-bottom: 40px;
}
.rcg-quote-section-tag {
	font-family: var(--rcg-font-head);
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	letter-spacing: 2px;
	color: var(--rcg-primary);
	display: inline-block;
	margin-bottom: 12px;
}
.rcg-quote-section-title {
	font-family: var(--rcg-font-head);
	font-weight: 800;
	font-size: 38px;
	line-height: 1.2;
	color: var(--rcg-dark);
	margin-bottom: 18px;
}
.rcg-quote-section-subtitle {
	color: var(--rcg-text-muted);
	font-size: 16px;
	line-height: 1.5;
}
.rcg-quote-trust-stack {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.rcg-quote-trust-card {
	background: var(--rcg-light);
	border: 1px solid var(--rcg-border);
	padding: 24px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	gap: 20px;
	transition: all 0.3s ease;
}
.rcg-quote-trust-card:hover {
	transform: translateX(5px);
	border-color: var(--rcg-primary);
	box-shadow: var(--rcg-shadow);
}
.rcg-quote-trust-icon {
	width: 52px;
	height: 52px;
	background: var(--rcg-primary-light);
	color: var(--rcg-primary);
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.rcg-quote-trust-icon svg {
	width: 24px;
	height: 24px;
}
.rcg-quote-trust-content h4 {
	font-family: var(--rcg-font-head);
	font-size: 16px;
	font-weight: 700;
	color: var(--rcg-dark);
	margin: 0 0 4px 0;
}
.rcg-quote-trust-content p {
	margin: 0;
	font-size: 14px;
	color: var(--rcg-text-muted);
	line-height: 1.4;
}

/* GLASSMORPHISM FORM */
.rcg-quote-form-box {
	background: var(--rcg-dark);
	border: 1px solid rgba(255, 255, 255, 0.05);
	padding: 50px;
	border-radius: 12px;
	box-shadow: var(--rcg-shadow-lg);
	color: var(--rcg-text-light);
}
.rcg-quote-form-title {
	font-family: var(--rcg-font-head);
	font-size: 26px;
	font-weight: 800;
	color: #ffffff;
	margin-bottom: 8px;
}
.rcg-quote-form-subtitle {
	color: rgba(248, 250, 252, 0.7);
	font-size: 14px;
	margin-bottom: 30px;
	line-height: 1.5;
}
.rcg-quote-form-section-title {
	font-family: var(--rcg-font-head);
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	color: var(--rcg-primary);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	padding-bottom: 6px;
	margin-bottom: 20px;
	margin-top: 30px;
	letter-spacing: 0.5px;
}
.rcg-quote-form-section-title:first-of-type {
	margin-top: 0;
}
.rcg-quote-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin-bottom: 10px;
}
.rcg-quote-form-group {
	margin-bottom: 15px;
}
.rcg-quote-form-label {
	display: block;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	color: rgba(255, 255, 255, 0.85);
	margin-bottom: 8px;
}
.rcg-quote-form-input, .rcg-quote-form-select, .rcg-quote-form-textarea {
	width: 100%;
	background-color: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.15);
	color: #ffffff !important;
	padding: 14px 18px;
	border-radius: 6px;
	font-family: var(--rcg-font-body);
	font-size: 15px;
	transition: all 0.3s ease;
	outline: none !important;
	box-sizing: border-box;
}
.rcg-quote-form-select option {
	background-color: var(--rcg-dark);
	color: #ffffff;
}
.rcg-quote-form-input:focus, .rcg-quote-form-select:focus, .rcg-quote-form-textarea:focus {
	border-color: var(--rcg-primary);
	background-color: rgba(255, 255, 255, 0.08);
	box-shadow: 0 0 0 3px rgba(3, 65, 230, 0.25);
}
.rcg-quote-form-textarea {
	resize: vertical;
	min-height: 120px;
}
.rcg-quote-form-btn {
	width: 100%;
	border: none;
	margin-top: 20px;
}
.rcg-quote-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-family: var(--rcg-font-head);
	font-weight: 600;
	font-size: 16px;
	padding: 16px 32px;
	border-radius: 6px;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	text-decoration: none !important;
	border: 2px solid transparent;
}
.rcg-quote-btn-primary {
	background-color: var(--rcg-primary);
	color: #ffffff !important;
}
.rcg-quote-btn-primary:hover {
	background-color: var(--rcg-primary-hover);
	transform: translateY(-2px);
	box-shadow: var(--rcg-shadow-glow);
}
.rcg-quote-form-alert {
	padding: 16px;
	border-radius: 6px;
	margin-bottom: 24px;
	font-weight: 500;
	display: none;
	animation: slideIn 0.3s ease;
}
.rcg-quote-form-alert-success {
	background-color: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	color: #34d399;
}
.rcg-quote-form-alert-error {
	background-color: rgba(239, 68, 68, 0.15);
	border: 1px solid rgba(239, 68, 68, 0.4);
	color: #f87171;
}

/* RESPONSIVE QUERIES */
@media (max-width: 1024px) {
	.rcg-quote-hero-title { font-size: 48px; }
	.rcg-quote-page-grid { grid-template-columns: 1fr; gap: 40px; }
}

@media (max-width: 768px) {
	.rcg-quote-section { padding: 60px 16px; }
	.rcg-quote-page-hero { min-height: auto; padding: 120px 16px 80px 16px; }
	.rcg-quote-hero-title { font-size: 36px; }
	.rcg-quote-hero-description { font-size: 17px; }
	.rcg-quote-section-title { font-size: 30px; }
	.rcg-quote-form-box { padding: 30px 20px; }
	.rcg-quote-form-row { grid-template-columns: 1fr; gap: 0; }
}

/* ==========================================================================
   L. PREMIUM HEADER & NAVBAR REDESIGN (GLASSMORPHISM & INTERACTIVE HOVER)
   ========================================================================== */
/* Header background & layout sizing */
.sc_layouts_row,
.sc_layouts_row_type_normal,
.sc_layouts_row_fixed_on {
	background: rgba(255, 255, 255, 0.85) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	border-bottom: 1px solid rgba(15, 23, 42, 0.05) !important;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.02) !important;
	transition: all 0.3s ease !important;
	padding: 8px 0 !important;
}

/* Vertical alignments inside layouts */
.sc_layouts_column,
.sc_layouts_column_align_right,
.sc_layouts_column_align_left {
	display: flex !important;
	align-items: center !important;
	height: 100% !important;
}

/* Remove default item borders/margins */
.sc_layouts_item {
	display: inline-flex !important;
	align-items: center !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

/* Logo brand text refinements */
.sc_layouts_logo,
.custom-logo-link {
	display: flex !important;
	align-items: center !important;
	padding: 0 !important;
	transition: opacity 0.3s ease !important;
}
.sc_layouts_logo:hover {
	opacity: 0.85 !important;
}

/* Standard menu list style overrides */
.sc_layouts_menu_nav,
.menu_main_nav {
	display: flex !important;
	align-items: center !important;
	gap: 0 !important;
	flex-wrap: nowrap !important;
}
.sc_layouts_menu_nav > li,
.menu_main_nav > li {
	margin: 0 !important;
	padding: 0 !important;
	position: relative !important;
}

/* Menu links default premium style */
.sc_layouts_menu_nav > li > a,
.menu_main_nav > li > a {
	font-family: var(--rcg-font-head) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.4px !important;
	color: #0f172a !important;
	padding: 12px 12px !important;
	transition: color 0.3s ease !important;
	background: transparent !important;
	background-color: transparent !important;
	position: relative !important;
	white-space: nowrap !important;
}

/* Interactive sliding underline hover effect */
.sc_layouts_menu_nav > li > a::after,
.menu_main_nav > li > a::after {
	content: '' !important;
	position: absolute !important;
	bottom: 4px !important;
	left: 50% !important;
	width: 0 !important;
	height: 2px !important;
	background-color: #0341e6 !important; /* Brand Blue */
	transition: width 0.3s ease, left 0.3s ease !important;
}

.sc_layouts_menu_nav > li:hover > a::after,
.sc_layouts_menu_nav > li.sfHover > a::after,
.sc_layouts_menu_nav > li.current-menu-item > a::after,
.menu_main_nav > li:hover > a::after,
.menu_main_nav > li.sfHover > a::after {
	width: calc(100% - 36px) !important;
	left: 18px !important;
}

.sc_layouts_menu_nav > li:hover > a,
.sc_layouts_menu_nav > li.sfHover > a,
.sc_layouts_menu_nav > li.current-menu-item > a,
.menu_main_nav > li:hover > a,
.menu_main_nav > li.sfHover > a {
	color: #0341e6 !important; /* Brand Blue on active/hover */
	background: transparent !important;
	background-color: transparent !important;
}

/* Dropdown sub-menu — positioning & styling */
.sc_layouts_menu_nav > li > .sub-menu,
.menu_main_nav > li > .sub-menu {
	display: none !important;
	position: absolute !important;
	top: 100% !important;
	left: 0 !important;
	z-index: 9999 !important;
	min-width: 200px !important;
	background: #ffffff !important;
	border-top: 2px solid #0341e6 !important;
	border-radius: 0 0 6px 6px !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10) !important;
	padding: 8px 0 !important;
	margin: 0 !important;
	list-style: none !important;
	/* Reset flex from parent nav */
	flex-direction: column !important;
}

/* Show on hover / sfHover (superfish JS) */
.sc_layouts_menu_nav > li:hover > .sub-menu,
.sc_layouts_menu_nav > li.sfHover > .sub-menu,
.menu_main_nav > li:hover > .sub-menu,
.menu_main_nav > li.sfHover > .sub-menu {
	display: block !important;
}

/* Dropdown items */
.sc_layouts_menu_nav .sub-menu > li,
.menu_main_nav .sub-menu > li {
	display: block !important;
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

/* Dropdown links */
.sc_layouts_menu_nav .sub-menu > li > a,
.menu_main_nav .sub-menu > li > a {
	display: block !important;
	font-family: 'Outfit', sans-serif !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: #1e293b !important;
	padding: 10px 20px !important;
	background: transparent !important;
	background-color: transparent !important;
	transition: color 0.2s ease, background 0.2s ease !important;
	white-space: nowrap !important;
}

/* Dropdown link — underline effect override (disable for sub items) */
.sc_layouts_menu_nav .sub-menu > li > a::after,
.menu_main_nav .sub-menu > li > a::after {
	display: none !important;
}

/* Dropdown link hover */
.sc_layouts_menu_nav .sub-menu > li:hover > a,
.menu_main_nav .sub-menu > li:hover > a {
	color: #0341e6 !important;
	background-color: #f1f5ff !important;
}

/* Redesigned Button ("LET'S TALK") */
.sc_layouts_row .sc_button,
.sc_layouts_item a.sc_button,
.elementor-button,
.elementor-button-wrapper .elementor-button {
	background-color: #0341e6 !important;
	border-color: #0341e6 !important;
	color: #ffffff !important;
	font-family: var(--rcg-font-head) !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	padding: 14px 28px !important;
	border-radius: 4px !important; /* Rounded corners */
	box-shadow: 0 4px 14px rgba(3, 65, 230, 0.15) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.sc_layouts_row .sc_button:hover,
.sc_layouts_item a.sc_button:hover,
.elementor-button:hover {
	background-color: #022fb3 !important;
	border-color: #022fb3 !important;
	transform: translateY(-1px) scale(1.02) !important;
	box-shadow: 0 6px 20px rgba(3, 65, 230, 0.3) !important;
}

/* Mobile Hamburger refinements */
.sc_layouts_menu_button,
.menu_mobile_button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #0341e6 !important;
	transition: transform 0.2s ease !important;
}
.sc_layouts_menu_button:hover {
	transform: scale(1.05) !important;
}

/* Constrain Header/Navbar width to align perfectly with spacious hero wrapper (1340px max width) */
.sc_layouts_row_content,
.sc_layouts_row .content_wrap,
.sc_layouts_row_fixed_on .content_wrap,
.sc_layouts_row_fixed_on .sc_layouts_row_content,
.sc_layouts_row .elementor-container,
.sc_layouts_row_fixed_on .elementor-container,
.sc_layouts_row_fixed_on .elementor-row,
.sc_layouts_row .elementor-row {
	max-width: 1340px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 40px !important;
	padding-right: 40px !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

/* Ensure logo and main menu columns maintain balanced inner spacing */
.sc_layouts_row .columns_wrap,
.sc_layouts_row .row {
	width: 100% !important;
	margin: 0 !important;
}

/* ==========================================================================
   HEADER CLEANUP — RC GROUPS (layout ID 33880)
   All header elements are managed via Elementor/ThemeREX in the database.
   These CSS rules override specific element IDs from the live HTML output.
   ========================================================================== */

/* --- Mobile header: fix demo logo → RC Groups Group-1.png --- */
.elementor-element-50ae992 img.logo_image {
	content: url(//cyhrenovation.com.au/wp-content/uploads/2023/08/Group-1.png) !important;
	max-height: 45px !important;
	width: auto !important;
	height: auto !important;
}

/* --- Mobile header: hamburger icon color --- */
.elementor-element-2f937d8 .sc_layouts_menu_mobile_button .sc_layouts_item_icon,
.elementor-element-2f937d8 .sc_layouts_iconed_text_icon {
	color: #0341e6 !important;
}

/* --- Mobile header: vertical center alignment fix ---
     Elementor default uses flex-direction:column on widget-wrap,
     causing the hamburger to sit at the top instead of center.
     Override to row + center for the mobile header section only. */
.elementor-element-2f937d8 .elementor-container {
	align-items: center !important;
}
.elementor-element-2f937d8 .elementor-column {
	display: flex !important;
	align-items: center !important;
}
.elementor-element-2f937d8 .elementor-widget-wrap {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	flex-wrap: nowrap !important;
}
.elementor-element-e85fe8b .elementor-widget-wrap {
	justify-content: flex-start !important;
}
.elementor-element-09a9d76 .elementor-widget-wrap {
	justify-content: flex-end !important;
}

/* --- Hide: cart widget in mobile header --- */
.elementor-element-3b0a213 {
	display: none !important;
}

/* --- Hide: search in mobile header --- */
.elementor-element-438f4b1 {
	display: none !important;
}

/* --- Hide: "Let's Talk" button in mobile header --- */
.elementor-element-fdc1d7f {
	display: none !important;
}

/* --- Hide: "Let's Talk" button in desktop header --- */
.elementor-element-a4673cd {
	display: none !important;
}

/* --- Hide: "Let's Talk" button in sticky desktop header --- */
.elementor-element-e347ccd {
	display: none !important;
}

/* ==========================================================================
   MOBILE MENU OVERLAY — RC GROUPS BRANDING
   Controls the fullscreen menu that opens when hamburger is tapped.
   ========================================================================== */

/* RC GROUPS logo in mobile menu overlay */
.rcg-mobile-menu-logo {
	display: flex !important;
	align-items: center !important;
}
.rcg-mobile-menu-logo img {
	max-height: 40px !important;
	width: auto !important;
	filter: brightness(0) invert(1) !important; /* White logo on dark background */
}

/* RC GROUPS contact block in mobile menu */
.rcg-mobile-menu-contact {
	padding: 32px 40px !important;
	border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.rcg-mobile-contact-block {
	margin-bottom: 24px !important;
}
.rcg-mobile-contact-block:last-child {
	margin-bottom: 0 !important;
}
.rcg-mobile-contact-label {
	font-family: var(--rcg-font-head, 'Outfit', sans-serif) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: rgba(255, 255, 255, 0.5) !important;
	text-transform: uppercase !important;
	letter-spacing: 1px !important;
	margin: 0 0 6px !important;
}
.rcg-mobile-contact-link {
	font-family: var(--rcg-font-head, 'Outfit', sans-serif) !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	text-decoration: none !important;
}
.rcg-mobile-contact-link:hover {
	color: #0341e6 !important;
}


/* ==========================================================================
   SERVICE DETAIL PAGE — DYNAMIC TEMPLATE
   Namespace: .rcg-service-detail-page
   ========================================================================== */

.rcg-service-detail-page {
	font-family: 'Inter', 'Outfit', sans-serif;
	--rcg-sd-blue: #0341e6;
	--rcg-sd-blue-dark: #0232b8;
	--rcg-sd-dark: #0f172a;
	--rcg-sd-slate: #1e293b;
	--rcg-sd-muted: #64748b;
	--rcg-sd-light: #f8fafc;
	--rcg-sd-border: #e2e8f0;
	--rcg-sd-white: #ffffff;
}

/* ---- Reset Cobble theme content wrappers — verified from live HTML ---- */

/* 1. Remove top/bottom padding from the outer page content wrapper */
.page-template-page-service-detail .page_content_wrap {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* 2. Expand .content_wrap to full width (it uses --theme-var-page which constrains it) */
.page-template-page-service-detail .content_wrap {
	width: 100% !important;
	max-width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* 3. Expand .content div to full width (also constrained by --theme-var-content) */
.page-template-page-service-detail .content_wrap > .content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

/* ---- Container — identical to navbar inner: 1340px + 40px sides ---- */
.rcg-detail-container {
	max-width: 1340px;
	margin: 0 auto;
	padding: 0 40px;
	width: 100%;
	box-sizing: border-box;
}

/* ==========================================================================
   1. HERO SECTION
   ========================================================================== */

.rcg-detail-hero {
	min-height: 480px;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	position: relative;
	overflow: hidden;
}

.rcg-detail-hero-content {
	position: relative;
	z-index: 2;
	padding: 80px 0 60px;
	max-width: 720px;
}

.rcg-detail-hero-badge {
	display: inline-block;
	background: rgba(3, 65, 230, 0.25);
	border: 1px solid rgba(3, 65, 230, 0.5);
	color: #93c5fd;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: 100px;
	margin-bottom: 20px;
}

.rcg-detail-hero-title {
	font-size: clamp(2.2rem, 5vw, 3.5rem);
	font-weight: 800;
	line-height: 1.1;
	color: #ffffff;
	margin: 0 0 20px;
	letter-spacing: -0.02em;
}

.rcg-detail-hero-title span {
	color: #60a5fa;
}

.rcg-detail-hero-description {
	font-size: 1.1rem;
	color: #cbd5e1;
	line-height: 1.75;
	margin: 0;
}

/* ==========================================================================
   2. DETAIL SECTION — SPLIT LAYOUT
   ========================================================================== */

.rcg-detail-section {
	padding: 80px 0;
	background: var(--rcg-sd-light);
}

.rcg-detail-page-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	align-items: start;
}

.rcg-detail-header-group {
	margin-bottom: 36px;
}

.rcg-detail-section-tag {
	display: inline-block;
	background: rgba(3, 65, 230, 0.08);
	color: var(--rcg-sd-blue);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: 100px;
	margin-bottom: 16px;
}

.rcg-detail-section-title {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	color: var(--rcg-sd-dark);
	line-height: 1.2;
	margin: 0 0 14px;
	letter-spacing: -0.02em;
}

.rcg-detail-section-subtitle {
	color: var(--rcg-sd-muted);
	font-size: 0.98rem;
	line-height: 1.7;
	margin: 0;
}

/* --- Feature List --- */
.rcg-detail-feature-list {
	list-style: none;
	padding: 0;
	margin: 0 0 40px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.rcg-detail-feature-list li {
	display: flex;
	align-items: flex-start;
	gap: 14px;
}

.rcg-detail-feature-icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	background: var(--rcg-sd-blue);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 2px;
}

.rcg-detail-feature-icon svg {
	width: 14px;
	height: 14px;
	color: #ffffff;
	stroke: #ffffff;
}

.rcg-detail-feature-text {
	font-size: 0.97rem;
	color: var(--rcg-sd-slate);
	line-height: 1.65;
	font-weight: 500;
}

/* --- Badge Group --- */
.rcg-detail-badge-group {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}

.rcg-detail-badge-item {
	background: var(--rcg-sd-white);
	border: 1px solid var(--rcg-sd-border);
	border-radius: 12px;
	padding: 16px 22px;
	text-align: center;
	box-shadow: 0 2px 8px rgba(0,0,0,0.06);
	flex: 1;
	min-width: 90px;
}

.rcg-detail-badge-item strong {
	display: block;
	font-size: 1.3rem;
	font-weight: 800;
	color: var(--rcg-sd-blue);
	line-height: 1.1;
	margin-bottom: 4px;
}

.rcg-detail-badge-item span {
	font-size: 0.75rem;
	color: var(--rcg-sd-muted);
	font-weight: 500;
	line-height: 1.3;
}

/* --- Right Column: Quote Box / Form --- */

.rcg-detail-quote-box {
	background: var(--rcg-sd-white);
	border: 1px solid var(--rcg-sd-border);
	border-radius: 20px;
	padding: 40px;
	box-shadow: 0 8px 40px rgba(0,0,0,0.08);
	position: sticky;
	top: 100px;
}

.rcg-detail-quote-title {
	font-size: 1.5rem;
	font-weight: 800;
	color: var(--rcg-sd-dark);
	margin: 0 0 10px;
	letter-spacing: -0.01em;
}

.rcg-detail-quote-subtitle {
	font-size: 0.9rem;
	color: var(--rcg-sd-muted);
	line-height: 1.65;
	margin: 0 0 28px;
}

/* Alert boxes */
.rcg-detail-form-alert {
	display: none;
	padding: 14px 18px;
	border-radius: 10px;
	font-size: 0.9rem;
	font-weight: 500;
	margin-bottom: 20px;
	line-height: 1.5;
}

.rcg-detail-form-alert-success {
	background: #f0fdf4;
	border: 1px solid #bbf7d0;
	color: #166534;
}

.rcg-detail-form-alert-error {
	background: #fef2f2;
	border: 1px solid #fecaca;
	color: #991b1b;
}

/* Form layout */
.rcg-detail-form-group {
	margin-bottom: 16px;
}

.rcg-detail-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin-bottom: 16px;
}

.rcg-detail-form-row .rcg-detail-form-group {
	margin-bottom: 0;
}

.rcg-detail-form-label {
	display: block;
	font-size: 0.82rem;
	font-weight: 600;
	color: var(--rcg-sd-slate);
	margin-bottom: 6px;
	letter-spacing: 0.02em;
}

.rcg-detail-form-input,
.rcg-detail-form-select,
.rcg-detail-form-textarea {
	width: 100%;
	box-sizing: border-box;
	padding: 11px 14px;
	border: 1.5px solid var(--rcg-sd-border);
	border-radius: 10px;
	font-size: 0.9rem;
	color: var(--rcg-sd-dark);
	background: #f8fafc;
	transition: border-color 0.2s, box-shadow 0.2s;
	font-family: inherit;
	outline: none;
}

.rcg-detail-form-input:focus,
.rcg-detail-form-select:focus,
.rcg-detail-form-textarea:focus {
	border-color: var(--rcg-sd-blue);
	box-shadow: 0 0 0 3px rgba(3, 65, 230, 0.12);
	background: #ffffff;
}

.rcg-detail-form-textarea {
	min-height: 110px;
	resize: vertical;
}

.rcg-detail-form-select {
	cursor: pointer;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	padding-right: 36px;
}

/* Submit Button */
.rcg-detail-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 28px;
	border-radius: 10px;
	font-size: 0.95rem;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.25s ease;
	text-decoration: none;
	border: 2px solid transparent;
	font-family: inherit;
}

.rcg-detail-btn-primary {
	background: var(--rcg-sd-blue);
	color: #ffffff;
	border-color: var(--rcg-sd-blue);
}

.rcg-detail-btn-primary:hover {
	background: var(--rcg-sd-blue-dark);
	border-color: var(--rcg-sd-blue-dark);
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(3, 65, 230, 0.35);
}

.rcg-detail-btn-primary:disabled {
	opacity: 0.65;
	cursor: not-allowed;
	transform: none;
}

.rcg-detail-form-btn {
	width: 100%;
	margin-top: 8px;
}

/* ==========================================================================
   3. FALLBACK GRID — ALL SERVICES VIEW
   ========================================================================== */

.rcg-detail-fallback-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
}

.rcg-detail-fallback-card {
	background: var(--rcg-sd-white);
	border: 1px solid var(--rcg-sd-border);
	border-radius: 16px;
	overflow: hidden;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.rcg-detail-fallback-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 48px rgba(0,0,0,0.12);
}

.rcg-detail-fallback-img {
	position: relative;
	height: 200px;
	overflow: hidden;
}

.rcg-detail-fallback-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
}

.rcg-detail-fallback-card:hover .rcg-detail-fallback-img img {
	transform: scale(1.06);
}

.rcg-detail-fallback-badge {
	position: absolute;
	top: 14px;
	left: 14px;
	background: var(--rcg-sd-blue);
	color: #ffffff;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 4px 12px;
	border-radius: 100px;
}

.rcg-detail-fallback-body {
	padding: 24px;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.rcg-detail-fallback-body h3 {
	font-size: 1.05rem;
	font-weight: 700;
	color: var(--rcg-sd-dark);
	margin: 0 0 10px;
	line-height: 1.3;
}

.rcg-detail-fallback-body p {
	font-size: 0.88rem;
	color: var(--rcg-sd-muted);
	line-height: 1.65;
	margin: 0 0 18px;
	flex: 1;
}

.rcg-detail-fallback-link {
	font-size: 0.88rem;
	font-weight: 700;
	color: var(--rcg-sd-blue);
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: gap 0.2s ease;
}

.rcg-detail-fallback-card:hover .rcg-detail-fallback-link {
	gap: 10px;
}

/* ==========================================================================
   4. RESPONSIVE
   ========================================================================== */

@media (max-width: 1024px) {
	.rcg-detail-page-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.rcg-detail-quote-box {
		position: static;
	}

	.rcg-detail-fallback-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.rcg-detail-container {
		padding: 0 20px;
	}

	.rcg-detail-hero {
		min-height: 360px;
		background-attachment: scroll;
	}

	.rcg-detail-hero-content {
		padding: 60px 0 40px;
	}

	.rcg-detail-section {
		padding: 50px 0;
	}

	.rcg-detail-quote-box {
		padding: 28px 22px;
	}

	.rcg-detail-form-row {
		grid-template-columns: 1fr;
	}

	.rcg-detail-badge-group {
		gap: 12px;
	}

	.rcg-detail-fallback-grid {
		grid-template-columns: 1fr;
	}
}





