/*
Theme Name: TIA Seniors 2026
Theme URI: https://olliewp.com
Description: This is Jon's custom child theme.
Author: Jon Schroeder
Author URI: https://elod.in
Template:     ollie
Version: 1.0.2
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Tags:         blog, portfolio, entertainment, grid-layout, one-column, two-columns, three-columns, four-columns, block-patterns, block-styles, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, full-width-template, rtl-language-support, style-variations, template-editing, theme-options, translation-ready, wide-blocks
Text Domain: ollie-child
*/

.entry-content ul li,
.entry-content ol li,
.wp-block-post-content ul li,
.wp-block-post-content ol li {
	margin-bottom: var(--wp--preset--spacing--x-small);
}

:root .wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent none;
	border: 2px solid currentColor;
	outline: none;
	outline-offset: 0;
	padding-top: calc(var(--wp--preset--spacing--x-small) - 2px);
	padding-right: calc(var(--wp--preset--spacing--base) - 2px);
	padding-bottom: calc(var(--wp--preset--spacing--x-small) - 2px);
	padding-left: calc(var(--wp--preset--spacing--base) - 2px);
}

/* FacetWP controls */
.facet-wrap.wp-block-facetwp-facet {
	--facet-control-height: 46px;
	--facet-control-min-width: 300px;
	--facet-control-max-width: 360px;
	--facet-control-radius: 4px;
	--facet-control-border: #cfd4dc;
	--facet-control-border-strong: var(--wp--preset--color--main, #1e203d);
	--facet-control-surface: var(--wp--preset--color--base, #fff);
	--facet-control-text: var(--wp--preset--color--main, #1e203d);
	--facet-control-muted: var(--wp--preset--color--secondary, #475569);
	--facet-control-shadow: 0 1px 2px rgba(16, 24, 40, 0.06);
	--facet-control-shadow-active: 0 0 0 3px rgba(30, 32, 61, 0.12);
	--facet-dropdown-shadow: 0 14px 28px rgba(16, 24, 40, 0.14);
	--facet-option-hover: color-mix(
		in srgb,
		var(--wp--preset--color--primary-accent, #e9f6ff) 55%,
		var(--wp--preset--color--base, #fff)
	);
	display: flex;
	flex: 1 1 var(--facet-control-min-width);
	flex-direction: column;
	gap: 8px;
	inline-size: min(100%, var(--facet-control-max-width));
	min-inline-size: min(100%, var(--facet-control-min-width));
}

.facet-wrap.wp-block-facetwp-facet > .wp-block-heading {
	margin: 0;
	color: var(--facet-control-text);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 800;
	line-height: 1.2;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-facet {
	margin: 0;
	inline-size: 100%;
	max-inline-size: none;
	min-inline-size: 0;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-input-wrap,
.facet-wrap.wp-block-facetwp-facet .fs-wrap {
	position: relative;
	display: block;
	inline-size: 100%;
	min-inline-size: 0;
	min-block-size: var(--facet-control-height);
	border: 1px solid var(--facet-control-border);
	border-radius: var(--facet-control-radius);
	background: var(--facet-control-surface);
	box-shadow: var(--facet-control-shadow);
	box-sizing: border-box;
	transition: border-color 0.16s ease-in-out, box-shadow 0.16s ease-in-out;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-search,
.facet-wrap.wp-block-facetwp-facet .fs-label-wrap {
	min-block-size: var(--facet-control-height);
	padding: 0 14px;
	border: 0;
	border-radius: var(--facet-control-radius);
	background: transparent;
	box-sizing: border-box;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-search {
	inline-size: 100%;
	color: var(--facet-control-text);
	font-size: 16px;
	line-height: 1.3;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-search::placeholder {
	color: var(--facet-control-muted);
	opacity: 1;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-icon {
	display: none;
}

.facet-wrap.wp-block-facetwp-facet .fs-label-wrap {
	display: flex;
	align-items: center;
}

.facet-wrap.wp-block-facetwp-facet .fs-label {
	max-inline-size: calc(100% - 24px);
	padding: 0;
	overflow: hidden;
	color: var(--facet-control-text);
	font-size: 16px;
	line-height: 1.3;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.facet-wrap.wp-block-facetwp-facet .fs-arrow {
	inset-inline-end: 12px;
}

.facet-wrap.wp-block-facetwp-facet .facetwp-input-wrap:focus-within,
.facet-wrap.wp-block-facetwp-facet .fs-wrap:focus-within,
.facet-wrap.wp-block-facetwp-facet .fs-wrap.fs-open {
	outline: none;
	border-color: var(--facet-control-border-strong);
	box-shadow: var(--facet-control-shadow-active);
}

.facet-wrap.wp-block-facetwp-facet .fs-dropdown {
	margin-top: 8px;
	inline-size: 100%;
	min-inline-size: 100%;
	border: 1px solid var(--facet-control-border);
	border-radius: var(--facet-control-radius);
	background: var(--facet-control-surface);
	box-shadow: var(--facet-dropdown-shadow);
	overflow: hidden;
	box-sizing: border-box;
	z-index: 20;
}

.facet-wrap.wp-block-facetwp-facet .fs-search {
	padding: 8px;
	border-bottom: 1px solid color-mix(in srgb, var(--facet-control-border) 75%, #fff);
	box-sizing: border-box;
}

.facet-wrap.wp-block-facetwp-facet .fs-search input {
	inline-size: 100%;
	min-block-size: 36px;
	padding: 0 10px;
	border: 1px solid color-mix(in srgb, var(--facet-control-border) 85%, #fff);
	border-radius: var(--facet-control-radius);
	color: var(--facet-control-text);
	font-size: 14px;
	box-sizing: border-box;
}

.facet-wrap.wp-block-facetwp-facet .fs-search input::placeholder {
	color: var(--facet-control-muted);
	opacity: 1;
}

.facet-wrap.wp-block-facetwp-facet .fs-search input:focus,
.facet-wrap.wp-block-facetwp-facet .fs-search input:focus-visible {
	outline: none;
	border-color: var(--facet-control-border-strong);
	box-shadow: var(--facet-control-shadow-active);
}

.facet-wrap.wp-block-facetwp-facet .fs-options {
	max-block-size: 320px;
	overflow-x: hidden;
	overflow-y: auto;
}

.facet-wrap.wp-block-facetwp-facet .fs-option {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 12px;
	color: var(--facet-control-text);
	transition: background-color 0.16s ease-in-out;
	box-sizing: border-box;
	inline-size: 100%;
	min-inline-size: 0;
}

.facet-wrap.wp-block-facetwp-facet .fs-option:hover,
.facet-wrap.wp-block-facetwp-facet .fs-option:focus,
.facet-wrap.wp-block-facetwp-facet .fs-option.selected {
	background: var(--facet-option-hover);
}

.facet-wrap.wp-block-facetwp-facet .fs-checkbox {
	flex: 0 0 auto;
}

.facet-wrap.wp-block-facetwp-facet .fs-option-label,
.facet-wrap.wp-block-facetwp-facet .fs-no-results {
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.4;
}

.facet-wrap.wp-block-facetwp-facet .fs-option-label {
	flex: 1 1 auto;
	min-inline-size: 0;
	overflow-wrap: anywhere;
}

.facet-wrap.wp-block-facetwp-facet .fs-no-results {
	padding: 12px;
	color: var(--facet-control-muted);
}

@media (max-width: 782px) {
	.facet-wrap.wp-block-facetwp-facet {
		inline-size: 100%;
		max-inline-size: none;
		min-inline-size: 0;
	}

	.facet-wrap.wp-block-facetwp-facet .fs-dropdown {
		min-inline-size: 100%;
	}
}

/* Devices carousel */
.devices-slider-wrap {
	position: relative;
	left: 50%;
	inline-size: 100vw;
	max-inline-size: 100vw;
	margin-inline-start: -50vw;
}

.devices-slider {
	--devices-slider-gap: var(--wp--preset--spacing--medium, 24px);
	--devices-slider-slide-width: clamp(260px, 32vw, 390px);
	display: flex;
	gap: var(--devices-slider-gap);
	align-items: stretch;
	margin-inline: 0;
	padding-block: 4px 0;
	padding-inline: calc((100vw - var(--devices-slider-slide-width)) / 2);
	overflow-x: auto;
	overflow-y: hidden;
	list-style: none;
	scroll-behavior: smooth;
	scroll-padding-inline: calc((100vw - var(--devices-slider-slide-width)) / 2);
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.devices-slider.wp-block-post-template {
	display: flex;
	grid-template-columns: none;
}

.devices-slider > li {
	flex: 0 0 var(--devices-slider-slide-width);
	inline-size: var(--devices-slider-slide-width);
	max-inline-size: var(--devices-slider-slide-width);
	margin: 0 !important;
	scroll-snap-align: center;
}

.devices-slider .device-each {
	block-size: 100%;
	margin-block-end: 0;
}

.devices-slider .device-each h2 {
	line-height: 1.2;
}

.devices-slider::-webkit-scrollbar {
	display: none;
}

.devices-slider-controls {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-block-end: var(--wp--preset--spacing--small, 16px);
}

.devices-slider-button {
	appearance: none;
	border: 0;
	cursor: pointer;
}

.devices-slider-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	inline-size: 38px;
	block-size: 38px;
	border: 1px solid var(--wp--preset--color--border-light, #d9dee7);
	border-radius: 999px;
	background: var(--wp--preset--color--base, #fff);
	color: var(--wp--preset--color--main, #1e203d);
	box-shadow: var(--wp--preset--shadow--medium-light, 0 8px 18px rgba(16, 24, 40, 0.1));
	transition: opacity 0.16s ease-in-out, transform 0.16s ease-in-out;
}

.devices-slider-button:hover:not(:disabled),
.devices-slider-button:focus-visible {
	transform: translateY(-1px);
}

.devices-slider-button:focus-visible,
.devices-slider:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.devices-slider-button:disabled {
	cursor: not-allowed;
	opacity: 0.4;
}

.devices-slider-button span {
	display: block;
	inline-size: 9px;
	block-size: 9px;
	border-block-start: 2px solid currentColor;
	border-inline-start: 2px solid currentColor;
}

.devices-slider-button--previous span {
	transform: translateX(2px) rotate(-45deg);
}

.devices-slider-button--next span {
	transform: translateX(-2px) rotate(135deg);
}

.devices-slider-wrap.is-static .devices-slider-controls {
	display: none;
}

@media (max-width: 782px) {
	.devices-slider {
		--devices-slider-gap: var(--wp--preset--spacing--base, 20px);
		--devices-slider-slide-width: min(82vw, 360px);
		padding-inline: calc((100vw - var(--devices-slider-slide-width)) / 2);
		scroll-padding-inline: calc((100vw - var(--devices-slider-slide-width)) / 2);
	}
}

@media (max-width: 480px) {
	.devices-slider {
		--devices-slider-slide-width: min(86vw, 330px);
	}

	.devices-slider-button {
		inline-size: 36px;
		block-size: 36px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.devices-slider {
		scroll-behavior: auto;
	}

	.devices-slider-button {
		transition: none;
	}
}
