/**
 * poslider — Site-wide theme layer (Petersen Onsite)
 * Version: 1.0.0
 *
 * All site-wide styling (colors, header, nav, footer, buttons, page titles,
 * news grid) lives here so the whole redesign ships inside this plugin — no
 * child-theme edits required. Loaded after the theme stylesheet; overrides use
 * matching specificity + !important where they must beat theme defaults.
 *
 * Slider-specific styling lives in custom-slider.css.
 */

/* ==========================================================================
   DESIGN TOKENS — change a color here and it propagates site-wide + slider.
   (Mirrored in custom-slider.css so each file stands alone.)
   ========================================================================== */
:root {
	/* Surfaces */
	--po-base:          #141618;
	--po-base-2:        #0f1113;
	--po-surface:       #1e2329;
	--po-surface-2:     #262c33;

	/* Lines */
	--po-border:        rgba(255, 255, 255, 0.08);
	--po-border-strong: rgba(255, 255, 255, 0.16);

	/* Text */
	--po-text:          #f4f6f8;
	--po-text-muted:    #a7b0b8;
	--po-text-dim:      rgba(255, 255, 255, 0.55);

	/* Brand accents */
	--po-accent:        #2e86de; /* hydro blue — primary CTA / links   */
	--po-accent-hover:  #4f9fe8;
	--po-accent-2:      #f2a20c; /* safety amber — secondary highlight */
	--po-accent-ink:    #ffffff;

	/* Effects */
	--po-radius:        6px;
	--po-radius-lg:     10px;
	--po-shadow:        0 8px 30px rgba(0, 0, 0, 0.45);
	--po-ease:          cubic-bezier(.16, .84, .24, 1);
}

/* ==========================================================================
   1. HEADER & NAVIGATION
   ========================================================================== */

.realfactory-header-background,
.realfactory-sticky-menu-placeholder,
.realfactory-header-style-boxed.realfactory-fixed-navigation,
.realfactory-header-background-transparent {
	background-color: var(--po-base) !important;
}

.realfactory-header-container-inner {
	border-bottom: 1px solid var(--po-border);
}

/* Menu links: quiet default, hydro-blue on hover/active */
.realfactory-navigation .sf-menu > li > a {
	transition: color 0.2s var(--po-ease);
	letter-spacing: 0.02em;
}

.realfactory-navigation .sf-menu > li > a:hover,
.realfactory-navigation .sf-menu > li.current-menu-item > a,
.realfactory-navigation .sf-menu > li.current-menu-ancestor > a {
	color: var(--po-accent) !important;
}

.current-menu-item a {
	color: var(--po-accent) !important;
}

/* Submenu panels: steel surface, hairline border */
.realfactory-navigation .sf-menu ul.sub-menu {
	background: var(--po-surface) !important;
	border: 1px solid var(--po-border) !important;
	box-shadow: var(--po-shadow);
}

.realfactory-navigation .sf-menu ul.sub-menu > li > a:hover {
	color: var(--po-accent) !important;
	background: var(--po-surface-2) !important;
}

/* Header right button → amber-outlined pill that fills on hover */
.realfactory-header-right-button {
	border: 1px solid var(--po-accent-2) !important;
	border-radius: var(--po-radius) !important;
	color: #fff !important;
	text-transform: uppercase;
	transition: background 0.2s var(--po-ease), color 0.2s var(--po-ease), transform 0.2s var(--po-ease);
}

.realfactory-header-right-button:hover {
	background: var(--po-accent-2) !important;
	color: #14110a !important;
	transform: translateY(-1px);
}

/* Mobile menu panel + hamburger */
.realfactory-mobile-menu-wrap,
.realfactory-mobile-menu {
	background: var(--po-base) !important;
}

.realfactory-mobile-header .realfactory-mobile-button-hamburger:before,
.realfactory-mobile-header .realfactory-mobile-button-hamburger:after,
.realfactory-mobile-header .realfactory-mobile-button-hamburger span {
	background: #fff;
}

.realfactory-mobile-menu .realfactory-mobile-menu-button {
	border-color: #fff !important;
}

/* ==========================================================================
   2. PAGE TITLE BARS
   ========================================================================== */

body:not(.home) .realfactory-page-title-wrap {
	background-color: var(--po-base);
	border-bottom: 1px solid var(--po-border);
}

.realfactory-page-title h1 {
	letter-spacing: 0.01em;
}

/* ==========================================================================
   3. TYPOGRAPHY & LINKS
   ========================================================================== */

.gdlr-core-page-builder-body a:not(.gdlr-core-button):not(.realfactory-header-right-button),
.entry-content a:not(.gdlr-core-button),
.realfactory-single-article a:not(.gdlr-core-button) {
	color: var(--po-accent);
	transition: color 0.2s var(--po-ease);
}

.gdlr-core-page-builder-body a:not(.gdlr-core-button):not(.realfactory-header-right-button):hover,
.entry-content a:not(.gdlr-core-button):hover,
.realfactory-single-article a:not(.gdlr-core-button):hover {
	color: var(--po-accent-hover);
}

/* ==========================================================================
   4. BUTTONS (site-wide, GoodLayers page-builder buttons)
   ========================================================================== */

.gdlr-core-button,
.gdlr-core-button.gdlr-core-button-solid {
	border-radius: var(--po-radius) !important;
	letter-spacing: 0.04em;
	transition: background 0.2s var(--po-ease), box-shadow 0.2s var(--po-ease), transform 0.2s var(--po-ease) !important;
}

.gdlr-core-button.gdlr-core-button-solid {
	background: var(--po-accent) !important;
	color: var(--po-accent-ink) !important;
	box-shadow: 0 6px 18px rgba(46, 134, 222, 0.25);
}

.gdlr-core-button.gdlr-core-button-solid:hover {
	background: var(--po-accent-hover) !important;
	transform: translateY(-2px);
	box-shadow: 0 10px 26px rgba(46, 134, 222, 0.35);
}

.gdlr-core-button.gdlr-core-button-with-border,
.gdlr-core-button.gdlr-core-button-transparent {
	border: 1px solid var(--po-accent) !important;
	color: var(--po-accent) !important;
	background: transparent !important;
}

.gdlr-core-button.gdlr-core-button-with-border:hover,
.gdlr-core-button.gdlr-core-button-transparent:hover {
	background: var(--po-accent) !important;
	color: var(--po-accent-ink) !important;
}

/* ==========================================================================
   5. FOOTER
   ========================================================================== */

.realfactory-footer-wrapper {
	background-color: var(--po-base) !important;
	border-top: 1px solid var(--po-border);
}

.realfactory-copyright-wrapper,
.realfactory-copyright-text {
	background-color: var(--po-base-2) !important;
	color: var(--po-text-muted) !important;
}

.realfactory-footer-wrapper a,
.realfactory-copyright-wrapper a {
	color: var(--po-text-muted);
	transition: color 0.2s var(--po-ease);
}

.realfactory-footer-wrapper a:hover,
.realfactory-copyright-wrapper a:hover {
	color: var(--po-accent) !important;
}

.realfactory-footer-wrapper .gdlr-core-social-network-icon:hover {
	color: var(--po-accent-2) !important;
}

/* ==========================================================================
   6. LATEST NEWS GRID  ([latest_news_grid] shortcode from the child theme)
   ========================================================================== */

.petersen-news-grid-wrap {
	margin: 0;
}

.petersen-news-card {
	border-radius: var(--po-radius-lg);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
	transition: transform 0.25s var(--po-ease), box-shadow 0.25s var(--po-ease);
}

.petersen-news-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 14px 34px rgba(0, 0, 0, 0.35);
}

.petersen-news-card::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--po-accent);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.3s var(--po-ease);
	z-index: 3;
	pointer-events: none;
}

.petersen-news-card:hover::after {
	transform: scaleX(1);
}

.petersen-news-card-overlay {
	background: linear-gradient(180deg, rgba(20, 22, 24, 0.35) 0%, rgba(20, 22, 24, 0.85) 100%) !important;
}

.petersen-news-card-title {
	letter-spacing: 0.01em;
}
