:root {
  --oc-ivory: #f5f1e9;
  --oc-paper: #fbf8f2;
  --oc-ink: #151515;
  --oc-muted: #635f58;
  --oc-line: rgba(21, 21, 21, 0.16);
  --oc-blue: #37c6d0;
  --oc-violet: #8f72c7;
  --oc-orange: #e28b57;
  --oc-gold: #b38a50;
  --oc-sans: 'Inter', Arial, sans-serif;
  --oc-display: 'Space Grotesk', 'Inter', Arial, sans-serif;
  --oc-mono: 'JetBrains Mono', ui-monospace, monospace;
}

body.operating-company { background: var(--oc-ivory); color: var(--oc-ink); font-family: var(--oc-sans); }
body.operating-company::after { display: none; }
.oc-site { min-height: 100vh; background-color: var(--oc-ivory); background-image: linear-gradient(rgba(21,21,21,.042) 1px,transparent 1px),linear-gradient(90deg,rgba(21,21,21,.042) 1px,transparent 1px); background-size: 80px 80px; }
.oc-site a { color: inherit; }
.oc-skip { position: fixed; left: 16px; top: 10px; z-index: 100; padding: 10px 14px; background: var(--oc-ink); color: var(--oc-paper); font: 600 12px/1 var(--oc-sans); transform: translateY(-160%); transition: transform .2s ease; }
.oc-skip:focus { transform: translateY(0); }
.oc-spectrum { height: 4px; background: linear-gradient(90deg,var(--oc-blue),var(--oc-violet) 48%,var(--oc-orange)); }
.oc-header { min-height: 78px; padding: 0 6vw; display: flex; align-items: center; justify-content: space-between; gap: 32px; border-bottom: 1px solid var(--oc-line); background: rgba(245,241,233,.92); backdrop-filter: blur(14px); position: sticky; top: 0; z-index: 30; }
.oc-brand { display: inline-flex; align-items: center; font: 700 18px/1 var(--oc-display); letter-spacing: .02em; text-decoration: none; }
.oc-brand span { color: var(--oc-orange); }
.oc-nav { display: flex; align-items: center; gap: clamp(18px,2vw,34px); }
.oc-nav a { font-size: 13px; font-weight: 600; text-decoration: none; }
.oc-nav a:not(.oc-nav-cta) { border-bottom: 1px solid transparent; }
.oc-nav a:not(.oc-nav-cta):hover,.oc-nav a:not(.oc-nav-cta):focus-visible { border-color: currentColor; }
.oc-nav-cta,.oc-mobile-cta { min-height: 44px; padding: 0 18px; display: inline-flex; align-items: center; border: 1px solid var(--oc-ink); border-radius: 3px; text-decoration: none; }
.oc-mobile-cta { display: none; font-size: 11px; font-weight: 700; }
.oc-hero { min-height: calc(100vh - 82px); padding: clamp(72px,7vw,124px) 6vw 6vw; display: grid; grid-template-columns: minmax(0,1.65fr) minmax(300px,.62fr); gap: 7vw; align-items: center; }
.oc-eyebrow { margin: 0 0 22px; font: 500 11px/1.5 var(--oc-mono); letter-spacing: .16em; text-transform: uppercase; }
.oc-hero h1 { max-width: 980px; margin: 0; font: 600 clamp(54px,6.8vw,108px)/.94 var(--oc-display); letter-spacing: -.065em; }
.oc-lede { max-width: 770px; margin: 30px 0 0; color: var(--oc-muted); font-size: clamp(18px,1.5vw,23px); line-height: 1.65; }
.oc-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.oc-button { min-height: 48px; padding: 0 20px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; border: 1px solid var(--oc-ink); border-radius: 3px; font-size: 13px; font-weight: 700; text-decoration: none; transition: transform .18s ease,background .18s ease; }
.oc-button:hover { transform: translateY(-2px); }
.oc-button-primary { background: var(--oc-ink); color: var(--oc-paper) !important; }
.oc-button-secondary { background: rgba(255,255,255,.38); }
.oc-micro { margin: 28px 0 0; color: var(--oc-muted); font: 500 11px/1.6 var(--oc-mono); letter-spacing: .06em; }
.oc-delivery-rail { padding-left: 30px; border-left: 2px solid var(--oc-gold); }
.oc-rail-lead { margin: 0 0 26px; font: 600 20px/1.55 var(--oc-display); }
.oc-delivery-list { margin: 0; padding: 0; border-top: 1px solid var(--oc-line); list-style: none; }
.oc-delivery-list li { padding: 15px 0; display: grid; grid-template-columns: 36px 1fr; gap: 14px; border-bottom: 1px solid var(--oc-line); }
.oc-delivery-list span { color: var(--oc-orange); font: 500 11px/1.4 var(--oc-mono); }
.oc-delivery-list strong { font-size: 14px; }
.oc-ecosystem { padding: 64px 6vw 0; border-top: 1px solid var(--oc-line); border-bottom: 1px solid var(--oc-line); background: rgba(251,248,242,.68); }
.oc-ecosystem-head { display: grid; grid-template-columns: minmax(280px,.8fr) minmax(320px,1.2fr); gap: 8vw; align-items: end; }
.oc-ecosystem-head h2 { margin: 0; font: 600 clamp(34px,4vw,62px)/1 var(--oc-display); letter-spacing: -.05em; }
.oc-ecosystem-head>p { max-width: 680px; margin: 0; color: var(--oc-muted); font-size: 16px; line-height: 1.75; }
.oc-credential-grid { margin-top: 38px; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--oc-line); border-left: 1px solid var(--oc-line); }
.oc-credential-grid article { min-height: 126px; padding: 22px; display: flex; flex-direction: column; justify-content: space-between; gap: 26px; border-right: 1px solid var(--oc-line); border-bottom: 1px solid var(--oc-line); background: var(--oc-paper); }
.oc-credential-grid article::before { width: 22px; height: 3px; background: var(--oc-orange); content: ''; }
.oc-credential-grid article:last-child::before { background: linear-gradient(90deg,#4285f4 0 25%,#ea4335 25% 50%,#fbbc05 50% 75%,#34a853 75%); }
.oc-credential-grid span { color: var(--oc-muted); font: 500 9px/1.3 var(--oc-mono); letter-spacing: .12em; text-transform: uppercase; }
.oc-credential-grid strong { font: 600 16px/1.35 var(--oc-display); }
.oc-platform-experience { margin-top: 30px; display: grid; grid-template-columns: minmax(230px,.55fr) minmax(0,1.45fr); gap: 4vw; align-items: center; border-top: 1px solid var(--oc-line); }
.oc-platform-experience>div { padding: 27px 0; }
.oc-platform-experience .oc-eyebrow { margin-bottom: 10px; }
.oc-platform-experience h3 { margin: 0; font: 600 24px/1.1 var(--oc-display); letter-spacing: -.035em; }
.oc-platform-experience ul { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,1fr); list-style: none; }
.oc-platform-experience li { min-height: 96px; padding: 18px; display: flex; flex-direction: column; justify-content: center; gap: 8px; border-left: 1px solid var(--oc-line); }
.oc-platform-experience b { font-size: 12px; }.oc-platform-experience li span { color: var(--oc-muted); font-size: 10px; line-height: 1.45; }
.oc-industry-strip { display: grid; grid-template-columns: 1.2fr 5fr; border-block: 1px solid var(--oc-line); background: rgba(255,255,255,.34); }
.oc-industry-strip>p { margin: 0; padding: 20px; display: flex; align-items: center; border-right: 1px solid var(--oc-line); color: var(--oc-muted); font: 500 10px/1.4 var(--oc-mono); letter-spacing: .12em; text-transform: uppercase; }
.oc-industry-strip ul { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,1fr); list-style: none; }
.oc-industry-strip li { min-height: 78px; padding: 20px; display: flex; align-items: center; border-right: 1px solid var(--oc-line); font-size: 12px; font-weight: 600; }
.oc-logo-proof { padding: 72px 6vw 78px; border-bottom: 1px solid var(--oc-line); background: var(--oc-ink); color: var(--oc-paper); }
.oc-practice-gateway { margin: -24px 0 72px; padding: 28px 0; display: grid; grid-template-columns: minmax(180px,.55fr) minmax(360px,1.45fr) auto; gap: clamp(28px,4vw,64px); align-items: center; border-top: 1px solid rgba(251,248,242,.22); border-bottom: 1px solid rgba(251,248,242,.22); }
.oc-practice-label { padding-left: 18px; display: grid; gap: 8px; border-left: 3px solid var(--oc-orange); }
.oc-practice-label span { color: rgba(251,248,242,.54); font: 500 10px/1.3 var(--oc-mono); letter-spacing: .14em; text-transform: uppercase; }
.oc-practice-label strong { font: 600 16px/1.25 var(--oc-display); }
.oc-practice-copy h2 { margin: 0; font: 600 clamp(24px,2.4vw,38px)/1.08 var(--oc-display); letter-spacing: -.035em; }
.oc-practice-copy p { margin: 12px 0 0; color: rgba(251,248,242,.62); font-size: 13px; line-height: 1.65; }
.oc-practice-copy .oc-practice-framework { color: var(--oc-orange); font: 500 10px/1.6 var(--oc-mono); letter-spacing: .08em; text-transform: uppercase; }
.oc-practice-gateway>a { min-height: 46px; padding: 0 18px; display: inline-flex; align-items: center; justify-content: center; gap: 16px; border: 1px solid rgba(251,248,242,.48); border-radius: 3px; color: var(--oc-paper); font-size: 13px; font-weight: 700; text-decoration: none; white-space: nowrap; }
.oc-practice-gateway>a:hover,.oc-practice-gateway>a:focus-visible { border-color: var(--oc-blue); color: var(--oc-blue); }
.oc-logo-proof-head { margin-bottom: 38px; display: grid; grid-template-columns: minmax(280px,.9fr) minmax(320px,1.1fr); gap: 8vw; align-items: end; }
.oc-logo-proof-head h2 { max-width: 760px; margin: 0; font: 600 clamp(32px,3.8vw,60px)/1.02 var(--oc-display); letter-spacing: -.05em; }
.oc-logo-proof-head>p { max-width: 700px; margin: 0; color: rgba(251,248,242,.62); font-size: 14px; line-height: 1.72; }
.oc-logo-grid { display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); border-top: 1px solid rgba(251,248,242,.18); border-left: 1px solid rgba(251,248,242,.18); }
.oc-logo-tile { min-width: 0; min-height: 112px; padding: 25px 22px; display: flex; align-items: center; justify-content: center; border-right: 1px solid rgba(19,18,17,.16); border-bottom: 1px solid rgba(19,18,17,.16); background: var(--oc-paper); }
.oc-logo-tile img { width: auto; max-width: 100%; height: auto; max-height: 42px; object-fit: contain; filter: none; opacity: .94; }
.oc-logo-tile span { margin-left: 11px; color: rgba(19,18,17,.72); font: 500 9px/1 var(--oc-mono); letter-spacing: .12em; text-transform: uppercase; }
.oc-logo-tile .oc-logo-wordmark { margin: 0; color: var(--oc-ink); font: 700 20px/1 var(--oc-display); letter-spacing: .2em; }
.oc-logo-tile-white-source img { filter: brightness(0); opacity: .9; }
.oc-logo-tile-brand-color img { filter: none; opacity: .94; }
.oc-logo-tile-emblem img { max-height: 62px; filter: none; opacity: 1; }
.oc-logo-tile-emblem span { color: rgba(19,18,17,.82); font-weight: 700; }
.oc-logo-tile-wide img { max-height: 34px; opacity: .96; }
.oc-logo-tile-square img { max-height: 54px; }
.oc-section { padding: 96px 6vw; border-bottom: 1px solid var(--oc-line); }
.oc-section-head { margin-bottom: 54px; display: grid; grid-template-columns: minmax(280px,.8fr) minmax(320px,1.2fr); gap: 8vw; align-items: end; }
.oc-section-head h2,.oc-method h2,.oc-contact h2 { margin: 0; font: 600 clamp(36px,4.4vw,72px)/1 var(--oc-display); letter-spacing: -.055em; }
.oc-section-head>p { margin: 0; color: var(--oc-muted); font-size: 17px; line-height: 1.75; }
.oc-evidence-grid { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--oc-line); border-left: 1px solid var(--oc-line); }
.oc-evidence-card { min-height: 430px; padding: 28px; display: flex; flex-direction: column; border-right: 1px solid var(--oc-line); border-bottom: 1px solid var(--oc-line); background: rgba(251,248,242,.42); }
.oc-card-meta { display: flex; justify-content: space-between; gap: 16px; padding-top: 10px; border-top: 2px solid var(--oc-orange); font: 500 10px/1.4 var(--oc-mono); letter-spacing: .1em; text-transform: uppercase; }
.oc-evidence-card:nth-child(2) .oc-card-meta { border-color: var(--oc-violet); }.oc-evidence-card:nth-child(3) .oc-card-meta { border-color: var(--oc-blue); }
.oc-card-meta span:last-child { color: var(--oc-muted); text-align: right; }
.oc-work-logo { height: 54px; margin-top: 34px; display: flex; align-items: center; }
.oc-work-logo img { width: auto; max-width: min(100%,280px); height: auto; max-height: 44px; object-fit: contain; }
.oc-work-logo-on-dark { width: min(100%,300px); height: 58px; padding: 10px 14px; background: var(--oc-ink); }
.oc-work-logo-on-dark img { max-width: 100%; max-height: 38px; }
.oc-work-logo-invert img { filter: invert(1) grayscale(1) contrast(1.25); }
.oc-work-wordmark span { font: 700 25px/1 var(--oc-display); letter-spacing: .2em; }
.oc-evidence-card h3 { margin: 34px 0 22px; font: 600 28px/1.08 var(--oc-display); letter-spacing: -.035em; }
.oc-evidence-card-pattern h3 { margin-top: 54px; }
.oc-evidence-card>p { margin: 0 0 34px; color: var(--oc-muted); font-size: 14px; line-height: 1.7; }
.oc-evidence-card dl { margin: auto 0 0; }.oc-evidence-card dl div { padding: 12px 0; display: grid; grid-template-columns: .8fr 1.2fr; gap: 12px; border-top: 1px solid var(--oc-line); }
.oc-evidence-card dt { color: var(--oc-muted); font: 500 10px/1.4 var(--oc-mono); text-transform: uppercase; }.oc-evidence-card dd { margin: 0; font-size: 12px; font-weight: 600; }
.oc-capabilities { background: rgba(255,255,255,.3); }
.oc-capability-list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--oc-line); border-left: 1px solid var(--oc-line); list-style: none; }
.oc-capability-list li { min-height: 240px; padding: 26px; display: grid; grid-template-columns: 34px 1fr; align-content: start; gap: 18px 12px; border-right: 1px solid var(--oc-line); border-bottom: 1px solid var(--oc-line); }
.oc-capability-list span { color: var(--oc-orange); font: 500 11px/1.4 var(--oc-mono); }.oc-capability-list strong { font: 600 21px/1.15 var(--oc-display); }
.oc-capability-list p { grid-column: 2; margin: 0; color: var(--oc-muted); font-size: 14px; line-height: 1.65; }
.oc-method { padding: 96px 6vw; display: grid; grid-template-columns: minmax(280px,.8fr) minmax(360px,1.2fr); gap: 8vw; background: var(--oc-ink); color: var(--oc-paper); }
.oc-method-intro>p:last-child { max-width: 620px; margin: 28px 0 0; color: rgba(251,248,242,.66); font-size: 16px; line-height: 1.75; }
.oc-method-ledger { border-top: 1px solid rgba(251,248,242,.22); }.oc-method-ledger div { padding: 21px 0; display: grid; grid-template-columns: 100px 1fr; gap: 24px; border-bottom: 1px solid rgba(251,248,242,.22); }
.oc-method-ledger span { color: var(--oc-blue); font: 500 10px/1.4 var(--oc-mono); letter-spacing: .1em; text-transform: uppercase; }.oc-method-ledger strong { font: 500 18px/1.4 var(--oc-display); }
.oc-owned-middle { margin: 0 0 38px; overflow: hidden; border: 1px solid var(--oc-line); background: rgba(251,248,242,.72); box-shadow: 0 28px 80px rgba(47,39,31,.08); }
.oc-owned-middle figcaption { padding: 17px 22px; display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid var(--oc-line); }
.oc-owned-middle figcaption span,.oc-owned-middle section>span,.oc-owned-middle aside>span { font: 500 9px/1.4 var(--oc-mono); letter-spacing: .13em; text-transform: uppercase; }
.oc-owned-middle figcaption span { color: var(--oc-muted); }.oc-owned-middle figcaption strong { font: 600 16px/1.3 var(--oc-display); }
.oc-architecture-authority { padding: 22px 24px; display: grid; grid-template-columns: minmax(210px,.48fr) 1fr; gap: 30px; align-items: center; background: var(--oc-ink); color: var(--oc-paper); }
.oc-architecture-authority span { color: var(--oc-orange); }.oc-architecture-authority strong { font-size: 14px; font-weight: 600; letter-spacing: .02em; }
.oc-middle-core { position: relative; margin: 28px; display: grid; grid-template-columns: minmax(230px,.62fr) minmax(0,1.38fr); border: 1px solid rgba(21,21,21,.34); background: var(--oc-paper); }
.oc-middle-core::before { position: absolute; inset: 10px; border: 1px solid rgba(226,139,87,.34); pointer-events: none; content: ''; }
.oc-middle-intro { position: relative; z-index: 1; padding: 34px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--oc-line); background: rgba(226,139,87,.07); }
.oc-middle-intro span { color: var(--oc-orange); font: 500 9px/1.4 var(--oc-mono); letter-spacing: .13em; text-transform: uppercase; }
.oc-middle-intro h3 { margin: 20px 0 0; font: 600 clamp(28px,3vw,46px)/1.03 var(--oc-display); letter-spacing: -.05em; }
.oc-middle-core ul { position: relative; z-index: 1; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2,1fr); list-style: none; }
.oc-middle-core li { min-height: 122px; padding: 24px; display: flex; flex-direction: column; justify-content: center; border-right: 1px solid var(--oc-line); border-bottom: 1px solid var(--oc-line); }
.oc-middle-core li:nth-child(even) { border-right: 0; }.oc-middle-core li:nth-last-child(-n+2) { border-bottom: 0; }
.oc-middle-core li strong { font: 600 14px/1.35 var(--oc-display); }.oc-middle-core li span { margin-top: 7px; color: var(--oc-muted); font-size: 11px; line-height: 1.5; }
.oc-capability-band,.oc-provider-band,.oc-control-band { margin-inline: 28px; border: 1px solid var(--oc-line); }
.oc-capability-band { display: grid; grid-template-columns: minmax(210px,.48fr) 1fr; align-items: stretch; }
.oc-capability-band>span,.oc-provider-band>span,.oc-control-band>span { padding: 18px; display: flex; align-items: center; color: var(--oc-muted); }
.oc-capability-band ul { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,1fr); list-style: none; }
.oc-capability-band li { padding: 18px 12px; display: grid; place-items: center; border-left: 1px solid var(--oc-line); font-size: 11px; font-weight: 700; text-align: center; }
.oc-provider-band { margin-top: 10px; display: grid; grid-template-columns: minmax(210px,.48fr) 1fr; overflow: hidden; background: rgba(55,198,208,.055); }
.oc-provider-track { padding: 12px; display: flex; flex-wrap: wrap; gap: 8px; border-left: 1px solid var(--oc-line); }
.oc-provider-track b { padding: 9px 12px; border: 1px solid var(--oc-line); background: var(--oc-paper); font-size: 10px; font-weight: 600; transition: border-color .25s ease,transform .25s ease; }
.oc-provider-track b:hover { transform: translateY(-2px); border-color: var(--oc-blue); }
.oc-control-band { margin-top: 10px; margin-bottom: 28px; display: grid; grid-template-columns: minmax(210px,.48fr) 1fr; background: rgba(143,114,199,.055); }
.oc-control-band p { margin: 0; padding: 18px; border-left: 1px solid var(--oc-line); font-size: 11px; font-weight: 700; letter-spacing: .04em; }
.oc-figure-note { margin: 0; padding: 20px 28px; border-top: 1px solid var(--oc-line); color: var(--oc-muted); font-size: 11px; line-height: 1.65; }
.oc-relationship-grid { display: grid; grid-template-columns: repeat(2,1fr); border: 1px solid var(--oc-line); }.oc-relationship-grid article { min-height: 300px; padding: 32px; }.oc-relationship-grid article+article { border-left: 1px solid var(--oc-line); }
.oc-relationship-grid h3 { margin: 0 0 22px; font: 600 38px/1 var(--oc-display); letter-spacing: -.04em; }.oc-relationship-grid article>p:last-of-type { max-width: 620px; margin: 0; color: var(--oc-muted); font-size: 15px; line-height: 1.75; }
.oc-relationship-grid a { display: inline-block; margin-top: 28px; font-size: 13px; font-weight: 700; text-underline-offset: 5px; }
.oc-contact { padding: clamp(80px,9vw,150px) 6vw; text-align: center; }.oc-contact h2 { max-width: 900px; margin-inline: auto; font-size: clamp(48px,6vw,92px); }
.oc-contact>p:not(.oc-eyebrow) { max-width: 650px; margin: 28px auto 34px; color: var(--oc-muted); font-size: 17px; line-height: 1.7; }
.oc-footer { padding: 42px 6vw; display: grid; grid-template-columns: 1.4fr 1fr auto; gap: 36px; align-items: end; border-top: 1px solid var(--oc-line); background: rgba(255,255,255,.36); }
.oc-footer div p,.oc-footer>p { margin: 12px 0 0; color: var(--oc-muted); font: 500 10px/1.6 var(--oc-mono); }.oc-footer nav { display: flex; flex-wrap: wrap; gap: 12px 22px; }.oc-footer nav a { font-size: 12px; font-weight: 600; text-underline-offset: 4px; }
.oc-site :focus-visible { outline: 3px solid var(--oc-violet); outline-offset: 4px; }
.oc-contact-nav a { font-size: 12px; font-weight: 700; text-underline-offset: 5px; }
.oc-intake-shell { min-height: calc(100vh - 82px); padding: clamp(72px,7vw,118px) 6vw; display: grid; grid-template-columns: minmax(280px,.78fr) minmax(420px,1.22fr); gap: 9vw; align-items: start; }
.oc-intake-intro h1 { max-width: 720px; margin: 0; font: 600 clamp(54px,6vw,94px)/.96 var(--oc-display); letter-spacing: -.06em; }
.oc-intake-intro>p:not(.oc-eyebrow) { max-width: 620px; margin: 30px 0 0; color: var(--oc-muted); font-size: 17px; line-height: 1.75; }
.oc-intake-boundary { margin-top: 42px; padding: 20px 0; display: grid; grid-template-columns: 130px 1fr; gap: 22px; border-block: 1px solid var(--oc-line); }
.oc-intake-boundary span { color: var(--oc-orange); font: 500 10px/1.5 var(--oc-mono); letter-spacing: .1em; text-transform: uppercase; }.oc-intake-boundary strong { font-size: 13px; line-height: 1.6; }
.oc-intake-panel { padding: 34px; border: 1px solid var(--oc-line); background: rgba(251,248,242,.68); }
.oc-intake-form { display: grid; gap: 26px; }.oc-form-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 22px; }
.oc-intake-form label { display: grid; gap: 9px; }.oc-intake-form label>span { font: 500 10px/1.4 var(--oc-mono); letter-spacing: .1em; text-transform: uppercase; }
.oc-intake-form input,.oc-intake-form textarea { width: 100%; border: 1px solid var(--oc-line); border-radius: 2px; background: rgba(255,255,255,.58); color: var(--oc-ink); font: 400 15px/1.5 var(--oc-sans); outline: 0; }
.oc-intake-form input { min-height: 50px; padding: 0 14px; }.oc-intake-form textarea { min-height: 180px; padding: 14px; resize: vertical; }
.oc-intake-form input:focus,.oc-intake-form textarea:focus { border-color: var(--oc-violet); box-shadow: 0 0 0 2px rgba(143,114,199,.18); }
.oc-form-note { margin: -8px 0 0; color: var(--oc-muted); font-size: 11px; line-height: 1.6; }.oc-form-note a { text-underline-offset: 3px; }
.oc-intake-form .oc-button { width: fit-content; min-width: 190px; }
.oc-intake-form button:disabled { cursor: wait; opacity: .64; }.oc-intake-form[hidden] { display: none; }
.oc-form-message { padding: 72px 16px; text-align: center; }.oc-form-message h2 { margin: 0; font: 600 48px/1 var(--oc-display); letter-spacing: -.04em; }.oc-form-message>p:last-child { max-width: 470px; margin: 22px auto 0; color: var(--oc-muted); line-height: 1.7; }
.oc-form-error { margin-top: 18px; padding: 14px; border-left: 3px solid #a23c35; background: rgba(162,60,53,.08); font-size: 13px; line-height: 1.6; }.oc-form-error[hidden],.oc-form-message[hidden] { display: none; }
@media (max-width:1100px) { .oc-nav a:not(.oc-nav-cta){display:none}.oc-hero{grid-template-columns:1fr}.oc-delivery-rail{max-width:760px}.oc-credential-grid{grid-template-columns:repeat(2,1fr)}.oc-platform-experience{grid-template-columns:1fr}.oc-platform-experience ul{border-top:1px solid var(--oc-line)}.oc-industry-strip{grid-template-columns:1fr}.oc-industry-strip>p{border-right:0;border-bottom:1px solid var(--oc-line)}.oc-industry-strip ul{grid-template-columns:repeat(3,1fr)}.oc-practice-gateway{grid-template-columns:minmax(180px,.55fr) minmax(340px,1.45fr)}.oc-practice-gateway>a{grid-column:2;width:max-content}.oc-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.oc-evidence-grid{grid-template-columns:1fr}.oc-evidence-card{min-height:330px}.oc-capability-list{grid-template-columns:repeat(2,1fr)}.oc-middle-core{grid-template-columns:1fr}.oc-middle-intro{border-right:0;border-bottom:1px solid var(--oc-line)}.oc-capability-band,.oc-provider-band,.oc-control-band{grid-template-columns:1fr}.oc-capability-band ul,.oc-provider-track,.oc-control-band p{border-left:0;border-top:1px solid var(--oc-line)}.oc-intake-shell{grid-template-columns:1fr;gap:52px}.oc-intake-intro{max-width:780px} }
@media (max-width:720px) { .oc-site{background-size:48px 48px}.oc-spectrum{height:3px}.oc-header{min-height:66px;padding-inline:20px}.oc-nav{display:none}.oc-mobile-cta{display:inline-flex}.oc-hero{min-height:auto;padding:54px 20px 64px;gap:46px}.oc-hero h1{font-size:clamp(46px,14vw,62px);line-height:.98;letter-spacing:-.055em}.oc-lede{margin-top:24px;font-size:17px;line-height:1.6}.oc-actions{display:grid}.oc-button{width:100%}.oc-micro{font-size:9px}.oc-delivery-rail{margin-top:6px;padding-left:20px}.oc-rail-lead{font-size:18px}.oc-ecosystem{padding:54px 20px 0}.oc-ecosystem-head{grid-template-columns:1fr;gap:22px}.oc-ecosystem-head h2{font-size:38px}.oc-credential-grid{grid-template-columns:1fr}.oc-credential-grid article{min-height:104px}.oc-platform-experience ul{grid-template-columns:repeat(2,1fr)}.oc-platform-experience li:last-child{grid-column:1/-1}.oc-industry-strip ul{grid-template-columns:1fr}.oc-industry-strip li{min-height:58px;padding:15px 20px}.oc-logo-proof{padding:60px 20px 64px}.oc-practice-gateway{margin:-12px 0 54px;padding:26px 0;grid-template-columns:1fr;gap:24px}.oc-practice-copy h2{font-size:30px}.oc-practice-gateway>a{grid-column:auto;width:100%}.oc-logo-proof-head{grid-template-columns:1fr;gap:24px;margin-bottom:30px}.oc-logo-proof-head h2{font-size:38px}.oc-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.oc-logo-tile{min-height:92px;padding:20px 16px}.oc-logo-tile img{max-height:34px}.oc-logo-tile-square img{max-height:46px}.oc-section{padding:68px 20px}.oc-section-head{grid-template-columns:1fr;gap:26px;margin-bottom:38px}.oc-section-head h2,.oc-method h2{font-size:42px}.oc-evidence-card{min-height:390px;padding:22px}.oc-work-logo{margin-top:30px}.oc-evidence-card h3{margin-top:30px}.oc-evidence-card-pattern h3{margin-top:42px}.oc-capability-list{grid-template-columns:1fr}.oc-capability-list li{min-height:190px;padding:22px}.oc-method{padding:68px 20px;grid-template-columns:1fr;gap:42px}.oc-method-ledger div{grid-template-columns:78px 1fr;gap:16px}.oc-method-ledger strong{font-size:16px}.oc-owned-middle figcaption{align-items:flex-start;flex-direction:column-reverse}.oc-architecture-authority{grid-template-columns:1fr;gap:8px}.oc-middle-core{margin:16px}.oc-middle-intro{padding:26px 22px}.oc-middle-core ul{grid-template-columns:1fr}.oc-middle-core li,.oc-middle-core li:nth-child(even),.oc-middle-core li:nth-last-child(-n+2){min-height:104px;border-right:0;border-bottom:1px solid var(--oc-line)}.oc-middle-core li:last-child{border-bottom:0}.oc-capability-band,.oc-provider-band,.oc-control-band{margin-inline:16px}.oc-capability-band ul{grid-template-columns:repeat(2,1fr)}.oc-capability-band li:last-child{grid-column:1/-1}.oc-provider-track{display:grid;grid-template-columns:repeat(2,1fr)}.oc-provider-track b{display:grid;place-items:center;text-align:center}.oc-control-band{margin-bottom:16px}.oc-control-band p{line-height:1.75}.oc-figure-note{padding:18px 16px}.oc-relationship-grid{grid-template-columns:1fr}.oc-relationship-grid article{min-height:260px;padding:26px 22px}.oc-relationship-grid article+article{border-left:0;border-top:1px solid var(--oc-line)}.oc-contact{padding:78px 20px}.oc-contact h2{font-size:48px}.oc-footer{padding:36px 20px;grid-template-columns:1fr;gap:22px}.oc-intake-shell{min-height:auto;padding:54px 20px 68px;gap:42px}.oc-intake-intro h1{font-size:48px}.oc-intake-boundary{grid-template-columns:1fr;gap:8px}.oc-intake-panel{padding:24px 20px}.oc-form-grid{grid-template-columns:1fr}.oc-intake-form .oc-button{width:100%} }
@media (prefers-reduced-motion:reduce) { .oc-site *,.oc-site *::before,.oc-site *::after{scroll-behavior:auto!important;transition:none!important} }

/* Joan signature entry. The homepage remains rendered beneath this layer. */
.joan-entry { display: none; }
.joan-entry-pending,.joan-entry-active { overflow: hidden; }
.joan-entry-pending .joan-entry,.joan-entry-active .joan-entry { position: fixed; inset: 0; z-index: 2000; display: block; overflow: hidden; background: #eee8dc; color: #26231f; font-family: var(--oc-sans); }
.joan-entry-grain { position: absolute; inset: 0; z-index: 6; pointer-events: none; opacity: .035; mix-blend-mode: multiply; 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='.76' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E"); }
.joan-entry-light { position: absolute; z-index: 0; width: 64%; aspect-ratio: 1; right: -18%; top: -44%; border-radius: 50%; background: rgba(255,250,239,.82); filter: blur(58px); }
.joan-entry.is-running .joan-entry-light { animation: joan-entry-light 7.2s ease-out both; }
.joan-entry-header { position: absolute; z-index: 3; inset: 0 0 auto; min-height: 74px; padding: 0 30px; display: flex; align-items: center; border-bottom: 1px solid rgba(38,35,31,.15); font: 600 14px/1 var(--oc-display); letter-spacing: .04em; }
.joan-entry-header span span { color: #c96f4a; }
.joan-entry-skip { position: absolute; top: 16px; right: 22px; z-index: 4; min-height: 42px; padding: 0 14px; border: 0; border-bottom: 1px solid rgba(38,35,31,.4); background: transparent; color: rgba(38,35,31,.6); cursor: pointer; font: 500 9px/1 var(--oc-mono); letter-spacing: .1em; text-transform: uppercase; }
.joan-entry-skip:focus-visible { outline: 2px solid var(--oc-violet); outline-offset: 3px; }
.joan-entry-scene { position: absolute; z-index: 1; inset: 74px 0 0; }
.joan-entry-rule { position: absolute; top: 50%; left: 9%; width: 82%; height: 1px; background: rgba(38,35,31,.16); transform-origin: left; }
.joan-entry.is-running .joan-entry-rule { animation: joan-entry-rule 2.1s .4s cubic-bezier(.65,0,.35,1) both,joan-entry-rule-lift 1.35s 4.7s cubic-bezier(.16,1,.3,1) forwards; }
.joan-entry-dot { position: absolute; z-index: 2; top: calc(50% - 5px); left: calc(9% - 5px); width: 11px; height: 11px; border-radius: 50%; background: #c96f4a; box-shadow: 0 0 0 10px rgba(201,111,74,.08); }
.joan-entry.is-running .joan-entry-dot { animation: joan-entry-dot 2.1s .4s cubic-bezier(.65,0,.35,1) both,joan-entry-dot-away .5s 4.55s forwards; }
.joan-entry-invitation { position: absolute; left: 9%; right: 9%; top: 26%; text-align: center; opacity: 0; transform: translateY(12px); }
.joan-entry.is-running .joan-entry-invitation { animation: joan-entry-invitation 1.1s 1.1s cubic-bezier(.16,1,.3,1) forwards,joan-entry-invitation-away .7s 4.05s forwards; }
.joan-entry-invitation p { margin: 0; color: #c96f4a; font: 500 10px/1.4 var(--oc-mono); letter-spacing: .18em; text-transform: uppercase; }
.joan-entry-invitation strong { display: block; margin-top: 18px; font: 550 clamp(42px,6.4vw,94px)/.98 var(--oc-display); letter-spacing: -.06em; }
.joan-entry-invitation>span { display: block; max-width: 610px; margin: 22px auto 0; color: rgba(38,35,31,.62); font-size: clamp(14px,1.35vw,19px); line-height: 1.55; }
.joan-entry-framework { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; opacity: 0; transform: translateY(14px); text-align: center; }
.joan-entry.is-running .joan-entry-framework { animation: joan-entry-framework 1.45s 4.7s cubic-bezier(.16,1,.3,1) forwards; }
.joan-entry-name { font: 500 clamp(84px,14vw,190px)/.8 var(--oc-display); letter-spacing: -.09em; }
.joan-entry-name span { color: #c96f4a; }
.joan-entry-meaning { margin-top: 34px; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px 22px; color: rgba(38,35,31,.58); font: 500 10px/1.4 var(--oc-mono); letter-spacing: .12em; text-transform: uppercase; }
.joan-entry-meaning b { color: #c96f4a; font-weight: 500; }
.joan-entry-framework>p { margin: 18px 0 0; font-size: clamp(14px,1.5vw,20px); }
.joan-entry-practice { margin-top: 24px; padding-top: 16px; display: grid; gap: 5px; border-top: 1px solid rgba(38,35,31,.18); color: inherit; text-decoration: none; }
.joan-entry-practice>span { color: #c96f4a; font: 500 9px/1.4 var(--oc-mono); letter-spacing: .14em; text-transform: uppercase; }
.joan-entry-practice>b { font: 600 12px/1.5 var(--oc-sans); }
.joan-entry-practice>small { color: rgba(38,35,31,.55); font-size: 10px; }
.joan-entry-practice:hover b,.joan-entry-practice:focus-visible b { color: #4f9294; }
.joan-entry.is-leaving { pointer-events: none; animation: joan-entry-reveal .9s cubic-bezier(.4,0,.2,1) forwards; }
.joan-entry-replay { padding: 0; border: 0; border-bottom: 1px solid currentColor; background: transparent; color: inherit; cursor: pointer; font-size: 12px; font-weight: 600; text-underline-offset: 4px; }
.joan-entry-replay:hover,.joan-entry-replay:focus-visible { border-color: var(--oc-orange); }
.joan-entry-status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
@keyframes joan-entry-light { from { transform: translate3d(5%,-3%,0) scale(.92); opacity: .25; } to { transform: none; opacity: 1; } }
@keyframes joan-entry-rule { from { transform: scaleX(0); } to { transform: scaleX(1); } }
@keyframes joan-entry-rule-lift { to { transform: translateY(-34vh) scaleX(1); opacity: 0; } }
@keyframes joan-entry-dot { from { transform: translateX(0); } to { transform: translateX(82vw); } }
@keyframes joan-entry-dot-away { to { opacity: 0; } }
@keyframes joan-entry-invitation { to { opacity: 1; transform: none; } }
@keyframes joan-entry-invitation-away { to { opacity: 0; transform: translateY(-8px); } }
@keyframes joan-entry-framework { to { opacity: 1; transform: none; } }
@keyframes joan-entry-reveal { to { opacity: 0; transform: scale(.995); } }

@media (max-width:720px) {
  .joan-entry-skip { top: 14px; right: 14px; }
  .joan-entry-header { min-height: 64px; padding: 0 20px; }
  .joan-entry-scene { top: 64px; }
  .joan-entry-invitation { top: 20%; left: 7%; right: 7%; }
  .joan-entry-invitation strong { font-size: clamp(42px,13vw,60px); }
  .joan-entry-invitation>span { font-size: 14px; }
  .joan-entry-name { font-size: clamp(86px,26vw,118px); }
  .joan-entry-meaning { max-width: 280px; margin-top: 28px; gap: 8px 14px; }
  .joan-entry-framework>p { max-width: 280px; }
  .joan-entry-practice { margin-top: 20px; }
}

@media (prefers-reduced-motion:reduce) {
  .joan-entry-pending .joan-entry,.joan-entry-active .joan-entry { display: none!important; }
  .joan-entry-pending,.joan-entry-active { overflow: auto; }
}
