Autosave: 20260324-132631

This commit is contained in:
Flatlogic Bot 2026-03-24 13:26:32 +00:00
parent 80f65f0283
commit 7e7ce16c3a
4 changed files with 553 additions and 73 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

View File

@ -8,7 +8,7 @@ if (!defined('ABSPATH')) {
exit;
}
const COACHING_MVP_TEMPLATE_VERSION = '2.0.1';
const COACHING_MVP_TEMPLATE_VERSION = '2.0.3';
function coaching_mvp_service_catalog() {
return [
@ -568,7 +568,7 @@ body.coaching-mvp-active.page main > .wp-block-group.alignfull.has-global-paddin
display: flex;
flex-direction: column;
justify-content: center;
min-height: 100%;
min-height: 0;
}
.coach-hero .coach-photo-card {
background: rgba(255,255,255,.08);
@ -707,19 +707,19 @@ body.coaching-mvp-active.page main > .wp-block-group.alignfull.has-global-paddin
.coach-work-together-section {
position: relative;
overflow: hidden;
padding: clamp(1.6rem, 3vw, 2.4rem);
padding: clamp(1.45rem, 2.8vw, 2.15rem);
background:
radial-gradient(circle at 10% 16%, rgba(95,45,255,.08), transparent 24%),
radial-gradient(circle at 88% 18%, rgba(0,184,169,.08), transparent 22%),
linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,249,255,.96));
radial-gradient(circle at 8% 14%, rgba(95,45,255,.10), transparent 24%),
radial-gradient(circle at 90% 12%, rgba(0,184,169,.09), transparent 23%),
linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,247,255,.98));
border: 1px solid rgba(95,45,255,.08);
box-shadow: 0 24px 60px rgba(9,18,40,.07);
box-shadow: 0 24px 56px rgba(9,18,40,.07);
}
.coach-work-together-section::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(255,255,255,.12), transparent 38%, rgba(95,45,255,.03));
background: linear-gradient(135deg, rgba(255,255,255,.16), transparent 34%, rgba(95,45,255,.04));
pointer-events: none;
}
.coach-work-together-section > .wp-block-group__inner-container {
@ -728,89 +728,473 @@ body.coaching-mvp-active.page main > .wp-block-group.alignfull.has-global-paddin
}
.coach-work-together-section .wp-block-heading,
.coach-work-together-section > .wp-block-group__inner-container > p:not(.coach-badge) {
max-width: 46rem;
max-width: 44rem;
}
.coach-work-grid {
gap: 1.15rem;
margin-top: 1.45rem;
grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
gap: 1rem;
margin-top: 1.25rem;
grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
align-items: stretch;
}
.coach-work-grid .coach-system-card {
--work-accent: rgba(95,45,255,.16);
--work-accent: rgba(95,45,255,.20);
--work-accent-strong: #5f2dff;
position: relative;
isolation: isolate;
overflow: hidden;
min-height: 220px;
padding: 1.45rem 1.35rem 1.3rem;
min-height: 182px;
padding: 1.15rem 1.05rem 1.05rem;
border-radius: 22px;
background:
radial-gradient(circle at 100% 0%, rgba(255,255,255,.82), transparent 30%),
linear-gradient(180deg, rgba(255,255,255,.995), rgba(247,249,255,.97));
border: 1px solid rgba(95,45,255,.09);
box-shadow: 0 16px 36px rgba(9,18,40,.08);
linear-gradient(180deg, rgba(255,255,255,.985), rgba(245,248,255,.98));
border: 1px solid rgba(95,45,255,.10);
box-shadow: 0 14px 28px rgba(9,18,40,.07);
transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.coach-work-grid .coach-system-card::before {
content: "";
position: absolute;
inset: 0 auto auto 0;
width: 100%;
height: 4px;
background: linear-gradient(90deg, var(--work-accent), rgba(95,45,255,0));
inset: 0 0 auto 0;
height: 3px;
background: linear-gradient(90deg, var(--work-accent-strong), color-mix(in srgb, var(--work-accent-strong) 20%, transparent));
opacity: .92;
}
.coach-work-grid .coach-system-card::after {
content: "";
content: attr(data-icon);
position: absolute;
right: -2.2rem;
top: -2.2rem;
width: 7rem;
height: 7rem;
border-radius: 50%;
background: radial-gradient(circle, var(--work-accent), rgba(255,255,255,0) 68%);
opacity: .95;
right: .65rem;
top: .35rem;
font-size: 4.8rem;
line-height: 1;
font-weight: 700;
color: color-mix(in srgb, var(--work-accent-strong) 17%, white 83%);
opacity: .75;
transform: rotate(-8deg);
pointer-events: none;
z-index: 0;
}
.coach-work-grid .coach-system-card:nth-child(3n+2) {
--work-accent: rgba(0,184,169,.17);
.coach-work-grid .coach-system-card > * {
position: relative;
z-index: 1;
}
.coach-work-grid .coach-system-card:nth-child(3n+3) {
--work-accent: rgba(255,159,28,.20);
.coach-work-grid .coach-system-card:nth-child(1) {
--work-accent: rgba(95,45,255,.20);
--work-accent-strong: #5f2dff;
}
.coach-work-grid .coach-system-card:nth-child(2) {
--work-accent: rgba(0,184,169,.20);
--work-accent-strong: #0e9f95;
}
.coach-work-grid .coach-system-card:nth-child(3) {
--work-accent: rgba(255,159,28,.22);
--work-accent-strong: #ff9f1c;
}
.coach-work-grid .coach-system-card:nth-child(4) {
--work-accent: rgba(222,87,137,.20);
--work-accent-strong: #d25488;
}
.coach-work-grid .coach-system-card:nth-child(5) {
--work-accent: rgba(56,120,255,.19);
--work-accent-strong: #2f6df6;
}
.coach-work-grid .coach-system-card:nth-child(6) {
--work-accent: rgba(19,140,114,.20);
--work-accent-strong: #138c72;
}
.coach-work-grid .coach-system-card:nth-child(7) {
--work-accent: rgba(125,93,255,.20);
--work-accent-strong: #7d5dff;
}
.coach-work-grid .coach-system-card:hover {
transform: translateY(-5px);
border-color: rgba(95,45,255,.16);
box-shadow: 0 24px 52px rgba(9,18,40,.12);
transform: translateY(-4px);
border-color: color-mix(in srgb, var(--work-accent-strong) 28%, white 72%);
box-shadow: 0 18px 36px rgba(9,18,40,.10);
}
.coach-work-grid .coach-icon-dot {
width: 3rem;
height: 3rem;
border-radius: 18px;
margin-bottom: 1.15rem;
background: linear-gradient(135deg, color-mix(in srgb, var(--work-accent) 88%, white 12%), rgba(255,255,255,.92));
border: 1px solid rgba(255,255,255,.75);
box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 14px 24px rgba(9,18,40,.08);
font-size: .92rem;
letter-spacing: .04em;
width: 2.5rem;
height: 2.5rem;
border-radius: 14px;
margin-bottom: .82rem;
background: linear-gradient(135deg, color-mix(in srgb, var(--work-accent-strong) 90%, white 10%), rgba(255,255,255,.96));
border: 1px solid rgba(255,255,255,.78);
box-shadow: inset 0 1px 0 rgba(255,255,255,.76), 0 10px 18px rgba(9,18,40,.07);
font-size: .81rem;
letter-spacing: .06em;
}
.coach-work-grid .coach-system-card h3 {
max-width: 12ch;
margin-top: 0;
margin-bottom: .72rem;
font-size: 1.14rem;
line-height: 1.28;
color: #1b1448;
margin-bottom: .48rem;
font-size: 1.06rem;
line-height: 1.2;
letter-spacing: -.02em;
color: #15113d;
}
.coach-work-grid .coach-system-card p {
max-width: 30ch;
margin-bottom: 0;
font-size: .98rem;
line-height: 1.65;
color: rgba(39,52,74,.84);
font-size: .92rem;
line-height: 1.5;
color: rgba(32,45,68,.82);
}
@media (max-width: 781px) {
.coach-work-together-section {
padding: 1.35rem;
padding: 1.2rem;
}
.coach-work-grid {
grid-template-columns: 1fr;
}
.coach-work-grid .coach-system-card {
min-height: 0;
padding: 1.05rem 1rem 1rem;
}
.coach-work-grid .coach-system-card::after {
font-size: 4.1rem;
right: .5rem;
}
}
.coach-ways-section {
position: relative;
overflow: hidden;
padding: clamp(1.55rem, 3.3vw, 2.35rem);
background:
radial-gradient(circle at 10% 14%, rgba(255,255,255,.08), transparent 16%),
radial-gradient(circle at 88% 18%, rgba(255,159,28,.26), transparent 20%),
radial-gradient(circle at 18% 84%, rgba(0,184,169,.20), transparent 22%),
radial-gradient(circle at 82% 76%, rgba(120,92,255,.24), transparent 26%),
linear-gradient(135deg, #081126 0%, #141f4c 34%, #251a6f 68%, #5f2dff 100%);
border: 1px solid rgba(255,255,255,.08);
box-shadow: 0 32px 72px rgba(6,13,31,.24);
}
.coach-ways-section::after {
content: "";
position: absolute;
inset: 0;
border-radius: inherit;
background:
linear-gradient(120deg, rgba(255,255,255,.07), transparent 30%, transparent 70%, rgba(255,255,255,.04)),
repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 92px),
repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 92px);
opacity: .42;
pointer-events: none;
}
.coach-ways-section > .wp-block-group__inner-container {
position: relative;
z-index: 1;
}
.coach-ways-section .coach-badge {
background: rgba(255,255,255,.12);
color: #fff;
border-color: rgba(255,255,255,.16);
box-shadow: 0 12px 24px rgba(6,13,31,.16);
}
.coach-ways-section .wp-block-heading {
max-width: 13ch;
color: #fff;
}
.coach-ways-stage {
position: relative;
overflow: hidden;
margin-top: 1.35rem;
padding: clamp(1.15rem, 2.2vw, 1.55rem);
border-radius: 30px;
background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.05));
border: 1px solid rgba(255,255,255,.14);
box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 26px 56px rgba(4,10,26,.24);
backdrop-filter: blur(18px);
isolation: isolate;
}
.coach-ways-stage::before {
content: "";
position: absolute;
inset: 0;
border-radius: inherit;
background: linear-gradient(135deg, rgba(255,255,255,.08), transparent 26%, rgba(255,159,28,.08) 62%, rgba(0,184,169,.09));
pointer-events: none;
}
.coach-ways-stage .coach-ways-ambient[data-depth] {
will-change: transform;
transform: translate3d(0, 0, 0);
}
.coach-ways-grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: minmax(240px, .82fr) minmax(0, 1.45fr);
gap: 1.1rem;
align-items: start;
}
.coach-ways-copy {
position: relative;
align-self: start;
padding: 1.2rem 1.15rem;
border-radius: 24px;
background: linear-gradient(180deg, rgba(9,16,38,.42), rgba(9,16,38,.20));
border: 1px solid rgba(255,255,255,.12);
box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.coach-ways-kicker {
display: inline-block;
margin-bottom: .82rem;
color: rgba(255,255,255,.72);
font-size: .76rem;
font-weight: 800;
letter-spacing: .14em;
text-transform: uppercase;
}
.coach-ways-copy p {
margin: 0 0 1rem;
max-width: 31ch;
color: rgba(255,255,255,.86);
}
.coach-ways-signal-bar {
display: flex;
flex-wrap: wrap;
gap: .55rem;
}
.coach-ways-signal-bar span {
display: inline-flex;
align-items: center;
padding: .44rem .7rem;
border-radius: 999px;
background: rgba(255,255,255,.10);
border: 1px solid rgba(255,255,255,.12);
color: rgba(255,255,255,.90);
font-size: .76rem;
font-weight: 700;
letter-spacing: .02em;
}
.coach-ways-cards {
position: relative;
z-index: 1;
min-width: 0;
align-self: start;
}
.coach-ways-cards .coach-card-grid {
margin: 0;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1rem;
align-items: stretch;
grid-auto-rows: 1fr;
}
.coach-ways-section .coach-service-card {
--ways-accent: #9b7bff;
position: relative;
display: flex;
flex-direction: column;
align-self: stretch;
overflow: hidden;
padding: 1.1rem 1.05rem 1rem;
min-height: 0;
height: 100%;
background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
border: 1px solid rgba(255,255,255,.14);
box-shadow: 0 18px 38px rgba(4,10,26,.22);
backdrop-filter: blur(16px);
}
.coach-ways-section .coach-service-card::before {
content: "";
position: absolute;
inset: 0 0 auto 0;
height: 4px;
background: linear-gradient(90deg, var(--ways-accent), color-mix(in srgb, var(--ways-accent) 18%, transparent));
}
.coach-ways-section .coach-service-card::after {
content: "";
position: absolute;
right: .82rem;
top: .42rem;
font-size: 4rem;
line-height: 1;
font-weight: 700;
color: color-mix(in srgb, var(--ways-accent) 42%, white 58%);
opacity: .24;
transform: rotate(-10deg);
pointer-events: none;
}
.coach-ways-section .coach-service-card:nth-child(1) {
--ways-accent: #b08dff;
}
.coach-ways-section .coach-service-card:nth-child(1)::after {
content: "";
}
.coach-ways-section .coach-service-card:nth-child(2) {
--ways-accent: #23d3c0;
}
.coach-ways-section .coach-service-card:nth-child(2)::after {
content: "";
}
.coach-ways-section .coach-service-card:nth-child(3) {
--ways-accent: #ffb347;
}
.coach-ways-section .coach-service-card:nth-child(3)::after {
content: "";
}
.coach-ways-section .coach-service-card:hover {
transform: translateY(-4px);
border-color: color-mix(in srgb, var(--ways-accent) 44%, white 56%);
box-shadow: 0 26px 50px rgba(4,10,26,.26);
}
.coach-ways-section .coach-service-card > *,
.coach-ways-section .coach-mini-card > *,
.coach-ways-copy > * {
position: relative;
z-index: 1;
}
.coach-ways-section .coach-service-card h3,
.coach-ways-section .coach-service-card p,
.coach-ways-section .coach-service-card li,
.coach-ways-section .coach-mini-card h3,
.coach-ways-section .coach-mini-card p {
color: #fff;
}
.coach-ways-section .coach-service-card h3 {
margin-bottom: .5rem;
max-width: 10ch;
font-size: 1.08rem;
}
.coach-ways-section .coach-service-card p {
color: rgba(255,255,255,.84);
}
.coach-ways-section .coach-service-card .coach-icon-dot {
width: 2.6rem;
height: 2.6rem;
margin-bottom: .85rem;
border-radius: 14px;
background: linear-gradient(135deg, color-mix(in srgb, var(--ways-accent) 82%, white 18%), rgba(255,255,255,.96));
color: #101634;
border: 1px solid rgba(255,255,255,.78);
box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 12px 22px rgba(4,10,26,.16);
}
.coach-ways-section .coach-service-card ul {
list-style: none;
margin: auto 0 0;
padding: .95rem 0 0;
display: flex;
flex-wrap: wrap;
gap: .48rem;
}
.coach-ways-section .coach-service-card li {
margin: 0;
padding: .42rem .66rem;
border-radius: 999px;
background: rgba(255,255,255,.10);
border: 1px solid rgba(255,255,255,.12);
color: rgba(255,255,255,.92);
font-size: .77rem;
line-height: 1.25;
}
.coach-ways-mini-grid {
position: relative;
z-index: 1;
margin-top: clamp(1.95rem, 3.4vw, 2.45rem);
padding: clamp(1.18rem, 2.2vw, 1.45rem);
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: .9rem;
border-top: 1px solid rgba(255,255,255,.14);
border: 1px solid rgba(255,255,255,.10);
border-radius: 24px;
background: linear-gradient(180deg, rgba(8,15,35,.16), rgba(255,255,255,.04));
box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.coach-ways-mini-grid .coach-mini-card {
position: relative;
overflow: hidden;
padding: 1.02rem 1rem 1rem;
background: linear-gradient(180deg, rgba(9,16,38,.34), rgba(255,255,255,.07));
border: 1px solid rgba(255,255,255,.12);
box-shadow: 0 16px 34px rgba(4,10,26,.18);
}
.coach-ways-mini-grid .coach-mini-card::before {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(255,255,255,.06), transparent 55%);
pointer-events: none;
}
.coach-ways-mini-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 2.2rem;
height: 2.2rem;
margin-bottom: .76rem;
border-radius: 14px;
background: linear-gradient(135deg, rgba(255,255,255,.26), rgba(255,255,255,.10));
border: 1px solid rgba(255,255,255,.18);
box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 10px 22px rgba(4,10,26,.14);
color: #fff;
font-size: 1rem;
}
.coach-ways-mini-grid .coach-mini-card p {
color: rgba(255,255,255,.80);
}
.coach-ways-ambient {
position: absolute;
border-radius: 999px;
pointer-events: none;
z-index: 0;
}
.coach-ways-ambient-a {
top: -60px;
right: -58px;
width: 260px;
height: 260px;
background: radial-gradient(circle, rgba(255,159,28,.40), transparent 66%);
filter: blur(8px);
}
.coach-ways-ambient-b {
left: -72px;
bottom: -40px;
width: 240px;
height: 240px;
background: radial-gradient(circle, rgba(0,184,169,.30), transparent 68%);
filter: blur(10px);
}
.coach-ways-ambient-c {
left: 34%;
top: 28%;
width: 420px;
height: 420px;
background: radial-gradient(circle, rgba(255,255,255,.12), transparent 60%);
mix-blend-mode: screen;
opacity: .72;
}
@media (max-width: 960px) {
.coach-ways-grid {
grid-template-columns: 1fr;
}
.coach-ways-cards .coach-card-grid,
.coach-ways-mini-grid {
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}
.coach-ways-copy p {
max-width: 44ch;
}
}
@media (max-width: 781px) {
.coach-ways-section {
padding: 1.25rem;
}
.coach-ways-section .wp-block-heading {
max-width: 11ch;
}
.coach-ways-stage {
padding: 1rem;
border-radius: 24px;
}
.coach-ways-cards .coach-card-grid,
.coach-ways-mini-grid {
grid-template-columns: 1fr;
}
.coach-ways-section .coach-service-card,
.coach-ways-mini-grid .coach-mini-card,
.coach-ways-copy {
padding: 1rem;
}
.coach-ways-section .coach-service-card::after {
font-size: 3.3rem;
right: .7rem;
}
}
.coach-form-wrap {
@ -982,6 +1366,80 @@ CSS;
}
add_action('wp_enqueue_scripts', 'coaching_mvp_styles');
function coaching_mvp_scripts() {
if (is_admin()) {
return;
}
$js = <<<'JS'
(function () {
if (window.matchMedia && window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
return;
}
const roots = document.querySelectorAll('[data-parallax-root]');
if (!roots.length) {
return;
}
const clamp = (value, min, max) => Math.max(min, Math.min(max, value));
roots.forEach((root) => {
const layers = Array.from(root.querySelectorAll('.coach-ways-ambient[data-depth]'));
if (!layers.length) {
return;
}
const state = { mx: 0, my: 0, ticking: false };
const render = () => {
state.ticking = false;
const rect = root.getBoundingClientRect();
const vh = window.innerHeight || 1;
const progress = clamp((vh * 0.58 - (rect.top + rect.height * 0.5)) / vh, -1.2, 1.2);
layers.forEach((layer) => {
const depth = parseFloat(layer.getAttribute('data-depth') || '0');
const moveX = state.mx * depth * 28;
const moveY = progress * depth * -88 + state.my * depth * 18;
layer.style.transform = `translate3d(${moveX.toFixed(2)}px, ${moveY.toFixed(2)}px, 0)`;
});
};
const queue = () => {
if (state.ticking) {
return;
}
state.ticking = true;
window.requestAnimationFrame(render);
};
root.addEventListener('pointermove', (event) => {
const rect = root.getBoundingClientRect();
state.mx = clamp((event.clientX - rect.left) / rect.width - 0.5, -0.5, 0.5);
state.my = clamp((event.clientY - rect.top) / rect.height - 0.5, -0.5, 0.5);
queue();
});
root.addEventListener('pointerleave', () => {
state.mx = 0;
state.my = 0;
queue();
});
window.addEventListener('scroll', queue, { passive: true });
window.addEventListener('resize', queue);
queue();
});
})();
JS;
wp_register_script('coaching-mvp-effects', false, [], null, true);
wp_enqueue_script('coaching-mvp-effects');
wp_add_inline_script('coaching-mvp-effects', $js);
}
add_action('wp_enqueue_scripts', 'coaching_mvp_scripts');
function coaching_mvp_home_content() {
return <<<'HTML'
<!-- wp:group {"className":"coach-home-page coach-shell","layout":{"type":"constrained"}} -->
@ -1059,34 +1517,54 @@ function coaching_mvp_home_content() {
<!-- /wp:paragraph -->
<!-- wp:html -->
<div class="coach-system-grid coach-work-grid">
<article class="coach-system-card"><span class="coach-icon-dot">01</span><h3>Leadership clarity</h3><p>Step back from the noise, identify what matters most, and lead with stronger intention.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">02</span><h3>Decision support</h3><p>Work through complex choices with a calm, structured process that reduces second-guessing.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">03</span><h3>Career transitions</h3><p>Navigate promotions, role changes, pivots, and new responsibilities with more confidence.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">04</span><h3>Communication & presence</h3><p>Strengthen how you show up in conversations, meetings, feedback, and high-stakes moments.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">05</span><h3>Team dynamics</h3><p>Untangle friction, improve collaboration, and lead people with more steadiness and care.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">06</span><h3>Burnout prevention</h3><p>Build more sustainable ways of working without losing ambition, standards, or momentum.</p></article>
<article class="coach-system-card"><span class="coach-icon-dot">07</span><h3>Ongoing support</h3><p>Create a consistent space for reflection, accountability, and practical growth over time.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">01</span><h3>Leadership clarity</h3><p>Step back from the noise, identify what matters most, and lead with stronger intention.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">02</span><h3>Decision support</h3><p>Work through complex choices with a calm, structured process that reduces second-guessing.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">03</span><h3>Career transitions</h3><p>Navigate promotions, role changes, pivots, and new responsibilities with more confidence.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">04</span><h3>Communication &amp; presence</h3><p>Strengthen how you show up in conversations, meetings, feedback, and high-stakes moments.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">05</span><h3>Team dynamics</h3><p>Untangle friction, improve collaboration, and lead people with more steadiness and care.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">06</span><h3>Burnout prevention</h3><p>Build more sustainable ways of working without losing ambition, standards, or momentum.</p></article>
<article class="coach-system-card" data-icon=""><span class="coach-icon-dot">07</span><h3>Ongoing support</h3><p>Create a consistent space for reflection, accountability, and practical growth over time.</p></article>
</div>
<!-- /wp:html -->
</div></div>
<!-- /wp:group -->
<!-- wp:group {"className":"coach-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge"} -->
<p class="coach-badge">Ways to work together</p>
<!-- wp:group {"className":"coach-section coach-ways-section","layout":{"type":"constrained"}} -->
<div class="wp-block-group coach-section coach-ways-section"><div class="wp-block-group__inner-container">
<!-- wp:paragraph {"className":"coach-badge dark"} -->
<p class="coach-badge dark">Ways to work together</p>
<!-- /wp:paragraph -->
<!-- wp:heading -->
<h2 class="wp-block-heading">Choose the level of support that fits this season</h2>
<!-- /wp:heading -->
<!-- wp:html -->
<div class="coach-ways-stage" data-parallax-root>
<div class="coach-ways-ambient coach-ways-ambient-a" aria-hidden="true" data-depth="0.12"></div>
<div class="coach-ways-ambient coach-ways-ambient-b" aria-hidden="true" data-depth="0.18"></div>
<div class="coach-ways-ambient coach-ways-ambient-c" aria-hidden="true" data-depth="0.08"></div>
<div class="coach-ways-grid">
<div class="coach-ways-copy">
<span class="coach-ways-kicker">Choose light entry, focused depth, or steady ongoing support</span>
<p>Instead of one generic offer, this section helps visitors feel the difference between exploration, quick traction, and a longer-term coaching rhythm.</p>
<div class="coach-ways-signal-bar">
<span>Explore fit</span>
<span>Get unstuck</span>
<span>Stay supported</span>
</div>
</div>
<div class="coach-ways-cards">
<!-- /wp:html -->
<!-- wp:shortcode -->
[coaching_services limit="3"]
<!-- /wp:shortcode -->
<!-- wp:html -->
<div class="coach-mini-grid coach-section">
<div class="coach-mini-card"><h3>For first conversations</h3><p>Start with a low-pressure call if you want to explore fit, goals, and what kind of support would help most.</p></div>
<div class="coach-mini-card"><h3>For focused momentum</h3><p>Book a deeper session when you need clarity around a decision, transition, or leadership challenge.</p></div>
<div class="coach-mini-card"><h3>For ongoing support</h3><p>Choose a longer-term rhythm if you want reflection, accountability, and steady progress over time.</p></div>
</div>
</div>
<div class="coach-mini-grid coach-ways-mini-grid">
<div class="coach-mini-card"><span class="coach-ways-mini-icon"></span><h3>For first conversations</h3><p>Start with a low-pressure call if you want to explore fit, goals, and what kind of support would help most.</p></div>
<div class="coach-mini-card"><span class="coach-ways-mini-icon"></span><h3>For focused momentum</h3><p>Book a deeper session when you need clarity around a decision, transition, or leadership challenge.</p></div>
<div class="coach-mini-card"><span class="coach-ways-mini-icon"></span><h3>For ongoing support</h3><p>Choose a longer-term rhythm if you want reflection, accountability, and steady progress over time.</p></div>
</div>
</div>
<!-- /wp:html -->
</div></div>
@ -1363,7 +1841,7 @@ function coaching_mvp_template_pages() {
];
}
function coaching_mvp_upsert_page($slug, $definition) {
function coaching_mvp_upsert_page($slug, $definition, $overwrite_existing = false) {
$page = get_page_by_path($slug, OBJECT, 'page');
$postarr = [
'post_title' => $definition['title'],
@ -1374,8 +1852,10 @@ function coaching_mvp_upsert_page($slug, $definition) {
];
if ($page) {
$postarr['ID'] = $page->ID;
wp_update_post($postarr);
if ($overwrite_existing) {
$postarr['ID'] = $page->ID;
wp_update_post($postarr);
}
return (int) $page->ID;
}