/**
 * InsuranceFixits Core – Global utilities and base
 * Coastal authority look: blue gradients, soft shadows, rounded elements.
 *
 * Managed/Developed by ThatWorx
 *
 * @package InsuranceFixits_Core
 */

/* ----- Design tokens ----- */
:root {
	--ifx-blue-dark: #1e3a5f;
	--ifx-blue-mid: #2563eb;
	--ifx-blue-light: #0ea5e9;
	--ifx-teal: #0d9488;
	--ifx-teal-light: #14b8a6;
	--ifx-green: #22c55e;
	--ifx-text: #1a365d;
	--ifx-text-muted: #64748b;
	--ifx-border: #e2e8f0;
	--ifx-bg: #f8fafc;
	--ifx-shadow-sm: 0 1px 3px rgba(30, 58, 95, 0.08);
	--ifx-shadow: 0 4px 12px rgba(30, 58, 95, 0.1);
	--ifx-shadow-lg: 0 10px 25px rgba(30, 58, 95, 0.12);
	--ifx-radius: 12px;
	--ifx-radius-lg: 16px;
	--ifx-transition: 0.25s ease;
}

/* ----- Reset within plugin scope ----- */
.ifx-home *,
.ifx-home *::before,
.ifx-home *::after {
	box-sizing: border-box;
}

.ifx-home {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: var(--ifx-text);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.ifx-home img {
	max-width: 100%;
	height: auto;
	display: block;
}

.ifx-home a {
	color: inherit;
	text-decoration: none;
	transition: color var(--ifx-transition), opacity var(--ifx-transition);
}

.ifx-home ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* ----- Button base ----- */
.ifx-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.875em 1.75em;
	font-size: 1rem;
	font-weight: 600;
	text-align: center;
	border-radius: var(--ifx-radius);
	border: 2px solid transparent;
	transition: transform var(--ifx-transition), box-shadow var(--ifx-transition), background var(--ifx-transition), border-color var(--ifx-transition), opacity var(--ifx-transition);
	cursor: pointer;
}

.ifx-btn:hover {
	opacity: 0.95;
}

.ifx-btn:active {
	transform: scale(0.98);
}

.ifx-btn--primary {
	background: linear-gradient(135deg, var(--ifx-green), #16a34a);
	color: #fff;
	box-shadow: var(--ifx-shadow-sm);
}

.ifx-btn--primary:hover {
	box-shadow: var(--ifx-shadow);
}

.ifx-btn--secondary {
	background: transparent;
	color: #fff;
	border-color: rgba(255, 255, 255, 0.6);
}

.ifx-btn--secondary:hover {
	border-color: #fff;
	background: rgba(255, 255, 255, 0.1);
}

.ifx-btn--outline {
	background: var(--ifx-blue-dark);
	color: #fff;
}

.ifx-btn--outline:hover {
	background: var(--ifx-blue-mid);
	box-shadow: var(--ifx-shadow-sm);
}

.ifx-btn--large {
	padding: 1em 2em;
	font-size: 1.125rem;
}
