/* Marketing — "Momentum" (violet-magenta lean, kinetic) */
body{ background:radial-gradient(80% 50% at 50% 0%,rgba(165,84,207,.16),transparent 60%) var(--ink-0); }

/* Hero */
.mk-hero{ position:relative; height:100svh; min-height:700px; overflow:hidden; }
.kinetic{ position:absolute; inset:0; z-index:0; display:flex; flex-direction:column; justify-content:center; gap:2vh; pointer-events:none; opacity:.9; }
.k-row{ --gap:4vw; }
.k-row span{ font-family:var(--f-display); font-weight:600; font-size:clamp(5rem,15vw,16rem); line-height:.9; letter-spacing:-.05em; color:rgba(243,241,236,.05); }
.k-row span.o{ color:transparent; -webkit-text-stroke:1px rgba(239,201,255,.18); font-family:var(--f-serif); font-style:italic; font-weight:400; }
.mk-hero-copy{ position:relative; z-index:3; padding-top:calc(var(--nav-h) + 26px); }
.mk-title{ font-size:clamp(2.6rem,min(7vw,11.5svh),8rem); margin-top:2vh; }
.mk-title > span{ display:block; }
.mk-title > span:last-child{ padding-left:8vw; }
.mk-stage-wrap{ position:absolute; inset:0; z-index:2; pointer-events:none; }
.mk-stage{ position:absolute; inset:0; clip-path:inset(52% 30% 8% 30% round 26px); pointer-events:auto; }
.mk-stage img{ width:100%; height:100%; object-fit:cover; transform:scale(1.25); }
.mk-stage.grade::before{ background:linear-gradient(180deg,rgba(5,5,9,.2),rgba(5,5,9,.45)); }
.mk-hero-foot{ position:absolute; left:0; right:0; bottom:96px; z-index:3; display:flex; justify-content:space-between; align-items:flex-end; gap:30px; pointer-events:none; }
.mk-hero-foot > *{ pointer-events:auto; }
.mk-hero-foot .lead{ max-width:min(30ch, calc(30vw - var(--gutter) - 28px)); font-size:1.02rem; }
.mk-ctas{ display:flex; flex-direction:column; align-items:flex-end; gap:12px; }
@media (max-width:900px){
  .mk-stage{ clip-path:inset(42% 6% 38% 6% round 20px); }
  .mk-hero-foot{ flex-direction:column; align-items:flex-start; bottom:40px; }
  .mk-hero-foot .lead{ max-width:none; }
  .mk-ctas{ flex-direction:row; flex-wrap:wrap; align-items:center; }
  .mk-title > span:last-child{ padding-left:0; }
}

/* Sequence */
.mk-seq-stage{ position:relative; height:100vh; overflow:hidden; display:grid; place-items:center; }
.mk-seq-glow{ position:absolute; width:80vmax; height:80vmax; border-radius:50%; background:radial-gradient(circle,rgba(165,84,207,.35),rgba(42,143,224,.1) 40%,transparent 65%); }
.mk-l{ text-align:center; font-size:clamp(2.4rem,min(8.4vw,14svh),9rem); padding:0 var(--gutter); }
.mk-l .serif{ color:var(--accent-2); }

/* Deliver — columns */
.cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; align-items:start; }
.mcol{ display:grid; gap:18px; }
.mcol.c2{ margin-top:120px; }
.mcol.c3{ margin-top:40px; }
.ch-card{ padding:30px; border-radius:24px; background:linear-gradient(180deg,rgba(30,22,52,.85),rgba(12,10,28,.85)); border:1px solid var(--line); display:flex; flex-direction:column; gap:12px; min-height:280px; justify-content:flex-end; transition:border-color .5s, translate .7s var(--ease); }
.ch-card:hover{ border-color:rgba(239,201,255,.35); translate:0 -6px; }
.ch-card .mono{ font-size:.66rem; color:var(--accent-2); margin-bottom:auto; }
.ch-card p{ color:var(--fog); }
.ch-img{ height:300px; border-radius:24px; }
.ch-img.tall{ height:420px; }
@media (max-width:980px){ .cols{ grid-template-columns:1fr 1fr; } .mcol.c3{ grid-column:span 2; grid-template-columns:1fr 1fr; } .mcol.c2{ margin-top:60px; } .mcol.c3{ margin-top:0; } }
@media (max-width:620px){ .cols{ grid-template-columns:1fr; } .mcol.c3{ grid-column:auto; grid-template-columns:1fr; } .mcol.c2{ margin-top:0; } }

/* Approach — numerals */
.big-steps{ display:grid; }
.bst{ display:grid; grid-template-columns:minmax(200px,38%) 1fr; gap:40px; align-items:center; padding:30px 0; border-top:1px solid var(--line-2); }
.bst:last-child{ border-bottom:1px solid var(--line-2); }
.bst-n{ position:relative; display:inline-block; font-family:var(--f-display); font-weight:600; font-size:clamp(6rem,15vw,15rem); line-height:.85; letter-spacing:-.06em; color:transparent; -webkit-text-stroke:1.2px rgba(243,241,236,.28); }
.bst-n::after{ content:attr(data-n); position:absolute; left:0; top:0; color:transparent; -webkit-text-stroke:0; background:var(--grad); -webkit-background-clip:text; background-clip:text; clip-path:inset(100% 0 0 0); clip-path:inset(calc(100% - var(--fill,0%)) 0 0 0); }
.bst p{ color:var(--fog); max-width:44ch; margin-top:10px; font-size:1.08rem; }
@media (max-width:700px){ .bst{ grid-template-columns:1fr; gap:10px; } }

/* Outcomes carousel */
.mk-out-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:50px; }
.drag-hint{ display:flex; align-items:center; gap:12px; font-size:.7rem; color:var(--fog); }
.drag-hint i{ width:70px; height:1px; background:var(--line-2); position:relative; overflow:hidden; }
.drag-hint i::after{ content:""; position:absolute; inset:0; background:var(--accent-2); animation:hint 2s var(--ease) infinite; transform-origin:left; }
@keyframes hint{ 0%{ transform:scaleX(0); } 60%{ transform:scaleX(1); transform-origin:left; } 61%{ transform-origin:right; } 100%{ transform:scaleX(0); transform-origin:right; } }
.carousel{ overflow:hidden; padding:0 var(--gutter); cursor:grab; touch-action:pan-y; user-select:none; }
.carousel.dragging{ cursor:grabbing; }
.car-track{ display:flex; gap:18px; width:max-content; will-change:transform; }
.oc{ width:clamp(280px,30vw,420px); min-height:380px; padding:34px; border-radius:28px; display:flex; flex-direction:column; gap:14px; justify-content:flex-end;
  background:radial-gradient(90% 70% at 100% 0%,rgba(165,84,207,.35),transparent 60%),linear-gradient(180deg,#140f2a,#0a0918); border:1px solid var(--line); }
.oc:nth-child(even){ background:radial-gradient(90% 70% at 0% 0%,rgba(42,143,224,.3),transparent 60%),linear-gradient(180deg,#0f1430,#0a0918); }
.oc-n{ font-family:var(--f-serif); font-style:italic; font-size:4.4rem; line-height:1; color:var(--accent-2); margin-bottom:auto; }
.oc p{ color:var(--fog); }

/* Full marketing stack */
.mk-stack{ margin-top:clamp(50px,7vw,90px); padding:30px; border-radius:24px; border:1px solid var(--line-2); background:linear-gradient(120deg,rgba(165,84,207,.1),rgba(42,143,224,.08)); display:grid; gap:18px; }
.mk-stack .chip{ font-size:.88rem; padding:9px 14px; color:var(--bone-2); }
