/* Extracted from lib.css — loaded conditionally via functions.php */

/* ================================================================
   Tourism Business Coaches Page — lib-coaches-* classes
   Append to lib.css after deployment approval.
   Uses existing CSS variables from :root in lib.css.
   ================================================================ */

/* ── Hero ──────────────────────────────────────────────────────── */

.lib-coaches-hero {
	background: linear-gradient(160deg, rgba(10,30,63,0.92) 30%, rgba(78,165,156,0.85) 100%),
		url('https://www.tourismtribe.com/wp-content/uploads/Liz-and-Fab-computer-tourism-tech-support.jpg') center/cover no-repeat;
	position: relative;
	overflow: hidden;
	padding: 6rem 1.5rem 5rem !important;
	text-align: center;
	color: var(--wp--preset--color--white);
}

.lib-coaches-hero::before {
	content: '';
	position: absolute;
	top: -60px;
	right: -80px;
	width: 360px;
	height: 280px;
	background: radial-gradient(ellipse at 50% 50%, rgba(255,255,255,0.06) 0%, transparent 70%);
	pointer-events: none;
}

.lib-coaches-hero::after {
	content: '';
	position: absolute;
	bottom: -100px;
	left: -60px;
	width: 260px;
	height: 260px;
	border-radius: 50%;
	border: 48px solid rgba(255,255,255,0.03);
	pointer-events: none;
}

.lib-coaches-hero-inner {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
}

.lib-coaches-hero-heading {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(2rem, 5vw, 3.2rem) !important;
	font-weight: 400 !important;
	line-height: 1.12 !important;
	letter-spacing: -0.02em !important;
	color: var(--wp--preset--color--white) !important;
	margin-bottom: 1.25rem !important;
}

.lib-coaches-hero-heading em {
	font-style: italic;
	color: var(--wp--preset--color--salmon);
}

.lib-coaches-hero-lead {
	font-size: 1.05rem !important;
	color: rgba(255,255,255,0.75) !important;
	line-height: 1.65 !important;
	max-width: 560px;
	margin: 0 auto 2rem !important;
}

/* ── Eyebrow (shared across sections) ─────────────────────────── */

.lib-coaches-eyebrow {
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 0.68rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase;
	margin-bottom: 0.65rem !important;
}

.lib-coaches-hero .lib-coaches-eyebrow {
	color: var(--wp--preset--color--salmon) !important;
	margin-bottom: 1rem !important;
}

.lib-coaches-profiles .lib-coaches-eyebrow,
.lib-coaches-how .lib-coaches-eyebrow,
.lib-coaches-faq .lib-coaches-eyebrow {
	color: var(--wp--preset--color--teal) !important;
}

.lib-coaches-eyebrow--light {
	color: var(--wp--preset--color--salmon) !important;
}

/* ── Section headings (shared) ────────────────────────────────── */

.lib-coaches-section-heading {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(1.55rem, 3.5vw, 2.1rem) !important;
	font-weight: 700 !important;
	color: var(--wp--preset--color--primary) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.025em !important;
	margin-bottom: 0.65rem !important;
}

.lib-coaches-section-heading em {
	font-style: italic;
	color: var(--wp--preset--color--teal);
}

.lib-coaches-section-lead {
	font-size: 1rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.65 !important;
	margin-bottom: 2rem !important;
	max-width: 560px;
	margin-left: auto;
	margin-right: auto;
}

/* ── Buttons ──────────────────────────────────────────────────── */

.lib-coaches-btn-salmon .wp-block-button__link {
	background: var(--wp--preset--color--salmon) !important;
	color: var(--wp--preset--color--white) !important;
	border-radius: 100px !important;
	padding: 12px 28px !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	box-shadow: 0 6px 20px rgba(249,130,119,0.28);
	border: none !important;
	transition: all 0.2s cubic-bezier(0.34,1.56,0.64,1);
}

.lib-coaches-btn-salmon .wp-block-button__link:hover {
	background: var(--wp--preset--color--salmon-dark) !important;
	transform: translateY(-2px);
}

.lib-coaches-btn-ghost-light .wp-block-button__link {
	background: transparent !important;
	color: rgba(255,255,255,0.85) !important;
	border: 1.5px solid rgba(255,255,255,0.25) !important;
	border-radius: 100px !important;
	padding: 10px 26px !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	transition: all 0.2s cubic-bezier(0.34,1.56,0.64,1);
}

.lib-coaches-btn-ghost-light .wp-block-button__link:hover {
	border-color: rgba(255,255,255,0.6) !important;
	background: rgba(255,255,255,0.06) !important;
}

.lib-coaches-btn-teal .wp-block-button__link {
	background: var(--wp--preset--color--teal) !important;
	color: var(--wp--preset--color--white) !important;
	border-radius: 100px !important;
	padding: 12px 28px !important;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	box-shadow: var(--shadow-teal);
	border: none !important;
	transition: all 0.2s cubic-bezier(0.34,1.56,0.64,1);
}

.lib-coaches-btn-teal .wp-block-button__link:hover {
	background: var(--wp--preset--color--teal-dark) !important;
	transform: translateY(-2px);
}

/* ── Stats band ───────────────────────────────────────────────── */

.lib-coaches-stats {
	background: var(--wp--preset--color--white);
	border-bottom: 1px solid var(--border);
	padding: 2.5rem 1.5rem !important;
}

.lib-coaches-stats-grid.wp-block-columns {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 2rem !important;
	max-width: 900px;
	margin: 0 auto;
}

.lib-coaches-stats-grid.wp-block-columns > .wp-block-column {
	flex-basis: unset !important;
	min-width: unset !important;
	max-width: none !important;
}

.lib-coaches-stat-number {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: 700 !important;
	color: var(--wp--preset--color--teal-dark) !important;
	line-height: 1.2 !important;
	margin-bottom: 0.25rem !important;
}

.lib-coaches-stat-label {
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	font-weight: 500 !important;
}

@media (max-width: 640px) {
	.lib-coaches-stats-grid.wp-block-columns {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 1.5rem !important;
	}
}

/* ── Coach profiles section ───────────────────────────────────── */

.lib-coaches-profiles {
	padding: 5rem 1.5rem !important;
	background: var(--wp--preset--color--off-white);
}

.lib-coaches-intro {
	max-width: 640px;
	margin: 0 auto 4rem !important;
}

/* ── Individual coach card ────────────────────────────────────── */

.lib-coaches-profile {
	margin-bottom: 4rem !important;
	padding: 0 !important;
	background: transparent !important;
}

.lib-coaches-profile:last-child {
	margin-bottom: 0 !important;
}

.lib-coaches-card.wp-block-columns {
	display: grid !important;
	grid-template-columns: 320px 1fr !important;
	gap: 0 !important;
	max-width: 1000px;
	margin: 0 auto;
	background: var(--wp--preset--color--white);
	border-radius: 24px;
	box-shadow: var(--shadow-card);
	overflow: hidden;
	transition: box-shadow 0.3s;
}

.lib-coaches-card.wp-block-columns:hover {
	box-shadow: var(--shadow-card-hover);
}

.lib-coaches-card.wp-block-columns > .wp-block-column {
	flex-basis: unset !important;
	min-width: unset !important;
	max-width: none !important;
}

/* Alternating layout: even coach cards flip photo to right */

.lib-coaches-profile:nth-child(even) .lib-coaches-card.wp-block-columns {
	grid-template-columns: 1fr 320px !important;
}

.lib-coaches-profile:nth-child(even) .lib-coaches-photo-col {
	order: 2;
}

.lib-coaches-profile:nth-child(even) .lib-coaches-body-col {
	order: 1;
}

/* ── Photo column ─────────────────────────────────────────────── */

.lib-coaches-photo-col {
	position: relative;
	overflow: hidden;
	min-height: 400px;
}

.lib-coaches-photo {
	position: absolute !important;
	inset: 0;
	margin: 0 !important;
}

.lib-coaches-photo img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* ── Body column ──────────────────────────────────────────────── */

.lib-coaches-body-col {
	padding: 2.5rem !important;
	display: flex;
	flex-direction: column;
}

.lib-coaches-name {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(1.5rem, 3vw, 1.85rem) !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--primary) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em !important;
	margin-bottom: 0.35rem !important;
}

.lib-coaches-role {
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--teal-dark) !important;
	margin-bottom: 0.15rem !important;
}

.lib-coaches-location {
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	margin-bottom: 1.25rem !important;
}

/* Location pin via CSS pseudo-element */

.lib-coaches-location::before {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 5px;
	vertical-align: -2px;
	background-color: var(--wp--preset--color--mid-grey);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

.lib-coaches-quote {
	background: var(--wp--preset--color--teal-light) !important;
	border-left: 3px solid var(--wp--preset--color--teal);
	border-radius: 0 10px 10px 0;
	padding: 1rem 1.25rem !important;
	margin-bottom: 1.25rem !important;
	font-style: italic;
	font-size: 0.9rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.6 !important;
}

.lib-coaches-bio {
	font-size: 0.92rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.7 !important;
	margin-bottom: 1.25rem !important;
}

.lib-coaches-skills-label {
	font-size: 0.78rem !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--primary) !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	margin-bottom: 0.25rem !important;
}

.lib-coaches-skills-list {
	font-size: 0.85rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.6 !important;
	margin-bottom: 1.25rem !important;
}

/* ── LinkedIn link ────────────────────────────────────────────── */

.lib-coaches-linkedin {
	margin-top: auto;
}

.lib-coaches-linkedin a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 0.85rem !important;
	font-weight: 600;
	color: var(--wp--preset--color--teal) !important;
	text-decoration: none !important;
	transition: color 0.2s;
}

.lib-coaches-linkedin a:hover {
	color: var(--wp--preset--color--teal-dark) !important;
}

/* LinkedIn icon via CSS pseudo-element */

.lib-coaches-linkedin a::before {
	content: '';
	display: inline-block;
	width: 18px;
	height: 18px;
	background-color: var(--wp--preset--color--teal);
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14m-.5 15.5v-5.3a3.26 3.26 0 0 0-3.26-3.26c-.85 0-1.84.52-2.32 1.3v-1.11h-2.79v8.37h2.79v-4.93c0-.77.62-1.4 1.39-1.4a1.4 1.4 0 0 1 1.4 1.4v4.93h2.79M6.88 8.56a1.68 1.68 0 0 0 1.68-1.68c0-.93-.75-1.69-1.68-1.69a1.69 1.69 0 0 0-1.69 1.69c0 .93.76 1.68 1.69 1.68m1.39 9.94v-8.37H5.5v8.37h2.77z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h14m-.5 15.5v-5.3a3.26 3.26 0 0 0-3.26-3.26c-.85 0-1.84.52-2.32 1.3v-1.11h-2.79v8.37h2.79v-4.93c0-.77.62-1.4 1.39-1.4a1.4 1.4 0 0 1 1.4 1.4v4.93h2.79M6.88 8.56a1.68 1.68 0 0 0 1.68-1.68c0-.93-.75-1.69-1.68-1.69a1.69 1.69 0 0 0-1.69 1.69c0 .93.76 1.68 1.69 1.68m1.39 9.94v-8.37H5.5v8.37h2.77z'/%3E%3C/svg%3E");
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	transition: background-color 0.2s;
}

.lib-coaches-linkedin a:hover::before {
	background-color: var(--wp--preset--color--teal-dark);
}

/* ── Mobile: coach cards ──────────────────────────────────────── */

@media (max-width: 800px) {
	.lib-coaches-card.wp-block-columns {
		grid-template-columns: 1fr !important;
	}

	.lib-coaches-profile:nth-child(even) .lib-coaches-card.wp-block-columns {
		grid-template-columns: 1fr !important;
	}

	.lib-coaches-profile:nth-child(even) .lib-coaches-photo-col {
		order: 0;
	}

	.lib-coaches-profile:nth-child(even) .lib-coaches-body-col {
		order: 0;
	}

	.lib-coaches-photo-col {
		min-height: 280px;
	}

	.lib-coaches-body-col {
		padding: 2rem 1.5rem !important;
	}
}

/* ── How we work ──────────────────────────────────────────────── */

.lib-coaches-how {
	background: var(--wp--preset--color--white);
	border-top: 1px solid var(--border);
	border-bottom: 1px solid var(--border);
	padding: 5rem 1.5rem !important;
}

.lib-coaches-how-inner {
	max-width: 900px;
	margin: 0 auto;
}

.lib-coaches-how-header {
	margin-bottom: 3.5rem !important;
}

.lib-coaches-steps-grid.wp-block-columns {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 2rem !important;
}

.lib-coaches-steps-grid.wp-block-columns > .wp-block-column {
	flex-basis: unset !important;
	min-width: unset !important;
	max-width: none !important;
}

.lib-coaches-step {
	padding: 2rem 1.5rem;
	position: relative;
}

.lib-coaches-step-number {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: var(--wp--preset--color--teal-light) !important;
	color: var(--wp--preset--color--teal-dark) !important;
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: 1.25rem !important;
	font-weight: 700 !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1rem !important;
	line-height: 1 !important;
}

.lib-coaches-step-title {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: 1.1rem !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--primary) !important;
	margin-bottom: 0.5rem !important;
}

.lib-coaches-step-text {
	font-size: 0.9rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.6 !important;
}

/* Connector line between steps */

.lib-coaches-step:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 3.5rem;
	right: -1rem;
	width: 2rem;
	height: 2px;
	background: var(--border);
}

@media (max-width: 640px) {
	.lib-coaches-steps-grid.wp-block-columns {
		grid-template-columns: 1fr !important;
		gap: 1.5rem !important;
	}

	.lib-coaches-step:not(:last-child)::after {
		display: none;
	}
}

/* ── FAQ ──────────────────────────────────────────────────────── */

.lib-coaches-faq {
	padding: 5rem 1.5rem !important;
	background: var(--wp--preset--color--off-white);
}

.lib-coaches-faq-inner {
	max-width: 720px;
	margin: 0 auto;
}

.lib-coaches-faq .lib-coaches-section-heading {
	margin-bottom: 3rem !important;
}

.lib-coaches-faq .rank-math-faq-item {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--border);
	border-radius: 16px;
	margin-bottom: 0.75rem;
	overflow: hidden;
	transition: box-shadow 0.2s;
}

.lib-coaches-faq .rank-math-faq-item:hover {
	box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}

.lib-coaches-faq .rank-math-question {
	padding: 1.15rem 1.5rem;
	font-family: var(--wp--preset--font-family--body) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	color: var(--wp--preset--color--primary) !important;
	cursor: pointer;
	margin: 0 !important;
}

.lib-coaches-faq .rank-math-answer {
	padding: 0 1.5rem 1.25rem;
}

.lib-coaches-faq .rank-math-answer p {
	font-size: 0.92rem !important;
	color: var(--wp--preset--color--mid-grey) !important;
	line-height: 1.7 !important;
	margin-bottom: 0.75rem;
}

.lib-coaches-faq .rank-math-answer p:last-child {
	margin-bottom: 0;
}

/* ── CTA ──────────────────────────────────────────────────────── */

.lib-coaches-cta {
	background: var(--wp--preset--gradient--hero);
	padding: 5rem 1.5rem !important;
	text-align: center;
	color: var(--wp--preset--color--white);
	position: relative;
	overflow: hidden;
}

.lib-coaches-cta::before {
	content: '';
	position: absolute;
	top: -40%;
	right: -10%;
	width: 60%;
	height: 180%;
	background: radial-gradient(ellipse at 60% 40%, rgba(78,165,156,0.2) 0%, transparent 60%);
	pointer-events: none;
}

.lib-coaches-cta-inner {
	position: relative;
	z-index: 1;
	max-width: 600px;
	margin: 0 auto;
}

.lib-coaches-cta-heading {
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(1.5rem, 3.5vw, 2.2rem) !important;
	font-weight: 400 !important;
	line-height: 1.15 !important;
	letter-spacing: -0.02em !important;
	color: var(--wp--preset--color--white) !important;
	margin-bottom: 1rem !important;
}

.lib-coaches-cta-heading em {
	font-style: italic;
	color: var(--wp--preset--color--salmon);
}

.lib-coaches-cta-lead {
	font-size: 1rem !important;
	color: rgba(255,255,255,0.7) !important;
	line-height: 1.65 !important;
	margin-bottom: 2rem !important;
}

/* ── Kill default WP block gap between adjacent full-width sections ── */

.lib-coaches-hero + .lib-coaches-stats,
.lib-coaches-stats + .lib-coaches-profiles,
.lib-coaches-profiles + .lib-coaches-how,
.lib-coaches-how + .lib-coaches-faq,
.lib-coaches-faq + .lib-coaches-cta {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}
