.hero{background-image:linear-gradient(90deg,#050d1b 0%,#071426f5 34%,#08162bc7 52%,#07142655 72%,#07142612 100%),var(--hero-image);background-position:center center}
.hero:after{content:"";position:absolute;inset:auto 5vw 5% auto;width:min(26vw,410px);aspect-ratio:1;border:1px solid #b64cff36;border-radius:50%;box-shadow:0 0 90px #7a34ff18;pointer-events:none}
.hero .kicker{color:#ff896f;text-shadow:0 0 24px #ff5f7a44}
.hero h1{max-width:840px;font-size:clamp(2.35rem,4.8vw,4.35rem);line-height:1.22;letter-spacing:-.035em;text-shadow:0 5px 32px #0009}
.hero h1 .hero-line{display:block}
.hero h1 .hero-line:last-child{margin-top:.16em;font-size:.72em;letter-spacing:-.02em;color:#f6d9e7}
.hero .lead{max-width:650px;margin-top:25px;line-height:1.9}
.article h2{line-height:1.48;text-wrap:balance}
.article h3{line-height:1.55}
.article p{line-height:1.95}
.ent-intro{padding:38px 40px;border-radius:24px;background:linear-gradient(135deg,#111d37,#17132f);color:#fff;box-shadow:0 24px 64px #08132626}
.ent-intro .eyebrow,.section-label{margin:0 0 12px;color:#d94f79;font-size:.75rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.ent-intro h2{margin:0 0 16px;color:#fff;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.45}
.ent-intro p{margin:0;color:#dfe6f4;font-size:1.03rem;line-height:2}
.challenge-grid,.service-grid,.outcome-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}
.challenge,.service-card,.outcome{padding:24px;border:1px solid #dce5f2;border-radius:18px;background:#fff;box-shadow:0 12px 36px #162a4a0d}
.challenge b,.service-card h3,.outcome b{display:block;margin-bottom:8px;color:#0c1b34;font-size:1.04rem}
.challenge p,.service-card p,.outcome p{margin:0;color:#526078;font-size:.92rem;line-height:1.8}
.service-card .num{display:block;margin-bottom:16px;color:#d94f79;font:800 .76rem/1 system-ui;letter-spacing:.12em}
.ent-quote{margin:28px 0;padding:28px 32px;border-left:4px solid #d94f79;background:#f5f7fc;color:#10203a;font-size:clamp(1.15rem,2.2vw,1.55rem);font-weight:750;line-height:1.8}
.ent-list{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.ent-list li{position:relative;padding-left:28px;color:#34435b;line-height:1.8}
.ent-list li:before{content:"";position:absolute;left:2px;top:.72em;width:9px;height:9px;border:2px solid #d94f79;border-radius:50%}
.process{counter-reset:step;display:grid;gap:0;margin-top:26px;border-top:1px solid #dce5f2}
.process-step{counter-increment:step;display:grid;grid-template-columns:70px 1fr;gap:18px;padding:24px 0;border-bottom:1px solid #dce5f2}
.process-step:before{content:"0" counter(step);color:#d94f79;font:800 1rem/1.6 system-ui;letter-spacing:.08em}
.process-step h3{margin:0 0 7px;color:#10203a}.process-step p{margin:0;color:#526078;line-height:1.8}
.faq-item{padding:24px 0;border-bottom:1px solid #dce5f2}.faq-item h3{position:relative;margin:0 0 10px;padding-left:34px;color:#10203a}.faq-item h3:before{content:"Q";position:absolute;left:0;color:#d94f79}.faq-item p{margin:0;padding-left:34px;color:#526078}
.mini-cta{margin-top:30px;padding:30px;border-radius:20px;background:#f1f4fa;text-align:center}.mini-cta h3{margin-top:0}.mini-cta .btn{margin-top:10px}
.funnel-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-top:26px}.funnel-step{position:relative;padding:18px 14px;border:1px solid #dce5f2;border-radius:14px;background:#fff;text-align:center}.funnel-step:not(:last-child):after{content:"→";position:absolute;right:-11px;top:50%;z-index:2;transform:translateY(-50%);color:#d94f79;font-weight:900}.funnel-step small{display:block;margin-bottom:5px;color:#d94f79;font-weight:900;letter-spacing:.08em}.funnel-step b{color:#10203a;font-size:.9rem}.service-card{transition:transform .22s,box-shadow .22s}.service-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px #14284518}.btn:focus-visible,a:focus-visible{outline:3px solid #d94f79;outline-offset:4px}
@media(max-width:700px){.hero{background-position:68% center}.hero:after{width:56vw;right:-18vw;bottom:4%}.hero h1{font-size:clamp(2rem,10.4vw,3rem);line-height:1.25;letter-spacing:-.045em}.hero h1 .hero-line:last-child{margin-top:.28em;font-size:.68em;line-height:1.5}.hero .lead{font-size:.94rem;line-height:1.8}.ent-intro{padding:28px 22px}.challenge-grid,.service-grid,.outcome-grid{grid-template-columns:1fr}.challenge,.service-card,.outcome{padding:20px}.ent-quote{padding:22px 20px}.process-step{grid-template-columns:48px 1fr}.faq-item p{padding-left:0}.funnel-flow{grid-template-columns:1fr 1fr}.funnel-step:not(:last-child):after{display:none}}
