/* =================================================================
   AI Analytics LLC — Rx Ledger CS visual system
   Colors, type, cards, and buttons matched to rxledgercs.com
   Load this stylesheet last so it wins over older theme files.
   ================================================================= */

:root {
	--g: #00703c;
	--g-dark: #004d29;
	--g-hero: #003d20;
	--g-light: #e6f4ed;
	--g-mint: #a8edca;
	--g-page: #f4f8f5;
	--g-border: #ddeee5;
	--teal: #00897b;
	--gold: #ffd27a;
	--gold-icon: #e67e00;
	--red: #c62828;
	--red-dark: #7f0000;
	--text-dark: #1a1a1a;
	--text-gray: #555555;
	--text-muted: #666666;
	--white: #ffffff;

	/* Remap every legacy token used across the site */
	--primary-blue: #00703c;
	--secondary-blue: #00897b;
	--accent-blue: #00897b;
	--dark-blue: #004d29;
	--primary-red: #00703c;
	--secondary-red: #004d29;
	--databricks-red: #00703c;
	--databricks-dark: #004d29;
	--deep-navy: #004d29;
	--dark-navy: #003d20;
	--charcoal: #1a1a1a;
	--light-gray: #f4f8f5;
	--medium-gray: #ddeee5;
	--border-color: #ddeee5;
	--border-light: #ddeee5;
	--success: #00703c;
	--success-green: #00703c;
	--info: #00897b;
	--shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.06);
	--shadow-md: 0 2px 12px rgba(0, 0, 0, 0.06);
	--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.10);
	--shadow-xl: 0 12px 32px rgba(0, 0, 0, 0.12);
	--shadow-light: rgba(0, 112, 60, 0.08);
	--shadow-medium: rgba(0, 112, 60, 0.15);
	--shadow-heavy: rgba(0, 112, 60, 0.25);
	--gradient-primary: linear-gradient(135deg, #00703c 0%, #00897b 100%);
	--gradient-secondary: linear-gradient(160deg, #003d20 0%, #00703c 60%, #00897b 100%);
	--gradient-accent: linear-gradient(135deg, #004d29 0%, #00703c 100%);
	--font-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
	--font-heading: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: var(--font-primary) !important;
	color: var(--text-dark) !important;
	background: var(--white) !important;
	background-image: none !important;
	animation: none !important;
	line-height: 1.6;
}

body::before {
	display: none !important;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-heading);
	color: var(--text-dark) !important;
	font-weight: 800;
	text-shadow: none !important;
}

p, li, span, label, td, th, dd, dt {
	color: inherit;
}

p {
	color: var(--text-gray);
}

a {
	color: var(--g);
	text-decoration: none;
}

a:hover {
	color: var(--g-dark);
}

/* ------------------------------------------------------------------
   Navigation — dark forest bar, quiet text links
   ------------------------------------------------------------------ */
.custom-navbar,
.navbar.custom-navbar,
nav.navbar.navbar-expand-lg.fixed-top.custom-navbar,
.navbar {
	background: var(--g-dark) !important;
	background-image: none !important;
	border-bottom: none !important;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12) !important;
	backdrop-filter: none !important;
	padding: 0.75rem 0 !important;
}

.custom-navbar.scrolled,
.navbar.custom-navbar.scrolled {
	background: #003d20 !important;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18) !important;
}

.custom-navbar .navbar-brand,
.custom-navbar .navbar-brand span,
nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-brand span,
.navbar-brand,
.navbar-brand span {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background: none !important;
	text-shadow: none !important;
	font-weight: 700 !important;
	font-size: 1rem !important;
	letter-spacing: 0;
	text-transform: none;
}

.custom-navbar .navbar-brand img,
.navbar-brand img {
	height: 40px;
	background: #ffffff;
	padding: 4px;
	border-radius: 8px;
	box-shadow: none;
	filter: none !important;
}

.custom-navbar .nav-link,
.custom-navbar .navbar-nav .nav-link,
nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-nav .nav-link,
.navbar .nav-link {
	color: rgba(255, 255, 255, 0.72) !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	padding: 0.45rem 0.85rem !important;
	margin: 0 !important;
	font-size: 0.82rem !important;
	font-weight: 500 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	box-shadow: none !important;
}

.custom-navbar .nav-link::after,
.navbar .nav-link::after {
	display: none !important;
}

.custom-navbar .nav-link:hover,
.custom-navbar .navbar-nav .nav-link:hover,
nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-nav .nav-link:hover,
.navbar .nav-link:hover,
.custom-navbar .nav-link.active {
	color: #ffffff !important;
	background: transparent !important;
}

.custom-navbar .navbar-nav .nav-item:last-child .nav-link,
nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-nav .nav-item:last-child .nav-link {
	background: var(--g) !important;
	color: #ffffff !important;
	border-radius: 20px !important;
	padding: 0.4rem 0.95rem !important;
	font-weight: 600 !important;
}

.custom-navbar .navbar-nav .nav-item:last-child .nav-link:hover {
	background: #00824a !important;
	color: #ffffff !important;
}

.navbar-toggler {
	border: 1px solid rgba(255, 255, 255, 0.45) !important;
	background: transparent !important;
}

.navbar-toggler-icon {
	filter: invert(1) brightness(2);
}

@media (max-width: 991.98px) {
	.custom-navbar .navbar-collapse,
	.custom-navbar .navbar-collapse.show,
	nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-collapse.show {
		background: var(--g-dark) !important;
		border: 1px solid rgba(255, 255, 255, 0.12) !important;
		border-radius: 12px !important;
		margin-top: 10px !important;
		padding: 12px !important;
		box-shadow: none !important;
	}

	.custom-navbar .navbar-collapse .nav-link,
	nav.navbar.navbar-expand-lg.fixed-top.custom-navbar .navbar-collapse.show .nav-link {
		color: rgba(255, 255, 255, 0.85) !important;
		background: transparent !important;
		border: none !important;
		text-align: left !important;
		padding: 0.7rem 0.85rem !important;
		margin: 0 !important;
	}
}

/* ------------------------------------------------------------------
   Hero
   ------------------------------------------------------------------ */
.hero-section,
#home.hero-section,
#home {
	background: linear-gradient(160deg, #003d20 0%, #00703c 60%, #00897b 100%) !important;
	color: #ffffff !important;
	min-height: auto;
	padding: 7.5rem 1.5rem 5rem !important;
	text-align: center;
}

.hero-section::before {
	background:
		radial-gradient(circle at 20% 80%, rgba(255, 255, 255, 0.06) 0%, transparent 50%),
		radial-gradient(circle at 80% 20%, rgba(255, 255, 255, 0.06) 0%, transparent 50%) !important;
}

.hero-section::after {
	background: linear-gradient(to bottom, transparent, var(--g-page)) !important;
	height: 64px;
}

.hero-section h1,
.hero-section .hero-title,
#home h1,
#home .hero-title {
	color: #ffffff !important;
	font-size: clamp(1.8rem, 4vw, 2.6rem) !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	text-shadow: none !important;
}

.hero-section .gradient-text,
.hero-title .gradient-text {
	background: none !important;
	-webkit-text-fill-color: var(--g-mint) !important;
	color: var(--g-mint) !important;
}

.hero-badge {
	background: rgba(255, 255, 255, 0.12) !important;
	border: 1px solid rgba(255, 255, 255, 0.28) !important;
	color: #ffffff !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
}

.hero-subtitle,
.hero-section .lead,
.hero-section p,
#home p {
	color: rgba(255, 255, 255, 0.88) !important;
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

.hero-section .btn-primary,
#home .btn-primary,
.btn-hero {
	background: #ffffff !important;
	background-image: none !important;
	color: var(--g-dark) !important;
	border: none !important;
	border-radius: 30px !important;
	font-weight: 700 !important;
	padding: 0.75rem 2rem !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.hero-section .btn-primary:hover,
#home .btn-primary:hover {
	transform: translateY(-2px);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.25) !important;
	color: var(--g-dark) !important;
	background: #ffffff !important;
}

.hero-section .btn-secondary,
#home .btn-secondary {
	background: transparent !important;
	color: #ffffff !important;
	border: 2px solid rgba(255, 255, 255, 0.6) !important;
	border-radius: 30px !important;
	font-weight: 600 !important;
	padding: 0.7rem 1.75rem !important;
	text-transform: none !important;
}

.hero-section .btn-secondary:hover,
#home .btn-secondary:hover {
	border-color: #ffffff !important;
	color: #ffffff !important;
	background: rgba(255, 255, 255, 0.08) !important;
}

/* ------------------------------------------------------------------
   Buttons
   ------------------------------------------------------------------ */
.btn,
.btn-primary,
.btn-secondary,
a.btn {
	border-radius: 30px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	padding: 0.7rem 1.6rem !important;
	transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.btn::before {
	display: none !important;
}

.btn-primary,
a.btn-primary {
	background: var(--g) !important;
	background-image: none !important;
	border: none !important;
	color: #ffffff !important;
	box-shadow: 0 2px 10px rgba(0, 112, 60, 0.22);
}

.btn-primary:hover,
a.btn-primary:hover {
	background: var(--g-dark) !important;
	color: #ffffff !important;
	transform: translateY(-2px);
}

.btn-outline-primary {
	border: 2px solid var(--g) !important;
	color: var(--g) !important;
	background: transparent !important;
	border-radius: 30px !important;
}

.btn-outline-primary:hover {
	background: var(--g) !important;
	color: #ffffff !important;
}

.btn-secondary {
	background: var(--g-light) !important;
	color: var(--g-dark) !important;
	border: 1px solid var(--g-border) !important;
}

/* ------------------------------------------------------------------
   Sections & titles
   ------------------------------------------------------------------ */
section {
	background: transparent;
	border: none;
	box-shadow: none;
	backdrop-filter: none;
	border-radius: 0;
	padding-top: 4rem;
	padding-bottom: 4rem;
}

#industries,
#work,
#about,
#partners,
#products,
#contact,
.industries-section,
.faq-section,
.problem-bg,
.faq-bg {
	background: var(--g-page) !important;
}

#work,
#partners,
#contact {
	background: var(--white) !important;
}

.section-title {
	text-align: center;
	margin-bottom: 2.5rem;
}

.section-title strong,
.section-label {
	display: block !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 2px !important;
	text-transform: uppercase !important;
	color: var(--g) !important;
	-webkit-text-fill-color: var(--g) !important;
	margin-bottom: 0.5rem !important;
	text-shadow: none !important;
}

#about .section-title strong {
	font-size: 0.72rem !important;
	color: var(--g) !important;
	-webkit-text-fill-color: var(--g) !important;
}

.section-title h1,
.section-title h2,
.section-title .heading {
	color: var(--text-dark) !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: 800 !important;
	text-shadow: none !important;
}

.section-title hr {
	width: 56px !important;
	height: 4px !important;
	background: linear-gradient(90deg, var(--g), var(--teal)) !important;
	border: none !important;
	border-radius: 2px !important;
	margin: 0.75rem auto 0 !important;
}

.section-title p,
.section-sub {
	color: var(--text-gray) !important;
}

/* ------------------------------------------------------------------
   Cards
   ------------------------------------------------------------------ */
.industry-card,
.service-card,
.feature-card,
.service-overview,
.service-details,
.content-section,
.card,
#work .col-lg-4,
#work .col-md-6,
#products .col-lg-4,
#products .col-md-6 {
	background: #ffffff !important;
	border: 1px solid var(--g-border) !important;
	border-top: 4px solid var(--g) !important;
	border-radius: 12px !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;
	backdrop-filter: none !important;
}

#work .col-lg-4,
#work .col-md-6,
#products .col-lg-4 {
	padding: 1.75rem !important;
	margin-bottom: 1.5rem;
}

.industry-card,
.service-card,
.feature-card,
.card {
	padding: 1.75rem;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.industry-card:hover,
.service-card:hover,
.feature-card:hover,
.card:hover,
#work .col-lg-4:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10) !important;
	border-color: var(--g-border) !important;
}

.industry-icon,
.service-icon,
.feature-icon,
.icon-wrap,
#work .medium-icon,
#work i.medium-icon {
	width: 52px;
	height: 52px;
	border-radius: 12px !important;
	background: var(--g-light) !important;
	color: var(--g) !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem !important;
	margin-bottom: 1rem;
	box-shadow: none !important;
	filter: none !important;
}

.industry-card h3,
.service-card h3,
.feature-card h3,
#work h3,
#products h3 {
	color: var(--text-dark) !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
}

.industry-card p,
.service-card p,
.feature-card p,
#work p,
#products p,
.industry-benefits li {
	color: var(--text-gray) !important;
	font-size: 0.92rem;
}

.industry-benefits li i,
.industry-benefits li::before {
	color: var(--g) !important;
}

.list-unstyled li {
	background: var(--g-light) !important;
	border: 1px solid var(--g-border) !important;
	color: var(--text-dark) !important;
	border-radius: 10px;
}

/* ------------------------------------------------------------------
   Forms
   ------------------------------------------------------------------ */
.form-control,
input.form-control,
textarea.form-control,
select.form-control {
	background: #ffffff !important;
	border: 1px solid var(--g-border) !important;
	border-radius: 10px !important;
	color: var(--text-dark) !important;
	padding: 0.75rem 1rem !important;
}

.form-control::placeholder {
	color: #888 !important;
}

.form-control:focus {
	border-color: var(--g) !important;
	box-shadow: 0 0 0 3px rgba(0, 112, 60, 0.15) !important;
	background: #ffffff !important;
	color: var(--text-dark) !important;
}

label {
	color: var(--text-dark) !important;
	font-weight: 600;
}

/* ------------------------------------------------------------------
   Tables, FAQ, alerts
   ------------------------------------------------------------------ */
.table {
	background: #ffffff !important;
	border: 1px solid var(--g-border) !important;
}

.table th {
	background: var(--g-light) !important;
	color: var(--g-dark) !important;
}

.table td {
	color: var(--text-gray) !important;
	border-color: var(--g-border) !important;
}

.faq-section .accordion-item,
.faq-item {
	background: #ffffff !important;
	border: 1px solid var(--g-border) !important;
	border-left: 4px solid var(--g) !important;
	border-radius: 10px !important;
}

.faq-section .accordion-button {
	background: #ffffff !important;
	color: var(--text-dark) !important;
}

.faq-section .accordion-button:not(.collapsed) {
	background: var(--g-light) !important;
	color: var(--g-dark) !important;
}

.faq-section .accordion-button:focus {
	box-shadow: 0 0 0 0.2rem rgba(0, 112, 60, 0.2) !important;
}

.alert {
	background: var(--g-light) !important;
	border: 1px solid var(--g-border) !important;
	color: var(--text-dark) !important;
	border-radius: 12px;
}

/* ------------------------------------------------------------------
   Footer
   ------------------------------------------------------------------ */
footer,
.professional-footer,
.page-footer {
	background: #1a1a1a !important;
	background-image: none !important;
	color: rgba(255, 255, 255, 0.65) !important;
	border-top: none !important;
	backdrop-filter: none !important;
}

footer h3,
footer .footer-heading,
.professional-footer h3,
.professional-footer .footer-heading {
	color: #ffffff !important;
}

.footer-heading::after {
	background: var(--g) !important;
}

footer a,
footer .footer-link,
.professional-footer a {
	color: rgba(255, 255, 255, 0.7) !important;
}

footer a:hover,
.professional-footer a:hover,
.footer-link:hover {
	color: #ffffff !important;
}

footer .social-links a:hover,
.social-icon:hover {
	background: var(--g) !important;
}

/* ------------------------------------------------------------------
   CTA / highlight strips
   ------------------------------------------------------------------ */
.highlight-strip,
.cta-bg,
.pillars-bg {
	background: linear-gradient(135deg, var(--g-dark), var(--g)) !important;
	color: #ffffff !important;
}

.highlight-strip h2,
.cta-bg h2,
.pillars-bg h2 {
	color: #ffffff !important;
}

/* ------------------------------------------------------------------
   Page-specific leftovers
   ------------------------------------------------------------------ */
#main-content {
	padding-top: 0 !important;
}

pre, code {
	background: var(--g-light) !important;
	color: var(--g-dark) !important;
	border: 1px solid var(--g-border) !important;
}

.badge-primary,
.badge.bg-primary {
	background: var(--g) !important;
}

@media (max-width: 768px) {
	.hero-section,
	#home {
		padding-top: 6.5rem !important;
		padding-bottom: 3.5rem !important;
	}

	.section-title h1,
	.section-title h2 {
		font-size: 1.5rem !important;
	}
}
