:root {
  --bg: #f7f5ef;
  --bg-soft: #eeece5;
  --panel: rgba(255, 255, 255, .76);
  --panel-solid: #fffefa;
  --line: rgba(29, 31, 37, .13);
  --line-strong: rgba(29, 31, 37, .24);
  --text: #202126;
  --muted: #5e626b;
  --muted-2: #858890;
  --blue: #5368df;
  --violet: #8658d4;
  --cyan: #009ba5;
  --coral: #ef6d5d;
  --lime: #6f9f36;
  --danger: #b42318;
  --shadow: 0 28px 80px rgba(39, 40, 45, .12);
  --radius: 22px;
  --shell: min(1180px, calc(100% - 40px));
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background:
    radial-gradient(circle at 86% 4%, rgba(239, 109, 93, .14), transparent 32rem),
    radial-gradient(circle at 10% 35%, rgba(0, 155, 165, .09), transparent 36rem),
    linear-gradient(180deg, #fbfaf7 0%, var(--bg) 44%, #f2efe7 100%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  opacity: .08;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.1'/%3E%3C/svg%3E");
  z-index: 20;
}

::selection { background: rgba(134, 88, 212, .22); color: var(--text); }
a { color: inherit; }
button, input, textarea { font: inherit; }
button { color: inherit; }
img, svg { display: block; }

.shell { width: var(--shell); margin-inline: auto; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 1000; background: white; color: black; padding: 10px 14px; border-radius: 8px; transition: top .2s; }
.skip-link:focus { top: 16px; }

.site-header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  border-bottom: 1px solid transparent;
  transition: background .25s, border-color .25s, backdrop-filter .25s;
}
.site-header.is-scrolled { background: rgba(250, 249, 245, .84); border-color: var(--line); backdrop-filter: blur(18px); box-shadow: 0 8px 30px rgba(39, 40, 45, .05); }
.nav-shell { height: 82px; display: flex; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; font-size: .92rem; font-weight: 800; letter-spacing: .22em; }
.brand-mark { width: 30px; height: 30px; color: var(--cyan); filter: drop-shadow(0 6px 12px rgba(0,155,165,.16)); }
.nav-links { display: flex; align-items: center; gap: 30px; }
.nav-links > a:not(.button) { text-decoration: none; color: var(--muted); font-size: .88rem; transition: color .2s; }
.nav-links > a:not(.button):hover { color: var(--text); }
.nav-toggle { display: none; background: none; border: 0; width: 42px; height: 42px; padding: 10px; }
.nav-toggle span:not(.sr-only) { display: block; height: 1px; background: var(--text); margin: 8px 0; transition: transform .2s; }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 22px;
  min-height: 52px;
  padding: 0 22px;
  border: 1px solid rgba(32, 33, 38, .92);
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, #202126, #39343f);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 30px rgba(32, 33, 38, .14);
  text-decoration: none;
  font-weight: 700;
  font-size: .92rem;
  cursor: pointer;
  transition: transform .2s, border-color .2s, box-shadow .2s;
}
.button:hover { transform: translateY(-2px); border-color: var(--coral); box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 16px 38px rgba(32, 33, 38, .2); }
.button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, button:focus-visible { outline: 2px solid var(--cyan); outline-offset: 4px; }
.button-small { min-height: 42px; padding-inline: 18px; font-size: .82rem; }
.text-link { display: inline-flex; align-items: center; gap: 16px; text-decoration: none; font-weight: 700; color: var(--text); border-bottom: 1px solid var(--line-strong); padding-bottom: 5px; }
.text-link:hover { border-color: var(--cyan); }

.hero { min-height: 940px; padding: 170px 0 60px; overflow: hidden; position: relative; }
.hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(29,31,37,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(29,31,37,.035) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 82%); }
.hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 50px; position: relative; }
.hero-copy { padding-top: 28px; }
.eyebrow { display: flex; align-items: center; gap: 11px; text-transform: uppercase; letter-spacing: .13em; font-size: .73rem; font-weight: 700; color: #565961; margin: 0 0 30px; }
.eyebrow span { width: 34px; height: 1px; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
h1, h2, h3, p { margin-top: 0; }
h1 { max-width: 760px; margin-bottom: 28px; font-size: clamp(3.6rem, 6.8vw, 6.65rem); line-height: .94; letter-spacing: -.065em; font-weight: 640; }
h1 em { display: block; font-style: normal; color: transparent; background: linear-gradient(100deg, #202126 4%, #008f99 42%, #7f55ce 74%, #e96455 100%); -webkit-background-clip: text; background-clip: text; }
.hero-lede { max-width: 670px; font-size: clamp(1.08rem, 1.7vw, 1.28rem); color: var(--muted); line-height: 1.7; }
.hero-actions { display: flex; align-items: center; gap: 26px; margin-top: 40px; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 55px; color: var(--muted-2); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.hero-proof span { display: flex; align-items: center; gap: 8px; }
.hero-proof span::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: var(--coral); box-shadow: 0 0 0 4px rgba(239,109,93,.10); }

.hero-visual { min-height: 620px; position: relative; display: grid; place-items: center; isolation: isolate; }
.hero-visual::before { content: ""; position: absolute; width: 520px; height: 520px; border-radius: 50%; background: radial-gradient(circle at 45% 42%, rgba(134, 88, 212, .17), rgba(0, 155, 165, .08) 38%, transparent 68%); filter: blur(8px); }
.signal-ring { position: absolute; border: 1px solid rgba(32, 33, 38, .13); border-radius: 50%; }
.signal-ring-one { width: 430px; height: 430px; animation: slowspin 32s linear infinite; }
.signal-ring-two { width: 550px; height: 550px; border-style: dashed; animation: slowspin 45s linear infinite reverse; }
.signal-ring::before, .signal-ring::after { content: ""; position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 6px rgba(0,155,165,.10); }
.signal-ring::before { left: 8%; top: 21%; }
.signal-ring::after { right: 12%; bottom: 16%; background: var(--coral); box-shadow: 0 0 0 6px rgba(239,109,93,.10); }
.prism-wrap { width: 250px; height: 360px; position: relative; transform: rotate(-8deg); filter: drop-shadow(0 34px 35px rgba(39,40,45,.20)); }
.prism-face { position: absolute; inset: 0; clip-path: polygon(50% 0%, 100% 78%, 63% 100%, 0 78%); border: 1px solid rgba(32, 33, 38, .22); }
.face-a { transform: translateX(-25px) rotate(-5deg); background: linear-gradient(140deg, rgba(0, 174, 184, .10), rgba(134, 88, 212, .28) 52%, rgba(255,255,255,.62)); backdrop-filter: blur(4px); }
.face-b { transform: translateX(26px) rotate(6deg); background: linear-gradient(220deg, rgba(239, 109, 93, .28), rgba(134, 88, 212, .10) 58%, rgba(255,255,255,.48)); }
.face-c { transform: scale(.77) translateY(40px); background: linear-gradient(160deg, rgba(255,255,255,.72), rgba(0, 155, 165, .12) 60%); border-color: rgba(32,33,38,.28); }
.prism-core { position: absolute; width: 4px; height: 240px; left: 50%; top: 63px; transform: translateX(-50%); background: linear-gradient(transparent, #fff 38%, var(--coral) 58%, var(--cyan), transparent); box-shadow: 0 0 22px rgba(0,155,165,.32); }
.orbit-word { position: absolute; color: #73767f; font-size: .62rem; letter-spacing: .24em; }
.word-one { top: 15%; left: 8%; }
.word-two { top: 30%; right: 0; }
.word-three { bottom: 23%; left: 1%; }
.word-four { bottom: 12%; right: 7%; }
.visual-caption { position: absolute; right: 5%; bottom: 4%; border-left: 1px solid var(--cyan); padding-left: 15px; display: flex; flex-direction: column; font-size: .78rem; }
.visual-caption span { color: var(--muted-2); }
.hero-rule { position: relative; display: flex; align-items: center; gap: 20px; margin-top: 78px; color: var(--muted-2); font-size: .65rem; letter-spacing: .15em; }
.hero-rule i { height: 1px; flex: 1; background: var(--line); }

.statement-section { padding: 120px 0 100px; border-top: 1px solid var(--line); }
.statement-grid { display: grid; grid-template-columns: .42fr 1.58fr; gap: 50px; }
.section-index { color: var(--muted-2); text-transform: uppercase; letter-spacing: .16em; font-size: .68rem; }
.section-index span { color: var(--cyan); margin-right: 14px; }
.kicker { color: var(--blue); text-transform: uppercase; letter-spacing: .14em; font-size: .7rem; font-weight: 700; margin-bottom: 22px; }
h2 { margin-bottom: 25px; font-size: clamp(2.45rem, 4.8vw, 4.75rem); letter-spacing: -.055em; line-height: 1.01; font-weight: 590; }
.statement-copy h2 { max-width: 870px; }
.statement-copy > p:last-child { max-width: 730px; color: var(--muted); font-size: 1.12rem; }
.friction-grid { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 80px; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.friction-grid article { min-height: 260px; padding: 30px 26px; background: rgba(255,255,255,.48); border-right: 1px solid var(--line); transition: background .25s, transform .25s; }
.friction-grid article:last-child { border-right: 0; }
.friction-grid article:hover { background: rgba(255,255,255,.88); }
.friction-grid article > span { color: var(--muted-2); font-size: .65rem; letter-spacing: .15em; }
.friction-grid h3 { margin: 68px 0 14px; font-size: 1.25rem; }
.friction-grid p { color: var(--muted); font-size: .9rem; }

.transition-section { padding: 30px 0 120px; }
.transition-card { padding: 24px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.68); box-shadow: var(--shadow); }
.transition-label { padding: 0 10px 20px; color: var(--muted-2); font-size: .65rem; letter-spacing: .16em; }
.transition-columns { display: grid; grid-template-columns: 1fr 100px 1fr; align-items: stretch; }
.transition-state { min-height: 225px; padding: 35px; border-radius: 16px; display: flex; flex-direction: column; justify-content: space-between; }
.transition-state span { font-size: .65rem; letter-spacing: .2em; }
.transition-state p { margin-bottom: 0; font-size: clamp(1.35rem, 2.4vw, 2rem); line-height: 1.25; font-weight: 550; }
.muted-state { background: rgba(32,33,38,.045); color: #777a83; }
.bright-state { background: linear-gradient(145deg, rgba(239,109,93,.13), rgba(0,155,165,.09) 55%, rgba(134,88,212,.10)); border: 1px solid rgba(134,88,212,.18); }
.bright-state span { color: var(--cyan); }
.transition-arrow { display: grid; place-items: center; color: var(--cyan); font-size: 2rem; }

.approach-section { padding: 125px 0; background: linear-gradient(180deg, transparent, rgba(255,255,255,.62), transparent); }
.section-heading { display: grid; grid-template-columns: .42fr 1.58fr; gap: 50px; margin-bottom: 70px; }
.section-heading h2 { max-width: 840px; }
.layer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.layer-card { position: relative; min-height: 640px; padding: 44px; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; }
.layer-card::after { content: ""; position: absolute; width: 320px; height: 320px; right: -130px; bottom: -160px; border-radius: 50%; filter: blur(20px); opacity: .2; }
.strategy-card { background: linear-gradient(155deg, rgba(0,155,165,.10), rgba(255,255,255,.76) 55%); }
.strategy-card::after { background: var(--cyan); opacity: .12; }
.activation-card { background: linear-gradient(155deg, rgba(239,109,93,.11), rgba(255,255,255,.76) 55%); }
.activation-card::after { background: var(--coral); opacity: .12; }
.layer-number { position: absolute; top: 30px; right: 34px; font-size: .68rem; letter-spacing: .18em; color: var(--muted-2); }
.layer-icon { width: 56px; height: 56px; display: grid; place-items: center; border: 1px solid var(--line-strong); border-radius: 50%; color: var(--cyan); font-size: 1.3rem; margin-bottom: 65px; }
.activation-card .layer-icon { color: var(--coral); }
.layer-label { color: var(--muted-2); font-size: .66rem; letter-spacing: .17em; }
.layer-card h3 { font-size: 3.6rem; line-height: 1; letter-spacing: -.05em; margin: 12px 0 22px; font-weight: 580; }
.layer-card > p:not(.layer-label) { color: var(--muted); max-width: 460px; font-size: 1.05rem; }
.layer-card ul { list-style: none; padding: 0; margin: 48px 0 0; }
.layer-card li { padding: 13px 0 13px 28px; border-top: 1px solid var(--line); color: #3d4048; font-size: .9rem; position: relative; }
.layer-card li::before { content: "+"; position: absolute; left: 2px; color: var(--cyan); }
.activation-card li::before { color: var(--coral); }

.process-section { padding: 115px 0 135px; }
.compact-heading { margin-bottom: 55px; }
.process-list { list-style: none; padding: 0; margin: 0; border-top: 1px solid var(--line); }
.process-list li { display: grid; grid-template-columns: 110px .8fr 1.2fr; align-items: center; gap: 30px; min-height: 112px; border-bottom: 1px solid var(--line); transition: padding .2s, background .2s; }
.process-list li:hover { padding-inline: 18px; background: rgba(255,255,255,.52); }
.process-list span { color: var(--muted-2); font-size: .68rem; letter-spacing: .15em; }
.process-list strong { font-size: 1.15rem; }
.process-list p { margin: 0; color: var(--muted); }

.fit-section { padding: 130px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(235, 232, 223, .72); }
.fit-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 100px; }
.fit-copy h2 { font-size: clamp(2.5rem, 4.2vw, 4.1rem); }
.fit-copy > p:not(.kicker) { color: var(--muted); max-width: 520px; margin-bottom: 30px; }
.fit-copy .section-index { margin-bottom: 55px; }
.trigger-list { border-top: 1px solid var(--line); }
.trigger-list div { min-height: 82px; display: grid; grid-template-columns: 65px 1fr; align-items: center; border-bottom: 1px solid var(--line); }
.trigger-list span { color: var(--cyan); font-size: .65rem; }
.trigger-list p { margin: 0; font-size: .98rem; color: #34363c; }

.principles-section { padding: 135px 0; overflow: hidden; }
.principles-intro { max-width: 900px; }
.principles-intro h2 { font-size: clamp(2.8rem, 5.2vw, 5.2rem); }
.principles-marquee { margin-top: 78px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 20px 0; overflow: hidden; mask-image: linear-gradient(90deg, transparent, black 8%, black 92%, transparent); }
.principles-marquee div { width: max-content; display: flex; align-items: center; gap: 28px; animation: marquee 30s linear infinite; color: #686b73; font-size: .73rem; letter-spacing: .16em; }
.principles-marquee i { color: var(--coral); font-style: normal; }

.contact-section { padding: 135px 0; background: radial-gradient(circle at 92% 78%, rgba(239,109,93,.12), transparent 34rem), radial-gradient(circle at 5% 100%, rgba(0,155,165,.08), transparent 30rem); }
.contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 95px; align-items: start; }
.contact-copy .section-index { margin-bottom: 62px; }
.contact-copy h2 { font-size: clamp(2.7rem, 4.5vw, 4.45rem); }
.contact-copy > p:not(.kicker) { color: var(--muted); max-width: 550px; }
.contact-note { margin-top: 42px; padding: 22px; border: 1px solid var(--line); border-radius: 14px; display: flex; gap: 16px; color: var(--muted-2); font-size: .78rem; }
.contact-note p { margin: 0; }
.contact-note span { color: var(--cyan); }
.contact-email-card { min-height: 370px; padding: 36px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, rgba(255,255,255,.82), rgba(0,155,165,.07), rgba(134,88,212,.05)); box-shadow: var(--shadow); display: flex; flex-direction: column; align-items: flex-start; }
.contact-email-card h3 { max-width: 520px; margin: 54px 0 14px; font-size: clamp(2rem, 3.2vw, 3.15rem); line-height: 1.05; }
.contact-email-card > p:not(.layer-label):not(.contact-email-meta) { max-width: 520px; margin: 0; color: var(--muted); }
.contact-email-link { display: inline-flex; align-items: center; gap: 14px; margin-top: auto; padding-top: 55px; color: var(--text); font-size: clamp(1.2rem, 2vw, 1.65rem); font-weight: 720; letter-spacing: -.025em; text-decoration: none; border-bottom: 1px solid var(--line-strong); }
.contact-email-link:hover { border-color: var(--cyan); }
.contact-email-link span { color: var(--cyan); font-size: .9em; }
.contact-email-meta { margin: 15px 0 0; color: var(--muted-2); font-size: .74rem; }

.site-footer { padding: 50px 0; border-top: 1px solid var(--line); }
.footer-grid { display: flex; justify-content: space-between; gap: 40px; }
.footer-brand { margin-bottom: 18px; }
.footer-grid > div:first-child > p { max-width: 430px; color: var(--muted-2); font-size: .84rem; }
.footer-meta { display: flex; flex-direction: column; gap: 8px; align-items: flex-end; color: var(--muted-2); font-size: .62rem; letter-spacing: .14em; }

[data-reveal] { opacity: 0; transform: translateY(22px); transition: opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1); }
[data-reveal].is-visible { opacity: 1; transform: none; }

@keyframes slowspin { to { transform: rotate(360deg); } }
@keyframes marquee { to { transform: translateX(-50%); } }

@media (max-width: 980px) {
  :root { --shell: min(100% - 30px, 760px); }
  .hero { min-height: auto; }
  .hero-grid, .statement-grid, .section-heading, .fit-grid, .contact-grid { grid-template-columns: 1fr; }
  .hero-copy { padding-top: 0; }
  .hero-visual { min-height: 520px; }
  .section-heading, .statement-grid { gap: 28px; }
  .friction-grid { grid-template-columns: 1fr 1fr; }
  .friction-grid article:nth-child(2) { border-right: 0; }
  .friction-grid article:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .layer-grid { grid-template-columns: 1fr; }
  .layer-card { min-height: 590px; }
  .fit-grid, .contact-grid { gap: 70px; }
}

@media (max-width: 720px) {
  :root { --shell: calc(100% - 28px); --radius: 18px; }
  .nav-shell { height: 70px; }
  .nav-toggle { display: block; z-index: 2; }
  .nav-links { position: fixed; inset: 0 0 auto 0; padding: 110px 24px 32px; background: rgba(250,249,245,.98); border-bottom: 1px solid var(--line); flex-direction: column; align-items: stretch; transform: translateY(-110%); transition: transform .3s; }
  .nav-links.is-open { transform: translateY(0); }
  .nav-links a { padding: 10px; }
  .nav-toggle[aria-expanded="true"] span:first-child { transform: translateY(4.5px) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(2) { transform: translateY(-4.5px) rotate(-45deg); }
  .hero { padding-top: 125px; }
  h1 { font-size: clamp(3.25rem, 15vw, 5rem); }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .hero-visual { min-height: 450px; transform: scale(.86); margin-inline: -20px; }
  .signal-ring-two { width: 490px; height: 490px; }
  .hero-rule { margin-top: 25px; }
  .statement-section, .approach-section, .fit-section, .principles-section, .contact-section { padding-block: 90px; }
  h2 { font-size: clamp(2.45rem, 11vw, 3.65rem); }
  .friction-grid { grid-template-columns: 1fr; }
  .friction-grid article { border-right: 0; border-bottom: 1px solid var(--line); min-height: 220px; }
  .friction-grid article:last-child { border-bottom: 0; }
  .friction-grid h3 { margin-top: 46px; }
  .transition-section { padding-bottom: 90px; }
  .transition-columns { grid-template-columns: 1fr; }
  .transition-arrow { height: 70px; transform: rotate(90deg); }
  .layer-card { padding: 30px 24px; min-height: auto; }
  .layer-icon { margin-bottom: 45px; }
  .layer-card h3 { font-size: 3rem; }
  .process-list li { grid-template-columns: 48px 1fr; gap: 12px; padding: 22px 0; }
  .process-list p { grid-column: 2; }
  .contact-email-card { min-height: 330px; padding: 28px 24px; }
  .footer-grid { flex-direction: column; }
  .footer-meta { align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
}

/* v0.0.3 - multi-page offer, proof and publication system */
.footer-grid-rich { display: grid; grid-template-columns: 1.4fr .7fr .7fr; align-items: start; }
.footer-links { display: flex; flex-direction: column; gap: 10px; }
.footer-links a { color: var(--muted); font-size: .8rem; text-decoration: none; }
.footer-links a:hover { color: var(--text); }
.hero-v3 { min-height: 900px; }
.signal-strip { border-block: 1px solid var(--line); background: rgba(255,255,255,.46); }
.signal-strip-grid { min-height: 74px; display: grid; grid-template-columns: repeat(6, 1fr); align-items: center; }
.signal-strip-grid span { text-align: center; color: var(--muted-2); font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; border-right: 1px solid var(--line); }
.signal-strip-grid span:last-child { border-right: 0; }
.offer-section { padding: 135px 0; }
.offer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.offer-card { min-height: 720px; padding: 40px; border: 1px solid var(--line); border-radius: var(--radius); position: relative; overflow: hidden; display: flex; flex-direction: column; }
.offer-card::before { content: ""; width: 340px; height: 340px; position: absolute; right: -170px; top: -150px; border-radius: 50%; filter: blur(8px); opacity: .18; }
.offer-card-a { background: linear-gradient(160deg, rgba(0,155,165,.10), rgba(255,255,255,.76) 54%); }
.offer-card-a::before { background: var(--cyan); }
.offer-card-b { background: linear-gradient(160deg, rgba(134,88,212,.10), rgba(239,109,93,.07), rgba(255,255,255,.78) 58%); }
.offer-card-b::before { background: var(--violet); }
.offer-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 86px; }
.offer-number { color: var(--muted-2); font-size: .66rem; letter-spacing: .18em; }
.status-pill { display: inline-flex; align-items: center; min-height: 29px; padding: 0 11px; border: 1px solid rgba(0,155,165,.28); border-radius: 999px; color: #117c83; background: rgba(255,255,255,.54); font-size: .62rem; letter-spacing: .09em; text-transform: uppercase; }
.status-pill-accent { border-color: rgba(134,88,212,.28); color: #6840aa; }
.offer-card h3 { max-width: 560px; font-size: clamp(2rem, 3.6vw, 3.55rem); line-height: 1.04; letter-spacing: -.045em; margin: 13px 0 22px; font-weight: 580; }
.offer-card > p:not(.layer-label) { max-width: 560px; color: var(--muted); }
.clean-list { list-style: none; padding: 0; margin: 34px 0 36px; }
.clean-list li { position: relative; padding: 13px 0 13px 26px; border-top: 1px solid var(--line); color: #3e4148; font-size: .88rem; }
.clean-list li:last-child { border-bottom: 1px solid var(--line); }
.clean-list li::before { content: "+"; position: absolute; left: 2px; color: var(--cyan); }
.offer-card-b .clean-list li::before { color: var(--coral); }
.offer-card .text-link { margin-top: auto; align-self: flex-start; }
.term-note { display: flex; flex-direction: column; gap: 4px; padding: 17px 18px; margin: -10px 0 28px; border-radius: 12px; background: rgba(255,255,255,.64); border: 1px solid var(--line); }
.term-note strong { font-size: .83rem; }
.term-note span { color: var(--muted); font-size: .75rem; }
.compounding-section { padding: 140px 0; border-block: 1px solid var(--line); background: rgba(235,232,223,.62); overflow: hidden; }
.compounding-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 95px; align-items: center; }
.compounding-copy > p:last-child { color: var(--muted); max-width: 600px; font-size: 1.04rem; }
.compounding-orbit { position: relative; min-height: 570px; display: grid; place-items: center; }
.compounding-orbit::before, .compounding-orbit::after { content: ""; position: absolute; border-radius: 50%; border: 1px solid var(--line-strong); }
.compounding-orbit::before { width: 445px; height: 445px; }
.compounding-orbit::after { width: 310px; height: 310px; border-style: dashed; }
.orbit-center { width: 185px; height: 185px; border-radius: 50%; display: grid; place-content: center; text-align: center; background: linear-gradient(145deg, rgba(0,155,165,.18), rgba(134,88,212,.13), rgba(239,109,93,.13)); border: 1px solid rgba(32,33,38,.20); box-shadow: var(--shadow); }
.orbit-center span { font-size: .62rem; letter-spacing: .18em; color: var(--muted); }
.orbit-center strong { margin-top: 8px; line-height: 1.2; font-size: 1rem; letter-spacing: .08em; }
.orbit-node { position: absolute; width: 106px; height: 106px; border-radius: 50%; background: rgba(255,255,255,.86); border: 1px solid var(--line); display: grid; place-content: center; text-align: center; font-size: .65rem; letter-spacing: .12em; box-shadow: 0 18px 45px rgba(39,40,45,.08); }
.orbit-node span { display: block; margin-bottom: 7px; color: var(--cyan); font-size: .58rem; }
.node-1 { top: 20px; left: calc(50% - 53px); }.node-2 { right: 3%; top: calc(50% - 53px); }.node-3 { bottom: 20px; left: calc(50% - 53px); }.node-4 { left: 3%; top: calc(50% - 53px); }
.proof-preview { padding: 140px 0; }
.proof-stage { display: grid; grid-template-columns: 1.14fr .86fr; gap: 24px; }
.proof-feature { min-height: 670px; padding: 34px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, rgba(255,255,255,.86), rgba(0,155,165,.06)); }
.proof-label-row { display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); font-size: .64rem; letter-spacing: .14em; }
.proof-mockup { min-height: 380px; margin: 42px 0 32px; position: relative; display: grid; grid-template-columns: 1fr 120px 1fr; align-items: center; }
.mock-profile, .mock-company { height: 270px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.72); padding: 28px; display: flex; flex-direction: column; gap: 17px; box-shadow: 0 22px 55px rgba(39,40,45,.07); }
.mock-profile i, .mock-company i { width: 58px; height: 58px; border-radius: 50%; background: linear-gradient(135deg, rgba(0,155,165,.3), rgba(134,88,212,.18)); }
.mock-company i { border-radius: 14px; background: linear-gradient(135deg, rgba(239,109,93,.26), rgba(134,88,212,.17)); }
.mock-profile span, .mock-company span { height: 8px; background: rgba(32,33,38,.08); border-radius: 99px; }
.mock-profile span:nth-of-type(1), .mock-company span:nth-of-type(1) { width: 85%; }.mock-profile span:nth-of-type(2), .mock-company span:nth-of-type(2) { width: 65%; }.mock-profile span:nth-of-type(3), .mock-company span:nth-of-type(3) { margin-top: 35px; width: 100%; }
.mock-bridge { display: flex; flex-direction: column; gap: 45px; align-items: center; }
.mock-bridge b { display: block; width: 82px; height: 1px; background: linear-gradient(90deg, var(--cyan), var(--violet), var(--coral)); position: relative; }
.mock-bridge b::after { content: ""; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-radius: 50%; background: var(--coral); }
.proof-feature h3 { font-size: 2.1rem; margin-bottom: 10px; }
.proof-feature > p { color: var(--muted); max-width: 600px; }
.proof-stack { display: grid; gap: 24px; }
.proof-stack article { padding: 34px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.62); display: grid; grid-template-columns: 62px 1fr; gap: 16px; align-items: start; }
.proof-stack article:first-child { background: linear-gradient(145deg, rgba(134,88,212,.08), rgba(255,255,255,.75)); }
.proof-stack article:last-child { background: linear-gradient(145deg, rgba(239,109,93,.08), rgba(255,255,255,.75)); }
.proof-index { color: var(--muted-2); font-size: .66rem; letter-spacing: .16em; }
.proof-stack h3 { font-size: 1.45rem; line-height: 1.2; margin: 12px 0; }
.proof-stack p:last-child { color: var(--muted); font-size: .88rem; }
.section-action { display: flex; justify-content: flex-end; margin-top: 40px; }
.publications-preview { padding: 140px 0; background: rgba(255,255,255,.52); border-block: 1px solid var(--line); }
.publication-grid { display: grid; grid-template-columns: 1.35fr .825fr .825fr; gap: 22px; }
.publication-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.65); overflow: hidden; text-decoration: none; transition: transform .25s, box-shadow .25s; }
.publication-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.publication-art { min-height: 250px; padding: 25px; display: flex; flex-direction: column; justify-content: space-between; position: relative; overflow: hidden; }
.publication-art::after { content: ""; position: absolute; width: 200px; height: 200px; border: 1px solid rgba(32,33,38,.14); border-radius: 50%; right: -60px; bottom: -80px; }
.publication-featured .publication-art { min-height: 360px; }
.publication-art span { color: rgba(32,33,38,.55); font-size: .64rem; letter-spacing: .16em; }
.publication-art b { font-size: clamp(1.8rem, 3vw, 3rem); line-height: .95; letter-spacing: -.03em; font-weight: 620; }
.article-art-one { background: linear-gradient(145deg, rgba(0,155,165,.19), rgba(134,88,212,.11), rgba(255,255,255,.68)); }
.article-art-two { background: linear-gradient(145deg, rgba(239,109,93,.18), rgba(255,255,255,.72)); }
.article-art-three { background: linear-gradient(145deg, rgba(134,88,212,.17), rgba(255,255,255,.72)); }
.publication-card-copy { padding: 28px; display: flex; flex-direction: column; flex: 1; }
.article-meta { color: var(--muted-2); font-size: .65rem; letter-spacing: .09em; text-transform: uppercase; }
.publication-card h3 { font-size: 1.4rem; line-height: 1.17; margin: 18px 0 12px; }
.publication-featured h3 { font-size: 2rem; }
.publication-card p { color: var(--muted); font-size: .88rem; }
.read-link { margin-top: auto; padding-top: 24px; font-size: .78rem; font-weight: 700; }
.newsletter-band { padding: 72px 0; background: linear-gradient(105deg, rgba(0,155,165,.10), rgba(134,88,212,.10) 52%, rgba(239,109,93,.11)); border-block: 1px solid var(--line); }
.newsletter-grid { display: grid; grid-template-columns: 1.15fr .75fr auto; gap: 65px; align-items: center; }
.newsletter-grid h2 { font-size: clamp(2rem, 3.5vw, 3.5rem); margin: 10px 0 0; }
.newsletter-grid > p { color: var(--muted); margin: 0; }
.inner-page { padding-top: 0; }
.page-hero { min-height: 780px; padding: 190px 0 110px; position: relative; overflow: hidden; }
.page-hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(29,31,37,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(29,31,37,.03) 1px, transparent 1px); background-size: 72px 72px; mask-image: linear-gradient(to bottom, black, transparent 90%); }
.page-hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: 80px; align-items: center; position: relative; }
.page-hero h1 { font-size: clamp(3.5rem, 6.4vw, 6.3rem); }
.page-section { padding: 130px 0; }
.service-visual { min-height: 510px; position: relative; }
.service-core { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 175px; height: 175px; display: grid; place-content: center; text-align: center; border-radius: 50%; background: linear-gradient(145deg, rgba(0,155,165,.18), rgba(134,88,212,.16), rgba(239,109,93,.14)); border: 1px solid var(--line-strong); font-size: .68rem; letter-spacing: .13em; box-shadow: var(--shadow); }
.service-core strong { font-size: 1.05rem; margin-top: 7px; }
.service-line { position: absolute; left: 50%; top: 50%; border-radius: 50%; border: 1px solid var(--line-strong); transform: translate(-50%,-50%); }
.line-a { width: 390px; height: 390px; }.line-b { width: 510px; height: 510px; border-style: dashed; }
.service-node { position: absolute; width: 105px; height: 105px; border-radius: 50%; display: grid; place-content: center; background: rgba(255,255,255,.85); border: 1px solid var(--line); font-size: .6rem; letter-spacing: .12em; box-shadow: 0 18px 45px rgba(39,40,45,.08); }
.s-node-a { top: 15px; left: calc(50% - 52px); }.s-node-b { right: 0; top: calc(50% - 52px); }.s-node-c { bottom: 15px; left: calc(50% - 52px); }.s-node-d { left: 0; top: calc(50% - 52px); }
.deliverable-block { margin-top: 28px; }.deliverable-block > span { font-size: .67rem; color: var(--muted-2); text-transform: uppercase; letter-spacing: .13em; }
.output-chip { margin-top: auto; padding: 15px 17px; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.62); color: var(--muted); font-size: .75rem; }
.timeline-section { padding: 130px 0; background: rgba(235,232,223,.68); border-block: 1px solid var(--line); }
.month-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.month-grid article { min-height: 390px; padding: 32px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.7); display: flex; flex-direction: column; }
.month-grid article:nth-child(2) { background: linear-gradient(145deg, rgba(0,155,165,.09), rgba(255,255,255,.73)); }.month-grid article:nth-child(3) { background: linear-gradient(145deg, rgba(134,88,212,.09), rgba(239,109,93,.05), rgba(255,255,255,.73)); }
.month-number { font-size: .68rem; letter-spacing: .17em; color: var(--muted-2); margin-bottom: 90px; }
.month-grid h3 { font-size: 1.75rem; line-height: 1.15; margin: 12px 0 17px; }.month-grid p:last-child { color: var(--muted); }
.timeline-note { max-width: 820px; margin: 34px 0 0 auto; padding-left: 20px; border-left: 1px solid var(--cyan); color: var(--muted); font-size: .84rem; }
.investment-section { padding: 140px 0; }
.investment-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 110px; }
.investment-list { border-top: 1px solid var(--line); }.investment-list div { display: grid; grid-template-columns: 70px 1fr; align-items: center; min-height: 95px; border-bottom: 1px solid var(--line); }.investment-list span { color: var(--cyan); font-size: .65rem; }.investment-list p { margin: 0; font-size: 1.02rem; }
.page-cta { padding: 125px 0; }.page-cta-card { padding: 70px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(135deg, rgba(255,255,255,.8), rgba(0,155,165,.08), rgba(134,88,212,.07), rgba(239,109,93,.07)); box-shadow: var(--shadow); }.page-cta-card h2 { max-width: 900px; }
.proof-seal { min-height: 490px; display: grid; place-items: center; position: relative; }.proof-seal::before,.proof-seal::after { content: ""; position:absolute; border-radius:50%; border:1px solid var(--line-strong); }.proof-seal::before{width:430px;height:430px}.proof-seal::after{width:310px;height:310px;border-style:dashed}.proof-seal div{width:205px;height:205px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(145deg,rgba(255,255,255,.85),rgba(0,155,165,.09),rgba(239,109,93,.08));border:1px solid var(--line);box-shadow:var(--shadow);font-size:.65rem;letter-spacing:.16em}.proof-seal strong{font-size:2rem;color:var(--coral)}
.evidence-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:18px }.evidence-grid article{min-height:430px;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.65);display:flex;flex-direction:column}.evidence-grid article:nth-child(2){background:linear-gradient(150deg,rgba(0,155,165,.08),rgba(255,255,255,.72))}.evidence-grid article:nth-child(3){background:linear-gradient(150deg,rgba(134,88,212,.08),rgba(255,255,255,.72))}.evidence-grid article:nth-child(4){background:linear-gradient(150deg,rgba(239,109,93,.08),rgba(255,255,255,.72))}.evidence-grid>article>span{color:var(--muted-2);font-size:.65rem;letter-spacing:.17em;margin-bottom:70px}.evidence-grid h3{font-size:1.35rem;line-height:1.18;margin:12px 0}.evidence-grid p:not(.layer-label){color:var(--muted);font-size:.86rem}.evidence-status{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);color:var(--muted-2);font-size:.67rem;text-transform:uppercase;letter-spacing:.1em}.evidence-status-live{color:#0b7c82}
.artifact-demo-section{padding:140px 0;background:rgba(235,232,223,.65);border-block:1px solid var(--line)}.artifact-demo-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px;align-items:center}.artifact-demo-grid>div:first-child>p:not(.section-index,.kicker){color:var(--muted)}.artifact-canvas{min-height:620px;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.72);box-shadow:var(--shadow)}.artifact-head{display:flex;justify-content:space-between;color:var(--muted-2);font-size:.6rem;letter-spacing:.14em}.artifact-map{height:520px;position:relative}.artifact-map svg{position:absolute;inset:0;width:100%;height:100%}.artifact-map path{fill:none;stroke:rgba(32,33,38,.19);stroke-width:1.5;stroke-dasharray:5 5}.artifact-item,.artifact-hub{position:absolute;z-index:2;background:#fff;border:1px solid var(--line);box-shadow:0 18px 45px rgba(39,40,45,.08)}.artifact-item{width:165px;height:90px;border-radius:14px;display:flex;align-items:center;gap:13px;padding:15px;font-size:.76rem}.artifact-item i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(0,155,165,.1);color:var(--cyan);font-style:normal}.founder{left:20px;top:35px}.experts{right:15px;top:50px}.company{left:70px;bottom:35px}.artifact-hub{left:50%;top:50%;transform:translate(-50%,-50%);width:145px;height:145px;border-radius:50%;display:grid;place-content:center;text-align:center;font-size:.68rem;letter-spacing:.12em;background:linear-gradient(145deg,rgba(0,155,165,.15),rgba(134,88,212,.12),rgba(239,109,93,.11))}
.claims-section{padding:140px 0}.claims-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:110px}.claims-list{border-top:1px solid var(--line)}.claims-list>div{display:grid;grid-template-columns:65px .42fr 1fr;gap:25px;align-items:center;min-height:115px;border-bottom:1px solid var(--line)}.claims-list span{color:var(--cyan);font-size:.65rem}.claims-list p{margin:0;color:var(--muted);font-size:.87rem}
.publication-tower{min-height:510px;position:relative;perspective:900px}.publication-tower article{position:absolute;left:50%;top:50%;width:290px;height:390px;padding:24px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.75);font-size:.65rem;letter-spacing:.15em;box-shadow:0 26px 60px rgba(39,40,45,.09)}.publication-tower article:nth-child(1){transform:translate(-58%,-50%) rotate(-10deg)}.publication-tower article:nth-child(2){transform:translate(-50%,-52%) rotate(-3deg);background:linear-gradient(145deg,rgba(0,155,165,.11),rgba(255,255,255,.78))}.publication-tower article:nth-child(3){transform:translate(-41%,-50%) rotate(5deg);background:linear-gradient(145deg,rgba(134,88,212,.11),rgba(255,255,255,.78))}.publication-tower article:nth-child(4){transform:translate(-31%,-46%) rotate(11deg);background:linear-gradient(145deg,rgba(239,109,93,.11),rgba(255,255,255,.78))}
.library-tools{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:55px}.library-tools h2{max-width:720px}.filter-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.filter-chips span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.66rem}.filter-chips .is-active{background:var(--text);color:white;border-color:var(--text)}
.library-feature{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;text-decoration:none;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:rgba(255,255,255,.72);margin-bottom:26px;transition:transform .25s,box-shadow .25s}.library-feature:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.library-feature-art{min-height:500px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,rgba(0,155,165,.18),rgba(134,88,212,.11),rgba(255,255,255,.65));position:relative;overflow:hidden}.library-feature-art::after{content:"";position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid rgba(32,33,38,.13);right:-130px;bottom:-150px}.library-feature-art span,.library-feature-art i{font-size:.65rem;letter-spacing:.15em;color:var(--muted);font-style:normal}.library-feature-art strong{font-size:clamp(2.4rem,4.5vw,4.5rem);line-height:.91;letter-spacing:-.045em}.library-feature>div:last-child{padding:50px}.library-feature h3{font-size:2.5rem;line-height:1.08;margin:17px 0}.library-feature p{color:var(--muted)}
.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.library-card{display:flex;flex-direction:column;min-height:570px;padding:18px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.65);text-decoration:none;transition:transform .25s,box-shadow .25s}.library-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.mini-art{min-height:260px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:25px;border-radius:14px;position:relative;overflow:hidden}.mini-art::after{content:"";position:absolute;width:170px;height:170px;border:1px solid rgba(32,33,38,.13);border-radius:50%;right:-60px;bottom:-75px}.mini-art span{font-size:.62rem;color:var(--muted)}.mini-art strong{font-size:1.75rem;line-height:.95}.art-a{background:rgba(239,109,93,.12)}.art-b{background:rgba(0,155,165,.12)}.art-c{background:rgba(134,88,212,.12)}.art-d{background:linear-gradient(145deg,rgba(83,104,223,.12),rgba(255,255,255,.65))}.art-e{background:linear-gradient(145deg,rgba(111,159,54,.12),rgba(255,255,255,.65))}.art-f{background:linear-gradient(145deg,rgba(239,109,93,.1),rgba(134,88,212,.09),rgba(255,255,255,.65))}.library-card h3{font-size:1.45rem;line-height:1.17;margin:15px 5px 10px}.library-card>p{color:var(--muted);font-size:.84rem;margin-inline:5px}.library-card>.article-meta,.library-card>.read-link{margin-inline:5px}.newsletter-band-large{padding:100px 0}
.article-header{padding:165px 0 90px;border-bottom:1px solid var(--line)}.article-header-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:85px;align-items:end}.breadcrumb{display:inline-block;margin-bottom:55px;color:var(--muted);font-size:.8rem;text-decoration:none}.article-header h1{font-size:clamp(3.4rem,6vw,6rem);margin-bottom:28px}.article-deck{max-width:760px;color:var(--muted);font-size:1.15rem}.article-byline{display:flex;flex-wrap:wrap;gap:25px;margin-top:36px;color:var(--muted-2);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.article-hero-art{min-height:540px;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,rgba(0,155,165,.16),rgba(134,88,212,.12),rgba(239,109,93,.11),rgba(255,255,255,.67));display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow);position:relative;overflow:hidden}.article-hero-art::after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(32,33,38,.14);border-radius:50%;right:-130px;bottom:-140px}.article-hero-art span{font-size:.65rem;letter-spacing:.15em;color:var(--muted)}.article-hero-art strong{font-size:clamp(2.5rem,4.2vw,4.25rem);line-height:.9;letter-spacing:-.04em}.article-hero-art i{font-size:2rem;font-style:normal;color:var(--cyan)}
.article-layout{display:grid;grid-template-columns:190px minmax(0,700px) 250px;gap:55px;padding-top:100px;padding-bottom:120px;align-items:start}.rail-sticky,.newsletter-card{position:sticky;top:120px}.article-rail a{display:block;color:var(--muted);font-size:.73rem;text-decoration:none;padding:8px 0}.article-rail a:hover{color:var(--text)}.rail-share{display:flex;align-items:center;gap:8px;margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.rail-share>span{font-size:.6rem;color:var(--muted-2);letter-spacing:.13em;margin-right:auto}.rail-share button{width:31px;height:31px;border:1px solid var(--line);border-radius:50%;background:transparent;font-size:.65rem}.article-content{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;line-height:1.85;color:#34363b}.article-lead{font-size:1.45rem;line-height:1.6;color:var(--text)}.article-content section{scroll-margin-top:120px;margin:80px 0}.article-content h2{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:clamp(2.2rem,4vw,3.55rem);line-height:1.07}.article-content .section-index,.article-content .layer-label{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.article-content blockquote{margin:75px 0;padding:36px 40px;border-left:2px solid var(--coral);background:rgba(239,109,93,.06);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.article-content blockquote span{display:block;font-size:3rem;line-height:.6;color:var(--coral)}.article-content blockquote p{font-size:1.55rem;line-height:1.35;margin:20px 0 0}.article-diagram{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:40px 0}.article-diagram>div{padding:22px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.64);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.article-diagram span{font-size:.6rem;color:var(--cyan)}.article-diagram strong{display:block;font-size:1rem;margin:25px 0 10px}.article-diagram p{font-size:.75rem;line-height:1.5;color:var(--muted);margin:0}.evidence-note{margin:70px 0;padding:28px;border:1px solid rgba(0,155,165,.28);border-radius:16px;background:rgba(0,155,165,.06);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.evidence-note h3{font-size:1.25rem;margin:12px 0}.evidence-note p:last-child{font-size:.86rem;line-height:1.65;color:var(--muted);margin-bottom:0}.model-steps{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:35px 0}.model-steps>div{padding:22px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.62);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.model-steps span{font-size:.6rem;color:var(--cyan)}.model-steps strong{display:block;margin:18px 0 8px}.model-steps p{font-size:.75rem;line-height:1.5;color:var(--muted);margin:0}.article-end{padding:25px 0;border-top:1px solid var(--line);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.article-end p:last-child{font-size:.82rem;color:var(--muted)}.newsletter-card{padding:25px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,rgba(134,88,212,.09),rgba(239,109,93,.08),rgba(255,255,255,.72))}.newsletter-card>span{display:inline-block;margin:28px 0 12px;color:var(--coral);font-size:.64rem;letter-spacing:.14em}.newsletter-card h3{font-size:1.35rem;line-height:1.15}.newsletter-card p{color:var(--muted);font-size:.78rem}.newsletter-card .text-link{font-size:.75rem}.article-footer{padding:100px 0 125px;background:rgba(235,232,223,.68);border-top:1px solid var(--line)}.author-panel{display:grid;grid-template-columns:85px 1fr;gap:25px;max-width:720px;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.66)}.author-mark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,rgba(0,155,165,.18),rgba(134,88,212,.15));font-weight:800}.author-panel h3{margin:8px 0}.author-panel p:last-child{color:var(--muted);font-size:.86rem}.related-heading{margin:100px 0 35px}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.related-grid a{min-height:210px;padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.66);text-decoration:none}.related-grid span{font-size:.65rem;color:var(--cyan);text-transform:uppercase;letter-spacing:.1em}.related-grid h3{font-size:1.65rem;line-height:1.17;margin-top:45px}

@media (max-width: 1100px) {
  .publication-grid { grid-template-columns: 1fr 1fr; }.publication-featured { grid-column: 1 / -1; display:grid; grid-template-columns:1fr 1fr; }.publication-featured .publication-art{min-height:330px}
  .evidence-grid{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:150px minmax(0,1fr)}.article-side{display:none}.artifact-demo-grid{gap:55px}
}
@media (max-width: 980px) {
  .offer-grid,.compounding-grid,.proof-stage,.page-hero-grid,.investment-grid,.artifact-demo-grid,.claims-grid,.article-header-grid{grid-template-columns:1fr}.offer-card{min-height:650px}.signal-strip-grid{grid-template-columns:repeat(3,1fr)}.signal-strip-grid span{padding:14px 0;border-bottom:1px solid var(--line)}.newsletter-grid{grid-template-columns:1fr;gap:25px}.page-hero{min-height:auto}.service-visual,.proof-seal,.publication-tower{min-height:520px}.month-grid{grid-template-columns:1fr}.month-grid article{min-height:330px}.month-number{margin-bottom:55px}.publication-grid,.library-grid{grid-template-columns:1fr 1fr}.library-feature{grid-template-columns:1fr}.library-tools{align-items:flex-start;flex-direction:column}.filter-chips{justify-content:flex-start}.artifact-demo-grid{gap:65px}.claims-grid{gap:55px}.article-header-grid{align-items:start}.article-hero-art{min-height:430px}.article-layout{grid-template-columns:1fr;max-width:760px}.article-rail{display:none}.footer-grid-rich{grid-template-columns:1fr 1fr}.footer-meta{grid-column:1/-1;align-items:flex-start}.publication-featured{display:flex;grid-column:auto}
}
@media (max-width:720px){
  .offer-card{padding:28px 23px;min-height:auto}.offer-card-top{margin-bottom:58px}.compounding-orbit{min-height:430px;transform:scale(.78);margin-inline:-65px}.proof-stage,.publication-grid,.library-grid,.evidence-grid{grid-template-columns:1fr}.proof-feature{min-height:auto;padding:25px}.proof-mockup{grid-template-columns:1fr;gap:18px}.mock-profile,.mock-company{height:220px}.mock-bridge{flex-direction:row;gap:15px}.mock-bridge b{width:60px}.publication-featured{display:flex}.publication-card{min-height:auto}.newsletter-grid{grid-template-columns:1fr}.footer-grid-rich{grid-template-columns:1fr}.footer-meta{grid-column:auto}.service-visual{transform:scale(.75);margin-inline:-60px}.page-hero{padding-top:135px}.page-cta-card{padding:40px 24px}.artifact-canvas{min-height:510px;padding:18px}.artifact-map{height:430px}.artifact-item{width:130px;height:78px;font-size:.67rem}.founder{left:0}.experts{right:0}.company{left:20px}.artifact-hub{width:115px;height:115px}.claims-list>div{grid-template-columns:42px 1fr;padding:22px 0}.claims-list p{grid-column:2}.library-feature>div:last-child{padding:28px}.library-feature-art{min-height:360px}.library-feature h3{font-size:2rem}.article-header{padding-top:125px}.article-hero-art{min-height:380px}.article-layout{padding-top:65px}.article-content{font-size:1rem}.article-lead{font-size:1.24rem}.article-content blockquote{padding:28px 24px;margin:55px 0}.article-content blockquote p{font-size:1.25rem}.article-diagram,.model-steps,.related-grid{grid-template-columns:1fr}.article-byline{gap:12px}.author-panel{grid-template-columns:1fr}.page-section,.offer-section,.proof-preview,.publications-preview,.compounding-section,.timeline-section,.investment-section,.artifact-demo-section,.claims-section{padding-block:90px}
}
@media print {
  body::before,.skip-link,.nav-toggle,.hero-actions,.section-action,.newsletter-card,.rail-share{display:none!important}
  .site-header{position:static;border-bottom:1px solid var(--line)}
  .nav-shell{height:64px}.nav-links .button{color:var(--text);background:none;box-shadow:none}
  [data-reveal]{opacity:1!important;transform:none!important}.page-hero,.hero{padding-top:70px;min-height:auto}.article-layout{display:block}.article-rail,.article-side{display:none}.article-content{max-width:100%}
  a{text-decoration:none}.site-footer{break-before:auto}
}

/* v0.0.4 - component refinement and editorial polish */
:root {
  --surface-highlight: rgba(255,255,255,.92);
  --surface-glass: rgba(255,255,255,.68);
  --shadow-card: 0 18px 48px rgba(39,40,45,.08), 0 2px 8px rgba(39,40,45,.035);
  --shadow-card-hover: 0 28px 70px rgba(39,40,45,.13), 0 4px 12px rgba(39,40,45,.05);
}

/* Make repeated information bands read as designed UI, not loose copy. */
.signal-strip { padding: 14px 0; background: rgba(255,255,255,.58); }
.signal-strip-grid { min-height: auto; gap: 10px; }
.signal-strip-grid span {
  min-height: 42px; padding: 0 12px; border: 1px solid var(--line); border-radius: 999px;
  display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.68);
  border-right: 1px solid var(--line); position: relative; overflow: hidden;
}
.signal-strip-grid span::before {
  content: ""; width: 5px; height: 5px; margin-right: 9px; border-radius: 50%; background: var(--cyan);
  box-shadow: 0 0 0 4px rgba(0,155,165,.08);
}
.signal-strip-grid span:nth-child(2n)::before { background: var(--violet); box-shadow: 0 0 0 4px rgba(134,88,212,.08); }
.signal-strip-grid span:nth-child(3n)::before { background: var(--coral); box-shadow: 0 0 0 4px rgba(239,109,93,.08); }

/* Offer cards: give each tier a visual header, clear hierarchy and contained deliverables. */
.offer-grid { gap: 28px; }
.offer-card {
  min-height: 760px; padding: 0 38px 36px; border-color: rgba(32,33,38,.16);
  background: rgba(255,255,255,.74); box-shadow: var(--shadow-card); isolation: isolate;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.offer-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); border-color: rgba(32,33,38,.24); }
.offer-card::before { width: 430px; height: 260px; right: -180px; top: -150px; opacity: .15; z-index: -1; }
.offer-card::after {
  content: ""; position: absolute; inset: 0; pointer-events: none; z-index: -1;
  background: linear-gradient(90deg, transparent 0 97%, rgba(32,33,38,.025) 97%), linear-gradient(rgba(32,33,38,.025) 1px, transparent 1px);
  background-size: 54px 54px; mask-image: linear-gradient(to bottom, black, transparent 36%);
}
.offer-card-a { background: linear-gradient(155deg, rgba(0,155,165,.11), rgba(255,255,255,.9) 38%, rgba(255,255,255,.72)); }
.offer-card-b { background: linear-gradient(155deg, rgba(134,88,212,.11), rgba(239,109,93,.055) 24%, rgba(255,255,255,.9) 40%, rgba(255,255,255,.72)); }
.offer-card-top {
  min-height: 122px; margin: 0 -38px 42px; padding: 25px 30px 24px; align-items: flex-end;
  border-bottom: 1px solid var(--line); background: rgba(255,255,255,.42); position: relative;
}
.offer-card-top::before {
  content: "OFFER"; position: absolute; top: 22px; left: 31px; color: var(--muted-2);
  font-size: .56rem; letter-spacing: .2em;
}
.offer-number {
  font-size: 3.4rem; line-height: .78; letter-spacing: -.075em; font-weight: 650; color: var(--text);
  text-shadow: 0 1px 0 rgba(255,255,255,.6);
}
.offer-card-a .offer-number { color: #087f87; }
.offer-card-b .offer-number { color: #7045b4; }
.status-pill {
  min-height: 34px; padding: 0 14px 0 11px; font-weight: 760; background: rgba(255,255,255,.82);
  box-shadow: 0 8px 22px rgba(39,40,45,.06); letter-spacing: .08em;
}
.status-pill::before { content: ""; width: 7px; height: 7px; border-radius: 50%; margin-right: 8px; background: var(--cyan); box-shadow: 0 0 0 4px rgba(0,155,165,.09); }
.status-pill-accent::before { background: var(--violet); box-shadow: 0 0 0 4px rgba(134,88,212,.09); }
.offer-track { position: absolute; left: 31px; right: 31px; bottom: -1px; display: grid; grid-template-columns: 1.2fr .7fr .35fr; gap: 5px; }
.offer-track i { height: 2px; background: var(--cyan); opacity: .8; }
.offer-track i:nth-child(2) { background: var(--violet); opacity: .58; }
.offer-track i:nth-child(3) { background: var(--coral); opacity: .5; }
.offer-card > .layer-label {
  width: fit-content; padding: 8px 11px; margin-bottom: 3px; border: 1px solid rgba(32,33,38,.12); border-radius: 8px;
  background: rgba(255,255,255,.58); color: #4e5159; font-weight: 720;
}
.offer-card > .layer-label::before { content: "◆"; margin-right: 8px; color: var(--cyan); font-size: .55rem; }
.offer-card-b > .layer-label::before { color: var(--coral); }
.offer-card h3 { margin-top: 17px; }
.offer-card > p:not(.layer-label) { font-size: .98rem; line-height: 1.7; }
.offer-card .clean-list {
  margin: 32px 0 30px; padding: 8px 18px; border: 1px solid var(--line); border-radius: 16px;
  background: rgba(255,255,255,.56); box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.offer-card .clean-list li { padding: 14px 4px 14px 31px; border-top: 1px solid rgba(32,33,38,.09); }
.offer-card .clean-list li:first-child { border-top: 0; }
.offer-card .clean-list li:last-child { border-bottom: 0; }
.offer-card .clean-list li::before {
  content: ""; width: 14px; height: 14px; left: 1px; top: 17px; border: 1px solid rgba(0,155,165,.38); border-radius: 4px;
  background: linear-gradient(135deg, rgba(0,155,165,.18), rgba(255,255,255,.58)); box-shadow: inset 0 0 0 3px rgba(255,255,255,.72);
}
.offer-card-b .clean-list li::before { border-color: rgba(239,109,93,.38); background: linear-gradient(135deg, rgba(239,109,93,.18), rgba(255,255,255,.58)); }
.term-note {
  position: relative; overflow: hidden; padding: 20px 20px 20px 52px; margin: -4px 0 28px;
  background: linear-gradient(135deg, rgba(134,88,212,.09), rgba(239,109,93,.06), rgba(255,255,255,.72));
  border-color: rgba(134,88,212,.18); box-shadow: inset 0 1px 0 rgba(255,255,255,.75);
}
.term-note::before {
  content: "↗"; position: absolute; left: 17px; top: 19px; width: 24px; height: 24px; border-radius: 50%;
  display: grid; place-items: center; color: #fff; background: linear-gradient(135deg,var(--violet),var(--coral)); font-size: .72rem;
}
.term-note strong { font-size: .9rem; }
.offer-card .text-link {
  width: 100%; min-height: 48px; padding: 0 4px 0 16px; border: 1px solid var(--line); border-radius: 12px;
  justify-content: space-between; background: rgba(255,255,255,.68); box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.offer-card .text-link span { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; color: #fff; background: var(--text); }
.offer-card .text-link:hover { border-color: rgba(0,155,165,.35); background: #fff; }

/* Supporting offer-page components. */
.deliverable-block {
  padding: 18px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.52);
}
.deliverable-block > span { display: inline-flex; align-items: center; gap: 8px; font-weight: 720; }
.deliverable-block > span::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--cyan); }
.output-chip {
  position: relative; padding: 18px 18px 18px 50px; border-radius: 14px; background: rgba(255,255,255,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.output-chip::before { content: "✓"; position: absolute; left: 17px; top: 16px; width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; background: rgba(0,155,165,.12); color: #087f87; font-weight: 800; }
.month-grid { position: relative; gap: 24px; }
.month-grid::before { content: ""; position: absolute; left: 8%; right: 8%; top: 61px; height: 1px; background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); opacity: .35; }
.month-grid article {
  min-height: 420px; padding: 30px; position: relative; overflow: hidden; border-color: rgba(32,33,38,.15);
  box-shadow: var(--shadow-card); transition: transform .25s, box-shadow .25s;
}
.month-grid article:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.month-grid article::after { content: ""; position: absolute; width: 180px; height: 180px; border: 1px solid rgba(32,33,38,.08); border-radius: 50%; right: -90px; bottom: -95px; }
.month-number {
  width: 64px; height: 64px; margin: 0 0 66px; border-radius: 50%; display: grid; place-items: center; z-index: 1;
  background: var(--panel-solid); border: 1px solid var(--line-strong); color: var(--text); font-size: .62rem; box-shadow: 0 13px 30px rgba(39,40,45,.08);
}
.month-grid article:nth-child(1) .month-number { border-color: rgba(0,155,165,.35); }
.month-grid article:nth-child(2) .month-number { border-color: rgba(134,88,212,.35); }
.month-grid article:nth-child(3) .month-number { border-color: rgba(239,109,93,.35); }
.investment-list { border-top: 0; display: grid; gap: 12px; }
.investment-list div {
  min-height: 84px; grid-template-columns: 58px 1fr; padding: 12px 20px; border: 1px solid var(--line); border-radius: 15px;
  background: rgba(255,255,255,.58); box-shadow: inset 0 1px 0 rgba(255,255,255,.8); transition: transform .2s, background .2s;
}
.investment-list div:hover { transform: translateX(5px); background: rgba(255,255,255,.9); }
.investment-list span { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; background: rgba(0,155,165,.1); font-weight: 780; }

/* Proof components: stronger evidence hierarchy and less spreadsheet-like rows. */
.proof-stack article {
  min-height: 323px; padding: 30px; grid-template-columns: 78px 1fr; border-color: rgba(32,33,38,.15);
  box-shadow: var(--shadow-card); overflow: hidden; position: relative;
}
.proof-stack article::after { content: ""; position: absolute; width: 170px; height: 170px; border-radius: 50%; border: 1px solid rgba(32,33,38,.08); right: -80px; bottom: -90px; }
.proof-index {
  width: 58px; height: 58px; border: 1px solid var(--line-strong); border-radius: 16px; display: grid; place-items: center;
  color: var(--text); font-size: 1.05rem; font-weight: 650; background: rgba(255,255,255,.68);
}
.proof-stack article:first-child .proof-index { color: var(--violet); border-color: rgba(134,88,212,.28); }
.proof-stack article:last-child .proof-index { color: var(--coral); border-color: rgba(239,109,93,.28); }
.evidence-grid { gap: 22px; }
.evidence-grid article {
  min-height: 455px; padding: 0 27px 28px; border-color: rgba(32,33,38,.15); box-shadow: var(--shadow-card);
  overflow: hidden; position: relative; transition: transform .25s, box-shadow .25s;
}
.evidence-grid article:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.evidence-grid article::before { content: ""; display: block; height: 5px; margin: 0 -27px 24px; background: var(--cyan); opacity: .72; }
.evidence-grid article:nth-child(2)::before { background: var(--violet); }
.evidence-grid article:nth-child(3)::before { background: var(--coral); }
.evidence-grid article:nth-child(4)::before { background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); }
.evidence-grid > article > span {
  width: 46px; height: 46px; margin: 0 0 48px; border-radius: 14px; display: grid; place-items: center;
  color: var(--text); font-size: .72rem; font-weight: 760; background: rgba(255,255,255,.72); border: 1px solid var(--line);
}
.evidence-grid .layer-label { color: #555861; font-weight: 750; }
.evidence-status {
  width: fit-content; padding: 8px 10px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,.62);
}
.evidence-status::before { content: "○"; margin-right: 7px; }
.evidence-status-live::before { content: "●"; color: var(--cyan); }
.claims-list { border-top: 0; display: grid; gap: 12px; }
.claims-list > div {
  min-height: 100px; grid-template-columns: 48px .4fr 1fr; gap: 22px; padding: 18px 22px;
  border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.58); transition: transform .2s, background .2s;
}
.claims-list > div:hover { transform: translateX(5px); background: rgba(255,255,255,.9); }
.claims-list span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: rgba(0,155,165,.1); font-weight: 780; }
.trigger-list { border-top: 0; display: grid; gap: 10px; }
.trigger-list div {
  min-height: 76px; grid-template-columns: 58px 1fr; padding: 10px 18px; border: 1px solid var(--line); border-radius: 14px;
  background: rgba(255,255,255,.48); transition: transform .2s, background .2s;
}
.trigger-list div:hover { transform: translateX(5px); background: rgba(255,255,255,.84); }
.trigger-list span { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: rgba(0,155,165,.1); font-weight: 780; }

/* Homepage publication cards: preserve the direction, improve the internal system. */
.publication-grid { gap: 24px; }
.publication-card {
  border-color: rgba(32,33,38,.15); background: rgba(255,255,255,.76); box-shadow: var(--shadow-card);
  transition: transform .25s, box-shadow .25s, border-color .25s;
}
.publication-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-card-hover); border-color: rgba(32,33,38,.23); }
.publication-art {
  min-height: 280px; margin: 12px 12px 0; border: 1px solid rgba(32,33,38,.09); border-radius: 16px;
  background-image: linear-gradient(rgba(32,33,38,.035) 1px, transparent 1px), linear-gradient(90deg,rgba(32,33,38,.035) 1px,transparent 1px);
  background-size: 38px 38px;
}
.publication-art::before { content: ""; position: absolute; width: 68px; height: 98px; right: 28px; top: 26px; border: 1px solid rgba(32,33,38,.14); transform: rotate(10deg); background: rgba(255,255,255,.24); }
.publication-art::after { width: 230px; height: 230px; right: -85px; bottom: -105px; }
.publication-featured .publication-art { min-height: 390px; }
.publication-art span {
  width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.65);
  border: 1px solid rgba(32,33,38,.12); color: var(--text); font-weight: 760; z-index: 1;
}
.publication-art b { z-index: 1; max-width: 92%; }
.publication-card-copy { padding: 28px 30px 30px; }
.article-meta { display: inline-flex; align-items: center; gap: 8px; color: #676a72; font-weight: 720; }
.article-meta::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--cyan); }
.publication-card h3 { margin-top: 16px; }
.read-link {
  width: fit-content; min-height: 37px; padding: 0 12px; border: 1px solid var(--line); border-radius: 999px;
  display: inline-flex; align-items: center; background: rgba(255,255,255,.6); transition: background .2s, border-color .2s;
}
.publication-card:hover .read-link, .library-card:hover .read-link, .library-feature:hover .read-link { background: var(--text); border-color: var(--text); color: #fff; }

/* Publications index: functional controls and a more authored editorial card system. */
.library-tools {
  align-items: center; margin-bottom: 32px; padding: 26px 28px; border: 1px solid var(--line); border-radius: 20px;
  background: rgba(255,255,255,.58); box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.library-tools h2 { margin-bottom: 0; font-size: clamp(2rem,3.5vw,3.25rem); }
.filter-chips {
  max-width: 560px; justify-content: flex-start; padding: 7px; gap: 6px; border: 1px solid var(--line); border-radius: 16px;
  background: rgba(245,243,236,.8);
}
.filter-chips button {
  min-height: 37px; padding: 0 8px 0 12px; border: 1px solid transparent; border-radius: 11px; display: inline-flex;
  align-items: center; gap: 9px; color: var(--muted); background: transparent; font: inherit; font-size: .69rem; cursor: pointer;
  transition: background .2s, color .2s, border-color .2s, transform .2s;
}
.filter-chips button:hover { background: rgba(255,255,255,.8); color: var(--text); }
.filter-chips button.is-active { color: #fff; background: var(--text); border-color: var(--text); box-shadow: 0 8px 20px rgba(32,33,38,.13); }
.filter-count {
  min-width: 24px; height: 22px; padding: 0 6px; border-radius: 7px; display: grid; place-items: center;
  background: rgba(32,33,38,.07); color: var(--muted-2); font-size: .58rem; font-weight: 760;
}
.filter-chips button.is-active .filter-count { background: rgba(255,255,255,.16); color: rgba(255,255,255,.82); }
.library-feature {
  grid-template-columns: .92fr 1.08fr; gap: 0; min-height: 535px; margin-bottom: 30px; border-color: rgba(32,33,38,.16);
  background: rgba(255,255,255,.82); box-shadow: var(--shadow-card); position: relative;
}
.library-feature:hover { transform: translateY(-5px); box-shadow: var(--shadow-card-hover); }
.library-feature::after { content: "FEATURED"; position: absolute; top: 18px; right: 18px; padding: 7px 10px; border-radius: 999px; background: var(--text); color: #fff; font-size: .56rem; letter-spacing: .13em; z-index: 3; }
.library-feature-art {
  min-height: 535px; padding: 34px; border-right: 1px solid var(--line);
  background-image: linear-gradient(rgba(32,33,38,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(32,33,38,.035) 1px,transparent 1px), linear-gradient(145deg,rgba(0,155,165,.19),rgba(134,88,212,.11),rgba(255,255,255,.72));
  background-size: 44px 44px,44px 44px,auto;
}
.library-feature-art::before { content: ""; position: absolute; width: 110px; height: 170px; right: 55px; top: 52px; border: 1px solid rgba(32,33,38,.14); background: rgba(255,255,255,.22); transform: rotate(11deg); }
.library-feature-art::after { width: 430px; height: 430px; }
.library-feature-art > span { width: fit-content; padding: 7px 9px; border: 1px solid rgba(32,33,38,.12); border-radius: 8px; background: rgba(255,255,255,.44); z-index: 1; }
.library-feature-art strong { z-index: 1; }
.library-feature-art i { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.6); border: 1px solid rgba(32,33,38,.13); color: var(--text); font-weight: 760; z-index: 1; }
.library-feature > div:last-child { padding: 54px; display: flex; flex-direction: column; align-items: flex-start; }
.library-feature h3 { margin-top: 20px; }
.library-feature p { font-size: .97rem; line-height: 1.75; }
.library-feature .read-link { margin-top: auto; }
.library-grid { gap: 24px; }
.library-card {
  min-height: 620px; padding: 0 0 24px; border-color: rgba(32,33,38,.15); background: rgba(255,255,255,.78);
  box-shadow: var(--shadow-card); overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s;
}
.library-card:hover { transform: translateY(-6px); box-shadow: var(--shadow-card-hover); border-color: rgba(32,33,38,.23); }
.mini-art {
  min-height: 300px; margin: 12px 12px 28px; padding: 22px; border: 1px solid rgba(32,33,38,.09); border-radius: 16px;
  background-image: linear-gradient(rgba(32,33,38,.035) 1px,transparent 1px), linear-gradient(90deg,rgba(32,33,38,.035) 1px,transparent 1px);
  background-size: 38px 38px;
}
.mini-art::before { content: ""; position: absolute; width: 72px; height: 105px; right: 28px; top: 25px; border: 1px solid rgba(32,33,38,.13); transform: rotate(10deg); background: rgba(255,255,255,.18); }
.mini-art::after { width: 205px; height: 205px; right: -75px; bottom: -95px; }
.mini-art span { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.63); border: 1px solid rgba(32,33,38,.11); color: var(--text); font-weight: 760; z-index: 1; }
.mini-art strong { max-width: 92%; font-size: 1.9rem; z-index: 1; }
.art-a { background-color: rgba(239,109,93,.12); }
.art-b { background-color: rgba(0,155,165,.12); }
.art-c { background-color: rgba(134,88,212,.12); }
.library-card > .article-meta, .library-card > h3, .library-card > p, .library-card > .read-link { margin-left: 26px; margin-right: 26px; }
.library-card h3 { margin-top: 17px; font-size: 1.5rem; }
.library-card > p { font-size: .87rem; line-height: 1.65; }
.library-card > .read-link { margin-top: auto; }
.library-card.is-filtered-out, .library-feature.is-filtered-out { display: none !important; }

/* Article template details should feel intentionally editorial. */
.article-diagram > div, .model-steps > div {
  position: relative; overflow: hidden; border-color: rgba(32,33,38,.14); background: rgba(255,255,255,.76); box-shadow: var(--shadow-card);
}
.article-diagram > div::before, .model-steps > div::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: var(--cyan); opacity: .68; }
.article-diagram > div:nth-child(2)::before, .model-steps > div:nth-child(2)::before { background: var(--violet); }
.article-diagram > div:nth-child(3)::before, .model-steps > div:nth-child(3)::before { background: var(--coral); }
.newsletter-card { box-shadow: var(--shadow-card); }
.author-panel { max-width: 780px; background: rgba(255,255,255,.78); box-shadow: var(--shadow-card); }
.related-grid a { position: relative; overflow: hidden; background: rgba(255,255,255,.76); box-shadow: var(--shadow-card); transition: transform .25s, box-shadow .25s; }
.related-grid a::after { content: "↗"; position: absolute; right: 24px; top: 24px; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--line); }
.related-grid a:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }

@media (max-width: 1100px) {
  .library-tools { align-items: flex-start; flex-direction: column; }
  .filter-chips { max-width: none; }
  .offer-card-top { margin-inline: -38px; }
}

@media (max-width: 980px) {
  .signal-strip-grid { grid-template-columns: repeat(3,1fr); }
  .signal-strip-grid span { border-bottom: 1px solid var(--line); }
  .library-feature { grid-template-columns: 1fr; }
  .library-feature-art { min-height: 430px; border-right: 0; border-bottom: 1px solid var(--line); }
  .library-grid { grid-template-columns: 1fr 1fr; }
  .month-grid::before { display: none; }
  .evidence-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {
  .signal-strip-grid { grid-template-columns: 1fr 1fr; }
  .signal-strip-grid span { font-size: .61rem; }
  .offer-card { padding: 0 22px 24px; }
  .offer-card-top { min-height: 108px; margin: 0 -22px 32px; padding: 23px 20px 20px; }
  .offer-card-top::before { left: 21px; }
  .offer-track { left: 21px; right: 21px; }
  .offer-number { font-size: 2.85rem; }
  .status-pill { min-height: 31px; padding-inline: 10px; font-size: .55rem; }
  .offer-card .clean-list { padding-inline: 14px; }
  .proof-stack article { min-height: auto; grid-template-columns: 58px 1fr; padding: 24px; }
  .proof-index { width: 46px; height: 46px; border-radius: 13px; }
  .library-tools { padding: 22px 18px; }
  .filter-chips { width: 100%; border-radius: 14px; }
  .filter-chips button { flex: 1 1 auto; justify-content: space-between; }
  .library-feature-art { min-height: 380px; padding: 26px; }
  .library-feature > div:last-child { padding: 30px 24px; }
  .library-grid { grid-template-columns: 1fr; }
  .library-card { min-height: auto; }
  .mini-art { min-height: 270px; }
  .evidence-grid { grid-template-columns: 1fr; }
  .claims-list > div { grid-template-columns: 44px 1fr; gap: 12px; padding: 18px; }
  .claims-list strong { align-self: center; }
  .claims-list p { grid-column: 2; }
  .investment-list div, .trigger-list div { grid-template-columns: 48px 1fr; padding-inline: 14px; }
  .month-grid article { min-height: 360px; }
}
.filter-chips button > span { padding: 0; border: 0; border-radius: 0; }
.filter-chips button > .filter-count {
  min-width: 24px; height: 22px; padding: 0 6px; border: 0; border-radius: 7px;
  display: grid; place-items: center; background: rgba(32,33,38,.07); color: var(--muted-2);
}
.filter-chips button.is-active > .filter-count { background: rgba(255,255,255,.16); color: rgba(255,255,255,.82); }

/* v0.0.5 - proof pilot: case studies as inspectable evidence objects. */
.proof-hero-v2 { min-height: 760px; }
.proof-seal-v2 { position: relative; min-height: 520px; display: grid; place-items: center; }
.proof-seal-v2::before { content: ""; position: absolute; width: 430px; height: 430px; border-radius: 50%; background: radial-gradient(circle, rgba(134,88,212,.11), rgba(0,155,165,.05) 45%, transparent 70%); filter: blur(4px); }
.seal-orbit { position: absolute; border: 1px solid var(--line-strong); border-radius: 50%; }
.seal-orbit-a { width: 370px; height: 370px; }
.seal-orbit-b { width: 490px; height: 490px; border-style: dashed; transform: rotate(17deg); }
.seal-core { position: relative; width: 205px; height: 205px; border-radius: 50%; display: grid; place-content: center; gap: 10px; text-align: center; background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(0,155,165,.12), rgba(134,88,212,.10)); border: 1px solid var(--line-strong); box-shadow: var(--shadow); z-index: 2; }
.seal-core span { font-size: .62rem; letter-spacing: .16em; color: var(--muted); }
.seal-core strong { font-size: 1.45rem; color: var(--cyan); font-weight: 500; }
.seal-node { position: absolute; width: 88px; height: 88px; border-radius: 50%; display: grid; place-items: center; background: rgba(255,255,255,.84); border: 1px solid var(--line); box-shadow: 0 18px 42px rgba(39,40,45,.08); font-style: normal; font-size: .56rem; letter-spacing: .12em; z-index: 3; }
.seal-node.node-a { top: 28px; left: calc(50% - 44px); }
.seal-node.node-b { right: 6%; bottom: 19%; color: var(--violet); }
.seal-node.node-c { left: 6%; bottom: 19%; color: var(--coral); }

.proof-case-section { padding: 135px 0 150px; border-top: 1px solid var(--line); }
.case-study-workbench { display: grid; grid-template-columns: 340px minmax(0,1fr); gap: 22px; align-items: start; }
.case-tablist { position: sticky; top: 110px; display: grid; gap: 10px; }
.case-tab { width: 100%; min-height: 126px; padding: 20px; border: 1px solid var(--line); border-radius: 18px; display: grid; grid-template-columns: 52px 1fr 26px; gap: 14px; align-items: center; text-align: left; color: var(--text); background: rgba(255,255,255,.48); font: inherit; cursor: pointer; transition: transform .22s, border-color .22s, background .22s, box-shadow .22s; }
.case-tab:hover { transform: translateX(4px); border-color: var(--line-strong); background: rgba(255,255,255,.76); }
.case-tab.is-active { border-color: rgba(32,33,38,.25); background: linear-gradient(135deg, rgba(255,255,255,.96), rgba(0,155,165,.07)); box-shadow: var(--shadow-card); }
.case-tab-number { width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; border: 1px solid var(--line); background: rgba(255,255,255,.72); color: var(--muted-2); font-size: .66rem; letter-spacing: .12em; }
.case-tab.is-active .case-tab-number { color: #fff; background: var(--text); border-color: var(--text); }
.case-tab small { display: block; margin-bottom: 7px; color: var(--cyan); font-size: .58rem; letter-spacing: .13em; text-transform: uppercase; }
.case-tab strong { display: block; font-size: .93rem; line-height: 1.35; }
.case-tab i { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; border: 1px solid var(--line); color: var(--muted-2); font-style: normal; font-size: .7rem; }
.case-tab.is-active i { color: #fff; background: var(--text); border-color: var(--text); }

.case-panels { min-width: 0; }
.case-panel { border: 1px solid var(--line); border-radius: 24px; background: rgba(255,255,255,.72); overflow: hidden; box-shadow: var(--shadow-card); }
.case-panel[hidden] { display: none; }
.case-panel-header { padding: 34px 38px 38px; border-bottom: 1px solid var(--line); background: linear-gradient(140deg, rgba(255,255,255,.92), rgba(0,155,165,.045)); }
.case-meta-row { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 42px; }
.case-meta-row > span { min-height: 29px; padding: 0 11px; border: 1px solid var(--line); border-radius: 999px; display: inline-flex; align-items: center; color: var(--muted-2); background: rgba(255,255,255,.62); font-size: .58rem; letter-spacing: .09em; text-transform: uppercase; }
.case-status i { width: 7px; height: 7px; margin-right: 8px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 4px rgba(0,155,165,.09); }
.case-title-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 48px; align-items: end; }
.case-title-grid h2 { margin: 12px 0 0; font-size: clamp(2.55rem,4vw,4.25rem); }
.case-outcome { margin: 0; padding-left: 22px; border-left: 2px solid var(--coral); color: var(--muted); font-size: 1.02rem; line-height: 1.65; }

.case-visual { position: relative; margin: 18px; border: 1px solid var(--line); border-radius: 18px; background-color: rgba(245,243,236,.72); overflow: hidden; }
.case-visual::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(32,33,38,.03) 1px,transparent 1px), linear-gradient(90deg,rgba(32,33,38,.03) 1px,transparent 1px); background-size: 42px 42px; pointer-events: none; }
.visual-label { position: relative; display: flex; justify-content: space-between; align-items: center; gap: 20px; z-index: 2; }
.visual-label span { color: var(--text); font-size: .62rem; font-weight: 760; letter-spacing: .13em; text-transform: uppercase; }
.visual-label small { color: var(--muted-2); font-size: .62rem; }
.visual-disclosure { position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); z-index: 3; padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted-2); background: rgba(255,255,255,.84); font-size: .56rem; white-space: nowrap; }

.audience-shift { min-height: 540px; padding: 34px 32px 54px; display: grid; grid-template-columns: 1fr 150px 1fr; gap: 22px; align-items: stretch; }
.audience-state { position: relative; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.72); z-index: 1; }
.audience-state > p { margin: 24px 0 0; color: var(--muted); font-size: .82rem; line-height: 1.6; }
.audience-cloud { position: relative; min-height: 330px; margin-top: 18px; border-radius: 14px; display: grid; place-items: center; overflow: hidden; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.7), transparent 66%); }
.audience-cloud::before, .audience-cloud::after { content: ""; position: absolute; border-radius: 50%; border: 1px solid var(--line); }
.audience-cloud::before { width: 220px; height: 220px; }
.audience-cloud::after { width: 300px; height: 300px; border-style: dashed; }
.audience-cloud strong { position: relative; z-index: 2; width: 118px; height: 118px; border-radius: 50%; display: grid; place-content: center; text-align: center; background: rgba(255,255,255,.88); border: 1px solid var(--line-strong); font-size: .8rem; line-height: 1.3; letter-spacing: .09em; box-shadow: 0 14px 38px rgba(39,40,45,.08); }
.audience-cloud i { position: absolute; width: 17px; height: 17px; border-radius: 50%; z-index: 3; }
.audience-cloud .peer { background: rgba(134,88,212,.76); box-shadow: 0 0 0 6px rgba(134,88,212,.08); }
.audience-cloud .buyer { background: rgba(0,155,165,.8); box-shadow: 0 0 0 6px rgba(0,155,165,.08); }
.audience-cloud .p1 { left: 18%; top: 22%; }.audience-cloud .p2 { left: 34%; top: 9%; }.audience-cloud .p3 { right: 25%; top: 15%; }.audience-cloud .p4 { right: 9%; top: 37%; }.audience-cloud .p5 { right: 21%; bottom: 17%; }.audience-cloud .p6 { left: 34%; bottom: 8%; }.audience-cloud .p7 { left: 10%; bottom: 27%; }
.audience-cloud .b1 { left: 8%; top: 48%; }.audience-cloud .b2 { right: 8%; bottom: 35%; }.audience-cloud .b3 { left: 22%; bottom: 12%; }.audience-cloud .b4 { right: 32%; top: 7%; }.audience-cloud .b5 { right: 14%; top: 25%; }.audience-cloud .b6 { right: 20%; bottom: 12%; }.audience-cloud .b7 { left: 12%; bottom: 31%; }
.shift-bridge { position: relative; z-index: 2; display: grid; place-content: center; text-align: center; }
.shift-bridge span { color: var(--cyan); font-size: .58rem; letter-spacing: .18em; }
.shift-bridge b { display: block; margin: 13px 0; font-size: 2rem; color: var(--text); font-weight: 400; }
.shift-bridge small { max-width: 120px; color: var(--muted-2); font-size: .58rem; line-height: 1.6; }

.expertise-chain { min-height: 420px; padding: 45px 34px; display: grid; grid-template-columns: repeat(7,auto); gap: 10px; align-items: stretch; }
.expertise-chain > i { position: relative; z-index: 1; display: grid; place-items: center; color: var(--muted-2); font-style: normal; }
.chain-node { position: relative; z-index: 1; width: 100%; min-width: 150px; padding: 22px; border: 1px solid var(--line); border-radius: 16px; display: flex; flex-direction: column; background: rgba(255,255,255,.74); }
.chain-node span { width: 34px; height: 34px; border-radius: 10px; display: grid; place-items: center; border: 1px solid var(--line); color: var(--muted-2); font-size: .6rem; }
.chain-node strong { margin: auto 0 13px; font-size: 1.05rem; line-height: 1.25; }
.chain-node small { color: var(--muted); line-height: 1.55; }
.chain-origin { background: linear-gradient(145deg, rgba(134,88,212,.10), rgba(255,255,255,.8)); }
.chain-result { background: linear-gradient(145deg, rgba(0,155,165,.13), rgba(255,255,255,.82)); border-color: rgba(0,155,165,.24); }

.system-shift { min-height: 520px; padding: 34px 32px; display: grid; grid-template-columns: 1fr 150px 1fr; gap: 22px; align-items: stretch; }
.system-state { position: relative; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: rgba(255,255,255,.72); z-index: 1; }
.system-state > p { margin: 22px 0 0; color: var(--muted); font-size: .82rem; line-height: 1.6; }
.system-map { position: relative; min-height: 330px; margin-top: 18px; border-radius: 14px; overflow: hidden; background: rgba(247,245,239,.65); }
.system-node { position: absolute; width: 94px; min-height: 48px; padding: 0 9px; border: 1px solid var(--line); border-radius: 12px; display: grid; place-items: center; text-align: center; background: rgba(255,255,255,.88); font-size: .56rem; letter-spacing: .08em; z-index: 3; }
.sn-linkedin { left: 14px; top: 20px; }.sn-network { right: 14px; top: 20px; }.sn-site { left: 14px; bottom: 20px; }.sn-service { right: 14px; bottom: 20px; }
.broken-line { position: absolute; width: 82px; height: 1px; background: repeating-linear-gradient(90deg, rgba(32,33,38,.22) 0 7px, transparent 7px 13px); transform-origin: left center; }
.bl1 { left: 108px; top: 44px; transform: rotate(23deg); }.bl2 { right: 102px; top: 45px; transform: rotate(145deg); }.bl3 { left: 108px; bottom: 45px; transform: rotate(-23deg); }
.system-hub { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 116px; height: 116px; border-radius: 50%; display: grid; place-content: center; text-align: center; background: linear-gradient(145deg, rgba(0,155,165,.18), rgba(134,88,212,.12), rgba(239,109,93,.12)); border: 1px solid var(--line-strong); font-size: .67rem; line-height: 1.35; letter-spacing: .08em; z-index: 3; box-shadow: 0 14px 38px rgba(39,40,45,.08); }
.system-map svg { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; }
.system-map svg path { fill: none; stroke: rgba(0,155,165,.5); stroke-width: 1.2; stroke-dasharray: 5 7; }

.case-narrative-grid { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line); }
.case-narrative-grid section { min-height: 280px; padding: 32px 34px; display: grid; grid-template-columns: 45px 1fr; gap: 18px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.case-narrative-grid section:nth-child(2n) { border-right: 0; }
.case-narrative-grid section:nth-last-child(-n+2) { border-bottom: 0; }
.case-narrative-grid section > span { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; border: 1px solid var(--line); color: var(--muted-2); font-size: .61rem; }
.case-narrative-grid section:nth-child(2) > span { color: var(--violet); }.case-narrative-grid section:nth-child(3) > span { color: var(--coral); }.case-narrative-grid section:nth-child(4) > span { color: var(--cyan); }
.case-narrative-grid h3 { margin: 12px 0 12px; font-size: 1.34rem; line-height: 1.23; }
.case-narrative-grid p:last-child { margin-bottom: 0; color: var(--muted); font-size: .86rem; line-height: 1.68; }
.case-narrative-grid mark { padding: 2px 4px; border-radius: 4px; color: #6840aa; background: rgba(134,88,212,.10); }

.evidence-signals-section { padding: 125px 0 135px; border-block: 1px solid var(--line); background: rgba(235,232,223,.58); }
.signals-heading { display: grid; grid-template-columns: 1.25fr .75fr; gap: 80px; align-items: end; margin-bottom: 55px; }
.signals-heading h2 { max-width: 820px; margin: 24px 0 0; }
.signals-heading > p { color: var(--muted); font-size: .95rem; line-height: 1.65; }
.evidence-signal-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.evidence-signal-grid article { min-height: 255px; padding: 25px; border: 1px solid var(--line); border-radius: 17px; display: flex; flex-direction: column; background: rgba(255,255,255,.62); transition: transform .22s, box-shadow .22s; }
.evidence-signal-grid article:hover { transform: translateY(-4px); box-shadow: var(--shadow-card); }
.evidence-signal-grid article > span { color: var(--muted-2); font-size: .59rem; letter-spacing: .12em; }
.evidence-signal-grid strong { margin-top: auto; font-size: 1.05rem; }
.evidence-signal-grid p { margin: 10px 0 0; color: var(--muted); font-size: .78rem; line-height: 1.55; }
.signal-icon { position: relative; width: 80px; height: 80px; margin: 26px 0 28px; border: 1px solid var(--line); border-radius: 50%; background: rgba(255,255,255,.74); }
.signal-icon::before, .signal-icon::after { content: ""; position: absolute; }
.audience-icon::before { inset: 19px; border: 1px solid var(--cyan); border-radius: 50%; box-shadow: 17px 7px 0 -9px rgba(134,88,212,.8), -13px 15px 0 -9px rgba(239,109,93,.8); }
.audience-icon::after { width: 8px; height: 8px; border-radius: 50%; background: var(--cyan); left: 36px; top: 36px; }
.profile-icon::before { width: 22px; height: 22px; border-radius: 50%; background: rgba(134,88,212,.3); left: 28px; top: 17px; }
.profile-icon::after { width: 39px; height: 23px; border: 1px solid var(--violet); border-radius: 22px 22px 8px 8px; left: 19px; bottom: 17px; }
.network-icon::before { inset: 18px; border: 1px dashed var(--cyan); border-radius: 50%; }
.network-icon::after { width: 9px; height: 9px; border-radius: 50%; background: var(--coral); left: 13px; top: 34px; box-shadow: 43px -19px 0 var(--violet), 37px 28px 0 var(--cyan); }
.pathway-icon::before { width: 42px; height: 1px; background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); left: 19px; top: 39px; }
.pathway-icon::after { width: 9px; height: 9px; border-radius: 50%; background: var(--coral); right: 15px; top: 35px; box-shadow: -45px 0 0 var(--cyan); }
.conversation-icon::before { width: 42px; height: 30px; border: 1px solid var(--violet); border-radius: 12px; left: 18px; top: 20px; }
.conversation-icon::after { width: 9px; height: 9px; border-left: 1px solid var(--violet); border-bottom: 1px solid var(--violet); transform: rotate(-35deg); left: 29px; bottom: 18px; }
.association-icon::before { width: 35px; height: 35px; border: 1px solid var(--cyan); border-radius: 50%; left: 22px; top: 22px; }
.association-icon::after { width: 19px; height: 19px; border: 1px solid var(--coral); transform: rotate(45deg); right: 10px; top: 12px; background: rgba(255,255,255,.7); }

/* Homepage proof preview - real case narratives, still compact. */
.proof-preview-v2 .section-heading { margin-bottom: 54px; }
.case-preview-stage { display: grid; grid-template-columns: 1.18fr .82fr; gap: 22px; }
.case-preview-feature { min-height: 650px; padding: 30px; border: 1px solid var(--line); border-radius: var(--radius); background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(0,155,165,.07)); box-shadow: var(--shadow-card); }
.case-preview-meta { display: flex; justify-content: space-between; align-items: center; gap: 15px; color: var(--muted-2); font-size: .6rem; letter-spacing: .12em; text-transform: uppercase; }
.case-preview-visual { min-height: 330px; margin: 32px 0; padding: 24px; border: 1px solid var(--line); border-radius: 16px; display: grid; grid-template-columns: 1fr 80px 1fr; gap: 14px; align-items: center; background: rgba(247,245,239,.7); }
.preview-audience { min-height: 245px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; display: flex; flex-direction: column; justify-content: space-between; background: rgba(255,255,255,.73); }
.preview-audience > span { color: var(--muted-2); font-size: .58rem; letter-spacing: .13em; }
.preview-audience strong { font-size: 1.35rem; line-height: 1.05; }
.preview-audience small { color: var(--muted); line-height: 1.45; }
.preview-shift { display: grid; place-items: center; color: var(--cyan); font-size: 1.55rem; }
.case-preview-feature h3 { max-width: 660px; margin: 0 0 14px; font-size: 2.15rem; line-height: 1.08; }
.case-preview-feature > p { max-width: 650px; color: var(--muted); }
.case-preview-stack { display: grid; gap: 22px; }
.case-preview-card { min-height: 314px; padding: 28px; border: 1px solid var(--line); border-radius: var(--radius); display: flex; flex-direction: column; background: rgba(255,255,255,.66); box-shadow: var(--shadow-card); text-decoration: none; transition: transform .22s, box-shadow .22s; }
.case-preview-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.case-preview-card:nth-child(1) { background: linear-gradient(145deg,rgba(134,88,212,.08),rgba(255,255,255,.78)); }
.case-preview-card:nth-child(2) { background: linear-gradient(145deg,rgba(239,109,93,.08),rgba(255,255,255,.78)); }
.case-preview-card .case-preview-number { width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 12px; display: grid; place-items: center; color: var(--muted-2); font-size: .62rem; }
.case-preview-card .layer-label { margin-top: auto; }
.case-preview-card h3 { margin: 12px 0 10px; font-size: 1.45rem; line-height: 1.18; }
.case-preview-card p { color: var(--muted); font-size: .83rem; line-height: 1.55; }
.case-preview-card .read-link { margin-top: 8px; }

@media (max-width: 1100px) {
  .case-study-workbench { grid-template-columns: 280px minmax(0,1fr); }
  .case-title-grid { grid-template-columns: 1fr; gap: 24px; }
  .case-outcome { max-width: 620px; }
  .audience-shift, .system-shift { grid-template-columns: 1fr 95px 1fr; }
}

@media (max-width: 980px) {
  .proof-seal-v2 { min-height: 470px; }
  .case-study-workbench { grid-template-columns: 1fr; }
  .case-tablist { position: static; grid-template-columns: repeat(3,1fr); }
  .case-tab { min-height: 150px; grid-template-columns: 1fr; align-content: start; }
  .case-tab i { display: none; }
  .audience-shift, .system-shift { grid-template-columns: 1fr; }
  .shift-bridge { min-height: 82px; }
  .shift-bridge b { transform: rotate(90deg); margin: 0; }
  .shift-bridge small { max-width: none; }
  .visual-disclosure { position: static; transform: none; justify-self: center; grid-column: 1; margin-top: -8px; }
  .expertise-chain { grid-template-columns: 1fr; }
  .expertise-chain > i { min-height: 30px; transform: rotate(90deg); }
  .case-narrative-grid { grid-template-columns: 1fr; }
  .case-narrative-grid section, .case-narrative-grid section:nth-child(2n) { border-right: 0; border-bottom: 1px solid var(--line); }
  .case-narrative-grid section:last-child { border-bottom: 0; }
  .signals-heading { grid-template-columns: 1fr; gap: 20px; }
  .evidence-signal-grid { grid-template-columns: repeat(2,1fr); }
  .case-preview-stage { grid-template-columns: 1fr; }
  .case-preview-stack { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {
  .proof-hero-v2 { min-height: auto; }
  .proof-seal-v2 { min-height: 390px; transform: scale(.82); margin-inline: -50px; }
  .case-tablist { grid-template-columns: 1fr; }
  .case-tab { min-height: 104px; grid-template-columns: 48px 1fr; }
  .case-panel-header { padding: 26px 22px 30px; }
  .case-meta-row { margin-bottom: 30px; }
  .case-title-grid h2 { font-size: 2.45rem; }
  .case-outcome { font-size: .92rem; }
  .case-visual { margin: 10px; }
  .audience-shift, .system-shift { padding: 18px 16px 38px; }
  .audience-state, .system-state { padding: 18px; }
  .audience-cloud, .system-map { min-height: 285px; }
  .visual-disclosure { white-space: normal; text-align: center; }
  .expertise-chain { padding: 20px 16px; }
  .chain-node { min-width: 0; min-height: 210px; }
  .case-narrative-grid section { min-height: auto; padding: 25px 21px; grid-template-columns: 42px 1fr; }
  .evidence-signal-grid { grid-template-columns: 1fr; }
  .evidence-signal-grid article { min-height: 225px; }
  .case-preview-feature { min-height: auto; padding: 22px; }
  .case-preview-visual { grid-template-columns: 1fr; }
  .preview-shift { transform: rotate(90deg); min-height: 44px; }
  .case-preview-stack { grid-template-columns: 1fr; }
  .proof-case-section, .evidence-signals-section { padding-block: 90px; }
}


/* Homepage gateway to the dedicated Kryston Compass. */
.compass-gateway { padding: 120px 0; overflow: hidden; background: linear-gradient(180deg,rgba(255,255,255,.38),rgba(238,236,229,.58)); border-bottom: 1px solid var(--line); }
.compass-gateway-card { min-height: 760px; display: grid; grid-template-columns: .88fr 1.12fr; border: 1px solid var(--line); border-radius: 28px; overflow: hidden; background: linear-gradient(145deg,rgba(255,255,255,.94),rgba(247,245,239,.76)); box-shadow: 0 35px 100px rgba(39,40,45,.13); }
.compass-gateway-copy { padding: 64px 58px 54px; display: flex; flex-direction: column; align-items: flex-start; position: relative; z-index: 2; }
.compass-gateway-copy .kicker { margin: auto 0 18px; }
.compass-gateway-copy h2 { max-width: 670px; margin: 0 0 24px; font-size: clamp(3rem,4.7vw,5.3rem); line-height: .94; letter-spacing: -.065em; }
.compass-gateway-copy > p:not(.kicker) { max-width: 620px; margin-bottom: 34px; color: var(--muted); font-size: .98rem; line-height: 1.7; }
.compass-launch { width: 100%; min-height: 92px; padding: 0 16px 0 30px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-radius: 999px; color: #fff; background: linear-gradient(105deg,#202126 0%,#303239 42%,#165f65 100%); box-shadow: 0 22px 52px rgba(32,33,38,.22); text-decoration: none; transition: transform .25s,box-shadow .25s; }
.compass-launch span { font-size: clamp(1.05rem,1.6vw,1.42rem); font-weight: 720; letter-spacing: -.025em; }
.compass-launch i { width: 62px; height: 62px; display: grid; place-items: center; border-radius: 50%; color: var(--text); background: #fff; font-style: normal; font-size: 1.3rem; transition: transform .25s; }
.compass-launch:hover { transform: translateY(-4px); box-shadow: 0 30px 70px rgba(32,33,38,.28); }
.compass-launch:hover i { transform: rotate(8deg) scale(1.05); }
.compass-gateway-copy small { margin: 16px 0 0 6px; color: var(--muted-2); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.compass-gateway-visual { min-height: 760px; position: relative; overflow: hidden; border-left: 1px solid var(--line); background: radial-gradient(circle at 50% 48%,rgba(134,88,212,.13),transparent 28%),linear-gradient(145deg,rgba(0,155,165,.06),rgba(255,255,255,.58),rgba(239,109,93,.07)); }
.gateway-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(32,33,38,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(32,33,38,.045) 1px,transparent 1px); background-size: 52px 52px; mask-image: linear-gradient(to bottom,transparent,black 12%,black 88%,transparent); }
.gateway-paths { position: absolute; inset: 11% 7% 9%; width: 86%; height: 80%; overflow: visible; }
.gateway-paths path { fill: none; stroke: url(#gatewayGradient); stroke-width: 1.8; stroke-dasharray: 7 8; opacity: .7; vector-effect: non-scaling-stroke; animation: gatewayFlow 6s linear infinite; }
.gateway-node { width: 128px; min-height: 68px; padding: 10px 12px; position: absolute; display: flex; flex-direction: column; justify-content: center; border: 1px solid rgba(32,33,38,.17); border-radius: 15px; color: var(--muted); background: rgba(255,255,255,.82); box-shadow: 0 15px 38px rgba(39,40,45,.09); z-index: 3; }
.gateway-node::after { content: ""; width: 7px; height: 7px; position: absolute; right: 10px; top: 10px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(0,155,165,.09); }
.gateway-node span { color: var(--muted-2); font-size: .52rem; }
.gateway-node strong { font-size: .72rem; line-height: 1.18; }
.gn-1 { left: 7%; top: 15%; }.gn-2 { left: 30%; top: 8%; }.gn-3 { right: 10%; top: 14%; }.gn-4 { right: 3%; top: 45%; }.gn-5 { right: 14%; bottom: 12%; }.gn-6 { left: 31%; bottom: 8%; }.gn-7 { left: 4%; top: 45%; }
.gateway-core { width: 168px; height: 168px; position: absolute; left: 50%; top: 49%; transform: translate(-50%,-50%); display: flex; flex-direction: column; align-items: center; justify-content: center; border: 1px solid rgba(32,33,38,.2); border-radius: 50%; background: linear-gradient(145deg,rgba(255,255,255,.96),rgba(0,155,165,.1),rgba(134,88,212,.1)); box-shadow: 0 30px 80px rgba(39,40,45,.16),0 0 50px rgba(134,88,212,.13); z-index: 2; }
.gateway-core::before,.gateway-core::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(32,33,38,.11); }.gateway-core::before { inset:-29px; border-style:dashed; }.gateway-core::after { inset:-60px; }
.gateway-core span { color: var(--muted-2); font-size: .5rem; letter-spacing: .15em; }.gateway-core strong { font-size: 1.75rem; letter-spacing: -.055em; }.gateway-core small { color: var(--muted); font-size: .6rem; }
.gateway-orbit { width: 430px; height: 430px; position: absolute; left: 50%; top: 49%; transform: translate(-50%,-50%); border: 1px dashed rgba(134,88,212,.38); border-radius: 50%; z-index: 1; }
.gateway-orbit span { position: absolute; left: 50%; bottom: -10px; transform: translateX(-50%); padding: 0 12px; background: rgba(249,248,244,.9); color: var(--violet); font-size: .51rem; letter-spacing: .16em; white-space: nowrap; }
@keyframes gatewayFlow { to { stroke-dashoffset: -60; } }
@media (max-width: 1050px) { .compass-gateway-card { grid-template-columns: 1fr; }.compass-gateway-visual { min-height: 650px; border-left: 0; border-top: 1px solid var(--line); }.compass-gateway-copy { min-height: 610px; }.compass-gateway-copy h2 { max-width: 780px; } }
@media (max-width: 720px) { .compass-gateway { padding: 85px 0; }.compass-gateway-card { min-height: auto; border-radius: 22px; }.compass-gateway-copy { min-height: auto; padding: 40px 23px 34px; }.compass-gateway-copy .kicker { margin-top: 80px; }.compass-gateway-copy h2 { font-size: clamp(2.7rem,12vw,4.2rem); }.compass-launch { min-height: 76px; padding-left: 22px; }.compass-launch i { width: 52px; height: 52px; }.compass-gateway-visual { min-height: 570px; transform: none; }.gateway-node { width: 104px; min-height: 59px; }.gateway-orbit { width: 330px; height: 330px; }.gateway-core { width: 138px; height: 138px; }.gateway-core::after { inset:-43px; }.gn-1 { left:3%; }.gn-3 { right:3%; }.gn-4 { right:1%; }.gn-7 { left:1%; }.gn-5 { right:4%; }.gn-6 { left:27%; } }


/* v0.0.7 - hierarchy, section colour and proof-visual refinement */
.section-heading-stacked {
  display: block;
  max-width: 980px;
  margin-bottom: 58px;
  padding-top: 20px;
  position: relative;
}
.section-heading-stacked::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 92px;
  height: 5px;
  border-radius: 999px;
  background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral));
}
.section-heading-stacked .section-index { margin-bottom: 22px; color: var(--text); font-weight: 700; }
.section-heading-stacked .section-index span { display: inline-grid; place-items: center; width: 34px; height: 34px; margin-right: 12px; border-radius: 10px; color: #fff; background: var(--text); letter-spacing: 0; }
.section-heading-stacked h2 { max-width: 980px; margin: 0; }

.offer-section {
  border-block: 1px solid var(--line);
  background:
    radial-gradient(circle at 10% 15%,rgba(0,155,165,.13),transparent 29rem),
    radial-gradient(circle at 92% 88%,rgba(134,88,212,.10),transparent 31rem),
    linear-gradient(180deg,rgba(246,249,247,.96),rgba(255,255,255,.79));
}
.offer-card-a { border-top: 5px solid rgba(0,155,165,.72); }
.offer-card-b { border-top: 5px solid rgba(134,88,212,.68); }
.proof-preview-v2 {
  border-block: 1px solid var(--line);
  background:
    radial-gradient(circle at 88% 12%,rgba(134,88,212,.13),transparent 31rem),
    radial-gradient(circle at 10% 90%,rgba(0,155,165,.10),transparent 30rem),
    linear-gradient(145deg,#f3f0f7 0%,#fbfaf7 48%,#edf6f4 100%);
}
.publications-preview {
  background:
    radial-gradient(circle at 10% 16%,rgba(239,109,93,.13),transparent 28rem),
    radial-gradient(circle at 92% 90%,rgba(134,88,212,.09),transparent 31rem),
    linear-gradient(145deg,#f8f1ed,#fbfaf7 48%,#f2eff8);
}

/* Homepage evidence gallery: distinct case shapes instead of three generic boxes. */
.case-preview-gallery { display: grid; gap: 20px; }
.case-preview-hero {
  min-height: 520px;
  padding: 34px;
  display: grid;
  grid-template-columns: .82fr 1.18fr;
  gap: 34px;
  align-items: stretch;
  border: 1px solid var(--line);
  border-radius: 26px;
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  background: linear-gradient(135deg,rgba(255,255,255,.93),rgba(0,155,165,.09));
  box-shadow: var(--shadow-card);
  transition: transform .24s,box-shadow .24s;
}
.case-preview-hero:hover,.case-preview-landscape:hover { transform: translateY(-4px); box-shadow: var(--shadow-card-hover); }
.case-preview-copy { display: flex; flex-direction: column; align-items: flex-start; }
.case-preview-hero .case-preview-copy { padding: 10px 4px; }
.case-preview-eyebrow { margin: auto 0 18px; color: var(--cyan); font-size: .64rem; font-weight: 800; letter-spacing: .15em; }
.case-preview-hero h3 { max-width: 600px; margin: 0 0 18px; font-size: clamp(2.4rem,4.1vw,4.2rem); line-height: .98; letter-spacing: -.055em; }
.case-preview-hero .case-preview-copy > p:not(.case-preview-eyebrow) { max-width: 570px; color: var(--muted); line-height: 1.65; }
.case-preview-copy .read-link { margin-top: 20px; }
.case-preview-diagram { min-height: 445px; border: 1px solid var(--line); border-radius: 20px; overflow: hidden; }
.audience-preview { padding: 26px; display: grid; grid-template-columns: 1fr 92px 1fr; gap: 15px; align-items: center; background: rgba(247,245,239,.72); }
.audience-preview-side { min-height: 345px; padding: 24px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.78); }
.audience-preview-side > span { color: var(--muted-2); font-size: .58rem; font-weight: 800; letter-spacing: .16em; }
.audience-preview-side > strong { margin: 17px 0 0; font-size: 1.35rem; line-height: 1.08; }
.audience-dots { flex: 1; position: relative; margin-top: 20px; border-radius: 14px; background: rgba(247,245,239,.72); }
.audience-dots i,.audience-dots b { position: absolute; width: 13px; height: 13px; border-radius: 50%; }
.audience-dots i { background: var(--violet); box-shadow: 0 0 0 6px rgba(134,88,212,.08); }
.audience-dots b { background: var(--cyan); box-shadow: 0 0 0 6px rgba(0,155,165,.08); }
.audience-dots i:nth-child(1){left:16%;top:20%}.audience-dots i:nth-child(2){left:48%;top:12%}.audience-dots i:nth-child(3){right:13%;top:32%}.audience-dots i:nth-child(4){left:24%;bottom:28%}.audience-dots i:nth-child(5){right:30%;bottom:14%}.audience-dots i:nth-child(6){left:53%;top:49%}
.audience-dots b:nth-last-child(1){right:12%;bottom:34%}
.audience-preview-after .audience-dots b:nth-child(3){left:12%;top:24%}.audience-preview-after .audience-dots b:nth-child(4){left:43%;top:10%}.audience-preview-after .audience-dots b:nth-child(5){right:12%;top:31%}.audience-preview-after .audience-dots b:nth-child(6){left:24%;bottom:22%}.audience-preview-after .audience-dots b:nth-child(7){right:25%;bottom:12%}
.audience-preview-after .audience-dots i:nth-child(1){left:48%;top:48%}.audience-preview-after .audience-dots i:nth-child(2){right:12%;bottom:34%}
.audience-preview-arrow { display: grid; place-content: center; text-align: center; }
.audience-preview-arrow span { color: var(--cyan); font-size: .55rem; letter-spacing: .16em; }
.audience-preview-arrow b { margin-top: 10px; font-size: 2rem; font-weight: 400; }
.case-preview-row { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.case-preview-landscape {
  min-height: 390px;
  padding: 29px;
  display: grid;
  grid-template-rows: 1fr auto;
  border: 1px solid var(--line);
  border-radius: 22px;
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  box-shadow: var(--shadow-card);
  transition: transform .24s,box-shadow .24s;
}
.expertise-preview { background: linear-gradient(145deg,rgba(134,88,212,.12),rgba(255,255,255,.86)); }
.system-preview { background: linear-gradient(145deg,rgba(239,109,93,.10),rgba(255,255,255,.88)); }
.case-preview-landscape h3 { max-width: 560px; margin: 32px 0 12px; font-size: 2rem; line-height: 1.06; }
.case-preview-landscape p { max-width: 600px; color: var(--muted); font-size: .85rem; line-height: 1.58; }
.mini-case-chain { min-height: 86px; margin-top: 28px; padding: 15px; display: grid; grid-template-columns: 1fr auto 1fr auto 1.25fr; gap: 8px; align-items: center; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.64); }
.mini-case-chain span { min-height: 48px; padding: 0 10px; display: grid; place-items: center; text-align: center; border-radius: 10px; background: rgba(255,255,255,.82); color: var(--muted); font-size: .57rem; letter-spacing: .09em; }
.mini-case-chain i { color: var(--violet); font-style: normal; }
.mini-case-system { min-height: 180px; margin-top: 22px; position: relative; border: 1px solid var(--line); border-radius: 14px; overflow: hidden; background: rgba(255,255,255,.60); }
.mini-case-system svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.mini-case-system path { fill: none; stroke: rgba(0,155,165,.5); stroke-width: 1.3; stroke-dasharray: 5 6; }
.mcs-node { width: 82px; min-height: 35px; position: absolute; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.9); font-size: .49rem; letter-spacing: .08em; z-index: 2; }
.mcs-linkedin{left:4%;top:10%}.mcs-network{right:4%;top:10%}.mcs-site{left:4%;bottom:10%}.mcs-services{right:4%;bottom:10%}
.mcs-hub { width: 86px; height: 86px; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); display: grid; place-content: center; text-align: center; border-radius: 50%; border: 1px solid rgba(0,155,165,.3); background: linear-gradient(145deg,rgba(0,155,165,.18),rgba(134,88,212,.12)); font-size: .55rem; line-height: 1.25; z-index: 2; }

/* Case 02: no artificial vertical void above the copy. */
.expertise-chain { min-height: 315px; padding: 30px 26px; grid-template-columns: minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr); align-items: center; }
.chain-node { min-width: 0; min-height: 235px; padding: 20px; justify-content: flex-start; overflow: hidden; }
.chain-node::before { content:""; position:absolute; left:0; right:0; top:0; height:4px; background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); opacity:.65; }
.chain-node strong { margin: 30px 0 10px; font-size: 1.06rem; }
.chain-node small { font-size: .78rem; }

/* Case 03: fully SVG-based maps keep every connector aligned. */
.system-shift { min-height: 510px; grid-template-columns: minmax(0,1fr) 112px minmax(0,1fr); gap: 18px; }
.system-state { display: flex; flex-direction: column; }
.system-map-v2 { min-height: 300px; }
.system-map-v2 svg { position: relative; display: block; width: 100%; height: 100%; min-height: 300px; overflow: visible; }
.system-map-v2 .map-surface rect { fill: rgba(255,255,255,.92); stroke: rgba(32,33,38,.16); }
.system-map-v2 .map-surface text { fill: #444750; font-size: 11px; letter-spacing: 1.1px; text-anchor: middle; }
.system-map-v2 .map-broken { fill:none; stroke:rgba(32,33,38,.25); stroke-width:1.4; stroke-dasharray:7 8; }
.system-map-v2 .map-empty-core { fill:rgba(255,255,255,.32); stroke:rgba(32,33,38,.18); stroke-dasharray:4 7; }
.system-map-v2 .map-core-note { fill:#93959c; font-size:10px; letter-spacing:1.2px; text-anchor:middle; }
.system-map-v2 .map-connected { fill:none; stroke:url(#caseSystemGradient); stroke-width:2; stroke-dasharray:7 7; }
.system-map-v2 .map-surface-active rect { stroke:rgba(0,155,165,.30); }
.system-map-v2 .map-target-core { fill:url(#caseSystemGradient); fill-opacity:.16; stroke:rgba(32,33,38,.24); }
.system-map-v2 .map-target-note { fill:#25272d; font-size:13px; letter-spacing:1px; text-anchor:middle; }

@media (max-width: 1050px) {
  .case-preview-hero { grid-template-columns: 1fr; }
  .case-preview-eyebrow { margin-top: 50px; }
  .case-preview-row { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .section-heading-stacked { margin-bottom: 42px; }
  .case-preview-hero { min-height: auto; padding: 22px; }
  .case-preview-diagram { min-height: auto; }
  .audience-preview { grid-template-columns: 1fr; }
  .audience-preview-arrow { min-height: 50px; transform: rotate(90deg); }
  .audience-preview-side { min-height: 280px; }
  .case-preview-landscape { min-height: auto; padding: 22px; }
  .mini-case-chain { grid-template-columns: 1fr; }
  .mini-case-chain i { transform: rotate(90deg); justify-self: center; }
  .expertise-chain { grid-template-columns: 1fr; }
  .chain-node { min-height: 190px; }
  .system-shift { grid-template-columns: 1fr; }
  .system-map-v2,.system-map-v2 svg { min-height: 260px; }
}

/* v0.0.8 - consistent section indexes and explanatory homepage visuals */
.home-page .section-index {
  display: inline-flex;
  align-items: center;
  margin: 0 0 22px;
  color: var(--text);
  font-size: .7rem;
  font-weight: 760;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.home-page .section-index span {
  width: 34px;
  height: 34px;
  margin-right: 12px;
  display: inline-grid;
  place-items: center;
  border-radius: 10px;
  color: #fff;
  background: var(--text);
  letter-spacing: 0;
  box-shadow: 0 8px 22px rgba(32,33,38,.12);
}
.home-page .section-heading-stacked .section-index,
.home-page .fit-copy .section-index,
.home-page .contact-copy .section-index { margin-bottom: 22px; }
.home-page .compounding-copy h2,
.home-page .compass-gateway-copy h2,
.home-page .fit-copy h2,
.home-page .contact-copy h2 { margin-top: 0; }

/* The former abstract prism is replaced by a readable buyer pathway. */
.hero-system-visual {
  min-height: 630px;
  padding: 24px;
  position: relative;
  display: flex;
  flex-direction: column;
  border: 1px solid rgba(32,33,38,.15);
  border-radius: 28px;
  overflow: hidden;
  background:
    radial-gradient(circle at 14% 18%,rgba(0,155,165,.14),transparent 19rem),
    radial-gradient(circle at 88% 85%,rgba(239,109,93,.14),transparent 21rem),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(247,245,239,.80));
  box-shadow: var(--shadow);
  isolation: isolate;
}
.hero-system-visual::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background-image:linear-gradient(rgba(32,33,38,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(32,33,38,.035) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to bottom,black,transparent 92%);
}
.hero-system-topline {
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--muted-2);
  font-size:.57rem;
  font-weight:780;
  letter-spacing:.16em;
}
.hero-system-topline i { height:1px; flex:1; background:linear-gradient(90deg,var(--cyan),rgba(134,88,212,.38),var(--coral)); }
.hero-pathway { flex:1; padding:30px 20px 18px; display:flex; flex-direction:column; justify-content:center; }
.hero-stage {
  min-height:76px;
  padding:14px 16px;
  display:grid;
  grid-template-columns:36px 1fr;
  gap:13px;
  align-items:center;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.80);
  box-shadow:0 15px 38px rgba(39,40,45,.07);
}
.hero-stage > span {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#087f87;
  background:rgba(0,155,165,.11);
  font-size:.56rem;
  font-weight:800;
}
.hero-stage strong { display:block; font-size:.86rem; line-height:1.18; }
.hero-stage small { display:block; margin-top:4px; color:var(--muted); font-size:.66rem; line-height:1.35; }
.hero-stage-profile { width:82%; align-self:flex-start; border-left:4px solid rgba(0,155,165,.72); }
.hero-stage-buyers { width:82%; align-self:flex-end; border-right:4px solid rgba(134,88,212,.68); }
.hero-stage-buyers > span { color:#7047bd; background:rgba(134,88,212,.11); }
.hero-stage-connector { min-height:34px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:var(--muted-2); font-size:.53rem; letter-spacing:.12em; text-transform:uppercase; }
.hero-stage-connector i { width:1px; height:16px; margin-bottom:3px; background:linear-gradient(var(--cyan),var(--violet)); }
.hero-stage-split { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.hero-stage-proof { border-top:4px solid rgba(239,109,93,.66); }
.hero-stage-proof > span { color:#b65044; background:rgba(239,109,93,.11); }
.hero-stage-pathway { border-top:4px solid rgba(134,88,212,.66); }
.hero-stage-pathway > span { color:#7047bd; background:rgba(134,88,212,.11); }
.hero-stage-merge { min-height:38px; display:grid; grid-template-columns:1fr auto 1fr; gap:10px; align-items:center; color:var(--muted-2); font-size:.52rem; letter-spacing:.11em; text-transform:uppercase; }
.hero-stage-merge i { height:1px; background:linear-gradient(90deg,transparent,var(--cyan),var(--violet)); }
.hero-stage-merge i:last-child { background:linear-gradient(90deg,var(--violet),var(--coral),transparent); }
.hero-conversation {
  padding:20px 22px;
  border:1px solid rgba(32,33,38,.18);
  border-radius:18px;
  text-align:center;
  background:linear-gradient(120deg,rgba(0,155,165,.13),rgba(134,88,212,.12),rgba(239,109,93,.12));
  box-shadow:0 22px 55px rgba(39,40,45,.10);
}
.hero-conversation > span { display:block; margin-bottom:5px; color:var(--violet); font-size:.55rem; font-weight:800; letter-spacing:.16em; }
.hero-conversation strong { display:block; font-size:1.45rem; line-height:1.05; letter-spacing:-.035em; }
.hero-conversation small { display:block; margin-top:7px; color:var(--muted); font-size:.68rem; }
.hero-system-signals { display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted-2); font-size:.52rem; font-weight:760; letter-spacing:.12em; }
.hero-system-signals i { width:18px; height:1px; background:linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); }

/* Homepage Case 03 now shows the actual shift, not only four boxes around a circle. */
.mini-case-system-v2 { min-height:220px; padding:0; background:rgba(255,255,255,.63); }
.mini-case-system-v2 svg { position:relative; inset:auto; display:block; width:100%; height:100%; min-height:220px; }
.mini-case-system-v2 .mini-panel-bg { fill:rgba(255,255,255,.62); stroke:rgba(32,33,38,.14); }
.mini-case-system-v2 .mini-panel-label { fill:#73767f; font-size:9px; font-weight:800; letter-spacing:1.7px; }
.mini-case-system-v2 .mini-surface { fill:rgba(255,255,255,.94); stroke:rgba(32,33,38,.17); }
.mini-case-system-v2 .mini-surface-active { stroke:rgba(0,155,165,.33); }
.mini-case-system-v2 .mini-surface-label { fill:#454850; font-size:8px; letter-spacing:.7px; text-anchor:middle; }
.mini-case-system-v2 .mini-broken { fill:none; stroke:rgba(32,33,38,.23); stroke-width:1.2; stroke-dasharray:5 6; }
.mini-case-system-v2 .mini-empty-core { fill:rgba(255,255,255,.30); stroke:rgba(32,33,38,.18); stroke-dasharray:4 5; }
.mini-case-system-v2 .mini-core-muted { fill:#989aa1; font-size:7px; letter-spacing:.65px; text-anchor:middle; }
.mini-case-system-v2 .mini-connected { fill:none; stroke:url(#homeCaseSystemGradient); stroke-width:1.8; stroke-dasharray:5 5; }
.mini-case-system-v2 .mini-target-core { fill:url(#homeCaseSystemGradient); fill-opacity:.16; stroke:rgba(32,33,38,.22); }
.mini-case-system-v2 .mini-core-active { fill:#292b31; font-size:8px; letter-spacing:.7px; text-anchor:middle; }
.mini-case-system-v2 .mini-system-arrow text { fill:var(--cyan); font-size:8px; font-weight:800; letter-spacing:1.5px; text-anchor:middle; }
.mini-case-system-v2 .mini-system-arrow path { fill:none; stroke:#2c2e34; stroke-width:1.7; stroke-dasharray:none; }

@media (max-width:980px) {
  .hero-system-visual { min-height:600px; }
}
@media (max-width:720px) {
  .hero-system-visual { min-height:auto; padding:18px; transform:none; margin:0; }
  .hero-pathway { padding:24px 0 14px; }
  .hero-stage-profile,.hero-stage-buyers { width:100%; }
  .hero-stage-split { grid-template-columns:1fr; }
  .hero-system-signals { flex-wrap:wrap; }
  .mini-case-system-v2,.mini-case-system-v2 svg { min-height:190px; }
}


/* v0.0.9 - approved editorial hero with animated sculptural prism */
.hero-v4 {
  min-height: 900px;
  padding: 142px 0 72px;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  background:
    radial-gradient(circle at 78% 45%, rgba(0,155,165,.10), transparent 26rem),
    radial-gradient(circle at 91% 52%, rgba(239,109,93,.10), transparent 29rem),
    radial-gradient(circle at 66% 65%, rgba(134,88,212,.08), transparent 23rem);
}
.hero-v4::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(29,31,37,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(29,31,37,.025) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, black, transparent 90%);
  pointer-events: none;
}
.hero-v4 .hero-grid {
  grid-template-columns: minmax(0,.92fr) minmax(480px,1.08fr);
  gap: 28px;
  width: min(1320px, calc(100% - 54px));
}
.hero-v4 .hero-copy { padding: 26px 0 0; position: relative; z-index: 3; }
.hero-section-index {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 34px;
  color: var(--muted-2);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.hero-section-index span { color: var(--cyan); font-size: .84rem; }
.hero-section-index i { width: 34px; height: 1px; background: var(--cyan); box-shadow: 0 0 12px rgba(0,155,165,.5); }
.hero-v4 h1 {
  max-width: 690px;
  margin: 0 0 28px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(3.65rem,5.45vw,6rem);
  line-height: .99;
  letter-spacing: -.058em;
  font-weight: 560;
  color: #1f2530;
  text-wrap: balance;
}
.hero-v4 .hero-lede {
  max-width: 610px;
  margin-bottom: 0;
  color: #686d77;
  font-size: clamp(1.02rem,1.35vw,1.18rem);
  line-height: 1.72;
}
.hero-v4 .hero-actions { gap: 14px; margin-top: 34px; flex-wrap: wrap; }
.hero-primary {
  border-color: transparent;
  background: linear-gradient(110deg,#05717a,#02adb4);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25),0 16px 34px rgba(0,155,165,.18);
}
.hero-primary:hover { border-color: transparent; box-shadow: inset 0 1px 0 rgba(255,255,255,.28),0 20px 44px rgba(0,155,165,.25); }
.hero-secondary {
  color: var(--text);
  border-color: rgba(32,33,38,.23);
  background: rgba(255,255,255,.62);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8),0 12px 28px rgba(39,40,45,.06);
}
.hero-secondary:hover { border-color: rgba(134,88,212,.38); box-shadow: 0 16px 34px rgba(39,40,45,.1); }
.hero-audience { margin: 27px 0 0; color: #92959d; font-size: .79rem; line-height: 1.5; }

.hero-prism-visual {
  min-height: 660px;
  position: relative;
  display: grid;
  place-items: center;
  isolation: isolate;
  z-index: 2;
}
.prism-ambient { position: absolute; border-radius: 50%; filter: blur(46px); opacity: .65; pointer-events: none; }
.prism-ambient-cyan { width: 350px; height: 350px; left: 1%; top: 20%; background: rgba(0,155,165,.14); animation: heroAmbientA 11s ease-in-out infinite; }
.prism-ambient-coral { width: 390px; height: 390px; right: -7%; bottom: 5%; background: rgba(239,109,93,.13); animation: heroAmbientB 13s ease-in-out infinite; }
.hero-prism-svg { width: min(620px,100%); height: auto; position: relative; z-index: 3; overflow: visible; }
.prism-sculpture { transform-origin: 50% 53%; animation: heroPrismFloat 8s ease-in-out infinite; }
.prism-facet { transform-origin: 50% 50%; }
.prism-facet-left { animation: heroFacetLeft 9s ease-in-out infinite; }
.prism-facet-right { animation: heroFacetRight 10.5s ease-in-out infinite; }
.prism-facet-inner { animation: heroFacetInner 7.5s ease-in-out infinite; }
.prism-spectrum { filter: drop-shadow(0 0 12px rgba(0,155,165,.42)); animation: heroSpectrum 4.2s ease-in-out infinite; }
.prism-shine { animation: heroShine 6.8s ease-in-out infinite; }
.prism-ground-glow { animation: heroGround 8s ease-in-out infinite; }
.prism-sparkles circle { transform-box: fill-box; transform-origin: center; animation: heroSparkle 3.4s ease-in-out infinite; }
.prism-sparkles circle:nth-child(2) { animation-delay: -.8s; }
.prism-sparkles circle:nth-child(3) { animation-delay: -1.7s; }
.prism-sparkles circle:nth-child(4) { animation-delay: -2.4s; }
.prism-orbit {
  position: absolute;
  left: 50%; top: 51%;
  border: 1px solid rgba(32,33,38,.10);
  border-radius: 50%;
  transform: translate(-50%,-50%) rotate(-12deg);
  z-index: 1;
}
.prism-orbit-one { width: 500px; height: 440px; animation: heroOrbitOne 34s linear infinite; }
.prism-orbit-two { width: 610px; height: 540px; border-style: dashed; animation: heroOrbitTwo 46s linear infinite reverse; }
.prism-orbit-three { width: 420px; height: 370px; transform: translate(-50%,-50%) rotate(25deg); opacity: .65; animation: heroOrbitThree 28s linear infinite; }
.prism-orbit i { position: absolute; width: 8px; height: 8px; border-radius: 50%; top: 8%; left: 22%; background: var(--cyan); box-shadow: 0 0 0 7px rgba(0,155,165,.10),0 0 20px rgba(0,155,165,.35); }
.prism-orbit-two i { top: auto; left: auto; right: 6%; bottom: 26%; background: var(--coral); box-shadow: 0 0 0 7px rgba(239,109,93,.09),0 0 18px rgba(239,109,93,.32); }
.prism-orbit-three i { top: 55%; left: -1%; width: 6px; height: 6px; background: var(--violet); box-shadow: 0 0 0 6px rgba(134,88,212,.08),0 0 16px rgba(134,88,212,.28); }
.prism-light-streak { position: absolute; z-index: 2; height: 1px; transform-origin: left center; opacity: .5; pointer-events: none; }
.prism-light-streak-a { width: 220px; left: 13%; top: 36%; transform: rotate(19deg); background: linear-gradient(90deg,transparent,rgba(0,155,165,.65),transparent); animation: heroStreakA 6s ease-in-out infinite; }
.prism-light-streak-b { width: 190px; right: 4%; bottom: 28%; transform: rotate(-28deg); background: linear-gradient(90deg,transparent,rgba(239,109,93,.62),transparent); animation: heroStreakB 7.2s ease-in-out infinite; }
.prism-caption {
  position: absolute;
  right: 4%;
  bottom: 5%;
  z-index: 5;
  padding-left: 16px;
  border-left: 1px solid var(--cyan);
  display: flex;
  flex-direction: column;
  font-size: .78rem;
}
.prism-caption strong { font-size: .84rem; }
.prism-caption span { color: var(--muted-2); }

@keyframes heroPrismFloat { 0%,100%{transform:translateY(0) rotate(-1deg)} 50%{transform:translateY(-13px) rotate(1deg)} }
@keyframes heroFacetLeft { 0%,100%{opacity:.92} 50%{opacity:.72} }
@keyframes heroFacetRight { 0%,100%{opacity:.82} 50%{opacity:1} }
@keyframes heroFacetInner { 0%,100%{opacity:.72} 50%{opacity:.95} }
@keyframes heroSpectrum { 0%,100%{opacity:.58} 50%{opacity:1} }
@keyframes heroShine { 0%{transform:translateX(-120px) rotate(16deg);opacity:0} 28%{opacity:.72} 62%{opacity:.3} 100%{transform:translateX(850px) rotate(16deg);opacity:0} }
@keyframes heroGround { 0%,100%{opacity:.09;transform:scaleX(.95)} 50%{opacity:.18;transform:scaleX(1.05)} }
@keyframes heroSparkle { 0%,100%{opacity:.38;transform:scale(.75)} 50%{opacity:1;transform:scale(1.2)} }
@keyframes heroOrbitOne { to{transform:translate(-50%,-50%) rotate(348deg)} }
@keyframes heroOrbitTwo { to{transform:translate(-50%,-50%) rotate(-372deg)} }
@keyframes heroOrbitThree { to{transform:translate(-50%,-50%) rotate(385deg)} }
@keyframes heroAmbientA { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(24px,-18px) scale(1.08)} }
@keyframes heroAmbientB { 0%,100%{transform:translate(0,0) scale(1)} 50%{transform:translate(-20px,16px) scale(.94)} }
@keyframes heroStreakA { 0%,100%{opacity:.12;transform:rotate(19deg) translateX(-24px)} 50%{opacity:.65;transform:rotate(19deg) translateX(20px)} }
@keyframes heroStreakB { 0%,100%{opacity:.12;transform:rotate(-28deg) translateX(18px)} 50%{opacity:.56;transform:rotate(-28deg) translateX(-18px)} }

@media (max-width: 1080px) {
  .hero-v4 { min-height: auto; padding-top: 132px; }
  .hero-v4 .hero-grid { grid-template-columns: 1fr; width: var(--shell); }
  .hero-v4 .hero-copy { max-width: 780px; }
  .hero-prism-visual { min-height: 620px; margin-top: -10px; }
}
@media (max-width: 720px) {
  .hero-v4 { padding: 112px 0 45px; }
  .hero-v4 h1 { font-size: clamp(3.15rem,14vw,4.75rem); }
  .hero-v4 .hero-actions { align-items: stretch; }
  .hero-v4 .hero-actions .button { width: 100%; justify-content: space-between; }
  .hero-prism-visual { min-height: 500px; margin-inline: -18px; }
  .hero-prism-svg { width: 115%; }
  .prism-orbit-one { width: 390px; height: 340px; }
  .prism-orbit-two { width: 470px; height: 420px; }
  .prism-orbit-three { width: 330px; height: 290px; }
  .prism-caption { right: 8%; bottom: 2%; }
}
@media (max-width: 440px) {
  .hero-prism-visual { min-height: 440px; }
  .prism-orbit-one { width: 330px; height: 290px; }
  .prism-orbit-two { width: 400px; height: 350px; }
  .prism-orbit-three { width: 285px; height: 250px; }
  .prism-caption { display:none; }
}
@media (prefers-reduced-motion: reduce) {
  .prism-sculpture,.prism-facet,.prism-spectrum,.prism-shine,.prism-ground-glow,.prism-sparkles circle,.prism-orbit,.prism-ambient,.prism-light-streak { animation: none !important; }
}


/* v0.0.10 - faithful approved prism composition */
.hero-prism-visual-v2 {
  min-height: 650px;
  position: relative;
  display: grid;
  place-items: center;
  isolation: isolate;
  z-index: 2;
  overflow: visible;
}
.hero-prism-visual-v2::before {
  content: "";
  position: absolute;
  width: min(610px, 94%);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle at 46% 47%, rgba(255,255,255,.84), rgba(0,155,165,.10) 38%, rgba(134,88,212,.08) 57%, transparent 72%);
  filter: blur(9px);
  opacity: .92;
  z-index: -1;
}
.prism-art-stage {
  width: min(650px, 100%);
  position: relative;
  transform: translateY(6px);
  animation: prismArtFloat 8.5s ease-in-out infinite;
  filter: drop-shadow(0 34px 44px rgba(70,70,88,.10));
}
.prism-art-image {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  -webkit-mask-image: radial-gradient(ellipse 78% 80% at 50% 50%, #000 68%, rgba(0,0,0,.94) 78%, transparent 100%);
  mask-image: radial-gradient(ellipse 78% 80% at 50% 50%, #000 68%, rgba(0,0,0,.94) 78%, transparent 100%);
  user-select: none;
  pointer-events: none;
}
.prism-art-stage::after {
  content: "";
  position: absolute;
  left: 18%;
  right: 14%;
  bottom: 8%;
  height: 12%;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(90,95,135,.17), rgba(134,88,212,.08) 38%, transparent 72%);
  filter: blur(18px);
  opacity: .62;
  transform: scaleX(.96);
  animation: prismArtShadow 8.5s ease-in-out infinite;
  z-index: -1;
}
.prism-art-halo {
  position: absolute;
  border-radius: 50%;
  filter: blur(54px);
  pointer-events: none;
  z-index: -2;
  opacity: .58;
}
.prism-art-halo-cyan {
  width: 330px;
  height: 330px;
  left: 4%;
  top: 25%;
  background: rgba(0,155,165,.13);
  animation: prismHaloCyan 12s ease-in-out infinite;
}
.prism-art-halo-coral {
  width: 350px;
  height: 350px;
  right: -2%;
  bottom: 10%;
  background: rgba(239,109,93,.12);
  animation: prismHaloCoral 14s ease-in-out infinite;
}
.prism-art-refraction {
  position: absolute;
  pointer-events: none;
  mix-blend-mode: screen;
  opacity: 0;
  z-index: 3;
}
.prism-art-refraction-a {
  width: 13%;
  height: 64%;
  left: 29%;
  top: 12%;
  transform: rotate(14deg) skewX(-9deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.82), rgba(155,232,236,.30), transparent);
  filter: blur(3px);
  animation: prismSweepA 7.4s ease-in-out infinite;
}
.prism-art-refraction-b {
  width: 9%;
  height: 55%;
  right: 26%;
  top: 20%;
  transform: rotate(-11deg) skewX(8deg);
  background: linear-gradient(90deg, transparent, rgba(255,226,222,.62), rgba(255,255,255,.70), transparent);
  filter: blur(4px);
  animation: prismSweepB 8.8s ease-in-out infinite 1.4s;
}
.prism-art-glint {
  position: absolute;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255,255,255,.12), 0 0 24px rgba(255,255,255,.95), 0 0 34px rgba(0,155,165,.28);
  pointer-events: none;
  z-index: 4;
  opacity: .3;
}
.prism-art-glint-a { left: 31%; top: 64%; animation: prismGlintA 5.6s ease-in-out infinite; }
.prism-art-glint-b { right: 24%; top: 31%; animation: prismGlintB 6.8s ease-in-out infinite 1.1s; }

@keyframes prismArtFloat {
  0%,100% { transform: translateY(6px) rotate(-.35deg); }
  50% { transform: translateY(-7px) rotate(.35deg); }
}
@keyframes prismArtShadow {
  0%,100% { opacity:.48; transform: scaleX(.92); }
  50% { opacity:.68; transform: scaleX(1.02); }
}
@keyframes prismHaloCyan {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(22px,-14px) scale(1.07); }
}
@keyframes prismHaloCoral {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(-18px,14px) scale(.95); }
}
@keyframes prismSweepA {
  0%,12% { opacity:0; transform:translateX(-90px) rotate(14deg) skewX(-9deg); }
  32% { opacity:.72; }
  62% { opacity:.24; }
  82%,100% { opacity:0; transform:translateX(390px) rotate(14deg) skewX(-9deg); }
}
@keyframes prismSweepB {
  0%,18% { opacity:0; transform:translateX(80px) rotate(-11deg) skewX(8deg); }
  38% { opacity:.46; }
  68% { opacity:.18; }
  88%,100% { opacity:0; transform:translateX(-280px) rotate(-11deg) skewX(8deg); }
}
@keyframes prismGlintA {
  0%,100% { opacity:.16; transform:scale(.65); }
  45% { opacity:.95; transform:scale(1.15); }
  58% { opacity:.35; transform:scale(.85); }
}
@keyframes prismGlintB {
  0%,100% { opacity:.12; transform:scale(.6); }
  50% { opacity:.8; transform:scale(1.1); }
}

@media (max-width: 1080px) {
  .hero-prism-visual-v2 { min-height: 610px; }
  .prism-art-stage { width: min(620px, 92vw); }
}
@media (max-width: 720px) {
  .hero-prism-visual-v2 { min-height: 505px; margin-inline: -16px; }
  .prism-art-stage { width: min(540px, 112vw); }
}
@media (max-width: 440px) {
  .hero-prism-visual-v2 { min-height: 430px; }
  .prism-art-stage { width: min(470px, 116vw); }
}
@media (prefers-reduced-motion: reduce) {
  .prism-art-stage,.prism-art-stage::after,.prism-art-halo,.prism-art-refraction,.prism-art-glint { animation:none !important; }
  .prism-art-refraction { display:none; }
}


/* v0.0.11 - hero prism as atmosphere, not centerpiece */
.hero-v4 {
  background:
    radial-gradient(circle at 74% 44%, rgba(0,155,165,.12), transparent 28rem),
    radial-gradient(circle at 90% 52%, rgba(239,109,93,.11), transparent 31rem),
    radial-gradient(circle at 67% 66%, rgba(134,88,212,.09), transparent 26rem),
    linear-gradient(90deg, rgba(255,255,255,.12) 0%, rgba(255,255,255,0) 32%);
}
.hero-v4 .hero-grid {
  grid-template-columns: minmax(0, .98fr) minmax(520px, 1.02fr);
  gap: 10px;
}
.hero-v4 .hero-copy {
  max-width: 760px;
}
.hero-prism-visual-v2 {
  min-height: 650px;
  overflow: hidden;
  pointer-events: none;
}
.hero-prism-visual-v2::before {
  width: min(860px, 128%);
  aspect-ratio: 1.08;
  left: 50%;
  top: 50%;
  transform: translate(-42%, -48%);
  background: radial-gradient(circle at 46% 47%, rgba(255,255,255,.74), rgba(0,155,165,.09) 36%, rgba(134,88,212,.07) 56%, rgba(239,109,93,.05) 66%, transparent 79%);
  filter: blur(22px);
  opacity: .78;
}
.prism-art-stage {
  width: min(870px, 145%);
  position: absolute;
  right: -14%;
  top: 52%;
  transform: translateY(-47%);
  opacity: .74;
  filter: drop-shadow(0 30px 40px rgba(70,70,88,.06)) saturate(.94);
  will-change: transform, opacity;
}
.prism-art-image {
  -webkit-mask-image: radial-gradient(ellipse 82% 84% at 54% 50%, #000 60%, rgba(0,0,0,.92) 75%, transparent 100%);
  mask-image: radial-gradient(ellipse 82% 84% at 54% 50%, #000 60%, rgba(0,0,0,.92) 75%, transparent 100%);
}
.prism-art-stage::after {
  left: 24%;
  right: 8%;
  bottom: 11%;
  height: 11%;
  background: radial-gradient(ellipse, rgba(90,95,135,.12), rgba(134,88,212,.06) 40%, transparent 75%);
  filter: blur(26px);
  opacity: .4;
}
.prism-art-halo { filter: blur(78px); opacity: .42; }
.prism-art-halo-cyan {
  width: 470px;
  height: 470px;
  left: 9%;
  top: 18%;
  background: rgba(0,155,165,.11);
}
.prism-art-halo-coral {
  width: 520px;
  height: 520px;
  right: -8%;
  bottom: 2%;
  background: rgba(239,109,93,.10);
}
.prism-art-refraction { opacity: 0; mix-blend-mode: screen; }
.prism-art-refraction-a {
  width: 14%;
  height: 66%;
  left: 32%;
  top: 10%;
  filter: blur(4px);
}
.prism-art-refraction-b {
  width: 10%;
  height: 58%;
  right: 25%;
  top: 16%;
  filter: blur(5px);
}
.prism-art-glint {
  opacity: .18;
  box-shadow: 0 0 0 4px rgba(255,255,255,.10), 0 0 18px rgba(255,255,255,.8), 0 0 26px rgba(0,155,165,.18);
}
.prism-art-glint-a { left: 36%; top: 68%; }
.prism-art-glint-b { right: 21%; top: 28%; }
@keyframes prismArtFloat {
  0%,100% { transform: translate3d(0, -47%, 0) rotate(-.24deg); }
  50% { transform: translate3d(-10px, calc(-47% - 7px), 0) rotate(.24deg); }
}
@keyframes prismArtShadow {
  0%,100% { opacity:.32; transform: scaleX(.94); }
  50% { opacity:.46; transform: scaleX(1.01); }
}
@keyframes prismHaloCyan {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(34px,-18px) scale(1.08); }
}
@keyframes prismHaloCoral {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(-26px,16px) scale(.96); }
}
@keyframes prismSweepA {
  0%,12% { opacity:0; transform:translateX(-110px) rotate(14deg) skewX(-9deg); }
  30% { opacity:.42; }
  60% { opacity:.12; }
  82%,100% { opacity:0; transform:translateX(430px) rotate(14deg) skewX(-9deg); }
}
@keyframes prismSweepB {
  0%,18% { opacity:0; transform:translateX(92px) rotate(-11deg) skewX(8deg); }
  38% { opacity:.28; }
  68% { opacity:.08; }
  88%,100% { opacity:0; transform:translateX(-300px) rotate(-11deg) skewX(8deg); }
}
@keyframes prismGlintA {
  0%,100% { opacity:.08; transform:scale(.65); }
  45% { opacity:.48; transform:scale(1.08); }
  58% { opacity:.16; transform:scale(.85); }
}
@keyframes prismGlintB {
  0%,100% { opacity:.08; transform:scale(.6); }
  50% { opacity:.42; transform:scale(1.04); }
}
@media (max-width: 1080px) {
  .hero-v4 .hero-grid { grid-template-columns: 1fr; gap: 18px; }
  .hero-prism-visual-v2 {
    min-height: 580px;
    margin-inline: -12px;
  }
  .prism-art-stage {
    width: min(760px, 128vw);
    right: -9%;
    top: 50%;
    opacity: .78;
  }
}
@media (max-width: 720px) {
  .hero-prism-visual-v2 { min-height: 475px; margin-inline: -18px; }
  .hero-prism-visual-v2::before { width: 132%; transform: translate(-44%, -48%); }
  .prism-art-stage { width: min(620px, 138vw); right: -14%; top: 48%; opacity: .82; }
}
@media (max-width: 440px) {
  .hero-prism-visual-v2 { min-height: 405px; }
  .prism-art-stage { width: min(540px, 146vw); right: -18%; }
}


/* v0.0.12 - compact concrete hero visual */
.hero-v4 {
  background:
    radial-gradient(circle at 72% 44%, rgba(0,155,165,.08), transparent 24rem),
    radial-gradient(circle at 93% 50%, rgba(239,109,93,.08), transparent 27rem),
    linear-gradient(180deg, rgba(255,255,255,.76), rgba(255,255,255,.88));
}
.hero-v4 .hero-grid {
  grid-template-columns: minmax(0, .95fr) minmax(540px, 1.05fr);
  gap: 30px;
  align-items: center;
}
.hero-v4 .hero-copy { max-width: 700px; }
.hero-signal-visual {
  position: relative;
  min-height: 560px;
  border: 1px solid rgba(32,33,38,.09);
  border-radius: 32px;
  background: linear-gradient(145deg, rgba(255,255,255,.72), rgba(255,255,255,.52));
  box-shadow: 0 34px 80px rgba(39,40,45,.08), inset 0 1px 0 rgba(255,255,255,.9);
  overflow: hidden;
  isolation: isolate;
  padding: 32px 28px 78px;
  display: grid;
  grid-template-columns: 1.06fr .96fr 1.06fr;
  gap: 18px;
  align-items: start;
}
.hero-signal-visual::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(32,33,38,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(32,33,38,.04) 1px, transparent 1px);
  background-size: 46px 46px;
  mask-image: linear-gradient(to bottom, transparent, black 10%, black 88%, transparent);
  opacity: .6;
  z-index: -2;
}
.hero-signal-wash {
  position: absolute; border-radius: 50%; filter: blur(70px); opacity: .45; z-index: -1; pointer-events: none;
}
.hero-signal-wash-cyan { width: 300px; height: 300px; left: 14%; top: 18%; background: rgba(0,155,165,.12); }
.hero-signal-wash-coral { width: 340px; height: 340px; right: 4%; bottom: 8%; background: rgba(239,109,93,.11); }
.hero-signal-lines {
  position: absolute; inset: 0; width: 100%; height: 100%; z-index: 0; opacity: .95;
}
.signal-line {
  fill: none; stroke: url(#heroSignalGradient); stroke-width: 2.2; stroke-linecap: round; stroke-dasharray: 4 9; filter: url(#heroSignalGlow); opacity: .72;
}
.signal-dot { fill: #fff; stroke: url(#heroSignalGradient); stroke-width: 2; filter: url(#heroSignalGlow); }
.signal-stage { position: relative; z-index: 1; display: grid; gap: 14px; }
.signal-stage-kicker {
  margin: 0; color: var(--muted-2); font-size: .62rem; font-weight: 760; letter-spacing: .16em; text-transform: uppercase;
}
.signal-expert-card,
.signal-output-card,
.signal-buyer-card {
  border: 1px solid rgba(32,33,38,.1);
  border-radius: 20px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 20px 36px rgba(36,37,42,.06), inset 0 1px 0 rgba(255,255,255,.86);
}
.signal-expert-card {
  display: grid; grid-template-columns: 72px 1fr; gap: 14px; align-items: center; padding: 16px;
}
.signal-avatar {
  width: 72px; height: 72px; border-radius: 22px; background: linear-gradient(145deg, rgba(0,155,165,.12), rgba(134,88,212,.12), rgba(239,109,93,.12)); border: 1px solid rgba(32,33,38,.08); display:grid; place-items:center; overflow:hidden;
}
.signal-avatar span {
  width: 36px; height: 36px; border-radius: 50%; background: linear-gradient(180deg, rgba(32,33,38,.72), rgba(32,33,38,.36)); position: relative;
}
.signal-avatar span::after { content:''; position:absolute; width:58px; height:32px; border-radius: 32px 32px 16px 16px; background: linear-gradient(180deg, rgba(32,33,38,.72), rgba(32,33,38,.44)); left:50%; transform:translateX(-50%); bottom:-20px; }
.signal-expert-copy strong,
.signal-output-card strong,
.signal-buyer-card b { display:block; color: var(--text); font-size: .98rem; line-height: 1.18; letter-spacing: -.02em; }
.signal-expert-copy small,
.signal-output-card small,
.signal-buyer-card span { display:block; margin-top: 6px; color: var(--muted); font-size: .72rem; line-height: 1.5; }
.signal-source-list {
  margin: 0; padding: 0; list-style: none; display: grid; gap: 10px;
}
.signal-source-list li {
  min-height: 42px; padding: 0 14px; display: flex; align-items: center; border: 1px solid rgba(32,33,38,.09); border-radius: 14px; background: rgba(255,255,255,.72); color: var(--muted); font-size: .78rem; font-weight: 560;
}
.signal-output-stack, .signal-audience-list { display: grid; gap: 14px; }
.signal-output-card, .signal-buyer-card { padding: 16px 16px 15px; }
.signal-output-type {
  display:inline-flex; align-items:center; min-height: 22px; padding: 0 9px; margin-bottom: 10px; border-radius: 999px; background: rgba(255,255,255,.6); border: 1px solid rgba(32,33,38,.09); color: var(--muted-2); font-size: .56rem; font-weight: 760; letter-spacing: .12em; text-transform: uppercase;
}
.signal-output-linkedin .signal-output-type { color: var(--cyan); }
.signal-output-proof .signal-output-type { color: var(--violet); }
.signal-buyer-card { position: relative; padding-left: 20px; }
.signal-buyer-card::before {
  content:''; position:absolute; left:0; top:18px; width:6px; height:34px; border-radius: 0 8px 8px 0; background: linear-gradient(180deg, var(--cyan), var(--coral)); opacity: .75;
}
.signal-outcome-pill {
  position: absolute; left: 50%; bottom: 18px; transform: translateX(-50%); min-height: 44px; padding: 0 18px; display: inline-flex; align-items:center; justify-content:center; border-radius: 999px; background: rgba(255,255,255,.78); border: 1px solid rgba(32,33,38,.1); color: var(--text); font-size: .77rem; font-weight: 680; letter-spacing: -.01em; white-space: nowrap; box-shadow: 0 14px 30px rgba(39,40,45,.06);
}
@media (max-width: 1180px) {
  .hero-v4 .hero-grid { grid-template-columns: 1fr; gap: 18px; }
  .hero-signal-visual { min-height: 520px; }
}
@media (max-width: 860px) {
  .hero-signal-visual {
    grid-template-columns: 1fr; min-height: auto; padding: 24px 20px 72px; gap: 16px;
  }
  .hero-signal-lines { display: none; }
  .signal-source-list { grid-template-columns: 1fr 1fr; }
  .signal-outcome-pill { bottom: 16px; white-space: normal; text-align: center; max-width: calc(100% - 32px); }
}
@media (max-width: 640px) {
  .hero-signal-visual { margin-inline: -6px; border-radius: 24px; }
  .signal-source-list { grid-template-columns: 1fr; }
  .signal-expert-card { grid-template-columns: 58px 1fr; }
  .signal-avatar { width: 58px; height: 58px; border-radius: 18px; }
}


/* v0.0.13 - simple bridge hero */
.hero-v4 {
  background:
    radial-gradient(circle at 72% 42%, rgba(0,155,165,.08), transparent 23rem),
    radial-gradient(circle at 92% 54%, rgba(239,109,93,.075), transparent 26rem),
    linear-gradient(180deg, rgba(255,255,255,.8), rgba(255,255,255,.9));
}
.hero-v4 .hero-grid {
  grid-template-columns: minmax(0, .98fr) minmax(520px, 1.02fr);
  gap: 28px;
  align-items: center;
}
.hero-v4 .hero-copy { max-width: 700px; }
.hero-bridge-visual {
  position: relative;
  min-height: 458px;
  padding: 24px 22px 56px;
  border: 1px solid rgba(32,33,38,.09);
  border-radius: 30px;
  background: linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.56));
  box-shadow: 0 30px 70px rgba(39,40,45,.07), inset 0 1px 0 rgba(255,255,255,.92);
  overflow: hidden;
  isolation: isolate;
  display: grid;
  grid-template-columns: 1fr 220px 1fr;
  gap: 18px;
  align-items: center;
}
.hero-bridge-visual::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(32,33,38,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(32,33,38,.035) 1px, transparent 1px);
  background-size: 44px 44px;
  opacity: .58;
  mask-image: linear-gradient(to bottom, transparent, black 12%, black 88%, transparent);
  z-index: -2;
}
.bridge-atmosphere {
  position: absolute; border-radius: 50%; filter: blur(72px); opacity: .4; z-index: -1; pointer-events: none;
}
.bridge-atmosphere-cyan { width: 280px; height: 280px; left: 10%; top: 18%; background: rgba(0,155,165,.11); }
.bridge-atmosphere-coral { width: 320px; height: 320px; right: 6%; bottom: 8%; background: rgba(239,109,93,.1); }
.bridge-lines { position: absolute; inset: 0; width: 100%; height: 100%; }
.bridge-line-muted {
  fill: none; stroke: rgba(32,33,38,.16); stroke-width: 2.2; stroke-dasharray: 4 10; stroke-linecap: round;
}
.bridge-line-active {
  fill: none; stroke: url(#bridgeSignalGradient); stroke-width: 3.2; stroke-linecap: round; filter: url(#bridgeSignalGlow); stroke-dasharray: 64 200; animation: bridgeSignalFlowA 4.4s linear infinite; opacity: .9;
}
.bridge-line-active-b { animation-name: bridgeSignalFlowB; animation-delay: .2s; }
.bridge-pulse {
  fill: #fff; stroke: url(#bridgeSignalGradient); stroke-width: 2; filter: url(#bridgeSignalGlow); opacity: .9;
}
.bp-1 { animation: bridgePulse 3.6s ease-in-out infinite .1s; }
.bp-2 { animation: bridgePulse 3.6s ease-in-out infinite .6s; }
.bp-3 { animation: bridgePulse 3.6s ease-in-out infinite 1.2s; }
.bp-4 { animation: bridgePulse 3.6s ease-in-out infinite 1.8s; }
.bridge-side, .bridge-center { position: relative; z-index: 1; }
.bridge-side-kicker {
  margin: 0 0 10px; color: var(--muted-2); font-size: .62rem; font-weight: 760; letter-spacing: .16em; text-transform: uppercase;
}
.bridge-card {
  border: 1px solid rgba(32,33,38,.1);
  border-radius: 22px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 20px 36px rgba(36,37,42,.06), inset 0 1px 0 rgba(255,255,255,.9);
}
.bridge-card-source, .bridge-card-target {
  min-height: 136px;
  display: grid;
  grid-template-columns: 68px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px;
}
.bridge-card-target {
  grid-template-columns: 1fr 68px;
}
.bridge-card-copy strong, .bridge-card-center strong {
  display: block; color: var(--text); font-size: 1.02rem; line-height: 1.18; letter-spacing: -.02em;
}
.bridge-card-copy small, .bridge-card-center small {
  display: block; margin-top: 7px; color: var(--muted); font-size: .75rem; line-height: 1.55;
}
.bridge-card-icon {
  width: 68px; height: 68px; border-radius: 20px; border: 1px solid rgba(32,33,38,.08); background: linear-gradient(145deg, rgba(0,155,165,.12), rgba(134,88,212,.12), rgba(239,109,93,.12)); position: relative;
}
.bridge-card-icon-source::before {
  content: ''; position: absolute; inset: 17px 16px 18px; border-radius: 11px 11px 15px 15px; background: linear-gradient(180deg, rgba(32,33,38,.75), rgba(32,33,38,.4));
}
.bridge-card-icon-source::after {
  content: ''; position: absolute; left: 23px; top: 22px; width: 22px; height: 3px; border-radius: 99px; background: rgba(255,255,255,.92); box-shadow: 0 9px 0 rgba(255,255,255,.75), 0 18px 0 rgba(255,255,255,.58);
}
.bridge-card-icon-target::before,
.bridge-card-icon-target::after {
  content: ''; position: absolute; border-radius: 50%; background: linear-gradient(180deg, rgba(32,33,38,.76), rgba(32,33,38,.46));
}
.bridge-card-icon-target::before { width: 20px; height: 20px; left: 14px; top: 17px; box-shadow: 20px 10px 0 -1px rgba(32,33,38,.68); }
.bridge-card-icon-target::after { width: 40px; height: 18px; left: 14px; bottom: 15px; border-radius: 18px 18px 10px 10px; background: rgba(32,33,38,.42); box-shadow: 18px -6px 0 -2px rgba(32,33,38,.35); }
.bridge-center {
  display: grid; place-items: center;
}
.bridge-center-ring {
  position: absolute; width: 188px; height: 188px; border-radius: 50%; border: 1px solid rgba(134,88,212,.14); background: radial-gradient(circle, rgba(255,255,255,.58), rgba(0,155,165,.05) 42%, rgba(134,88,212,.06) 65%, transparent 82%); box-shadow: inset 0 0 0 18px rgba(255,255,255,.14); animation: bridgeRingPulse 5s ease-in-out infinite;
}
.bridge-card-center {
  position: relative; width: 184px; min-height: 184px; padding: 22px 18px; border-radius: 999px; display: grid; place-items: center; text-align: center; background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(255,255,255,.76));
}
.bridge-center-label {
  margin: 0 0 6px; color: var(--cyan); font-size: .64rem; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
}
.bridge-caption {
  position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); display: inline-flex; align-items: center; gap: 10px; min-height: 34px; padding: 0 14px; border-radius: 999px; background: rgba(255,255,255,.72); border: 1px solid rgba(32,33,38,.08); color: var(--muted); font-size: .68rem; font-weight: 620; white-space: nowrap; box-shadow: 0 14px 28px rgba(39,40,45,.05);
}
.bridge-caption-dot { width: 8px; height: 8px; border-radius: 50%; background: linear-gradient(135deg, var(--cyan), var(--coral)); box-shadow: 0 0 10px rgba(0,155,165,.35); }
@keyframes bridgeSignalFlowA {
  0% { stroke-dashoffset: 264; }
  100% { stroke-dashoffset: 0; }
}
@keyframes bridgeSignalFlowB {
  0% { stroke-dashoffset: 264; }
  100% { stroke-dashoffset: 0; }
}
@keyframes bridgePulse {
  0%,100% { opacity: .3; transform: scale(.7); }
  35% { opacity: 1; transform: scale(1.15); }
  55% { opacity: .55; transform: scale(.9); }
}
@keyframes bridgeRingPulse {
  0%,100% { transform: scale(.96); opacity: .88; }
  50% { transform: scale(1.04); opacity: 1; }
}
@media (max-width: 1180px) {
  .hero-v4 .hero-grid { grid-template-columns: 1fr; gap: 18px; }
  .hero-bridge-visual { min-height: 420px; }
}
@media (max-width: 900px) {
  .hero-bridge-visual {
    grid-template-columns: 1fr; min-height: auto; padding: 20px 18px 54px; gap: 14px;
  }
  .bridge-lines { display: none; }
  .bridge-side-kicker { margin-bottom: 8px; }
  .bridge-center { order: 2; padding-block: 6px; }
  .bridge-side-left { order: 1; }
  .bridge-side-right { order: 3; }
  .bridge-card-source, .bridge-card-target { min-height: 112px; }
  .bridge-caption { white-space: normal; text-align: center; max-width: calc(100% - 32px); }
}
@media (max-width: 620px) {
  .hero-bridge-visual { margin-inline: -6px; border-radius: 24px; }
  .bridge-card-source, .bridge-card-target { grid-template-columns: 56px 1fr; padding: 14px; }
  .bridge-card-target { grid-template-columns: 1fr 56px; }
  .bridge-card-icon { width: 56px; height: 56px; border-radius: 16px; }
  .bridge-card-center { width: 164px; min-height: 164px; padding: 18px 14px; }
  .bridge-center-ring { width: 170px; height: 170px; }
}


/* v0.0.14 - node-to-node signal hero */
.hero-v4 {
  background:
    radial-gradient(circle at 74% 42%, rgba(0,155,165,.08), transparent 22rem),
    radial-gradient(circle at 92% 56%, rgba(239,109,93,.07), transparent 24rem),
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.92));
}
.hero-v4 .hero-grid {
  grid-template-columns: minmax(0, .98fr) minmax(520px, 1.02fr);
  gap: 28px;
  align-items: center;
}
.hero-signal-network {
  position: relative;
  min-height: 438px;
  border: 1px solid rgba(32,33,38,.08);
  border-radius: 30px;
  background: linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.58));
  box-shadow: 0 30px 70px rgba(39,40,45,.07), inset 0 1px 0 rgba(255,255,255,.92);
  overflow: hidden;
  isolation: isolate;
}
.hero-signal-network::before {
  content: '';
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(32,33,38,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(32,33,38,.035) 1px, transparent 1px);
  background-size: 44px 44px;
  opacity: .55;
  mask-image: linear-gradient(to bottom, transparent, black 12%, black 88%, transparent);
  z-index: -2;
}
.signal-network-wash { position:absolute; border-radius:50%; filter:blur(72px); opacity:.38; z-index:-1; pointer-events:none; }
.signal-network-wash-cyan { width: 240px; height: 240px; left: 8%; top: 16%; background: rgba(0,155,165,.12); }
.signal-network-wash-coral { width: 280px; height: 280px; right: 2%; bottom: 10%; background: rgba(239,109,93,.11); }
.signal-network-board { position: relative; min-height: 438px; padding: 34px 30px 56px; }
.signal-node { position: absolute; width: 138px; text-align: center; z-index: 2; }
.signal-node-source { left: 32px; top: 148px; }
.signal-node-kryston { left: 50%; top: 112px; width: 152px; transform: translateX(-50%); animation: krystonNodeCycle 8s ease-in-out infinite; }
.signal-node-target { right: 32px; top: 148px; }
.node-kicker { display:block; margin-bottom: 12px; color: var(--muted-2); font-size: .58rem; font-weight: 760; letter-spacing: .15em; text-transform: uppercase; }
.node-core {
  width: 92px; height: 92px; margin: 0 auto 12px; border-radius: 50%; position: relative;
  background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.9), rgba(0,155,165,.12) 40%, rgba(134,88,212,.14) 64%, rgba(239,109,93,.1) 82%, rgba(255,255,255,.36) 100%);
  border: 1px solid rgba(32,33,38,.1); box-shadow: 0 18px 40px rgba(36,37,42,.08), inset 0 1px 0 rgba(255,255,255,.92);
}
.signal-node-source .node-core::after,
.signal-node-target .node-core::after { content:''; position:absolute; inset: 24px; border-radius:50%; background: linear-gradient(180deg, rgba(32,33,38,.76), rgba(32,33,38,.38)); opacity:.65; }
.signal-node-kryston .node-core {
  width: 108px; height: 108px;
  background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.96), rgba(0,155,165,.18) 36%, rgba(134,88,212,.2) 64%, rgba(239,109,93,.16) 86%, rgba(255,255,255,.45) 100%);
  box-shadow: 0 22px 48px rgba(36,37,42,.1), 0 0 44px rgba(0,155,165,.16), inset 0 1px 0 rgba(255,255,255,.94);
}
.signal-node-kryston .node-core::before { content:'K'; position:absolute; inset:0; display:grid; place-items:center; color: var(--text); font-size: 1.8rem; font-weight: 800; letter-spacing: -.06em; }
.signal-node strong { display:block; color: var(--text); font-size: .96rem; line-height: 1.15; letter-spacing: -.02em; }
.signal-track { position:absolute; height:2px; transform-origin:left center; border-radius:999px; top: 199px; left: 112px; }
.signal-track-source-target { width: calc(100% - 224px); background: rgba(32,33,38,.1); top: 194px; }
.signal-track-source-kryston { width: calc(50% - 188px); background: rgba(32,33,38,.12); top: 194px; }
.signal-track-kryston-target { width: calc(50% - 188px); left: calc(50% + 76px); background: rgba(32,33,38,.12); top: 194px; }
.signal-track-active { height: 3px; background: linear-gradient(90deg, rgba(0,155,165,.96), rgba(134,88,212,.92), rgba(239,109,93,.9)); box-shadow: 0 0 18px rgba(0,155,165,.22); opacity: 0; }
.signal-track-active.signal-track-source-kryston { animation: krystonTrackCycleA 8s linear infinite; }
.signal-track-active.signal-track-kryston-target { animation: krystonTrackCycleB 8s linear infinite; }
.drift-particles, .guided-particles { position:absolute; inset:0; z-index:1; }
.drift-particle, .guided-particle { position:absolute; width: 8px; height: 8px; border-radius:50%; }
.drift-particle { background: rgba(120,124,138,.48); box-shadow: 0 0 10px rgba(120,124,138,.14); opacity: 0; }
.guided-particle { background: linear-gradient(135deg, rgba(0,155,165,.98), rgba(239,109,93,.98)); box-shadow: 0 0 14px rgba(0,155,165,.28); opacity: 0; }
.d1 { animation: driftA 8s linear infinite; }
.d2 { animation: driftB 8s linear infinite .5s; }
.d3 { animation: driftC 8s linear infinite 1.1s; }
.d4 { animation: driftD 8s linear infinite 1.5s; }
.d5 { animation: driftE 8s linear infinite 2.1s; }
.d6 { animation: driftF 8s linear infinite 2.6s; }
.g1 { animation: guideA 8s linear infinite 3.4s; }
.g2 { animation: guideB 8s linear infinite 3.8s; }
.g3 { animation: guideC 8s linear infinite 4.2s; }
.g4 { animation: guideD 8s linear infinite 4.6s; }
.g5 { animation: guideE 8s linear infinite 5.0s; }
.g6 { animation: guideF 8s linear infinite 5.4s; }
.signal-network-caption { position:absolute; left:50%; bottom:16px; transform:translateX(-50%); min-height: 36px; padding: 0 14px; display:inline-flex; align-items:center; justify-content:center; border-radius:999px; background: rgba(255,255,255,.72); border: 1px solid rgba(32,33,38,.08); color: var(--muted); font-size: .68rem; font-weight: 620; white-space: nowrap; box-shadow: 0 14px 28px rgba(39,40,45,.05); }
@keyframes krystonNodeCycle { 0%,37% { opacity:.34; transform: translateX(-50%) scale(.92); filter:saturate(.75); } 44%,76% { opacity:1; transform: translateX(-50%) scale(1); filter:saturate(1); } 88%,100% { opacity:.34; transform: translateX(-50%) scale(.92); filter:saturate(.75); } }
@keyframes krystonTrackCycleA { 0%,38% { opacity:0; transform: scaleX(.1); } 44% { opacity: .95; transform: scaleX(1); } 76% { opacity: .95; transform: scaleX(1); } 88%,100% { opacity: 0; transform: scaleX(.1); } }
@keyframes krystonTrackCycleB { 0%,44% { opacity:0; transform: scaleX(.1); } 48% { opacity: .95; transform: scaleX(1); } 76% { opacity: .95; transform: scaleX(1); } 88%,100% { opacity: 0; transform: scaleX(.1); } }
@keyframes driftA { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 4% { opacity:.55; } 18% { opacity:.36; transform: translate(245px,150px) scale(.92); } 34% { opacity:0; transform: translate(520px,138px) scale(.78); } }
@keyframes driftB { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 5% { opacity:.5; } 20% { opacity:.34; transform: translate(272px,228px) scale(.98); } 36% { opacity:0; transform: translate(560px,246px) scale(.72); } }
@keyframes driftC { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 5% { opacity:.45; } 18% { opacity:.34; transform: translate(260px,186px) scale(.95); } 35% { opacity:0; transform: translate(596px,172px) scale(.75); } }
@keyframes driftD { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 6% { opacity:.48; } 22% { opacity:.32; transform: translate(292px,132px) scale(.92); } 36% { opacity:0; transform: translate(548px,122px) scale(.72); } }
@keyframes driftE { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 6% { opacity:.42; } 22% { opacity:.3; transform: translate(308px,214px) scale(.9); } 36% { opacity:0; transform: translate(582px,292px) scale(.7); } }
@keyframes driftF { 0%,38%,100% { opacity:0; transform: translate(104px,190px) scale(.6); } 6% { opacity:.4; } 23% { opacity:.28; transform: translate(248px,170px) scale(.88); } 35% { opacity:0; transform: translate(534px,200px) scale(.68); } }
@keyframes guideA { 0%,40% { opacity:0; transform: translate(104px,190px) scale(.55); } 44% { opacity:1; transform: translate(230px,190px) scale(1); } 50% { opacity:1; transform: translate(368px,184px) scale(1.08); } 58% { opacity:1; transform: translate(510px,190px) scale(1); } 66% { opacity:0; transform: translate(618px,190px) scale(.7); } 100% { opacity:0; transform: translate(618px,190px) scale(.7); } }
@keyframes guideB { 0%,40% { opacity:0; transform: translate(104px,196px) scale(.55); } 45% { opacity:1; transform: translate(240px,196px) scale(.98); } 51% { opacity:1; transform: translate(372px,190px) scale(1.06); } 59% { opacity:1; transform: translate(522px,194px) scale(.98); } 68% { opacity:0; transform: translate(628px,198px) scale(.68); } 100% { opacity:0; transform: translate(628px,198px) scale(.68); } }
@keyframes guideC { 0%,40% { opacity:0; transform: translate(104px,184px) scale(.55); } 46% { opacity:1; transform: translate(248px,184px) scale(.96); } 52% { opacity:1; transform: translate(378px,178px) scale(1.02); } 60% { opacity:1; transform: translate(530px,182px) scale(.96); } 69% { opacity:0; transform: translate(636px,184px) scale(.66); } 100% { opacity:0; transform: translate(636px,184px) scale(.66); } }
@keyframes guideD { 0%,40% { opacity:0; transform: translate(104px,202px) scale(.55); } 47% { opacity:1; transform: translate(254px,202px) scale(.96); } 53% { opacity:1; transform: translate(382px,196px) scale(1); } 61% { opacity:1; transform: translate(540px,202px) scale(.94); } 70% { opacity:0; transform: translate(644px,206px) scale(.66); } 100% { opacity:0; transform: translate(644px,206px) scale(.66); } }
@keyframes guideE { 0%,40% { opacity:0; transform: translate(104px,188px) scale(.55); } 48% { opacity:1; transform: translate(262px,188px) scale(.94); } 54% { opacity:1; transform: translate(388px,184px) scale(.98); } 62% { opacity:1; transform: translate(548px,188px) scale(.92); } 71% { opacity:0; transform: translate(652px,190px) scale(.64); } 100% { opacity:0; transform: translate(652px,190px) scale(.64); } }
@keyframes guideF { 0%,40% { opacity:0; transform: translate(104px,194px) scale(.55); } 49% { opacity:1; transform: translate(270px,194px) scale(.92); } 55% { opacity:1; transform: translate(394px,188px) scale(.96); } 63% { opacity:1; transform: translate(556px,194px) scale(.9); } 72% { opacity:0; transform: translate(660px,196px) scale(.62); } 100% { opacity:0; transform: translate(660px,196px) scale(.62); } }
@media (max-width: 1180px) { .hero-v4 .hero-grid { grid-template-columns: 1fr; gap: 18px; } }
@media (max-width: 900px) {
  .hero-signal-network { min-height: auto; }
  .signal-network-board { min-height: auto; padding: 22px 18px 52px; display:grid; gap:16px; }
  .signal-node { position: relative; inset: auto !important; left: auto !important; right: auto !important; top: auto !important; width: 100%; transform: none !important; }
  .signal-node-kryston { order: 2; }
  .signal-node-source { order: 1; }
  .signal-node-target { order: 3; }
  .signal-track, .drift-particles, .guided-particles { display:none; }
  .node-core { margin-bottom: 8px; }
  .signal-network-caption { white-space: normal; text-align:center; max-width: calc(100% - 32px); }
}
@media (max-width: 620px) {
  .hero-signal-network { border-radius: 24px; margin-inline: -6px; }
  .node-core { width: 76px; height: 76px; }
  .signal-node-kryston .node-core { width: 92px; height: 92px; }
}


/* v0.0.15 - hero signal polish */
.hero-v4 .hero-grid {
  align-items: start;
  gap: 30px;
}
.hero-copy { padding-top: 18px; }
.hero-signal-network {
  min-height: 392px;
  margin-top: -18px;
}
.signal-network-board {
  min-height: 392px;
  padding: 20px 24px 52px;
}
.signal-network-wash-cyan { left: 12%; top: 10%; opacity: .28; }
.signal-network-wash-coral { right: 6%; bottom: 12%; opacity: .24; }
.signal-node {
  width: 150px;
}
.signal-node-source {
  left: 20px;
  top: 108px;
}
.signal-node-target {
  right: 20px;
  top: 108px;
}
.signal-node-kryston {
  width: 164px;
  top: 68px;
}
.node-kicker {
  margin-bottom: 8px;
  font-size: .54rem;
  letter-spacing: .18em;
  opacity: .7;
}
.node-core {
  margin-bottom: 10px;
}
.signal-node strong {
  font-size: .9rem;
}
.signal-track {
  top: 170px;
  left: 95px;
}
.signal-track-source-target {
  width: calc(100% - 190px);
  height: 2px;
  background: linear-gradient(90deg, rgba(32,33,38,.14), rgba(32,33,38,.08));
  top: 170px;
}
/* hide the old split baseline and use one continuous base */
.signal-track-base.signal-track-source-kryston,
.signal-track-base.signal-track-kryston-target {
  display: none;
}
.signal-track-active.signal-track-source-kryston {
  left: 95px;
  width: calc(50% - 95px);
  top: 170px;
}
.signal-track-active.signal-track-kryston-target {
  left: 50%;
  width: calc(50% - 95px);
  top: 170px;
}
.signal-track-active {
  height: 3px;
  border-radius: 999px;
  box-shadow: 0 0 20px rgba(0,155,165,.2);
}
.signal-node-source .node-core::after,
.signal-node-target .node-core::after {
  inset: 25px;
}
.signal-network-caption {
  min-height: 34px;
  padding: 0 16px;
  font-size: .66rem;
  letter-spacing: .01em;
  color: var(--muted-2);
}
/* Particle paths adjusted to the new geometry */
@keyframes driftA {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  4% { opacity:.52; }
  18% { opacity:.34; transform: translate(224px,138px) scale(.9); }
  34% { opacity:0; transform: translate(500px,130px) scale(.76); }
}
@keyframes driftB {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  5% { opacity:.48; }
  20% { opacity:.32; transform: translate(252px,204px) scale(.96); }
  36% { opacity:0; transform: translate(542px,214px) scale(.72); }
}
@keyframes driftC {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  5% { opacity:.44; }
  18% { opacity:.33; transform: translate(244px,168px) scale(.93); }
  35% { opacity:0; transform: translate(582px,165px) scale(.74); }
}
@keyframes driftD {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  6% { opacity:.46; }
  22% { opacity:.31; transform: translate(276px,122px) scale(.9); }
  36% { opacity:0; transform: translate(532px,115px) scale(.7); }
}
@keyframes driftE {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  6% { opacity:.4; }
  22% { opacity:.28; transform: translate(286px,194px) scale(.88); }
  36% { opacity:0; transform: translate(572px,258px) scale(.68); }
}
@keyframes driftF {
  0%,38%,100% { opacity:0; transform: translate(95px,170px) scale(.6); }
  6% { opacity:.38; }
  23% { opacity:.27; transform: translate(232px,156px) scale(.86); }
  35% { opacity:0; transform: translate(522px,185px) scale(.66); }
}
@keyframes guideA {
  0%,40% { opacity:0; transform: translate(95px,170px) scale(.55); }
  44% { opacity:1; transform: translate(220px,170px) scale(1); }
  50% { opacity:1; transform: translate(350px,170px) scale(1.07); }
  58% { opacity:1; transform: translate(500px,170px) scale(1); }
  66% { opacity:0; transform: translate(618px,170px) scale(.7); }
  100% { opacity:0; transform: translate(618px,170px) scale(.7); }
}
@keyframes guideB {
  0%,40% { opacity:0; transform: translate(95px,176px) scale(.55); }
  45% { opacity:1; transform: translate(230px,176px) scale(.98); }
  51% { opacity:1; transform: translate(356px,173px) scale(1.05); }
  59% { opacity:1; transform: translate(512px,176px) scale(.98); }
  68% { opacity:0; transform: translate(626px,176px) scale(.68); }
  100% { opacity:0; transform: translate(626px,176px) scale(.68); }
}
@keyframes guideC {
  0%,40% { opacity:0; transform: translate(95px,164px) scale(.55); }
  46% { opacity:1; transform: translate(240px,164px) scale(.96); }
  52% { opacity:1; transform: translate(362px,167px) scale(1.02); }
  60% { opacity:1; transform: translate(520px,164px) scale(.96); }
  69% { opacity:0; transform: translate(634px,164px) scale(.66); }
  100% { opacity:0; transform: translate(634px,164px) scale(.66); }
}
@keyframes guideD {
  0%,40% { opacity:0; transform: translate(95px,182px) scale(.55); }
  47% { opacity:1; transform: translate(246px,182px) scale(.96); }
  53% { opacity:1; transform: translate(368px,176px) scale(1); }
  61% { opacity:1; transform: translate(528px,182px) scale(.94); }
  70% { opacity:0; transform: translate(642px,182px) scale(.66); }
  100% { opacity:0; transform: translate(642px,182px) scale(.66); }
}
@keyframes guideE {
  0%,40% { opacity:0; transform: translate(95px,168px) scale(.55); }
  48% { opacity:1; transform: translate(254px,168px) scale(.94); }
  54% { opacity:1; transform: translate(374px,170px) scale(.98); }
  62% { opacity:1; transform: translate(538px,168px) scale(.92); }
  71% { opacity:0; transform: translate(650px,168px) scale(.64); }
  100% { opacity:0; transform: translate(650px,168px) scale(.64); }
}
@keyframes guideF {
  0%,40% { opacity:0; transform: translate(95px,174px) scale(.55); }
  49% { opacity:1; transform: translate(262px,174px) scale(.92); }
  55% { opacity:1; transform: translate(380px,173px) scale(.96); }
  63% { opacity:1; transform: translate(546px,174px) scale(.9); }
  72% { opacity:0; transform: translate(658px,174px) scale(.62); }
  100% { opacity:0; transform: translate(658px,174px) scale(.62); }
}
@media (max-width: 1180px) {
  .hero-signal-network {
    margin-top: 0;
  }
}
@media (max-width: 900px) {
  .hero-copy { padding-top: 0; }
  .signal-node strong { font-size: .92rem; }
  .node-kicker { display: block; }
}


/* v0.0.16 - single-path signal polish */
.hero-v4 .hero-grid {
  align-items: start;
  gap: 32px;
}
.hero-copy { padding-top: 16px; }
.hero-signal-network {
  min-height: 386px;
  margin-top: -22px;
  border-color: rgba(32,33,38,.07);
  background: linear-gradient(145deg, rgba(255,255,255,.8), rgba(255,255,255,.62));
  box-shadow: 0 28px 62px rgba(39,40,45,.06), inset 0 1px 0 rgba(255,255,255,.94);
}
.signal-network-board {
  min-height: 386px;
  padding: 20px 22px 54px;
}
.signal-network-wash-cyan { left: 12%; top: 10%; opacity: .22; }
.signal-network-wash-coral { right: 6%; bottom: 8%; opacity: .18; }
.signal-node {
  width: 156px;
  text-align: center;
}
.signal-node-source { left: 22px; top: 94px; }
.signal-node-target { right: 22px; top: 94px; animation: targetNodeCycle 8s ease-in-out infinite; }
.signal-node-kryston { top: 52px; width: 168px; animation: krystonNodeCycle 8s ease-in-out infinite; }
.node-kicker {
  margin-bottom: 8px;
  font-size: .54rem;
  letter-spacing: .18em;
  opacity: .72;
}
.node-core {
  width: 96px;
  height: 96px;
  margin: 0 auto 10px;
  border: 1px solid rgba(32,33,38,.09);
  box-shadow: 0 16px 34px rgba(36,37,42,.06), inset 0 1px 0 rgba(255,255,255,.94);
}
.signal-node-source .node-core {
  background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.95), rgba(0,155,165,.16) 40%, rgba(134,88,212,.14) 66%, rgba(239,109,93,.12) 86%, rgba(255,255,255,.44) 100%);
  box-shadow: 0 18px 38px rgba(36,37,42,.07), 0 0 22px rgba(0,155,165,.08), inset 0 1px 0 rgba(255,255,255,.96);
}
.signal-node-target .node-core {
  background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.9), rgba(0,155,165,.08) 38%, rgba(134,88,212,.1) 64%, rgba(239,109,93,.08) 84%, rgba(255,255,255,.34) 100%);
  box-shadow: 0 16px 34px rgba(36,37,42,.05), inset 0 1px 0 rgba(255,255,255,.9);
}
.signal-node-source .node-core::after,
.signal-node-target .node-core::after {
  inset: 26px;
  background: linear-gradient(180deg, rgba(32,33,38,.68), rgba(32,33,38,.36));
  opacity: .62;
}
.signal-node-kryston .node-core {
  width: 112px; height: 112px; margin-bottom: 12px;
  background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.98), rgba(0,155,165,.14) 36%, rgba(134,88,212,.18) 64%, rgba(239,109,93,.14) 84%, rgba(255,255,255,.42) 100%);
  box-shadow: 0 18px 42px rgba(36,37,42,.08), 0 0 30px rgba(0,155,165,.12), inset 0 1px 0 rgba(255,255,255,.96);
}
.signal-node-kryston .node-core::before {
  font-size: 1.72rem;
}
.signal-node strong {
  font-size: .9rem;
  letter-spacing: -.018em;
}
.signal-track {
  position: absolute;
  left: 96px;
  width: calc(100% - 192px);
  top: 154px;
  transform-origin: left center;
  border-radius: 999px;
}
.signal-track-source-target {
  height: 2px;
  background: linear-gradient(90deg, rgba(32,33,38,.14), rgba(32,33,38,.09));
}
.signal-track-active-full {
  height: 3px;
  background: linear-gradient(90deg, rgba(0,155,165,.98), rgba(134,88,212,.94), rgba(239,109,93,.92));
  box-shadow: 0 0 18px rgba(0,155,165,.18);
  width: 0;
  opacity: 0;
  animation: signalLineCycle 8s ease-in-out infinite;
}
.signal-network-caption {
  min-height: 34px;
  padding: 0 14px;
  font-size: .64rem;
  color: var(--muted-2);
  letter-spacing: .005em;
  border-color: rgba(32,33,38,.07);
}
/* keep source always alive, target only lights up once Kryston is active */
@keyframes krystonNodeCycle {
  0%,37% { opacity:.36; transform: translateX(-50%) scale(.92); filter:saturate(.72); }
  44%,76% { opacity:1; transform: translateX(-50%) scale(1); filter:saturate(1); }
  88%,100% { opacity:.36; transform: translateX(-50%) scale(.92); filter:saturate(.72); }
}
@keyframes targetNodeCycle {
  0%,43% { opacity:.54; filter:saturate(.68); }
  48%,76% { opacity:1; filter:saturate(1); }
  88%,100% { opacity:.54; filter:saturate(.68); }
}
@keyframes signalLineCycle {
  0%,42% { width: 0; opacity: 0; }
  46% { width: 0; opacity: .98; }
  58% { width: calc(100% - 192px); opacity: .98; }
  76% { width: calc(100% - 192px); opacity: .98; }
  90% { width: 0; opacity: 0; }
  100% { width: 0; opacity: 0; }
}
/* Rebased particles so they sit on one true path */
.drift-particle { background: rgba(126,129,141,.44); box-shadow: 0 0 10px rgba(120,124,138,.12); }
.guided-particle { box-shadow: 0 0 14px rgba(0,155,165,.22); }
@keyframes driftA {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  4% { opacity:.5; }
  18% { opacity:.3; transform: translate(226px,126px) scale(.9); }
  34% { opacity:0; transform: translate(498px,118px) scale(.74); }
}
@keyframes driftB {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  5% { opacity:.46; }
  20% { opacity:.3; transform: translate(252px,188px) scale(.95); }
  36% { opacity:0; transform: translate(548px,198px) scale(.7); }
}
@keyframes driftC {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  5% { opacity:.42; }
  18% { opacity:.3; transform: translate(244px,152px) scale(.92); }
  35% { opacity:0; transform: translate(582px,150px) scale(.72); }
}
@keyframes driftD {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  6% { opacity:.44; }
  22% { opacity:.28; transform: translate(280px,110px) scale(.88); }
  36% { opacity:0; transform: translate(534px,106px) scale(.68); }
}
@keyframes driftE {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  6% { opacity:.38; }
  22% { opacity:.27; transform: translate(288px,176px) scale(.86); }
  36% { opacity:0; transform: translate(572px,236px) scale(.66); }
}
@keyframes driftF {
  0%,38%,100% { opacity:0; transform: translate(96px,154px) scale(.58); }
  6% { opacity:.36; }
  23% { opacity:.26; transform: translate(236px,142px) scale(.84); }
  35% { opacity:0; transform: translate(522px,168px) scale(.64); }
}
@keyframes guideA {
  0%,43% { opacity:0; transform: translate(96px,154px) scale(.55); }
  48% { opacity:1; transform: translate(230px,154px) scale(.96); }
  54% { opacity:1; transform: translate(352px,154px) scale(1.04); }
  62% { opacity:1; transform: translate(512px,154px) scale(.96); }
  70% { opacity:0; transform: translate(646px,154px) scale(.68); }
  100% { opacity:0; transform: translate(646px,154px) scale(.68); }
}
@keyframes guideB {
  0%,43% { opacity:0; transform: translate(96px,160px) scale(.55); }
  49% { opacity:1; transform: translate(240px,160px) scale(.94); }
  55% { opacity:1; transform: translate(360px,157px) scale(1.02); }
  63% { opacity:1; transform: translate(524px,160px) scale(.94); }
  71% { opacity:0; transform: translate(654px,160px) scale(.66); }
  100% { opacity:0; transform: translate(654px,160px) scale(.66); }
}
@keyframes guideC {
  0%,43% { opacity:0; transform: translate(96px,148px) scale(.55); }
  50% { opacity:1; transform: translate(248px,148px) scale(.92); }
  56% { opacity:1; transform: translate(368px,151px) scale(1); }
  64% { opacity:1; transform: translate(536px,148px) scale(.92); }
  72% { opacity:0; transform: translate(662px,148px) scale(.64); }
  100% { opacity:0; transform: translate(662px,148px) scale(.64); }
}
@keyframes guideD {
  0%,43% { opacity:0; transform: translate(96px,166px) scale(.55); }
  51% { opacity:1; transform: translate(256px,166px) scale(.9); }
  57% { opacity:1; transform: translate(376px,160px) scale(.98); }
  65% { opacity:1; transform: translate(544px,166px) scale(.9); }
  73% { opacity:0; transform: translate(670px,166px) scale(.62); }
  100% { opacity:0; transform: translate(670px,166px) scale(.62); }
}
@keyframes guideE {
  0%,43% { opacity:0; transform: translate(96px,152px) scale(.55); }
  52% { opacity:1; transform: translate(264px,152px) scale(.88); }
  58% { opacity:1; transform: translate(384px,154px) scale(.96); }
  66% { opacity:1; transform: translate(552px,152px) scale(.88); }
  74% { opacity:0; transform: translate(678px,152px) scale(.6); }
  100% { opacity:0; transform: translate(678px,152px) scale(.6); }
}
@keyframes guideF {
  0%,43% { opacity:0; transform: translate(96px,158px) scale(.55); }
  53% { opacity:1; transform: translate(272px,158px) scale(.86); }
  59% { opacity:1; transform: translate(392px,157px) scale(.94); }
  67% { opacity:1; transform: translate(560px,158px) scale(.86); }
  75% { opacity:0; transform: translate(686px,158px) scale(.58); }
  100% { opacity:0; transform: translate(686px,158px) scale(.58); }
}
@media (max-width: 1180px) {
  .hero-signal-network { margin-top: 0; }
}
@media (max-width: 900px) {
  .hero-copy { padding-top: 0; }
  .hero-signal-network { min-height: auto; }
  .signal-network-board { min-height: auto; padding: 22px 18px 52px; display: grid; gap: 16px; }
  .signal-node { position: relative; inset: auto !important; left: auto !important; right: auto !important; top: auto !important; width: 100%; transform: none !important; animation: none !important; }
  .signal-track, .drift-particles, .guided-particles { display:none; }
  .signal-network-caption { white-space: normal; text-align: center; max-width: calc(100% - 32px); }
}
@media (max-width: 620px) {
  .hero-signal-network { border-radius: 24px; margin-inline: -6px; }
}


/* v0.0.17 - centerline + stronger target activation */
.hero-signal-network {
  min-height: 388px;
}
.signal-network-board {
  min-height: 388px;
}
/* True centerline alignment */
.signal-track {
  top: 160px;
}
.signal-track-source-target {
  top: 160px;
}
.signal-track-active-full {
  top: 160px;
}
/* rebased particle paths to true centerline */
@keyframes driftA {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  4% { opacity:.5; }
  18% { opacity:.3; transform: translate(226px,132px) scale(.9); }
  34% { opacity:0; transform: translate(498px,124px) scale(.74); }
}
@keyframes driftB {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  5% { opacity:.46; }
  20% { opacity:.3; transform: translate(252px,194px) scale(.95); }
  36% { opacity:0; transform: translate(548px,204px) scale(.7); }
}
@keyframes driftC {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  5% { opacity:.42; }
  18% { opacity:.3; transform: translate(244px,158px) scale(.92); }
  35% { opacity:0; transform: translate(582px,156px) scale(.72); }
}
@keyframes driftD {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  6% { opacity:.44; }
  22% { opacity:.28; transform: translate(280px,116px) scale(.88); }
  36% { opacity:0; transform: translate(534px,112px) scale(.68); }
}
@keyframes driftE {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  6% { opacity:.38; }
  22% { opacity:.27; transform: translate(288px,182px) scale(.86); }
  36% { opacity:0; transform: translate(572px,242px) scale(.66); }
}
@keyframes driftF {
  0%,38%,100% { opacity:0; transform: translate(96px,160px) scale(.58); }
  6% { opacity:.36; }
  23% { opacity:.26; transform: translate(236px,148px) scale(.84); }
  35% { opacity:0; transform: translate(522px,174px) scale(.64); }
}
@keyframes guideA {
  0%,43% { opacity:0; transform: translate(96px,160px) scale(.55); }
  48% { opacity:1; transform: translate(230px,160px) scale(.96); }
  54% { opacity:1; transform: translate(352px,160px) scale(1.04); }
  62% { opacity:1; transform: translate(512px,160px) scale(.96); }
  70% { opacity:0; transform: translate(646px,160px) scale(.68); }
  100% { opacity:0; transform: translate(646px,160px) scale(.68); }
}
@keyframes guideB {
  0%,43% { opacity:0; transform: translate(96px,166px) scale(.55); }
  49% { opacity:1; transform: translate(240px,166px) scale(.94); }
  55% { opacity:1; transform: translate(360px,163px) scale(1.02); }
  63% { opacity:1; transform: translate(524px,166px) scale(.94); }
  71% { opacity:0; transform: translate(654px,166px) scale(.66); }
  100% { opacity:0; transform: translate(654px,166px) scale(.66); }
}
@keyframes guideC {
  0%,43% { opacity:0; transform: translate(96px,154px) scale(.55); }
  50% { opacity:1; transform: translate(248px,154px) scale(.92); }
  56% { opacity:1; transform: translate(368px,157px) scale(1); }
  64% { opacity:1; transform: translate(536px,154px) scale(.92); }
  72% { opacity:0; transform: translate(662px,154px) scale(.64); }
  100% { opacity:0; transform: translate(662px,154px) scale(.64); }
}
@keyframes guideD {
  0%,43% { opacity:0; transform: translate(96px,172px) scale(.55); }
  51% { opacity:1; transform: translate(256px,172px) scale(.9); }
  57% { opacity:1; transform: translate(376px,166px) scale(.98); }
  65% { opacity:1; transform: translate(544px,172px) scale(.9); }
  73% { opacity:0; transform: translate(670px,172px) scale(.62); }
  100% { opacity:0; transform: translate(670px,172px) scale(.62); }
}
@keyframes guideE {
  0%,43% { opacity:0; transform: translate(96px,158px) scale(.55); }
  52% { opacity:1; transform: translate(264px,158px) scale(.88); }
  58% { opacity:1; transform: translate(384px,160px) scale(.96); }
  66% { opacity:1; transform: translate(552px,158px) scale(.88); }
  74% { opacity:0; transform: translate(678px,158px) scale(.6); }
  100% { opacity:0; transform: translate(678px,158px) scale(.6); }
}
@keyframes guideF {
  0%,43% { opacity:0; transform: translate(96px,164px) scale(.55); }
  53% { opacity:1; transform: translate(272px,164px) scale(.86); }
  59% { opacity:1; transform: translate(392px,163px) scale(.94); }
  67% { opacity:1; transform: translate(560px,164px) scale(.86); }
  75% { opacity:0; transform: translate(686px,164px) scale(.58); }
  100% { opacity:0; transform: translate(686px,164px) scale(.58); }
}
/* clearer target activation */
.signal-node-target .node-core {
  animation: targetShellCycle 8s ease-in-out infinite;
}
.signal-node-target .node-core::after {
  animation: targetInnerCycle 8s ease-in-out infinite;
}
@keyframes targetNodeCycle {
  0%,43% { opacity:.62; filter:saturate(.66); }
  48%,76% { opacity:1; filter:saturate(1); }
  88%,100% { opacity:.62; filter:saturate(.66); }
}
@keyframes targetShellCycle {
  0%,43% {
    background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.9), rgba(0,155,165,.08) 38%, rgba(134,88,212,.1) 64%, rgba(239,109,93,.08) 84%, rgba(255,255,255,.34) 100%);
    box-shadow: 0 16px 34px rgba(36,37,42,.05), inset 0 1px 0 rgba(255,255,255,.9);
  }
  48%,76% {
    background: radial-gradient(circle at 32% 30%, rgba(255,252,220,.98), rgba(255,230,120,.42) 34%, rgba(255,199,62,.22) 62%, rgba(239,109,93,.12) 84%, rgba(255,255,255,.42) 100%);
    box-shadow: 0 18px 40px rgba(36,37,42,.06), 0 0 26px rgba(255,212,84,.28), inset 0 1px 0 rgba(255,255,255,.96);
  }
  88%,100% {
    background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.9), rgba(0,155,165,.08) 38%, rgba(134,88,212,.1) 64%, rgba(239,109,93,.08) 84%, rgba(255,255,255,.34) 100%);
    box-shadow: 0 16px 34px rgba(36,37,42,.05), inset 0 1px 0 rgba(255,255,255,.9);
  }
}
@keyframes targetInnerCycle {
  0%,43% {
    background: linear-gradient(180deg, rgba(32,33,38,.68), rgba(32,33,38,.36));
    opacity: .62;
    box-shadow: none;
  }
  48%,76% {
    background: radial-gradient(circle at 40% 35%, rgba(255,252,210,.98), rgba(255,219,88,.94) 46%, rgba(247,180,48,.9) 100%);
    opacity: 1;
    box-shadow: 0 0 16px rgba(255,212,84,.48), 0 0 34px rgba(255,212,84,.22);
  }
  88%,100% {
    background: linear-gradient(180deg, rgba(32,33,38,.68), rgba(32,33,38,.36));
    opacity: .62;
    box-shadow: none;
  }
}


/* v0.0.18 - particle-only hero + spacing fix */
.hero-v4 {
  min-height: auto;
  padding: 104px 0 54px;
  align-items: flex-start;
}
.hero-v4 .hero-grid {
  align-items: start;
  gap: 34px;
}
.hero-v4 .hero-copy {
  padding: 6px 0 0;
}
.hero-signal-network {
  min-height: 368px;
  margin-top: 0;
  background: linear-gradient(145deg, rgba(255,255,255,.78), rgba(255,255,255,.6));
  box-shadow: 0 24px 58px rgba(39,40,45,.06), inset 0 1px 0 rgba(255,255,255,.94);
}
.signal-network-board {
  min-height: 368px;
  padding: 20px 22px 54px;
}
.signal-network-wash-cyan { left: 14%; top: 12%; opacity: .18; }
.signal-network-wash-coral { right: 8%; bottom: 10%; opacity: .14; }
.signal-track,
.signal-track-source-target,
.signal-track-active-full {
  display: none !important;
}
.signal-node {
  width: 156px;
}
.signal-node-source { left: 18px; top: 88px; }
.signal-node-target { right: 18px; top: 88px; animation: targetNodeCycleSoft 8s ease-in-out infinite; }
.signal-node-kryston { top: 44px; width: 168px; animation: krystonNodeCycleSoft 8s ease-in-out infinite; }
.node-kicker {
  margin-bottom: 8px;
  font-size: .54rem;
  letter-spacing: .17em;
  opacity: .72;
}
.node-core {
  width: 98px;
  height: 98px;
  margin: 0 auto 10px;
}
.signal-node-source .node-core {
  background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.96), rgba(0,155,165,.16) 40%, rgba(134,88,212,.14) 64%, rgba(239,109,93,.1) 84%, rgba(255,255,255,.42) 100%);
  box-shadow: 0 18px 38px rgba(36,37,42,.07), 0 0 20px rgba(0,155,165,.08), inset 0 1px 0 rgba(255,255,255,.96);
}
.signal-node-source .node-core::after {
  inset: 27px;
  background: linear-gradient(180deg, rgba(32,33,38,.72), rgba(32,33,38,.4));
  opacity: .7;
}
.signal-node-kryston .node-core {
  width: 110px;
  height: 110px;
  background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.98), rgba(0,155,165,.11) 36%, rgba(134,88,212,.16) 64%, rgba(239,109,93,.12) 84%, rgba(255,255,255,.4) 100%);
  box-shadow: 0 18px 40px rgba(36,37,42,.07), 0 0 26px rgba(134,88,212,.09), inset 0 1px 0 rgba(255,255,255,.96);
}
.signal-node-target .node-core {
  background: radial-gradient(circle at 32% 30%, rgba(255,255,255,.9), rgba(0,155,165,.06) 38%, rgba(134,88,212,.08) 64%, rgba(239,109,93,.06) 84%, rgba(255,255,255,.34) 100%);
  box-shadow: 0 16px 34px rgba(36,37,42,.05), inset 0 1px 0 rgba(255,255,255,.9);
}
.signal-node-target .node-core::after {
  inset: 27px;
  background: linear-gradient(180deg, rgba(32,33,38,.58), rgba(32,33,38,.32));
  opacity: .56;
  animation: targetCoreReceive 8s ease-in-out infinite;
}
.signal-node strong {
  font-size: .9rem;
  letter-spacing: -.018em;
}
.signal-network-caption {
  min-height: 34px;
  padding: 0 14px;
  font-size: .64rem;
  color: var(--muted-2);
  border-color: rgba(32,33,38,.07);
}
.drift-particles, .guided-particles {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.drift-particle, .guided-particle {
  position: absolute;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  left: 96px;
  top: 160px;
}
.drift-particle {
  background: rgba(128,132,145,.5);
  box-shadow: 0 0 10px rgba(120,124,138,.12);
  opacity: 0;
}
.guided-particle {
  background: linear-gradient(135deg, rgba(0,155,165,.98), rgba(134,88,212,.92), rgba(239,109,93,.9));
  box-shadow: 0 0 14px rgba(0,155,165,.22);
  opacity: 0;
}
/* gray scatter cone - Kryston off */
.d1 { animation: driftConeA 8s linear infinite; }
.d2 { animation: driftConeB 8s linear infinite .35s; }
.d3 { animation: driftConeC 8s linear infinite .7s; }
.d4 { animation: driftConeD 8s linear infinite 1.05s; }
.d5 { animation: driftConeE 8s linear infinite 1.4s; }
.d6 { animation: driftConeF 8s linear infinite 1.75s; }
/* focused colored cone - Kryston on */
.g1 { animation: guideConeA 8s linear infinite 3.6s; }
.g2 { animation: guideConeB 8s linear infinite 3.92s; }
.g3 { animation: guideConeC 8s linear infinite 4.24s; }
.g4 { animation: guideConeD 8s linear infinite 4.56s; }
.g5 { animation: guideConeE 8s linear infinite 4.88s; }
.g6 { animation: guideConeF 8s linear infinite 5.2s; }
.g7, .g8 { display:none; }
@keyframes krystonNodeCycleSoft {
  0%,38% { opacity:.34; transform: translateX(-50%) scale(.92); filter:saturate(.76); }
  45%,78% { opacity:1; transform: translateX(-50%) scale(1); filter:saturate(1); }
  88%,100% { opacity:.34; transform: translateX(-50%) scale(.92); filter:saturate(.76); }
}
@keyframes targetNodeCycleSoft {
  0%,42% { opacity:.6; filter:saturate(.72); }
  48%,78% { opacity:.96; filter:saturate(1); }
  88%,100% { opacity:.6; filter:saturate(.72); }
}
@keyframes targetCoreReceive {
  0%,42% {
    background: linear-gradient(180deg, rgba(32,33,38,.58), rgba(32,33,38,.32));
    opacity: .56;
    box-shadow: none;
  }
  48%,78% {
    background: radial-gradient(circle at 42% 36%, rgba(255,248,225,.98), rgba(255,224,150,.72) 48%, rgba(237,186,112,.58) 100%);
    opacity: .96;
    box-shadow: 0 0 12px rgba(237,186,112,.26), 0 0 24px rgba(237,186,112,.12);
  }
  88%,100% {
    background: linear-gradient(180deg, rgba(32,33,38,.58), rgba(32,33,38,.32));
    opacity: .56;
    box-shadow: none;
  }
}
@keyframes driftConeA {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  6% { opacity:.56; }
  18% { opacity:.34; transform: translate(170px,-32px) scale(.92); }
  34% { opacity:0; transform: translate(492px,-48px) scale(.72); }
}
@keyframes driftConeB {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  8% { opacity:.5; }
  20% { opacity:.3; transform: translate(186px,22px) scale(.94); }
  36% { opacity:0; transform: translate(520px,34px) scale(.72); }
}
@keyframes driftConeC {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  10% { opacity:.46; }
  22% { opacity:.28; transform: translate(204px,-4px) scale(.9); }
  38% { opacity:0; transform: translate(542px,-8px) scale(.7); }
}
@keyframes driftConeD {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  12% { opacity:.44; }
  24% { opacity:.28; transform: translate(192px,48px) scale(.9); }
  40% { opacity:0; transform: translate(548px,82px) scale(.68); }
}
@keyframes driftConeE {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  14% { opacity:.4; }
  26% { opacity:.26; transform: translate(214px,-54px) scale(.88); }
  42% { opacity:0; transform: translate(566px,-78px) scale(.66); }
}
@keyframes driftConeF {
  0%,42%,100% { opacity:0; transform: translate(0,0) scale(.58); }
  16% { opacity:.38; }
  28% { opacity:.24; transform: translate(224px,14px) scale(.86); }
  42% { opacity:0; transform: translate(580px,22px) scale(.64); }
}
@keyframes guideConeA {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  48% { opacity:1; transform: translate(166px,-8px) scale(.96); }
  58% { opacity:1; transform: translate(328px,-5px) scale(1.04); }
  68% { opacity:.92; transform: translate(498px,-4px) scale(.94); }
  76% { opacity:0; transform: translate(607px,-3px) scale(.68); }
  100% { opacity:0; transform: translate(607px,-3px) scale(.68); }
}
@keyframes guideConeB {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  49% { opacity:.96; transform: translate(172px,3px) scale(.94); }
  59% { opacity:1; transform: translate(334px,2px) scale(1.02); }
  69% { opacity:.9; transform: translate(504px,4px) scale(.92); }
  77% { opacity:0; transform: translate(610px,5px) scale(.66); }
  100% { opacity:0; transform: translate(610px,5px) scale(.66); }
}
@keyframes guideConeC {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  50% { opacity:.92; transform: translate(178px,-15px) scale(.92); }
  60% { opacity:1; transform: translate(340px,-10px) scale(1); }
  70% { opacity:.88; transform: translate(510px,-8px) scale(.9); }
  78% { opacity:0; transform: translate(612px,-7px) scale(.64); }
  100% { opacity:0; transform: translate(612px,-7px) scale(.64); }
}
@keyframes guideConeD {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  51% { opacity:.9; transform: translate(184px,12px) scale(.9); }
  61% { opacity:.98; transform: translate(346px,9px) scale(.98); }
  71% { opacity:.86; transform: translate(516px,10px) scale(.88); }
  79% { opacity:0; transform: translate(614px,10px) scale(.62); }
  100% { opacity:0; transform: translate(614px,10px) scale(.62); }
}
@keyframes guideConeE {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  52% { opacity:.88; transform: translate(190px,-2px) scale(.88); }
  62% { opacity:.96; transform: translate(352px,0) scale(.96); }
  72% { opacity:.84; transform: translate(522px,0) scale(.86); }
  80% { opacity:0; transform: translate(616px,0) scale(.6); }
  100% { opacity:0; transform: translate(616px,0) scale(.6); }
}
@keyframes guideConeF {
  0%,44% { opacity:0; transform: translate(0,0) scale(.56); }
  53% { opacity:.86; transform: translate(196px,7px) scale(.86); }
  63% { opacity:.94; transform: translate(358px,5px) scale(.94); }
  73% { opacity:.82; transform: translate(528px,6px) scale(.84); }
  81% { opacity:0; transform: translate(618px,6px) scale(.58); }
  100% { opacity:0; transform: translate(618px,6px) scale(.58); }
}
@media (max-width: 1180px) {
  .hero-v4 {
    padding-top: 96px;
  }
  .hero-signal-network {
    margin-top: 0;
  }
}
@media (max-width: 900px) {
  .hero-v4 {
    padding: 92px 0 42px;
  }
  .hero-v4 .hero-copy {
    padding-top: 0;
  }
  .hero-signal-network {
    min-height: auto;
  }
  .signal-network-board {
    min-height: auto;
    padding: 22px 18px 52px;
    display: grid;
    gap: 16px;
  }
  .signal-node {
    position: relative;
    inset: auto !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 100%;
    transform: none !important;
    animation: none !important;
  }
  .drift-particles, .guided-particles {
    display:none;
  }
}


/* v0.0.19 - timing and particle visibility sync pass */
.drift-particle, .guided-particle {
  width: 8px;
  height: 8px;
}
.drift-particle {
  background: rgba(126,131,145,.72);
  box-shadow: 0 0 12px rgba(120,124,138,.18);
}
.guided-particle {
  background: linear-gradient(135deg, rgba(0,155,165,1), rgba(134,88,212,.96), rgba(239,109,93,.94));
  box-shadow: 0 0 16px rgba(0,155,165,.28);
}
/* synced negative delays so the loop reads as one coordinated cycle */
.d1 { animation: driftConeA 8s linear infinite 0s; }
.d2 { animation: driftConeB 8s linear infinite -.18s; }
.d3 { animation: driftConeC 8s linear infinite -.36s; }
.d4 { animation: driftConeD 8s linear infinite -.54s; }
.d5 { animation: driftConeE 8s linear infinite -.72s; }
.d6 { animation: driftConeF 8s linear infinite -.90s; }
.d7 { animation: driftConeC 8s linear infinite -1.08s; }
.d8 { animation: driftConeE 8s linear infinite -1.26s; }
.g1 { animation: guideConeA 8s linear infinite -3.44s; }
.g2 { animation: guideConeB 8s linear infinite -3.58s; }
.g3 { animation: guideConeC 8s linear infinite -3.72s; }
.g4 { animation: guideConeD 8s linear infinite -3.86s; }
.g5 { animation: guideConeE 8s linear infinite -4.00s; }
.g6 { animation: guideConeF 8s linear infinite -4.14s; }
.g7 { animation: guideConeB 8s linear infinite -4.28s; }
.g8 { animation: guideConeE 8s linear infinite -4.42s; }
@keyframes driftConeA {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  4% { opacity:.78; }
  16% { opacity:.46; transform: translate(178px,-30px) scale(1); }
  34% { opacity:0; transform: translate(504px,-46px) scale(.74); }
}
@keyframes driftConeB {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  5% { opacity:.74; }
  18% { opacity:.44; transform: translate(192px,20px) scale(.98); }
  36% { opacity:0; transform: translate(528px,32px) scale(.74); }
}
@keyframes driftConeC {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  7% { opacity:.7; }
  20% { opacity:.42; transform: translate(208px,-4px) scale(.96); }
  38% { opacity:0; transform: translate(550px,-8px) scale(.72); }
}
@keyframes driftConeD {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  9% { opacity:.68; }
  22% { opacity:.4; transform: translate(198px,46px) scale(.95); }
  40% { opacity:0; transform: translate(556px,80px) scale(.7); }
}
@keyframes driftConeE {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  11% { opacity:.64; }
  24% { opacity:.38; transform: translate(220px,-52px) scale(.92); }
  42% { opacity:0; transform: translate(576px,-76px) scale(.68); }
}
@keyframes driftConeF {
  0%,44%,100% { opacity:0; transform: translate(0,0) scale(.62); }
  13% { opacity:.6; }
  26% { opacity:.36; transform: translate(232px,12px) scale(.9); }
  42% { opacity:0; transform: translate(588px,20px) scale(.66); }
}
@keyframes guideConeA {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  44% { opacity:1; transform: translate(154px,-6px) scale(.98); }
  54% { opacity:1; transform: translate(320px,-4px) scale(1.08); }
  66% { opacity:.94; transform: translate(498px,-3px) scale(.98); }
  76% { opacity:0; transform: translate(607px,-2px) scale(.7); }
  100% { opacity:0; transform: translate(607px,-2px) scale(.7); }
}
@keyframes guideConeB {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  45% { opacity:.98; transform: translate(162px,4px) scale(.96); }
  55% { opacity:1; transform: translate(328px,3px) scale(1.06); }
  67% { opacity:.92; transform: translate(506px,4px) scale(.96); }
  77% { opacity:0; transform: translate(610px,5px) scale(.68); }
  100% { opacity:0; transform: translate(610px,5px) scale(.68); }
}
@keyframes guideConeC {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  46% { opacity:.96; transform: translate(170px,-14px) scale(.94); }
  56% { opacity:1; transform: translate(336px,-9px) scale(1.04); }
  68% { opacity:.9; transform: translate(514px,-7px) scale(.94); }
  78% { opacity:0; transform: translate(612px,-6px) scale(.66); }
  100% { opacity:0; transform: translate(612px,-6px) scale(.66); }
}
@keyframes guideConeD {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  47% { opacity:.94; transform: translate(176px,12px) scale(.92); }
  57% { opacity:.98; transform: translate(344px,9px) scale(1.02); }
  69% { opacity:.88; transform: translate(522px,10px) scale(.92); }
  79% { opacity:0; transform: translate(614px,10px) scale(.64); }
  100% { opacity:0; transform: translate(614px,10px) scale(.64); }
}
@keyframes guideConeE {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  48% { opacity:.92; transform: translate(182px,-1px) scale(.9); }
  58% { opacity:.96; transform: translate(352px,0) scale(1); }
  70% { opacity:.86; transform: translate(530px,0) scale(.9); }
  80% { opacity:0; transform: translate(616px,0) scale(.62); }
  100% { opacity:0; transform: translate(616px,0) scale(.62); }
}
@keyframes guideConeF {
  0%,41% { opacity:0; transform: translate(0,0) scale(.6); }
  49% { opacity:.9; transform: translate(188px,7px) scale(.88); }
  59% { opacity:.94; transform: translate(360px,5px) scale(.98); }
  71% { opacity:.84; transform: translate(538px,6px) scale(.88); }
  81% { opacity:0; transform: translate(618px,6px) scale(.6); }
  100% { opacity:0; transform: translate(618px,6px) scale(.6); }
}


/* v0.0.20 - one authoritative JavaScript clock */
.hero-signal-network .drift-particle,
.hero-signal-network .guided-particle,
.hero-signal-network .signal-node-kryston,
.hero-signal-network .signal-node-target,
.hero-signal-network .signal-node-target .node-core,
.hero-signal-network .signal-node-target .node-core::after {
  animation: none !important;
}
.hero-signal-network .drift-particle,
.hero-signal-network .guided-particle {
  left: 0;
  top: 0;
  opacity: 0;
  will-change: transform, opacity;
}
.hero-signal-network .signal-node-kryston {
  opacity: .34;
  transform: translateX(-50%) scale(.92);
  filter: saturate(.76);
  transition: opacity .34s ease, transform .34s ease, filter .34s ease;
}
.hero-signal-network .signal-node-kryston.is-signal-active {
  opacity: 1;
  transform: translateX(-50%) scale(1);
  filter: saturate(1);
}
.hero-signal-network .signal-node-target {
  opacity: .62;
  filter: saturate(.72);
  transition: opacity .34s ease, filter .34s ease;
}
.hero-signal-network .signal-node-target.is-signal-active {
  opacity: .98;
  filter: saturate(1);
}
.hero-signal-network .signal-node-target .node-core {
  transition: background .38s ease, box-shadow .38s ease;
}
.hero-signal-network .signal-node-target .node-core::after {
  transition: background .34s ease, opacity .34s ease, box-shadow .34s ease;
}
.hero-signal-network .signal-node-target.is-signal-active .node-core {
  background: radial-gradient(circle at 32% 30%, rgba(255,252,239,.98), rgba(225,198,151,.24) 38%, rgba(134,88,212,.11) 66%, rgba(239,109,93,.09) 84%, rgba(255,255,255,.4) 100%);
  box-shadow: 0 18px 38px rgba(36,37,42,.06), 0 0 20px rgba(211,174,112,.16), inset 0 1px 0 rgba(255,255,255,.96);
}
.hero-signal-network .signal-node-target.is-signal-active .node-core::after {
  background: radial-gradient(circle at 42% 36%, rgba(255,249,232,.98), rgba(224,194,143,.78) 50%, rgba(190,144,90,.58) 100%);
  opacity: .96;
  box-shadow: 0 0 12px rgba(211,174,112,.2), 0 0 24px rgba(211,174,112,.1);
}
@media (max-width: 900px) {
  .hero-signal-network .signal-node-kryston,
  .hero-signal-network .signal-node-target,
  .hero-signal-network .signal-node-kryston.is-signal-active,
  .hero-signal-network .signal-node-target.is-signal-active {
    transform: none;
    opacity: 1;
    filter: none;
  }
}


/* v0.0.21 - visible source emission + Kryston capture/focus action */
.hero-signal-network .drift-particle {
  background: rgba(111,117,132,.76);
  box-shadow: 0 0 10px rgba(94,101,117,.16);
}
.hero-signal-network .guided-particle {
  background: linear-gradient(135deg, rgba(0,155,165,1), rgba(113,89,202,.98), rgba(229,103,93,.96));
  box-shadow: 0 0 16px rgba(0,155,165,.3);
}
.hero-signal-network .signal-node-kryston .node-core {
  isolation: isolate;
}
.hero-signal-network .signal-node-kryston .node-core::after {
  content: '';
  position: absolute;
  inset: -12px;
  z-index: -1;
  border: 1px solid rgba(0,155,165,.34);
  border-radius: 50%;
  opacity: var(--pull-opacity, 0);
  transform: scale(var(--pull-scale, 1.34));
  box-shadow: 0 0 22px rgba(0,155,165,.11), inset 0 0 18px rgba(134,88,212,.07);
  pointer-events: none;
}
.hero-signal-network .signal-node-kryston.is-pulling .node-core {
  box-shadow: 0 18px 42px rgba(36,37,42,.07), 0 0 32px rgba(0,155,165,.14), inset 0 1px 0 rgba(255,255,255,.97);
}
.hero-signal-network .signal-network-caption {
  font-size: .66rem;
  color: rgba(75,79,90,.78);
}


/* v0.0.22 - restrained mineral signal palette */
.hero-signal-network .guided-particle {
  background: radial-gradient(
    circle at 34% 30%,
    rgba(247,255,254,.98) 0 16%,
    rgba(83,151,153,.98) 38%,
    rgba(43,91,96,.94) 100%
  );
  box-shadow:
    0 0 7px rgba(65,128,132,.28),
    0 0 14px rgba(65,128,132,.12);
}
.hero-signal-network .guided-particle:nth-child(3n + 2) {
  background: radial-gradient(
    circle at 34% 30%,
    rgba(250,249,255,.98) 0 16%,
    rgba(126,119,161,.94) 40%,
    rgba(76,72,108,.9) 100%
  );
  box-shadow:
    0 0 7px rgba(108,101,145,.24),
    0 0 14px rgba(108,101,145,.1);
}
.hero-signal-network .guided-particle:nth-child(3n) {
  background: radial-gradient(
    circle at 34% 30%,
    rgba(249,255,254,.98) 0 18%,
    rgba(135,176,173,.96) 42%,
    rgba(76,113,112,.9) 100%
  );
  box-shadow:
    0 0 7px rgba(108,157,155,.22),
    0 0 13px rgba(108,157,155,.09);
}


/* v0.0.23 - pearl signal contrast pass */
.hero-signal-network .guided-particle {
  width: 8px;
  height: 8px;
  border: 1px solid rgba(24,78,82,.34);
  background: radial-gradient(
    circle at 32% 28%,
    rgba(255,255,252,1) 0 26%,
    rgba(220,244,241,.98) 38%,
    rgba(92,161,163,.94) 66%,
    rgba(31,79,84,.96) 100%
  );
  box-shadow:
    0 0 5px rgba(255,255,255,.72),
    0 0 10px rgba(72,148,151,.28),
    0 0 18px rgba(72,148,151,.12);
}
.hero-signal-network .guided-particle:nth-child(2n) {
  width: 7px;
  height: 7px;
}
.hero-signal-network .guided-particle:nth-child(4n + 1) {
  width: 9px;
  height: 9px;
}
.hero-signal-network .guided-particle:nth-child(3n + 2) {
  border-color: rgba(71,64,111,.3);
  background: radial-gradient(
    circle at 32% 28%,
    rgba(255,254,255,1) 0 26%,
    rgba(236,232,248,.98) 40%,
    rgba(148,137,185,.92) 68%,
    rgba(73,66,107,.94) 100%
  );
  box-shadow:
    0 0 5px rgba(255,255,255,.68),
    0 0 10px rgba(124,111,170,.24),
    0 0 17px rgba(124,111,170,.1);
}
.hero-signal-network .guided-particle:nth-child(4n) {
  border-color: rgba(43,104,107,.28);
  background: radial-gradient(
    circle at 34% 30%,
    rgba(255,255,253,1) 0 30%,
    rgba(230,249,246,.98) 42%,
    rgba(124,188,184,.9) 70%,
    rgba(49,103,105,.92) 100%
  );
  box-shadow:
    0 0 5px rgba(255,255,255,.7),
    0 0 11px rgba(95,174,171,.24),
    0 0 18px rgba(95,174,171,.1);
}


/* v1.0.1 — real Kryston mark integration */
.brand {
  gap: 14px;
}
.brand-mark {
  width: auto;
  height: 48px;
  flex: 0 0 auto;
  object-fit: contain;
  filter: drop-shadow(0 7px 14px rgba(0,155,165,.12));
}
.site-header .brand > span {
  transform: translateY(.5px);
}
.footer-brand .brand-mark {
  height: 46px;
}
@media (max-width: 700px) {
  .brand { gap: 12px; }
  .brand-mark { height: 41px; }
  .footer-brand .brand-mark { height: 42px; }
}
