/* Cut 2 Chase success story — staged successor treatment. */
.c2c-front-feature {
  --c2c-green: #61f5a5;
  --c2c-violet: #b18cff;
  position: relative;
  z-index: 5;
  padding: 30px 0 8px;
  background: linear-gradient(180deg, #020611, #050b18);
}
.c2c-front-launch {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  padding: clamp(24px, 3.2vw, 48px);
  border: 1px solid rgba(97, 245, 165, 0.58);
  border-radius: 28px;
  display: grid;
  grid-template-columns: minmax(420px, .92fr) minmax(0, 1.08fr);
  align-items: center;
  gap: clamp(22px, 3vw, 48px);
  color: #fff;
  background:
    radial-gradient(circle at 12% 50%, rgba(57, 216, 255, 0.24), transparent 24rem),
    radial-gradient(circle at 86% 22%, rgba(97, 245, 165, 0.22), transparent 20rem),
    linear-gradient(125deg, #071326 0%, #0a1f35 52%, #06142a 100%);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.45), inset 0 0 0 1px rgba(255,255,255,.04);
  isolation: isolate;
  transform: translateZ(0);
}
.c2c-front-launch::before {
  content: "";
  position: absolute;
  inset: -60% -20%;
  z-index: -1;
  background: linear-gradient(105deg, transparent 40%, rgba(255,255,255,.14) 49%, transparent 58%);
  transform: translateX(-70%);
  animation: c2c-front-sweep 3.8s ease-in-out infinite;
}
.c2c-front-copy { min-width: 0; display: grid; justify-items: start; gap: 14px; }
.c2c-front-copy > span { color: var(--green); font-size: .72rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.c2c-front-copy strong { max-width: 980px; font-size: clamp(1.55rem, 2.8vw, 3.15rem); line-height: 1.04; letter-spacing: -.045em; }
.c2c-front-copy small { max-width: 830px; color: #afc7d8; font-size: clamp(.9rem, 1.2vw, 1.05rem); }
.c2c-front-copy .button { margin-top: 8px; }
.c2c-front-copy em { color: #7893a8; font-size: .68rem; font-style: normal; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.c2c-front-feature .c2c-front-model { width: 100%; border-color: rgba(97,245,165,.44); box-shadow: 0 22px 70px rgba(0,0,0,.42); }
.c2c-front-feature .c2c-front-model .c2c-model-viewport { min-height: clamp(350px, 31vw, 470px); }
.c2c-front-feature .c2c-front-model figcaption { padding: 14px 18px 17px; }

@keyframes c2c-front-signal {
  0%, 100% { box-shadow: 0 24px 70px rgba(0,0,0,.45), 0 0 0 rgba(57,216,255,0); }
  50% { box-shadow: 0 24px 70px rgba(0,0,0,.45), 0 0 42px rgba(57,216,255,.22); }
}
@keyframes c2c-front-sweep { 0%, 28% { transform: translateX(-70%); } 58%, 100% { transform: translateX(70%); } }

.c2c-story-page { --c2c-green: #61f5a5; --c2c-violet: #b18cff; }
.c2c-story-hero {
  position: relative;
  overflow: hidden;
  min-height: 860px;
  padding: calc(var(--header) + 86px) 0 100px;
  display: grid;
  align-items: center;
  background: radial-gradient(circle at 78% 28%, rgba(97,245,165,.14), transparent 28rem), radial-gradient(circle at 22% 72%, rgba(73,133,255,.15), transparent 30rem), #020611;
  isolation: isolate;
}
.c2c-story-grid { position: absolute; inset: 0; z-index: -1; opacity: .22; background-image: linear-gradient(rgba(57,216,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(57,216,255,.07) 1px, transparent 1px); background-size: 58px 58px; mask-image: linear-gradient(to bottom, transparent, #000 17%, #000 80%, transparent); }
.c2c-story-hero-inner { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr); gap: clamp(48px, 7vw, 118px); align-items: center; }
.c2c-story-copy h1 { max-width: 950px; margin: 0; font-size: clamp(3.65rem, 7.3vw, 7.8rem); line-height: .91; letter-spacing: -.068em; }
.c2c-story-copy h1 em { color: var(--c2c-green); font-style: normal; }
.c2c-story-lead { max-width: 760px; margin: 30px 0 0; color: #b6c9d9; font-size: clamp(1.05rem, 1.4vw, 1.28rem); line-height: 1.72; }
.c2c-story-actions { margin-top: 34px; display: flex; flex-wrap: wrap; gap: 14px; }
.c2c-story-proof { margin: 42px 0 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; list-style: none; border: 1px solid var(--line); border-radius: 18px; overflow: hidden; background: var(--line); }
.c2c-story-proof li { padding: 18px; display: grid; gap: 2px; background: rgba(5,11,24,.9); }
.c2c-story-proof strong { color: var(--c2c-green); font-size: .73rem; letter-spacing: .13em; text-transform: uppercase; }
.c2c-story-proof span { color: #b5c8d8; font-size: .82rem; }
.c2c-story-disclosure { border-block: 1px solid rgba(97,245,165,.18); background: rgba(6,18,30,.88); }
.c2c-story-disclosure .shell { min-height: 104px; display: grid; grid-template-columns: auto 1fr; gap: 30px; align-items: center; }
.c2c-story-disclosure strong { color: var(--c2c-green); font-size: .7rem; letter-spacing: .16em; text-transform: uppercase; }
.c2c-story-disclosure p { margin: 0; color: #9fb4c5; }
.c2c-story-page .section { padding-block: clamp(88px, 10vw, 152px); }
.c2c-story-page .section-heading { max-width: 1080px; }
.c2c-story-page .section-heading h2 { max-width: 960px; }
.c2c-partner-section { position: relative; overflow: hidden; background: radial-gradient(circle at 82% 18%, rgba(97,245,165,.11), transparent 27rem), linear-gradient(180deg, #06101e, #030815); }
.c2c-partner-section::before { content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .28; background-image: linear-gradient(rgba(137,233,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(137,233,255,.045) 1px, transparent 1px); background-size: 64px 64px; mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent); }
.c2c-partner-intro { position: relative; display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(360px, .82fr); gap: clamp(42px, 7vw, 110px); align-items: end; }
.c2c-partner-intro h2 { max-width: 980px; margin: 0; font-size: clamp(3rem, 5.8vw, 6.4rem); line-height: .94; letter-spacing: -.062em; }
.c2c-partner-intro > div:last-child > p { margin: 0; color: #aec2d1; font-size: 1.06rem; line-height: 1.75; }
.c2c-partner-links { margin-top: 28px; display: flex; flex-wrap: wrap; gap: 12px; }
.c2c-location-grid { position: relative; margin-top: clamp(52px, 7vw, 88px); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.c2c-location-card { position: relative; min-height: 430px; padding: clamp(30px, 4vw, 52px); overflow: hidden; border: 1px solid rgba(137,233,255,.19); border-radius: 28px; display: flex; flex-direction: column; background: radial-gradient(circle at 88% 8%, rgba(73,133,255,.16), transparent 18rem), rgba(5,16,31,.88); box-shadow: 0 24px 70px rgba(0,0,0,.2); }
.c2c-location-card--flagship { border-color: rgba(97,245,165,.34); background: radial-gradient(circle at 88% 8%, rgba(97,245,165,.16), transparent 18rem), rgba(5,20,30,.92); }
.c2c-location-card::after { content: ""; position: absolute; right: -38px; bottom: -55px; width: 210px; height: 210px; border: 1px solid rgba(137,233,255,.12); border-radius: 50%; box-shadow: 0 0 0 35px rgba(137,233,255,.025), 0 0 0 70px rgba(137,233,255,.018); }
.c2c-location-index { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.c2c-location-index span { color: rgba(137,233,255,.23); font-size: 4rem; font-weight: 950; line-height: 1; }
.c2c-location-index strong { padding: 8px 11px; border: 1px solid rgba(97,245,165,.3); border-radius: 999px; color: var(--c2c-green); font-size: .63rem; letter-spacing: .13em; text-transform: uppercase; }
.c2c-location-card .eyebrow { margin: 48px 0 8px; }
.c2c-location-card h3 { max-width: 570px; margin: 0; font-size: clamp(2rem, 3.3vw, 3.6rem); line-height: 1; letter-spacing: -.05em; }
.c2c-location-card > p:not(.eyebrow) { max-width: 650px; color: #9fb5c5; font-size: 1rem; line-height: 1.68; }
.c2c-location-meta { position: relative; z-index: 1; margin-top: auto; padding-top: 28px; border-top: 1px solid rgba(137,233,255,.13); display: grid; gap: 5px; }
.c2c-location-meta span { color: var(--c2c-violet); font-size: .64rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.c2c-location-meta strong { color: #e8f5fb; font-size: .88rem; }
.c2c-location-note { position: relative; margin-top: 20px; padding: 22px 26px; border: 1px solid rgba(177,140,255,.22); border-radius: 18px; display: grid; grid-template-columns: auto 1fr; gap: 24px; align-items: center; background: rgba(7,15,31,.78); }
.c2c-location-note span { color: var(--c2c-violet); font-size: .68rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.c2c-location-note p { margin: 0; color: #9fb4c5; }
.c2c-story-steps { margin-top: 58px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.c2c-story-steps article { position: relative; min-height: 330px; padding: 30px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(155deg, rgba(10,28,49,.9), rgba(4,10,21,.9)); box-shadow: 0 18px 50px rgba(0,0,0,.18); }
.c2c-story-steps article > span { display: block; color: rgba(137,233,255,.25); font-size: 3.6rem; font-weight: 900; line-height: 1; }
.c2c-story-steps .eyebrow { margin: 30px 0 10px; }
.c2c-story-steps h3 { margin: 0; font-size: 1.55rem; }
.c2c-story-steps article > p:last-child { color: #9eb3c4; }
.c2c-evidence-section { background: radial-gradient(circle at 20% 50%, rgba(177,140,255,.1), transparent 30rem), #030816; }
.c2c-evidence-layout { max-width: 1180px; }
.c2c-model-card { margin: 0; overflow: hidden; border: 1px solid rgba(57,216,255,.36); border-radius: 28px; background: #040a15; box-shadow: var(--shadow); }
.c2c-model-viewport { position: relative; min-height: 570px; overflow: hidden; background: radial-gradient(circle at 50% 43%, rgba(57,216,255,.17), transparent 42%), linear-gradient(155deg, #091a2b, #02050d 72%); }
.c2c-model-viewport::after { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: linear-gradient(rgba(137,233,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(137,233,255,.04) 1px, transparent 1px); background-size: 40px 40px; mask-image: linear-gradient(to bottom, #000, transparent 86%); }
.c2c-model-viewport canvas { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; cursor: grab; touch-action: none; opacity: 0; transition: opacity .45s ease; }
.c2c-model-viewport canvas:active { cursor: grabbing; }
.c2c-model-viewport canvas:focus-visible { outline: 3px solid var(--c2c-green); outline-offset: -5px; }
.c2c-model-card.is-ready canvas { opacity: 1; }
.c2c-model-loading { position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 15px; color: #a9c8da; font-size: .75rem; letter-spacing: .13em; text-transform: uppercase; transition: opacity .3s ease; }
.c2c-model-loading span { width: 46px; height: 46px; border: 2px solid rgba(137,233,255,.18); border-top-color: var(--c2c-green); border-radius: 50%; animation: c2c-model-spin .9s linear infinite; }
.c2c-model-card.is-ready .c2c-model-loading, .c2c-model-card.has-error .c2c-model-loading { opacity: 0; pointer-events: none; }
.c2c-model-badge { position: absolute; z-index: 4; top: 20px; left: 20px; padding: 10px 13px; border: 1px solid rgba(97,245,165,.35); border-radius: 12px; display: grid; gap: 2px; background: rgba(2,8,18,.76); backdrop-filter: blur(10px); pointer-events: none; }
.c2c-model-badge span { color: var(--c2c-green); font-size: .62rem; font-weight: 900; letter-spacing: .15em; }
.c2c-model-badge strong { color: #dff8ff; font-size: .78rem; letter-spacing: .06em; }
.c2c-model-toolbar { min-height: 76px; padding: 14px 18px; border-top: 1px solid rgba(137,233,255,.12); display: flex; align-items: center; justify-content: space-between; gap: 14px; background: #06101e; }
.c2c-model-toolbar p { margin: 0; color: #8faabd; font-size: .74rem; line-height: 1.4; }
.c2c-model-toolbar > div { display: flex; gap: 8px; flex: 0 0 auto; }
.c2c-model-toolbar button { padding: 9px 12px; border: 1px solid rgba(137,233,255,.25); border-radius: 999px; color: #dff8ff; background: rgba(12,32,51,.9); font: inherit; font-size: .7rem; font-weight: 800; cursor: pointer; }
.c2c-model-toolbar button:hover, .c2c-model-toolbar button:focus-visible { border-color: var(--c2c-green); color: var(--c2c-green); }
.c2c-model-card figcaption { padding: 20px 22px 24px; display: grid; gap: 4px; }
.c2c-model-card figcaption strong { color: var(--c2c-violet); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; }
.c2c-model-card figcaption span { color: #9eb3c4; }
.c2c-hero-model { width: min(640px, 100%); justify-self: end; border-color: rgba(97,245,165,.5); }
.c2c-hero-model .c2c-model-viewport { min-height: clamp(500px, 42vw, 640px); }
@keyframes c2c-model-spin { to { transform: rotate(360deg); } }
.c2c-evidence-copy h2 { margin: 0; font-size: clamp(2.6rem, 4.6vw, 5rem); line-height: .98; letter-spacing: -.055em; }
.c2c-evidence-copy > p:not(.eyebrow) { color: #a8bdcd; font-size: 1.05rem; }
.c2c-evidence-copy blockquote { margin: 32px 0; padding: 3px 0 3px 26px; border-left: 3px solid var(--c2c-green); color: #e8f7ff; font-size: clamp(1.25rem, 2vw, 1.72rem); font-weight: 720; line-height: 1.45; }
.c2c-evidence-list { margin: 0; padding: 0; display: grid; gap: 11px; list-style: none; }
.c2c-evidence-list li { padding: 15px 17px; border: 1px solid rgba(97,245,165,.14); border-radius: 14px; display: grid; grid-template-columns: auto 1fr; gap: 14px; align-items: start; background: rgba(7,19,38,.62); }
.c2c-evidence-list li > span { width: 27px; height: 27px; border-radius: 50%; display: grid; place-items: center; color: #032013; background: var(--c2c-green); font-weight: 950; }
.c2c-evidence-list div { display: grid; gap: 1px; }
.c2c-evidence-list strong { color: #edf8ff; }
.c2c-evidence-list small { color: #91a8ba; font-size: .83rem; }
.c2c-result-section { padding-top: 48px !important; }
.c2c-result-card { padding: clamp(38px, 6vw, 76px); border: 1px solid rgba(57,216,255,.26); border-radius: 30px; display: grid; grid-template-columns: 1.15fr .85fr; gap: 60px; align-items: end; background: radial-gradient(circle at 85% 20%, rgba(97,245,165,.12), transparent 24rem), #071326; }
.c2c-result-card h2 { max-width: 870px; margin: 0; font-size: clamp(2.7rem, 4.7vw, 5rem); line-height: .97; letter-spacing: -.058em; }
.c2c-result-card > p { margin: 0; color: #a9bdcd; font-size: 1.05rem; }
.c2c-story-cta { padding-top: 54px !important; }
.c2c-story-cta-inner { padding: clamp(38px, 6vw, 78px); border: 1px solid rgba(97,245,165,.26); border-radius: 30px; display: grid; grid-template-columns: 1fr auto; gap: 64px; align-items: center; background: radial-gradient(circle at 88% 20%, rgba(177,140,255,.15), transparent 25rem), #061124; }
.c2c-story-cta h2 { max-width: 850px; margin: 0; font-size: clamp(2.5rem, 4.4vw, 4.7rem); line-height: .98; letter-spacing: -.055em; }
.c2c-story-cta p:not(.eyebrow) { max-width: 760px; color: #a4b9ca; }
.c2c-story-cta-inner > div:last-child { display: grid; gap: 12px; }

@media (max-width: 1180px) {
  .c2c-story-hero-inner, .c2c-partner-intro { grid-template-columns: 1fr; }
  .c2c-front-launch { grid-template-columns: 1fr 1fr; }
  .c2c-hero-model { width: min(760px, 100%); justify-self: center; }
  .c2c-story-steps { grid-template-columns: repeat(2, 1fr); }
  .c2c-result-card, .c2c-story-cta-inner { grid-template-columns: 1fr; }
  .c2c-story-cta-inner > div:last-child { display: flex; flex-wrap: wrap; }
}
@media (max-width: 820px) {
  .c2c-front-launch { grid-template-columns: 1fr; }
  .c2c-story-hero { min-height: auto; padding-top: calc(var(--header) + 64px); }
  .c2c-story-copy h1 { font-size: clamp(3.1rem, 14.8vw, 5.6rem); }
  .c2c-story-proof { grid-template-columns: 1fr; }
  .c2c-location-grid { grid-template-columns: 1fr; }
  .c2c-story-steps { grid-template-columns: 1fr; }
  .c2c-story-steps article { min-height: 0; }
}
@media (max-width: 620px) {
  .c2c-front-feature { padding-top: 18px; }
  .c2c-front-launch { padding: 18px; text-align: left; }
  .c2c-front-feature .c2c-front-model .c2c-model-viewport { min-height: 360px; }
  .c2c-story-disclosure .shell { padding-block: 25px; grid-template-columns: 1fr; gap: 7px; }
  .c2c-story-actions, .c2c-story-cta-inner > div:last-child { display: grid; }
  .c2c-story-actions .button, .c2c-story-cta .button, .c2c-partner-links .button { width: 100%; justify-content: center; }
  .c2c-partner-links { display: grid; }
  .c2c-location-card { min-height: 390px; padding: 28px; }
  .c2c-location-note { grid-template-columns: 1fr; gap: 7px; }
  .c2c-model-viewport, .c2c-hero-model .c2c-model-viewport { min-height: 430px; }
  .c2c-model-toolbar { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .c2c-front-launch, .c2c-front-launch::before, .c2c-model-loading span { animation: none !important; }
  .c2c-front-launch:hover { transform: none; }
}
