/*
Theme Name:   Jetlinx Elementor
Theme URI:    https://github.com/nstanard/jetlinx-wordpress-theme
Description:  Jet Linx Aviation custom theme built on Hello Elementor.
Author:       Neal Stanard
Author URI:   https://jetlinx.com
Template:     hello-elementor
Version:      0.1.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  jetlinx-elementor
*/

/* ==========================================================================
   Brand Design Tokens — sourced from Figma 2025 Website Design File
   Full palette lives in Elementor Kit (Site Settings → Global Colors) as
   --e-global-color-* vars. Only opacity variants with no Elementor
   equivalent are defined here.
   ========================================================================== */
:root {
	--jl-slate-90: rgba(75, 102, 124, 0.9);
	--jl-slate-50: rgba(75, 102, 124, 0.5);

	/* Fixed-header height. Static base = unscrolled .jl-header height
	   (logo 60px + .jl-header__inner 1rem×2 padding + 1px border = 93px).
	   assets/js/header.js overrides this live per-viewport via
	   getBoundingClientRect(); the static value keeps it correct before JS
	   runs and inside the Elementor editor canvas. Consumed by the JL Header
	   Spacer widget and the PHP templates' `margin-top: var(--jl-header-h)`. */
	--jl-header-h: 93px;
}

/* ── Global typography ─────────────────────────────────────────────────────
   Sets Gotham Office as the default body font so all Elementor widgets
   (Text Editor, Heading, etc.) inherit the brand font automatically.
   The @font-face declarations are in functions.php.
   ────────────────────────────────────────────────────────────────────────── */
body {
	font-family: 'Gotham Office', sans-serif;
}

/* Prevent alignfull Gutenberg blocks from causing horizontal overflow */
/* Flex column ensures footer is always pushed to the bottom of the viewport */
html, body {
	overflow-x: hidden;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

.jl-site-content {
	flex: 1;
	display: flex;
	flex-direction: column;
}

/* ── Global link color reset ───────────────────────────────────────────────
   Hello Elementor sets a { color: #cc3366 } which bleeds through everywhere.
   Override it here so all unthemed links use the brand slate color.
   Components that need a different color (white CTAs, nav items) set their
   own color in their own stylesheet.
   ──────────────────────────────────────────────────────────────────────── */
a {
	color: var(--e-global-color-slate) !important;
	text-decoration: none;
}

a:hover,
a:focus {
	color: var(--e-global-color-dark-navy) !important;
}

/* Hide WP page title (h1) that shows through the fixed header */
.page-title,
h1.entry-title,
.entry-title,
.entry-header .entry-title,
.wp-block-post-title {
	display: none !important;
}

/* ==========================================================================
   Back button — the single shared back-link style used site-wide: the
   jl_back_button() helper (all PHP templates), the JL Back Button widget, and
   the JL Aircraft Header widget all render .jl-back-btn. Outlined pill with a
   left chevron. Templates may add a positioning class alongside it
   (e.g. .jl-fleet-list__back).
   ========================================================================== */
.jl-back-btn,
.jl-back-btn:visited {
	display: inline-flex;
	align-items: center;
	align-self: flex-start;
	gap: 12px;
	padding: 12px 24px;
	border: 1px solid #c0c0c0;
	border-radius: 8px;
	background-color: #fff;
	color: #343333 !important; /* beat the global `a` color */
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 20px;
	letter-spacing: 1px;
	text-transform: uppercase;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.jl-back-btn:hover,
.jl-back-btn:focus {
	background-color: rgba(75, 102, 124, .3); /* #4B667C @ 30% */
	border-color: #c0c0c0;
	color: #343333 !important; /* beat the global `a:hover` !important color */
	text-decoration: none;
}

.jl-back-btn__arrow {
	display: inline-block;
	font-size: 18px;
	line-height: 1;
	transform: translateY(-1px);
}
