:root {
  --experience-edge: rgba(137, 10, 108, .18);
  --experience-glow: rgba(137, 10, 108, .12);
}
body { background: #090711; }
main > section:where(.section-dark, .section-light, .section-white) { padding-block: clamp(76px, 9vw, 120px); }
section[id], details[id] { scroll-margin-top: 110px; }
.site-header .nav { gap: 20px; }
.site-header .nav-links { gap: 22px; font-size: .82rem; }
.site-header .nav-cta { white-space: nowrap; }
.site-header .brand { flex-shrink: 0; }
.section-dark {
  background: radial-gradient(ellipse at 85% 10%, rgba(137, 10, 108, .15), transparent 65%), #090711;
}
.section-light {
  color: var(--ink);
  background: radial-gradient(ellipse at 90% 10%, rgba(0, 199, 232, .07), transparent 60%), #f6f3fa;
}
.section-light p, .section-light li,
.section-light .section-heading p:not(.eyebrow),
.section-light .solution-card p, .section-light .process-step p,
.section-light .feature-grid p, .section-light .planned-grid p,
.section-light .principle-grid p, .section-light .case-card p,
.section-light .demo-card p, .section-light .feature-list li,
.section-light .demo-feature-content p, .section-light .demo-card-content p { color: var(--muted-dark); }
.section-light .solution-card, .section-light .process-step,
.section-light .feature-grid article, .section-light .planned-grid article,
.section-light .principle-grid article, .section-light .case-card,
.section-light .demo-card { background: #fff; border-color: var(--experience-edge); box-shadow: 0 7px 0 #eee6f6, 0 22px 55px #230b5508; }
.section-light .solution-card > span, .section-light .process-step > span,
.section-light .planned-grid span, .section-light .principle-grid span { color: #75439a; }
.section-light .button-secondary { color: var(--ink); border-color: #cdbadd; }
.section-white { background: #fff; }
.button-primary { box-shadow: 0 18px 45px rgba(137, 10, 108, .15); }
.section-light .section-kicker, .section-white .section-kicker { color: #54747d; }
.status-development { border-color: rgba(137, 10, 108, .25); color: #007785; background: #e4f5f7; }
.section-dark h2 em, .section-light h2 em, .section-white h2 em { color: #75439a; font-style: normal; }
.section-dark h2 em { color: #68d9e5; }
.page-hero {
  position: relative;
  overflow: hidden;
  padding-block: clamp(64px, 7vw, 100px);
  background: radial-gradient(ellipse at 90% 20%, rgba(137, 10, 108, .12), transparent 60%), #faf8fd;
}
.page-hero::after {
  position: absolute; right: -6%; top: -170px; width: 500px; aspect-ratio: 1; border: 1px solid var(--experience-edge);
  border-radius: 50%; box-shadow: 0 0 0 65px rgba(137, 10, 108, .035), 0 0 0 130px rgba(137, 10, 108, .025);
  transform: rotateX(52deg) rotateY(-18deg); pointer-events: none; content: "";
}
.page-hero-content { position: relative; z-index: 1; }
.page-hero h1 { max-width: 1000px; font-size: clamp(2.7rem, 5.4vw, 4.6rem); line-height: 1.06; }
.article-hero h1 { font-size: clamp(2.7rem, 5.4vw, 4.8rem); line-height: 1.06; }
.section-dark .article-byline { color: #accbd2; }
.specialty-hero { padding-block: clamp(70px, 9vw, 130px); }
.specialty-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(36px, 6vw, 86px); }
.specialty-grid > * { min-width: 0; }
.specialty-hero h1 { font-size: clamp(2.8rem, 4.6vw, 4.6rem); line-height: 1.02; letter-spacing: -.055em; }
.specialty-hero h1 em { display: block; color: #75439a; font-style: normal; }
.specialty-grid > div > p:not(.eyebrow):not(.scope-note) { font-size: 1.06rem; line-height: 1.75; }
.mono-label { display: block; color: #704195; font: 600 .66rem/1.7 ui-monospace, SFMono-Regular, Consolas, monospace; letter-spacing: .1em; }
.section-dark .mono-label { color: #73dbe5; }
.depth-scene { position: relative; perspective: 1200px; isolation: isolate; --tilt-x: 0deg; --tilt-y: 0deg; }
.depth-orbit { position: absolute; z-index: -1; inset: 9% 0; border: 1px solid rgba(124, 76, 174, .22); border-radius: 50%; transform: rotateX(55deg) rotateZ(-30deg); box-shadow: 0 0 0 44px rgba(124, 76, 174, .035), 0 0 0 88px rgba(124, 76, 174, .02); }
.knowledge-stack { height: 490px; padding-top: 25px; }
.stack-layer { position: absolute; left: 6%; width: 88%; min-height: 165px; padding: 26px 30px; border: 1px solid rgba(137, 10, 108, .22); border-radius: 22px; transform: rotateX(calc(18deg + var(--tilt-x))) rotateY(calc(-15deg + var(--tilt-y))) rotateZ(-4deg); box-shadow: -10px 14px 0 #ebe3f2, -11px 15px 0 #d5c5e4, 0 35px 45px rgba(0, 65, 75, .12); transition: transform .35s ease; }
.stack-layer h3 { font-size: clamp(1rem, 1.8vw, 1.4rem); margin: 12px 0 16px; line-height: 1.3; }
.layer-source { top: 18px; background: #faf7fd; color: #231632; }
.layer-retrieve { top: 164px; left: 1%; background: #25143f; color: #fff; box-shadow: -9px 12px 0 #140c23, -10px 13px 0 #593f79, 0 30px 45px #00242d22; }
.layer-retrieve .mono-label, .layer-retrieve p { color: #92d9df; }
.layer-retrieve p { margin: 10px 0 0; font-size: .76rem; }
.section-light .layer-retrieve h3, .section-white .layer-retrieve h3 { color: #f0fdff; }
.section-light .laundry-board h3, .section-white .laundry-board h3 { color: #e6faff; }
.section-light .breadcrumbs, .section-white .breadcrumbs { color: #52747d; }
.layer-answer { top: 324px; left: 9%; background: linear-gradient(135deg, #f4ecfb, #fff); color: #221533; }
.source-pills { display: flex; flex-wrap: wrap; gap: 6px; }
.source-pills span, .source-chip { border: 1px solid #d7c2e6; padding: 5px 9px; border-radius: 7px; font-size: .68rem; color: #69408e; background: #f6effb; }
.signal-bars { display: flex; gap: 7px; height: 16px; align-items: end; }
.signal-bars i { width: 30px; height: 6px; border-radius: 3px; background: #30c4d2; }
.signal-bars i:nth-child(2), .signal-bars i:nth-child(4) { height: 12px; }
.signal-bars i:nth-child(3) { height: 17px; }
.laundry-model { margin: 0; padding: 28px 14px 48px; }
.laundry-board { position: relative; border: 1px solid #5b4477; border-radius: 20px; padding: 25px; color: #e6faff; background: linear-gradient(135deg, #28173f, #100c1b); box-shadow: 12px 15px 0 #0e081a, 13px 16px 0 #584275, 0 38px 65px #00171d66; transform: rotateX(calc(7deg + var(--tilt-x))) rotateY(calc(-12deg + var(--tilt-y))) rotateZ(2deg); transition: transform .35s ease; }
.board-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 20px; border-bottom: 1px solid #ffffff1f; font-size: .85rem; }
.board-top strong span { color: #97b7bf; font-size: .65rem; font-weight: 400; }
.sample-label { color: #99cbd2; font-size: .65rem; }
.board-greeting { padding-top: 30px; }
.board-greeting .mono-label { color: #72d6df; }
.board-greeting h3 { margin: 12px 0 26px; font-size: clamp(1.65rem, 2.4vw, 2.2rem); line-height: 1.12; letter-spacing: -.04em; }
.order-ticket { border: 1px solid #594275; border-radius: 12px; padding: 18px; background: #251a38; }
.order-ticket > span { display: block; margin-bottom: 9px; color: #90c7cf; font: .65rem ui-monospace, monospace; }
.order-ticket strong { font-size: .9rem; }
.order-ticket p { margin: 8px 0 0; color: #b6cdd2; font-size: .76rem; }
.order-track { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; counter-reset: stage; }
.order-track li { display: flex; align-items: center; gap: 8px; font-size: .7rem; color: #b9d4da; }
.laundry-board .order-track li { color: #b9d4da; }
.order-track li::before { display: grid; width: 23px; aspect-ratio: 1; place-items: center; border: 1px solid #3c6e78; border-radius: 50%; color: #6cdeea; counter-increment: stage; content: counter(stage); font: .6rem ui-monospace, monospace; }
.floating-proof { position: absolute; right: -12px; bottom: 35px; display: flex; align-items: center; gap: 12px; padding: 14px 19px; border: 1px solid #b5e5e8; border-radius: 12px; color: #07343d; background: #e6fbfa; box-shadow: 0 18px 38px #001b2440; transform: translateZ(50px) rotateZ(-3deg); }
.proof-icon { display: grid; width: 34px; aspect-ratio: 1; place-items: center; border-radius: 50%; background: #bde8e8; }
.floating-proof small, .floating-proof strong { display: block; font-size: .65rem; }
.floating-proof strong { font-size: .78rem; }
.laundry-model figcaption { margin-top: 44px; color: #577780; font-size: .67rem; text-align: center; }
.laundry-model .floating-proof { bottom: 92px; }
.laundry-board { padding-bottom: 68px; }
.section-dark .laundry-model figcaption { color: #9fbdc5; }
.scope-note { margin-top: 24px; font-size: .78rem; }
.section-dark .scope-note { color: #9cbac2; }
.section-dark .text-link { color: #79d5e2; }
.section-dark .scope-panel { color: #143843; background: #eaf7f8; }
.section-dark .scope-panel h3 { color: #143843; }
.section-dark .scope-panel p, .section-dark .scope-panel li { color: #476670; }
.section-dark .scope-panel .mono-label, .section-dark .layer-source .mono-label, .section-dark .layer-answer .mono-label { color: #704195; }
.layer-source h3, .layer-answer h3 { color: #231632; }
.editorial-callout { max-width: 1000px; }
.editorial-callout .mono-label { margin-bottom: 24px; }
.editorial-callout p { max-width: 740px; }
.capability-grid, .use-case-grid, .engagement-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.capability-grid article, .use-case-grid article, .engagement-grid article { padding: 30px; border: 1px solid var(--experience-edge); border-radius: 22px; background: #faf7fd; box-shadow: 0 7px 0 #eee7f4, 0 20px 45px #00425108; }
.capability-grid article > span { display: grid; place-items: center; width: 40px; aspect-ratio: 1; margin-bottom: 25px; border: 1px solid #b9dfe3; border-radius: 11px; color: #007986; background: #edf9fa; box-shadow: 3px 4px 0 #d3e9eb; font: .7rem ui-monospace, monospace; transform: rotate(-5deg); }
.capability-grid h3, .use-case-grid h3, .engagement-grid h3 { font-size: 1.24rem; letter-spacing: -.03em; line-height: 1.3; }
.capability-grid p, .use-case-grid p, .engagement-grid p { font-size: .93rem; }
.section-dark .use-case-grid article { background: linear-gradient(150deg, #2a1c40, #140d23); border-color: #48375f; box-shadow: 0 7px 0 #06040c; }
.use-case-grid a, .engagement-grid a { display: inline-block; color: #75439a; font-size: .87rem; font-weight: 650; }
.section-dark .use-case-grid a { color: #79d5e2; }
.engagement-grid article { display: flex; flex-direction: column; }
.engagement-grid h3 { margin-top: 22px; }
.engagement-grid ul { padding-left: 18px; margin: 0 0 28px; color: #6b6077; font-size: .85rem; line-height: 1.8; }
.engagement-grid a { margin-top: auto; }
.engagement-grid .engagement-featured { border-color: #c4a0db; background: #f4eaf9; box-shadow: 0 7px 0 #d6bee7, 0 20px 45px #0042510d; }
.investment-note { margin: 36px 0 12px; max-width: 860px; font-size: .88rem; }
.example-questions { display: grid; gap: 12px; margin-top: 30px; }
.example-questions button { padding: 17px 20px; border: 1px solid #d6c7e3; border-radius: 13px; color: #443253; background: #fff; font: inherit; font-size: .9rem; text-align: left; cursor: pointer; }
.example-questions button[aria-pressed="true"] { border-color: #890a6c; color: #230b55; background: #f0e6f8; box-shadow: inset 3px 0 0 #890a6c; }
.depth-panel { padding: 32px; border: 1px solid #dfd1e9; border-radius: 24px; background: #fff; box-shadow: 9px 10px 0 #eae2f2, 10px 11px 0 #d8c4e8, 0 32px 65px #0042510d; }
.answer-preview h3 { margin-top: 26px; font-size: 1.3rem; }
.answer-preview p { font-size: .98rem; line-height: 1.8; }
.answer-preview a { color: #714195; text-decoration: underline; text-underline-offset: 4px; font-size: .87rem; }
.answer-preview details { margin-top: 28px; padding-top: 20px; border-top: 1px solid #dce9eb; font-size: .82rem; }
.answer-preview details p { font-size: .82rem; }
.value-calculator { padding: 32px; border: 1px solid #d9c8e8; border-radius: 25px; background: #fff; box-shadow: 0 9px 0 #e7ddef, 0 25px 60px #0042510d; }
.value-calculator label { display: grid; gap: 10px; color: #514363; font-size: .8rem; font-weight: 600; }
.value-calculator input { width: 100%; min-width: 0; padding: 13px; border: 1px solid #d9c9e4; border-radius: 10px; color: #24182f; background: #faf7fd; font: inherit; font-size: 1.05rem; }
.value-calculator output { display: block; margin: 30px 0 10px; color: #78419b; font-size: clamp(1.4rem, 2.5vw, 2rem); font-weight: 750; letter-spacing: -.04em; }
.value-calculator > p { font-size: .75rem; }
.faq-layout { display: grid; grid-template-columns: .7fr 1.3fr; gap: 60px; }
.faq-list details { padding: 24px 0; border-bottom: 1px solid #e1d5eb; }
.faq-list details:first-child { padding-top: 0; }
.faq-list summary { padding: 10px 0; color: #352340; font-weight: 650; }
summary { cursor: pointer; }
.faq-list p { margin: 15px 0 0; line-height: 1.8; font-size: .96rem; }
.scope-panel { border: 1px solid var(--experience-edge); border-radius: 26px; padding: clamp(26px, 5vw, 60px); background: #ffffffa6; box-shadow: 0 9px 0 #e4eff1; }
.scope-panel p { max-width: 820px; }
.scope-panel p a, .article-body p a, .reading-note a { color: #78419b; text-decoration: underline; text-underline-offset: 3px; }
.engagement-summary { padding: 30px; border: 1px solid #dac9e8; border-radius: 24px; background: #faf7fd; }
.engagement-summary ul { color: #6b6077; line-height: 1.9; padding-left: 20px; }
.editorial-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 48px; }
.editorial-heading > div { max-width: 750px; }
.editorial-heading > a { flex-shrink: 0; margin-bottom: 25px; }
.editorial-heading h2 { margin-bottom: 24px; }
.editorial-heading p:last-child { max-width: 650px; margin-bottom: 0; }
.editorial-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.journal-card { display: flex; flex-direction: column; overflow: hidden; border: 1px solid #e4d9ec; border-radius: 23px; background: #fff; box-shadow: 0 7px 0 #ece3f4; }
.journal-art { position: relative; display: grid; min-height: 230px; place-items: center; overflow: hidden; isolation: isolate; perspective: 800px; background: radial-gradient(circle at 60% 35%, #513578, #100b1d 76%); }
.art-caption { position: absolute; bottom: 18px; left: 22px; color: #8cb9c4; font: .58rem ui-monospace, monospace; letter-spacing: .1em; }
.art-orbit { position: absolute; width: 220px; height: 220px; border: 1px solid #67d3e166; border-radius: 50%; transform: rotateX(66deg) rotateZ(25deg); box-shadow: 0 0 0 28px #3ac5da0a, 0 0 0 55px #3ac5da09; }
.art-cube { display: grid; width: 88px; height: 88px; place-items: center; border: 1px solid #75cdd9; border-radius: 15px; color: #cbfbff; background: linear-gradient(135deg, #754fa2, #2e164b); box-shadow: 12px 12px 0 #1d0f30, 13px 13px 0 #7e5da4, 25px 25px 60px #0b0614; font-size: 2.8rem; font-weight: 750; transform: rotateX(18deg) rotateY(-25deg) rotateZ(-12deg); }
.art-laundry { background: radial-gradient(circle at 60% 30%, #e1d0ed, #f7effb); }
.art-laundry .art-caption { color: #756085; }
.art-tickets { display: grid; gap: 7px; transform: rotateX(22deg) rotateY(-22deg) rotateZ(-8deg); }
.art-tickets i { width: 190px; padding: 11px 17px; border: 1px solid #cdb8df; border-radius: 8px; color: #795397; background: #fff; box-shadow: 6px 6px 0 #d5bde5; font: .65rem ui-monospace, monospace; }
.art-tickets i:nth-child(2) { transform: translateX(16px); color: #d6fcff; background: #593477; border-color: #9977b6; box-shadow: 6px 6px 0 #32194c; }
.art-bars { display: flex; align-items: end; gap: 18px; height: 120px; transform: rotateY(-20deg) rotateZ(-8deg); }
.art-bars i { width: 42px; height: 50%; border: 1px solid #57bfcc; border-radius: 8px 8px 3px 3px; background: linear-gradient(110deg, #bc7dcd, #5d2c82); box-shadow: 9px 8px 0 #301b4b; }
.art-bars i:nth-child(2) { height: 75%; }
.art-bars i:nth-child(3) { height: 100%; }
.journal-copy { display: flex; flex-direction: column; flex: 1; padding: 26px; }
.journal-copy .mono-label { font-size: .58rem; }
.journal-copy h3 { margin-bottom: 18px; font-size: 1.35rem; line-height: 1.25; letter-spacing: -.035em; }
.journal-copy > p:not(.mono-label) { font-size: .9rem; }
.editorial-link { display: flex; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 18px; color: #7b3997; font-size: .78rem; font-weight: 650; }
.article-byline { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 30px; color: #82718e; font-size: .85rem; }
.reading-note { padding: 22px; border-left: 3px solid #008b99; background: #f5ecfa; }
.article-body { max-width: 800px; }
.article-body h2 { margin-top: 48px; font-size: clamp(1.7rem, 3vw, 2.4rem); }
.article-body p, .article-body li { color: #6b6077; font-size: 1.03rem; line-height: 1.85; }
.article-body ul, .article-body ol { padding-left: 22px; }
.demo-preview { background: radial-gradient(circle at 12% 14%, #00c7e822, transparent 24rem), linear-gradient(135deg, #28173f, #120c21); transform: perspective(1200px) rotateY(5deg) rotateX(2deg); box-shadow: -8px 10px 0 #3a2454, 0 32px 70px #0042511a; }
.solution-card, .case-card, .process-step, .project-signals > div { border-color: var(--experience-edge); }
.solution-card, .case-card { box-shadow: 0 7px 0 #eee6f6, 0 22px 55px #00425108; }
.solution-card > span, .process-step > span { box-shadow: 3px 4px 0 #e0d0ed; transform: rotate(-5deg); }
.contact-form { box-shadow: 0 8px 0 #e9dff2, 0 25px 70px #0042510d; }
.site-footer { background: #090711; }
.footer-wordmark { display: inline-block; font-size: clamp(1.7rem, 3vw, 2.6rem); font-weight: 800; letter-spacing: -.06em; }
.footer-wordmark span { color: #00c7e8; }
.site-footer .footer-links { flex-wrap: wrap; max-width: 560px; gap: 14px 24px; }
:focus-visible { outline: 3px solid #00a7bd; outline-offset: 5px; }
@media (hover: hover) and (pointer: fine) {
  .journal-card, .capability-grid article, .solution-card, .case-card { transition: transform .25s ease, box-shadow .25s ease; }
  .journal-card:hover, .capability-grid article:hover, .solution-card:hover, .case-card:hover { transform: translateY(-5px); box-shadow: 0 10px 0 #e4d7f0, 0 26px 50px #0042510d; }
  .editorial-link:hover, .use-case-grid a:hover, .engagement-grid a:hover { text-decoration: underline; text-underline-offset: 4px; }
}
@media (max-width: 1100px) {
  .site-header .nav-links, .site-header .nav-cta { display: none; }
  .site-header .menu-toggle { display: inline-flex; }
  .specialty-grid { gap: 30px; }
  .editorial-heading { align-items: start; flex-direction: column; gap: 22px; }
  .editorial-heading > a { margin-bottom: 0; }
  .capability-grid article, .engagement-grid article { padding: 23px; }
}
@media (min-width: 1101px) { .site-header .mobile-menu { display: none; } }
@media (max-width: 850px) {
  .specialty-grid, .faq-layout { grid-template-columns: 1fr; gap: 44px; }
  .specialty-grid .depth-scene { width: min(100%, 550px); margin-inline: auto; }
  .capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .editorial-grid, .engagement-grid, .use-case-grid { grid-template-columns: 1fr; gap: 26px; }
  .journal-card { display: grid; grid-template-columns: .85fr 1.15fr; }
  .journal-art { min-height: 260px; }
  .knowledge-stack { height: 515px; }
  .laundry-feature .specialty-grid { gap: 30px; }
}
@media (max-width: 720px) {
  .site-header { padding-top: env(safe-area-inset-top); }
  .site-header .nav { min-height: 68px; }
  .site-header .mobile-menu { top: calc(68px + env(safe-area-inset-top)); }
  .site-header .brand > span:last-child { display: inline; }
  .specialty-hero { padding-block: 64px; }
  .specialty-hero h1 { font-size: clamp(2.65rem, 11vw, 4rem); }
  .depth-panel, .value-calculator { padding: 24px; }
  .depth-panel { box-shadow: 5px 6px 0 #eae2f2, 6px 7px 0 #d8c4e8; }
  .floating-proof { right: 0; bottom: 38px; }
  .laundry-board { padding: 20px 20px 64px; transform: rotateX(3deg) rotateY(-4deg) rotateZ(1deg); box-shadow: 6px 8px 0 #0e081a, 7px 9px 0 #584275, 0 28px 45px #00171d33; }
  .stack-layer { padding: 22px; transform: rotateX(12deg) rotateY(-8deg) rotateZ(-2deg); }
  .stack-layer h3 { font-size: 1.15rem; }
  .layer-answer { left: 6%; }
  .demo-preview { transform: none; }
  .page-hero::after { right: -300px; opacity: .65; }
}
@media (max-width: 540px) {
  .capability-grid, .journal-card { grid-template-columns: 1fr; }
  .journal-art { min-height: 220px; }
  .knowledge-stack { height: 510px; }
  .stack-layer { left: 4%; width: 92%; }
  .layer-retrieve { left: 0; }
  .layer-answer { left: 5%; }
  .source-pills span, .source-chip { font-size: .62rem; }
  .board-top strong span { display: none; }
  .laundry-model { padding-inline: 0; }
  .journal-copy { padding: 25px; }
}
@media (prefers-reduced-motion: reduce) {
  .depth-scene *, .journal-card, .capability-grid article, .solution-card, .case-card { animation: none !important; transition: none !important; }
}

:root { --paper: #f7f3fa; --paper-soft: #fff; --experience-edge: rgba(137, 10, 108, .14); }
body { overflow-x: hidden; }
.site-header { border-bottom: 1px solid #dbc4f51c; background: rgba(9, 7, 17, .94); box-shadow: 0 14px 45px #09041424; }
.site-header .nav { width: min(100% - 64px, 1380px); min-height: 90px; }
.site-header .brand { font-size: 1rem; font-weight: 650; letter-spacing: -.035em; }
.site-header .brand-mark { border: 0; border-radius: 0; background: none; box-shadow: none; }
.site-header .brand-mark img { width: 38px; height: 38px; }
.site-header .nav-links { color: #c5b9d6; font-weight: 500; }
.site-header .nav-links a { display: inline-flex; align-items: center; min-height: 90px; }
.site-header .nav-links a[aria-current="page"] { color: #edd4ff; box-shadow: inset 0 -2px #ba8bdd; }
.site-header .nav-cta { min-height: 44px; border-color: #b995d74a; font-size: .8rem; font-weight: 550; }
.site-header .mobile-menu { top: 90px; height: calc(100svh - 90px); overflow-y: auto; background: radial-gradient(circle at 12% 0%, #890a6c20, transparent 70%), #0d0816; }
.section-dark { background: radial-gradient(ellipse at 85% 0%, #230b5566, transparent 65%), radial-gradient(ellipse at 10% 100%, #09515e17, transparent 60%), #090711; }
.section-light { background: radial-gradient(ellipse at 90% 10%, #890a6c07, transparent 65%), #f7f4fb; }
.page-hero { background: radial-gradient(ellipse at 90% 20%, #890a6c0d, transparent 60%), #f7f4fb; }
.page-hero h1 em { font-style: normal; color: #78419b; }
.specialty-hero.section-dark h1 { color: #faf6ff; font-weight: 550; }
.specialty-hero.section-dark h1 em { color: #d3b1ec; }
.specialty-hero.section-dark .breadcrumbs { color: #af9dc2; }
.specialty-hero.section-dark .knowledge-stack .layer-retrieve h3 { color: #f9f3ff; }
.section-dark .layer-source .mono-label, .section-dark .layer-answer .mono-label { color: #704195; }
.section-dark .layer-source h3, .section-dark .layer-answer h3 { color: #231632; }
.section-dark .layer-retrieve p, .section-dark .layer-retrieve .mono-label { color: #d8bce9; }
.section-dark .scope-panel { background: #f4edfa; color: #28183b; }
.section-dark .scope-panel h3 { color: #28183b; }
.section-dark .scope-panel p, .section-dark .scope-panel li { color: #6c587a; }
.section-dark .scope-panel .text-link { color: #75439a; }
.section-dark .scope-panel .mono-label { color: #75439a; }
.button-primary { background: linear-gradient(135deg, #230b55 0%, #890a6c 45%, #059dc0 100%); box-shadow: 0 16px 45px #890a6c1c; }
.section-light .section-kicker, .section-white .section-kicker { color: #766682; }
.status-development { border-color: #d7bfe3; color: #7c408d; background: #f4e9f8; }
.section-dark h2 em { color: #cba8e4; }
.section-dark .article-byline { color: #c6b4d6; }
.section-dark .mono-label { color: #d0b7e4; }
.source-chip, .source-pills span { border-color: #d7c2e6; color: #69408e; background: #f6effb; }
.article-hero { padding-block: clamp(72px, 8vw, 118px); }
.article-deck { max-width: 800px; font-size: 1.1rem; line-height: 1.75; }
.article-layout { grid-template-columns: 270px minmax(0, 1fr); }
.article-meta { position: sticky; top: 120px; display: grid; gap: 22px; padding: 28px; border: 1px solid #e6daee; border-radius: 22px; background: #faf7fd; box-shadow: 0 7px 0 #eee5f5; }
.article-meta span { color: #7d668d; font: .65rem ui-monospace, monospace; text-transform: uppercase; letter-spacing: .08em; }
.article-meta strong { color: #32203f; font-size: 1.25rem; line-height: 1.35; }
.article-meta a { font-size: .82rem; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 32px; font-size: .8rem; }
.footer-grid { display: flex; align-items: start; justify-content: space-between; gap: 50px; }
.footer-wordmark { color: #f1e7fa; font-size: 2.2rem; line-height: 1.12; font-weight: 550; margin-bottom: 22px; }
.footer-wordmark span { color: #c7a0e2; }
.site-footer .footer-links { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 35px; font-size: .85rem; }
.solution-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.solution-card h3 a { text-decoration: underline; text-decoration-color: #c4a0db; text-underline-offset: 5px; }
.expertise-strip { padding-block: 25px; border-bottom: 1px solid #ece4f3; }
.expertise-strip .container { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.expertise-strip p { margin: 0; font-size: .77rem; }
.expertise-strip a { font-size: .8rem; font-weight: 650; }
.art-caption { max-width: calc(100% - 40px); color: #c7a9df; font-size: .53rem; }
.art-laundry .art-caption { color: #765d88; }
.journal-copy .mono-label { text-transform: uppercase; }
@media (max-width: 1100px) { .site-header .nav-cta, .site-header .nav-links { display: none; } .site-header .menu-toggle { display: inline-flex; } }
@media (max-width: 850px) { .article-layout { grid-template-columns: 1fr; } .article-meta { position: static; } .solution-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) {
  .site-header .nav { width: calc(100% - 36px); min-height: 76px; }
  .site-header .mobile-menu { top: calc(76px + env(safe-area-inset-top)); height: calc(100svh - 76px - env(safe-area-inset-top)); }
  .site-header .mobile-menu a:not(.button) { font-size: 2rem; padding-block: 16px; }
  .footer-grid { flex-direction: column; gap: 32px; }
  .solution-grid { grid-template-columns: 1fr; }
}
