/* Coaches page only: every rule scoped under body.cx */
.cx{--cxg:linear-gradient(120deg,#f4e9ff 0%,#c084fc 40%,#a020f0 70%,#e9d5ff 100%)}
.cx .bolt-cv{opacity:.55}
.cx-hero{position:relative;padding:118px 0 56px;overflow:hidden}
.cx-glow{position:absolute;inset:-20% -10% auto;height:120%;background:radial-gradient(60% 50% at 78% 40%,rgba(160,32,240,.32),transparent 70%),radial-gradient(40% 40% at 10% 10%,rgba(217,70,239,.14),transparent 70%);pointer-events:none}
.cx-hgrid{position:relative;display:grid;gap:34px;align-items:center}
.cx-kicker{display:inline-flex;align-items:center;gap:10px;font:700 12px/1 var(--d);letter-spacing:.18em;text-transform:uppercase;color:#e9d5ff;padding:9px 14px;border-radius:999px;border:1px solid rgba(192,132,252,.45);background:rgba(160,32,240,.12)}
.cx-kicker span{width:8px;height:8px;border-radius:50%;background:#d946ef;box-shadow:0 0 12px #d946ef}
.cx-hero h1{font-size:38px;line-height:1.08;margin:20px 0 18px;text-align:left}
.cx-hero h1 em{font-size:1.15em;text-shadow:0 0 40px rgba(192,38,255,.35)}
.cx-lead{font-size:17px;line-height:1.6;color:var(--soft);max-width:34em}
.cx-ctas{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 18px}
.cx-btn{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:16px;padding:16px 26px;border-radius:14px;text-decoration:none;color:#14051f;background:var(--cxg);box-shadow:0 14px 40px -12px rgba(192,38,255,.9),inset 0 1px 0 rgba(255,255,255,.7)}
.cx-btn.ghost{color:#f6f3fa;background:transparent;border:1.5px solid transparent;background:linear-gradient(#0a0710,#0a0710) padding-box,linear-gradient(120deg,#fff,#9c97a6,#c084fc) border-box;box-shadow:none}
.cx-btn.xl{font-size:17px;padding:18px 28px;max-width:100%}@media(max-width:420px){.cx-btn.xl{font-size:14px;padding:16px 18px}}
.cx-ticks{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:0;margin:0;font-size:14px;color:#e4dcef}
.cx-ticks li:before{content:"✓";color:#d946ef;margin-right:8px;font-weight:800}
.cx-art{position:relative;margin:0;border-radius:24px;padding:2px;background:linear-gradient(140deg,#fff,#8b8496 35%,#c084fc 65%,#a020f0);box-shadow:0 30px 80px -30px rgba(160,32,240,.8)}
.cx-art img{display:block;width:100%;height:auto;border-radius:22px}
.cx-art figcaption{position:absolute;left:16px;bottom:16px;font-size:13px;color:#f6f3fa;padding:8px 12px;border-radius:10px;background:rgba(10,7,16,.72);border:1px solid rgba(192,132,252,.4);backdrop-filter:blur(6px)}
.cx-art figcaption b{color:#e9d5ff}
.cx-rule{display:flex;justify-content:center;padding:8px 0}
.cx-rule i{display:block;width:min(560px,70%);height:2px;background:linear-gradient(90deg,transparent,#c084fc,#fff,#c084fc,transparent);box-shadow:0 0 18px rgba(192,38,255,.8);clip-path:polygon(0 50%,50% 0,100% 50%,50% 100%)}
.cx-sec{position:relative;padding:72px 0}
.cx-head{text-align:center;margin:0 auto 44px;max-width:760px}
.cx-eyebrow{font:700 12px/1 var(--d);letter-spacing:.2em;text-transform:uppercase;background:var(--cxg);-webkit-background-clip:text;background-clip:text;color:transparent;margin:0 0 14px}
.cx-head h2,.cx-casetext h2,.cx-close h2{font-size:32px;line-height:1.12;margin:0}
.cx-head h2 em,.cx-casetext h2 em,.cx-close h2 em{font-size:1.1em}
.cx-rows{position:relative;display:grid;gap:56px}
.cx-rows:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%);background:linear-gradient(#c084fc00,#c084fc,#a020f0,#c084fc00);display:none}
.cx-row{display:grid;gap:22px;align-items:center}
.cx-shot{margin:0;border-radius:20px;overflow:hidden;background:#0c0814;border:1px solid rgba(192,132,252,.3);box-shadow:0 24px 60px -30px rgba(160,32,240,.7)}
.cx-shot img{display:block;width:100%;height:auto}
.cx-shot.tall{max-width:260px;justify-self:center;border-radius:30px;border:2px solid #b9b3c4}
.cx-copy{text-align:left}
.cx-step{display:inline-block;font:700 13px/1 var(--d);color:#14051f;background:var(--cxg);padding:8px 12px;border-radius:8px;margin-bottom:14px}
.cx-copy h3{font-size:22px;margin:0 0 10px;color:#fff}
.cx-copy p{color:var(--soft);line-height:1.65;margin:0}
.cx-tag{display:inline-block;vertical-align:middle;font:700 10px/1 var(--d);letter-spacing:.12em;text-transform:uppercase;color:#e9d5ff;border:1px solid #c084fc;border-radius:6px;padding:5px 7px;margin-left:6px}
.cx-case{position:relative;padding:80px 0;background:linear-gradient(160deg,rgba(160,32,240,.22),rgba(10,7,16,.2) 45%,rgba(192,132,252,.16));border-top:1px solid rgba(192,132,252,.35);border-bottom:1px solid rgba(192,132,252,.35)}
.cx-casegrid{display:grid;gap:32px;margin-bottom:36px}
.cx-casetext p{color:var(--soft);line-height:1.65}
.cx-link{color:#e9d5ff;font-weight:700}
.cx-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0}
.cx-stats div{padding:20px 16px;border-radius:16px;background:rgba(10,7,16,.6);border:1px solid rgba(192,132,252,.35);text-align:center}
.cx-stats dt{font:800 30px/1.1 var(--d);background:linear-gradient(180deg,#fff,#d8d3e0 45%,#9c97a6 55%,#fff);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 14px rgba(192,38,255,.55))}
.cx-stats dd{margin:8px 0 0;font-size:14px;color:#e4dcef}
.cx-browser{margin:0;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.25);box-shadow:0 30px 80px -30px rgba(160,32,240,.9)}
.cx-browser .bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#120c1c}
.cx-browser .bar i{width:10px;height:10px;border-radius:50%;background:#c084fc}
.cx-browser .bar span{margin-left:10px;font-size:13px;color:#e4dcef}
.cx-browser img{display:block;width:100%;height:auto}
.cx-note{margin:16px 0 0;font-size:13px;color:#d8cfe6;text-align:center}
.cx-vs{display:grid;gap:16px;max-width:920px;margin:0 auto}
.cx-col{padding:26px 24px;border-radius:20px}
.cx-col h3{font-size:20px;margin:0 0 16px}
.cx-col ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.cx-col li{padding-left:30px;position:relative;line-height:1.5}
.cx-col.no{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.14)}
.cx-col.no h3,.cx-col.no li{color:#e4dcef}
.cx-col.no li:before{content:"✕";position:absolute;left:0;color:#f0abfc}
.cx-col.yes{background:linear-gradient(#0d0816,#0d0816) padding-box,linear-gradient(140deg,#fff,#c084fc,#a020f0) border-box;border:2px solid transparent;box-shadow:0 20px 60px -25px rgba(192,38,255,.9)}
.cx-col.yes h3{color:#fff}.cx-col.yes li{color:#f6f3fa}
.cx-col.yes li:before{content:"✓";position:absolute;left:0;color:#d946ef;font-weight:800}
.cx-path{list-style:none;padding:0;margin:0 auto;display:grid;gap:16px;max-width:1000px;counter-reset:none}
.cx-path li{position:relative;padding:24px 22px 22px 80px;border-radius:18px;background:rgba(160,32,240,.08);border:1px solid rgba(192,132,252,.28)}
.cx-path b{position:absolute;left:20px;top:22px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font:800 18px var(--d);color:#14051f;background:var(--cxg);box-shadow:0 0 22px rgba(192,38,255,.6)}
.cx-path h3{font-size:18px;margin:0 0 8px;color:#fff}.cx-path p{margin:0;color:var(--soft);line-height:1.6}
.cx-path a{color:#e9d5ff}
.cx-faq{max-width:820px}
.cx-faq details{border-bottom:1px solid rgba(192,132,252,.3);padding:18px 4px}
.cx-faq summary{cursor:pointer;font-weight:700;font-size:17px;color:#fff;list-style:none;display:flex;justify-content:space-between;gap:16px}
.cx-faq summary::-webkit-details-marker{display:none}
.cx-faq summary:after{content:"+";color:#d946ef;font-size:22px;line-height:1}
.cx-faq details[open] summary:after{content:"–"}
.cx-faq p{color:#e4dcef;line-height:1.65;margin:12px 0 0}
.cx-close{padding:40px 0 90px}
.cx-panel{position:relative;overflow:hidden;text-align:center;padding:56px 22px;border-radius:28px;background:radial-gradient(80% 70% at 50% 0%,rgba(192,38,255,.38),transparent 70%),#0b0712;border:2px solid transparent;background-clip:padding-box;box-shadow:0 0 0 1px rgba(255,255,255,.3),0 40px 100px -30px rgba(160,32,240,.9)}
.cx-mark{width:96px;height:96px;margin:0 auto 18px;display:block;mix-blend-mode:screen}
.cx-close h2{max-width:14em;margin:0 auto 14px}
.cx-close .cx-lead{margin:0 auto 26px}
.cx-close .socrow{justify-content:center;margin-top:22px}
@media(min-width:760px){
.cx-hero{padding:140px 0 70px}
.cx-hgrid{grid-template-columns:1.05fr 1fr;gap:44px}
.cx-hero h1{font-size:40px}.cx-shot.tall{max-width:230px}
.cx-head h2,.cx-casetext h2,.cx-close h2{font-size:40px}
.cx-row{grid-template-columns:1fr 1fr;gap:44px}
.cx-row.flip .cx-shot{order:2}
.cx-casegrid{grid-template-columns:1fr 1fr;align-items:center}
.cx-vs{grid-template-columns:1fr 1fr}
.cx-path{grid-template-columns:1fr 1fr}
.cx-panel{padding:72px 40px}
}
@media(min-width:1100px){.cx-hero h1{font-size:58px}.cx-path{grid-template-columns:repeat(4,1fr)}.cx-path li{padding:76px 22px 24px}.cx-path b{top:22px}}
.cx-art{isolation:isolate}
.cx-art .cx-people{position:relative;z-index:1}
.cx-logo{position:absolute;z-index:2;left:4%;top:9%;width:32%;aspect-ratio:1;pointer-events:none;mix-blend-mode:screen;opacity:.8}
.cx-logo:before{content:"";position:absolute;inset:-14%;border-radius:50%;background:radial-gradient(circle,rgba(192,38,255,.35),transparent 62%)}
.cx-logo img{position:relative;display:block;width:100%;height:100%;object-fit:contain}
.cx-logo:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.75) 50%,transparent 60%);background-size:300% 100%;background-position:120% 0;-webkit-mask:url(/assets/ol-logo-400.webp) center/contain no-repeat;mask:url(/assets/ol-logo-400.webp) center/contain no-repeat;-webkit-mask-mode:luminance;mask-mode:luminance;animation:cxsweep 6s ease-in-out infinite}
@keyframes cxsweep{0%,60%{background-position:120% 0}100%{background-position:-20% 0}}
@media(prefers-reduced-motion:reduce){.cx-logo:after{animation:none;opacity:0}}
.cx-art figcaption{z-index:3}
