/*!
 * Eightarrows Travel — accessibility contrast fixes (WCAG 2.0 AA, 1.4.3)
 * Revision: see EH_A11Y_REV in functions.php (2026-10-12.8)
 *
 * Palette: navy #1E2A38, white #FFFFFF, gold #C2A36B.
 * Measured ratios (relative luminance, WCAG formula):
 *   navy on white  14.55:1   ✔ text
 *   navy on gold    6.06:1   ✔ text (selected tab)
 *   gold on white   2.40:1   ✘ never used for text
 *   gold on navy    6.06:1   ✔ focus ring against navy
 *
 * Only the two flagged components are scoped here. !important is used
 * because the plugin applies colors with inline-level specificity and
 * rgba/opacity, and LiteSpeed CCSS can reorder stylesheets.
 */

/* ---- 1. Filter result counts: .advanced-search-field .filter-section-content .count */
.advanced-search-field .filter-section-content .count,
.advanced-search-field .filter-section-content label .count,
.advanced-search-field .filter-section-content .count span {
	color: #1E2A38 !important;
	background-color: #FFFFFF !important;
	opacity: 1 !important;
}

/* Keep the count readable when the parent option is hovered / selected. */
.advanced-search-field .filter-section-content label:hover .count,
.advanced-search-field .filter-section-content input:checked ~ .count,
.advanced-search-field .filter-section-content .selected .count,
.advanced-search-field .filter-section-content .active .count {
	color: #FFFFFF !important;
	background-color: #1E2A38 !important;
}

/* ---- 2. Departure-year tabs: .wte-fsd-months__year */
.wte-fsd-months__year {
	color: #1E2A38 !important;
	background-color: #FFFFFF !important;
	opacity: 1 !important;
	border: 1px solid #1E2A38;
	border-radius: 4px;
	padding: 0.35em 0.9em;
	cursor: pointer;
}

.wte-fsd-months__year:hover {
	color: #FFFFFF !important;
	background-color: #1E2A38 !important;
}

/* Selected year: navy text on gold (5.86:1) + thicker bottom edge, so the
   state is conveyed by more than colour alone. */
.wte-fsd-months__year.active,
.wte-fsd-months__year.is-active,
.wte-fsd-months__year[aria-selected="true"],
.wte-fsd-months__year--active,
.wte-fsd-months__year-input:checked + .wte-fsd-months__year {
	color: #1E2A38 !important;
	background-color: #C2A36B !important;
	border-color: #1E2A38;
	border-bottom-width: 3px;
	font-weight: 700;
}

/* Visible keyboard focus (2.4.7) — never removed, always 2px, high contrast. */
.wte-fsd-months__year:focus,
.wte-fsd-months__year:focus-visible,
.wte-fsd-months__year-input:focus-visible + .wte-fsd-months__year {
	outline: 2px solid #1E2A38 !important;
	outline-offset: 2px !important;
	box-shadow: 0 0 0 4px #FFFFFF !important;
}

.wte-fsd-months__year:hover:focus-visible {
	outline-color: #C2A36B !important;
}

/* ---- 3. Sold-out badge on trip cards (rev 2026-10-12.5)
   Plugin rule (trip-archive css, !important, specificity 0,6,0) — note the
   class is wpte_new-layout (hyphen); JS also sets these inline !important:
     .category-trips-single.wpte_new-layout .category-trips-single-inner-wrap
     .wpte-button-group .wpte-button.wpte-button-disabled
     { color:#f04438; opacity:.4; background-color:transparent; border-color:#f04438 }
   #f04438 at 40% opacity on white = ~1.7:1. Both rules are !important, so
   specificity wins: this selector repeats theirs plus one extra class
   (0,7,0). Result: #B42318 on white = 6.57:1, opacity 1. */
.category-trips-single.wpte_new-layout .category-trips-single-inner-wrap .wpte-button-group .wpte-button.wpte-button.wpte-button-disabled,
.category-trips-single .wpte-button-group .wpte-button.wpte-button.wpte-button-disabled,
.wpte-button.wpte-button.wpte-button-disabled {
	color: #B42318 !important;
	background-color: #FFFFFF !important;
	border: 2px solid #B42318 !important;
	opacity: 1 !important;
	font-weight: 700;
}

/* ---- 3b. Trip archive pagination (rev 2026-10-12.8)
   .page-numbers.current renders white on the plugin's bright blue (<4.5:1)
   and its .screen-reader-text child inherits the same colours. Navy block
   with white text = 14.55:1; links navy on white; gold hover with navy
   text = 6.06:1. aria-current / aria-label are untouched. */
.trip-pagination .page-numbers.current,
.navigation.pagination .page-numbers.current {
	color: #FFFFFF !important;
	background-color: #1E2A38 !important;
	border: 1px solid #1E2A38 !important;
	opacity: 1 !important;
}
.trip-pagination .page-numbers.current .screen-reader-text,
.navigation.pagination .page-numbers.current .screen-reader-text {
	color: #FFFFFF !important;
	background-color: #1E2A38 !important;
}
.trip-pagination a.page-numbers,
.navigation.pagination a.page-numbers {
	color: #1E2A38 !important;
	background-color: #FFFFFF !important;
	border: 1px solid #1E2A38 !important;
	opacity: 1 !important;
}
.trip-pagination a.page-numbers:hover,
.navigation.pagination a.page-numbers:hover {
	color: #1E2A38 !important;
	background-color: #C2A36B !important;
}
.trip-pagination a.page-numbers:focus-visible,
.navigation.pagination a.page-numbers:focus-visible {
	outline: 2px solid #1E2A38 !important;
	outline-offset: 2px;
}

/* =====================================================================
 * 4. Rules migrated from Appearance → Customize → Additional CSS
 *    (rev 2026-10-12.2). Deduplicated; behaviour unchanged.
 *    Ratios on white: #8a6a2f 5.02:1, #57421d 9.54:1, #666666 5.74:1,
 *    #595959 7.00:1, #1E2A38 14.55:1.
 *    Once this file is live and verified, delete the same rules from the
 *    Customizer so there is a single source of truth.
 * ===================================================================== */

/* Hero fallback behind the existing video */
.elementor-element.elementor-element-f3d6153 {
	background-color: #000000 !important;
}

/* Homepage cruise cards: fallback behind the images */
body.home .wpte-adv-trips_four.layout-3 .wpte-card {
	background-color: #000;
}

/* Readable unavailable months (span after eh-a11y.js; a.disabled before JS runs) */
.category-available-months li .disabled {
	color: #666666 !important;
	background-color: #ffffff !important;
	opacity: 1 !important;
}

/* Available months: brand gold with a visible link cue */
.category-available-months li a:not(.disabled) {
	color: #8a6a2f !important;
	background-color: #ffffff !important;
	opacity: 1 !important;
	font-weight: 700;
	text-decoration: underline !important; /* plugin resets it; keep the non-colour link cue (1.4.1) */
}
.category-available-months li a:not(.disabled):hover {
	color: #57421d !important;
}
.category-available-months li a:not(.disabled):focus-visible {
	outline: 2px solid #1e2a38;
	outline-offset: 3px;
}

/* WP Travel Engine: available month link colour */
body .category-available-months {
	--wpte-primary-color: #8a6a2f;
	--primary-color: #8a6a2f;
}

/* Cruise listing: View Details buttons */
body .category-trips-single .wpte-button-group a.wpte-button {
	background: #8a6a2f !important;
	color: #ffffff !important;
	border-color: #8a6a2f !important;
}
body .category-trips-single .wpte-button-group a.wpte-button:hover {
	background: #57421d !important;
	border-color: #57421d !important;
}
body .category-trips-single .wpte-button-group a.wpte-button:focus-visible {
	outline: 2px solid #1e2a38;
	outline-offset: 3px;
}

/* Single-trip header: readable gold labels */
body.single-trip .entry-header .eh-eyebrow,
body.single-trip .entry-header .days {
	color: #8a6a2f !important;
}

/* Single-trip price labels + booking price unit */
body.single-trip .wpte-bf-pqty,
body.single-trip .wpte-bf-price-from,
body.single-trip .per-text {
	color: #595959 !important;
	opacity: 1 !important;
}

/* Required-field asterisks */
body.single-trip label .required {
	color: #8a6a2f !important;
	opacity: 1 !important;
}

/* Readable form placeholders */
body.single-trip input::placeholder,
body.single-trip textarea::placeholder {
	color: #666666 !important;
	opacity: 1 !important;
}

/* Booking step currently selected */
body.single-trip .wte-process-nav-item.active > a {
	color: #8a6a2f !important;
}

/* Selected guide category pill */
.eh-cat-pills a.eh-cat-pill.is-active,
.eh-cat-pills a.eh-cat-pill.is-active:visited,
.eh-cat-pills a.eh-cat-pill.is-active:hover,
.eh-cat-pills a.eh-cat-pill.is-active:focus {
	color: #1E2A38 !important;
	background-color: #C2A36B !important;
	border-color: #C2A36B !important;
}
.eh-cat-pills a.eh-cat-pill:focus-visible {
	outline: 2px solid #1E2A38 !important;
	outline-offset: 3px;
}

/* Travel Guides infinite-scroll status text */
.elementor-element-e099899 .infiniteScroll .status-text {
	color: #595959 !important;
	opacity: 1 !important;
}

/* WP Travel Engine: Clear all */
#reset-trip-search-criteria,
#reset-trip-search-criteria:hover,
#reset-trip-search-criteria:focus {
	color: #1E2A38 !important;
	text-decoration: underline !important;
}
#reset-trip-search-criteria:focus-visible {
	outline: 2px solid #1E2A38 !important;
	outline-offset: 3px;
}