/**
 * GroXcelent global brand palette
 * Source: GroXcelent Brand Colour Palette v1.0, June 2026
 */
:root {
	--gx-navy: #0D1C6E;
	--gx-mid-navy: #1A2FA0;
	--gx-cyan-green: #00C98D;
	--gx-cyan-hover: #00B07A;
	--gx-mint-accent: #4DE0A6;
	--gx-light-blue: #A8C8F0;
	--gx-frost-white: #F4F7FF;
	--gx-mint-mist: #EAF6F2;
	--gx-cloud-grey: #F0F4FA;
	--gx-heading: #0D1C6E;
	--gx-body: #344054;
	--gx-muted: #667085;
	--gx-border: #E2E8F0;
	--gx-white: #FFFFFF;
}

/* Global foundation */
html,
body,
#wrap,
#main,
#content-wrap {
	background-color: var(--gx-frost-white);
	color: var(--gx-body);
}

body,
p,
li,
dd,
.elementor-widget-text-editor,
.elementor-widget-text-editor p {
	color: var(--gx-body);
}

h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title,
.entry-title,
.page-header-title {
	color: var(--gx-heading);
}

a,
.elementor a,
.entry-content a {
	color: var(--gx-mid-navy);
}

a:hover,
a:focus,
.elementor a:hover,
.entry-content a:hover {
	color: var(--gx-cyan-hover);
}

/* Announcement and navigation */
#top-bar-wrap {
	background-color: var(--gx-navy);
	border-color: var(--gx-navy);
}

#top-bar-wrap,
#top-bar-wrap p,
#top-bar-wrap a {
	color: var(--gx-light-blue);
}

#top-bar-wrap a:hover {
	color: var(--gx-mint-accent);
}

#site-header,
#site-header-inner,
#site-navigation-wrap,
#mobile-dropdown {
	background-color: var(--gx-white);
}

#site-navigation-wrap .dropdown-menu > li > a,
#mobile-dropdown ul li a {
	color: var(--gx-navy);
}

#site-navigation-wrap .dropdown-menu > li > a:hover,
#site-navigation-wrap .dropdown-menu > li.current-menu-item > a,
#mobile-dropdown ul li a:hover {
	color: var(--gx-mid-navy);
}

/* Page-builder section sequence */
#main .elementor > .elementor-element,
#main .elementor > .e-con,
#main .elementor > .e-con-full {
	background-color: var(--gx-frost-white);
}

#main .elementor > .elementor-element:nth-child(even),
#main .elementor > .e-con:nth-child(even),
#main .elementor > .e-con-full:nth-child(even) {
	background-color: var(--gx-cloud-grey);
}

#main .elementor > .elementor-element:first-child,
#main .elementor > .e-con:first-child,
#main .elementor > .e-con-full:first-child {
	background-color: var(--gx-navy);
}

#main .elementor > .elementor-element:first-child h1,
#main .elementor > .elementor-element:first-child h2,
#main .elementor > .elementor-element:first-child h3,
#main .elementor > .elementor-element:first-child p,
#main .elementor > .e-con:first-child h1,
#main .elementor > .e-con:first-child h2,
#main .elementor > .e-con:first-child h3,
#main .elementor > .e-con:first-child p {
	color: var(--gx-white);
}

#main .elementor > .elementor-element:first-child .elementor-widget-text-editor,
#main .elementor > .e-con:first-child .elementor-widget-text-editor {
	color: var(--gx-light-blue);
}

#main .elementor > .elementor-element:last-child,
#main .elementor > .e-con:last-child,
#main .elementor > .e-con-full:last-child {
	background-color: var(--gx-mint-mist);
}

/* AI SEO Journey: preserve the native Elementor investment section background. */
body.page-id-1560 #main .elementor > .elementor-element-0000009a {
	background-color: var(--gx-navy);
}

/* Buttons */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-element-button,
.wp-block-button__link,
.elementor-button,
.elementor-widget-button .elementor-button,
.ff-btn-submit {
	background: var(--gx-cyan-green);
	background-image: none;
	border: 1px solid var(--gx-cyan-green);
	color: #03251A;
	box-shadow: none;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.wp-element-button:hover,
.wp-block-button__link:hover,
.elementor-button:hover,
.elementor-widget-button .elementor-button:hover,
.ff-btn-submit:hover {
	background: var(--gx-cyan-hover);
	background-image: none;
	border-color: var(--gx-cyan-hover);
	color: #03251A;
	box-shadow: none;
}

#site-navigation-wrap .dropdown-menu > li.btn > a,
#site-navigation-wrap .dropdown-menu > li.menu-item-button > a {
	background-color: var(--gx-mid-navy);
	border-color: var(--gx-mid-navy);
	color: var(--gx-white);
}

#site-navigation-wrap .dropdown-menu > li.btn > a:hover,
#site-navigation-wrap .dropdown-menu > li.menu-item-button > a:hover {
	background-color: var(--gx-navy);
	color: var(--gx-white);
}

/* Cards, testimonials, pricing and callouts */
.elementor-widget-container,
.elementor-testimonial-wrapper,
.elementor-price-table,
.wp-block-group.is-style-card,
.blog-entry-inner,
.related-post,
#ez-toc-container {
	box-shadow: none;
}

.elementor-testimonial-wrapper,
.elementor-price-table,
.wp-block-group.is-style-card,
.blog-entry-inner,
.related-post,
#ez-toc-container {
	border: 0.5px solid var(--gx-border);
	background-color: var(--gx-white);
}

/* Forms */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="password"],
select,
textarea,
.fluentform input,
.fluentform select,
.fluentform textarea {
	background-color: var(--gx-white);
	border-color: var(--gx-border);
	color: var(--gx-body);
	box-shadow: none;
}

input:focus,
select:focus,
textarea:focus,
.fluentform input:focus,
.fluentform select:focus,
.fluentform textarea:focus {
	border-color: var(--gx-mid-navy);
	box-shadow: 0 0 0 2px rgba(26, 47, 160, 0.12);
	outline: none;
}

/* Blog, archive and search */
.page-header,
.oceanwp-row .blog-entry,
.single-post #content-wrap,
.archive #content-wrap,
.search-results #content-wrap {
	background-color: var(--gx-frost-white);
}

.page-header {
	border-color: var(--gx-border);
}

.meta,
.meta a,
.post-date,
.comment-meta,
.breadcrumbs,
.breadcrumbs a {
	color: var(--gx-muted);
}

blockquote {
	background-color: var(--gx-cloud-grey);
	border-left-color: var(--gx-mid-navy);
	color: var(--gx-body);
}

/* Footer */
#footer-widgets,
#footer-bottom {
	background-color: var(--gx-navy);
	border-color: var(--gx-navy);
}

#footer-widgets,
#footer-widgets p,
#footer-widgets li,
#footer-bottom,
#footer-bottom p {
	color: var(--gx-light-blue);
}

#footer-widgets h2,
#footer-widgets h3,
#footer-widgets h4,
#footer-widgets .widget-title,
#footer-bottom strong {
	color: var(--gx-white);
}

#footer-widgets a,
#footer-bottom a {
	color: var(--gx-cyan-green);
}

#footer-widgets a:hover,
#footer-bottom a:hover {
	color: var(--gx-mint-accent);
}

/* Accessibility */
:focus-visible {
	outline: 3px solid var(--gx-cyan-green);
	outline-offset: 3px;
}

::selection {
	background-color: var(--gx-mid-navy);
	color: var(--gx-white);
}
