.concept-demo { margin: 0; font: 1rem/1.65 "Manrope",sans-serif; }
.concept-demo [id] { scroll-margin-top: 2rem; }
.concept-demo a:focus-visible,.concept-demo button:focus-visible,.concept-demo summary:focus-visible { outline: 3px solid currentColor; outline-offset: 5px; }
.demo-bar { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .4rem 4vw; min-height: 3rem; background: #080e15; color: #d4deec; font-size: .75rem; }
.demo-bar a { display: inline-flex; align-items: center; min-height: 44px; text-underline-offset: 4px; }
.demo-nav { display: flex; justify-content: space-between; align-items: center; padding: 1.6rem 4vw; gap: 2rem; border-bottom: 1px solid #ffffff25; }
.demo-nav > a { font-size: 2rem; }
.demo-nav nav { display: flex; gap: 2rem; align-items: center; }
.demo-nav nav a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: none; font-size: .9rem; }
.demo-nav nav a:last-child { border: 1px solid currentColor; border-radius: 999px; padding: .5rem 1rem; }
.demo-eyebrow { font-size: .75rem; font-weight: 600; letter-spacing: .09em; line-height: 1.5; }
.demo-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 2rem; padding: .9rem 1.3rem; min-height: 50px; text-decoration: none; font-size: .9rem; font-weight: 600; border-radius: .4rem; }
.demo-section-heading { display: grid; grid-template-columns: 1fr 1.5fr; gap: 1.5rem 3rem; align-items: start; margin-bottom: 3.5rem; }
.demo-section-heading .demo-eyebrow { margin: .6rem 0 0; }
.demo-section-heading h2 { font: 500 clamp(2.4rem,4vw,4.3rem)/1.12 "Manrope",sans-serif; letter-spacing: -.06em; margin: 0; }
.demo-section-heading > p:last-child:not(.demo-eyebrow) { grid-column: 2; max-width: 43rem; margin: 0; }
.demo-feature-grid { display: grid; grid-template-columns: repeat(3,1fr); }
.demo-feature-grid article { padding: 2.5rem; border: 1px solid #ffffff26; }
.demo-feature-grid article > span { font: .75rem ui-monospace,monospace; }
.demo-feature-grid h3 { font-size: 1.75rem; font-weight: 500; letter-spacing: -.04em; line-height: 1.2; margin: 3rem 0 1rem; }
.demo-feature-grid p { margin: 0; }
.demo-footer { padding: 3rem 4vw; display: flex; justify-content: space-between; align-items: end; gap: 2rem; border-top: 1px solid #8886; }
.demo-footer > strong { font-size: 2.5rem; font-weight: 600; letter-spacing: -.07em; }
.demo-footer p { font-size: .85rem; margin: 0; }
.demo-footer a { min-height: 44px; display: inline-flex; align-items: center; font-size: .9rem; text-underline-offset: 5px; }
/* A progressive enhancement: content is visible without JS or motion support. */
.demo-motion-ready .demo-reveal { opacity: .05; transform: translateY(24px); transition: opacity .8s, transform .8s cubic-bezier(.22,.75,.18,1); }
.demo-motion-ready .demo-reveal.is-visible { opacity: 1; transform: none; }

.signal-demo { color: #eff2ed; background: #101410; }
.signal-demo ::selection { color: #101410; background: #d7ff62; }
.signal-wordmark { font-family: "Manrope",sans-serif; font-weight: 700; letter-spacing: -.07em; text-decoration: none; }
.signal-wordmark > span { color: #d7ff62; margin-left: .2rem; }
.signal-demo .demo-nav { color: #ebf0e7; }
.signal-demo .demo-nav nav a:last-child,.signal-demo .demo-button { color: #111810; background: #d7ff62; border-color: #d7ff62; }
.signal-hero { padding: clamp(4rem,7vw,8rem) 4vw 7rem; display: grid; grid-template-columns: 1.3fr 1fr; align-items: center; gap: 6vw; }
.signal-hero h1 { font: 500 clamp(3.5rem,7.8vw,8.2rem)/.98 "Manrope",sans-serif; letter-spacing: -.08em; margin: 2rem 0; }
.signal-hero h1 > span { color: #d7ff62; }
.signal-hero__copy > p:not(.demo-eyebrow) { font-size: 1.1rem; color: #b7c4b4; max-width: 36rem; margin: 2rem 0; }
.signal-hero small { display: block; font: .68rem/1.8 ui-monospace,monospace; color: #a3b09f; letter-spacing: .02em; margin-top: 1.1rem; }
.signal-hero .demo-eyebrow { color: #c4d9bb; }
.signal-overview { background: #1a211a; border: 1px solid #ffffff2b; border-radius: 1rem; overflow: hidden; }
.signal-overview__head,.signal-overview__foot { padding: 1.25rem 1.5rem; display: flex; justify-content: space-between; gap: 1rem; font: .7rem/1.5 ui-monospace,monospace; color: #a3b09f; }
.signal-overview__foot { flex-direction: column; border-top: 1px solid #ffffff26; }
.signal-overview__foot strong { color: #e6efde; font: 500 1.2rem "Manrope",sans-serif; letter-spacing: -.04em; }
.signal-orbit { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 3rem 1rem; min-height: 340px; background: repeating-linear-gradient(0deg,transparent,transparent 39px,#ffffff07 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#ffffff07 40px); }
.signal-orbit::before { content: ""; position: absolute; width: 65%; aspect-ratio: 1; top: 50%; left: 50%; transform: translate(-50%,-50%); border: 1px solid #d7ff6266; border-radius: 50%; }
.signal-orbit::after { content: ""; position: absolute; left: 20%; right: 20%; height: 1px; background: #d7ff62; top: 50%; }
.signal-orbit span { position: relative; z-index: 1; font: .7rem ui-monospace,monospace; padding: .3rem .6rem; background: #1a211a; color: #d7ff62; letter-spacing: .1em; }
.signal-orbit strong { position: relative; z-index: 1; background: #d7ff62; color: #192018; padding: .7rem 1.1rem; border-radius: .4rem; font-size: 2rem; letter-spacing: -.07em; }
.signal-workspace-section { padding: 6rem 4vw; background: #e3e8d8; color: #1b281a; }
.signal-workspace-section .demo-section-heading > p:last-child { color: #4c5d45; }
.signal-workspace { display: grid; grid-template-columns: 250px 1fr; background: #f4f6ee; border: 1px solid #abb9a0; box-shadow: 0 2rem 5rem #26351a13; border-radius: .9rem; overflow: hidden; }
.signal-workspace aside { padding: 2rem 1rem; background: #1a251b; color: #d9e1d4; }
.signal-workspace aside > .signal-wordmark { display: inline-block; font-size: 1.8rem; padding: 0 .75rem; margin-bottom: 2.5rem; }
.signal-workspace aside > .demo-eyebrow { padding: 0 .75rem; color: #b0c2a3; }
.signal-briefs { display: flex; flex-direction: column; gap: .5rem; }
.signal-briefs button { display: flex; justify-content: space-between; text-align: left; gap: .75rem; padding: .9rem .75rem; min-height: 48px; border: 1px solid transparent; border-radius: .35rem; background: transparent; color: #d9e1d4; font: .875rem/1.4 "Manrope",sans-serif; cursor: pointer; }
.signal-briefs button:hover { background: #ffffff10; }
.signal-briefs button[aria-pressed="true"] { background: #d7ff62; color: #172019; }
.signal-sample-note { font-size: .78rem; color: #c4d2bc; margin: 3rem .75rem .5rem; }
.signal-document { padding: clamp(1.5rem,3.5vw,4rem); }
.signal-document__top { display: flex; flex-wrap: wrap; gap: .75rem; justify-content: space-between; font: .7rem/1.5 ui-monospace,monospace; color: #52634a; }
.signal-status { padding: .25rem .5rem; background: #dce7cd; color: #304624; }
.signal-document h3 { font-size: clamp(1.8rem,3vw,3.2rem); line-height: 1.1; letter-spacing: -.06em; margin: 2.5rem 0 1rem; font-weight: 500; max-width: 19ch; }
.signal-document > p { max-width: 44rem; color: #53634b; }
.signal-document__sources { display: flex; flex-wrap: wrap; gap: .5rem; margin: 2rem 0; }
.signal-document__sources span { border: 1px solid #a9b89c; padding: .5rem .75rem; border-radius: 999px; font-size: .75rem; }
.signal-insight { display: flex; gap: 1rem; padding: 1.5rem; border: 1px solid #bdcaaa; background: #e6eddc; }
.signal-insight > span { font-size: 2rem; color: #496b31; }
.signal-insight .demo-eyebrow { color: #536848; margin: .25rem 0 .75rem; }
.signal-insight h4 { font-size: 1.25rem; line-height: 1.35; margin: 0; letter-spacing: -.03em; font-weight: 600; }
.signal-insight p:last-child { color: #4b5e41; margin-bottom: 0; }
.signal-next { margin-top: 2rem; border-top: 1px solid #b9c4ae; padding-top: 1.25rem; }
.signal-next > span { font: .7rem ui-monospace,monospace; color: #526848; }
.signal-next p { margin-bottom: 0; }
.signal-workflow { padding: 7rem 4vw; }
.signal-workflow .demo-feature-grid { gap: 1rem; }
.signal-workflow .demo-feature-grid article { border-radius: .75rem; background: #1a2219; }
.signal-workflow .demo-feature-grid span { color: #d7ff62; }
.signal-workflow .demo-feature-grid p { color: #b0c0a8; }
.signal-end { margin: 0 4vw 6rem; padding: 4vw; background: #d7ff62; color: #152112; border-radius: 1rem; }
.signal-end h2 { font: 500 clamp(2.8rem,6vw,6rem)/1.03 "Manrope",sans-serif; letter-spacing: -.07em; margin: 2rem 0; }
.signal-end h2 span { font-size: .8em; }
.signal-end .demo-button { background: #152112; color: #f5ffe9; }

.aperture-demo { background: #e2e2df; color: #202021; }
.aperture-demo ::selection { background: #dc3c24; color: #fff; }
.aperture-demo .demo-nav { border-color: #2223; }
.aperture-wordmark { font-weight: 700; letter-spacing: -.07em; text-decoration: none; }
.aperture-wordmark span { font-size: .5em; vertical-align: top; }
.aperture-hero { padding: 2rem 4vw 4rem; }
.aperture-hero__top { display: flex; justify-content: space-between; gap: 2rem; font-size: .75rem; line-height: 1.5; }
.aperture-hero__top > span { text-align: right; }
.aperture-hero h1 { position: relative; z-index: 2; font: 600 clamp(4rem,14vw,14rem)/.95 "Manrope",sans-serif; letter-spacing: -.095em; margin: 2rem 0 -2vw; }
.aperture-hero h1 em { font-weight: 500; font-family: Georgia,serif; letter-spacing: -.07em; }
.aperture-art { position: relative; height: clamp(28rem,60vw,64rem); overflow: hidden; background: #d2d3d5; }
.aperture-art img { width: 100%; height: 100%; object-fit: cover; }
.aperture-art > span { position: absolute; left: 2rem; bottom: 2rem; font: .75rem ui-monospace,monospace; }
.aperture-round-link { position: absolute; bottom: 2rem; right: 2rem; width: 4rem; height: 4rem; border-radius: 50%; border: 1px solid #242424; display: grid; place-items: center; font-size: 1.5rem; text-decoration: none; background: #e2e2df; }
.aperture-hero__bottom { display: flex; justify-content: space-between; gap: 2rem; padding-top: 1.5rem; }
.aperture-hero__bottom p { margin: 0; font-size: 1rem; }
.aperture-hero__bottom p:first-child { font-size: 1.6rem; letter-spacing: -.05em; line-height: 1.25; }
.aperture-perspective { padding: 7rem 4vw; background: #d93925; color: #170f0d; }
.aperture-perspective h2 { font: 600 clamp(3rem,7vw,7.5rem)/1.02 "Manrope",sans-serif; letter-spacing: -.075em; margin: 3rem 0; }
.aperture-perspective h2 em { font-family: Georgia,serif; font-weight: 400; }
.aperture-editorial { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; border-top: 1px solid #27171355; padding-top: 2rem; }
.aperture-editorial > span { font-size: 5rem; line-height: 1; }
.aperture-editorial p { font-size: clamp(1.1rem,1.9vw,1.7rem); line-height: 1.5; letter-spacing: -.03em; margin: 0; }
.aperture-practice { padding: 7rem 4vw; }
.aperture-disciplines details { border-top: 1px solid #20202070; }
.aperture-disciplines details:last-child { border-bottom: 1px solid #20202070; }
.aperture-disciplines summary { display: grid; grid-template-columns: 1fr 5fr auto; align-items: center; gap: 1.5rem; cursor: pointer; padding: 1.6rem 0; list-style: none; }
.aperture-disciplines summary::-webkit-details-marker { display: none; }
.aperture-disciplines summary > span { font: .8rem ui-monospace,monospace; }
.aperture-disciplines summary h3 { font: 500 clamp(1.8rem,4vw,4rem)/1.2 "Manrope",sans-serif; letter-spacing: -.06em; margin: 0; }
.aperture-disciplines summary b { font-size: 1.8rem; font-weight: 400; transition: transform .3s; }
.aperture-disciplines details[open] summary b { transform: rotate(90deg); }
.aperture-disciplines details > div { padding: 0 10% 2.5rem 16.66%; display: grid; grid-template-columns: 1.5fr 1fr; gap: 4vw; }
.aperture-disciplines details p { margin-top: 0; max-width: 36rem; }
.aperture-disciplines ul { margin: 0; padding-left: 1rem; }
.aperture-end { padding: 6rem 4vw; background: #1d1d1e; color: #e9e7e2; }
.aperture-end h2 { font: 500 clamp(3rem,7vw,7rem)/1.05 "Manrope",sans-serif; letter-spacing: -.075em; margin: 2rem 0; }
.aperture-end h2 em { font-family: Georgia,serif; font-weight: 400; color: #f57254; }
.aperture-end > a { display: flex; max-width: 38rem; min-height: 64px; justify-content: space-between; align-items: center; border-bottom: 1px solid #d4d1c799; text-decoration: none; font-size: clamp(1rem,2vw,1.5rem); }
.aperture-end > a span { font-size: 2.5rem; }
.aperture-end > p:last-child { color: #bbb9b4; font-size: .85rem; max-width: 36rem; margin-top: 2rem; }
@supports (animation-timeline:view()) {
  @media (prefers-reduced-motion:no-preference) and (min-width:861px) {
    .aperture-art img { animation: aperture-drift linear both; animation-timeline: view(); animation-range: entry 0% exit 100%; }
    @keyframes aperture-drift { from { transform: scale(1.04) translateY(-1%); } to { transform: scale(1.12) translateY(2%); } }
  }
}
@media (max-width:860px) {
  .demo-bar { flex-wrap: wrap; gap: .2rem; padding: .5rem 1.25rem; font-size: .7rem; }
  .demo-bar__detail { display: none; }
  .demo-nav { gap: 1rem; padding: 1.2rem 1.25rem; flex-wrap: wrap; }
  .demo-nav nav { gap: 1rem; }
  .demo-nav nav a { font-size: .8rem; }
  .demo-nav nav a:last-child { padding: .4rem .65rem; }
  .signal-hero { grid-template-columns: 1fr; padding: 3.5rem 1.25rem 4rem; gap: 3rem; }
  .signal-hero h1 { font-size: clamp(3.2rem,13vw,6rem); }
  .signal-hero__copy > p:not(.demo-eyebrow) { font-size: 1rem; }
  .signal-hero small { max-width: 35ch; }
  .signal-orbit { min-height: 300px; }
  .demo-section-heading { grid-template-columns: 1fr; gap: 1rem; margin-bottom: 2rem; }
  .demo-section-heading > p:last-child:not(.demo-eyebrow) { grid-column: auto; }
  .demo-section-heading h2 { font-size: clamp(2rem,7.8vw,3.5rem); }
  .signal-workspace-section,.signal-workflow,.aperture-practice { padding: 4rem 1.25rem; }
  .signal-workspace { grid-template-columns: 1fr; }
  .signal-workspace aside { padding: 1.2rem; }
  .signal-workspace aside > .signal-wordmark { margin-bottom: 1rem; }
  .signal-sample-note { margin: 1rem .75rem 0; }
  .signal-document { padding: 1.4rem; }
  .signal-insight { padding: 1rem; gap: .7rem; }
  .signal-insight > span { font-size: 1.5rem; }
  .demo-feature-grid { grid-template-columns: 1fr; }
  .demo-feature-grid article { padding: 1.75rem; }
  .demo-feature-grid h3 { margin-top: 2rem; }
  .signal-end { margin: 0 1.25rem 4rem; padding: 2rem 1.25rem; }
  .signal-end .demo-button { gap: .75rem; }
  .demo-footer { flex-direction: column; align-items: start; padding: 2rem 1.25rem; gap: 1.5rem; }
  .aperture-hero { padding: 2rem 1.25rem 3rem; }
  .aperture-hero__top { font-size: .65rem; gap: .75rem; }
  .aperture-hero h1 { font-size: clamp(3rem,14vw,7rem); margin: 2rem 0 .75rem; }
  .aperture-art { height: 28rem; }
  .aperture-art img { object-position: 62% center; }
  .aperture-art > span { left: 1rem; bottom: 1.5rem; }
  .aperture-round-link { right: 1rem; bottom: 1rem; width: 3rem; height: 3rem; }
  .aperture-hero__bottom { flex-direction: column; gap: 1rem; }
  .aperture-perspective,.aperture-end { padding: 4rem 1.25rem; }
  .aperture-perspective h2 { font-size: clamp(2.4rem,9.2vw,5rem); }
  .aperture-editorial { grid-template-columns: 1fr; gap: 1.5rem; }
  .aperture-editorial > span { font-size: 3rem; }
  .aperture-disciplines summary { grid-template-columns: 1.5rem 1fr 1.5rem; gap: .8rem; padding: 1.5rem 0; }
  .aperture-disciplines summary h3 { font-size: clamp(1.5rem,6vw,2.5rem); }
  .aperture-disciplines details > div { padding: 0 0 2rem 2.3rem; grid-template-columns: 1fr; gap: .5rem; }
  .aperture-end h2 { font-size: clamp(2.5rem,9.7vw,5rem); }
}
@media (prefers-reduced-motion:reduce) {
  .demo-motion-ready .demo-reveal { opacity: 1; transform: none; transition: none; }
  .aperture-art img { animation: none; transform: none; }
}
