.dora-page .dora-visual { padding: 1.6rem; }
.dora-page .dora-visual-heading { color: #bca6d1; font-size: 1.45rem; letter-spacing: -.03em; line-height: 1.4; margin: 2.2rem 0 1.8rem; }
.dora-page .dora-visual-heading strong { color: #f2e7fc; font-weight: 600; }
.dora-page .dora-intake { align-items: center; background: linear-gradient(110deg, rgba(153, 88, 218, .12), rgba(106, 158, 201, .05)); border: 1px solid var(--bb-line); border-radius: .8rem; display: flex; gap: 1rem; margin-bottom: 1.3rem; padding: 1.2rem; }
.dora-page .dora-intake > i { color: #d2a0f8; flex-shrink: 0; font-size: 2rem; }
.dora-page .dora-intake span { color: #d4b4ed; display: block; font: .58rem/1.7 ui-monospace, monospace; letter-spacing: .07em; }
.dora-page .dora-intake p { color: #baa8c9; font-size: .75rem; line-height: 1.8; margin: .4rem 0 0; }
.dora-page .dora-path { display: grid; gap: .8rem; list-style: none; margin: 0; padding: 0; }
.dora-page .dora-path li { align-items: flex-start; display: flex; gap: .85rem; padding: .8rem .3rem; }
.dora-page .dora-path li > span { align-items: center; background: rgba(129, 183, 215, .08); border: 1px solid rgba(158, 195, 227, .2); border-radius: 50%; color: #a8d9ec; display: flex; flex: 0 0 1.7rem; font: .6rem ui-monospace, monospace; height: 1.7rem; justify-content: center; }
.dora-page .dora-path strong { color: #ebdef8; display: block; font-size: .88rem; font-weight: 600; }
.dora-page .dora-path p { color: #b8a8c8; font-size: .74rem; line-height: 1.8; margin: .3rem 0 0; }
.dora-page .dora-visual-footer { border-top: 1px solid var(--bb-line); color: #aa93bf; font: .49rem/1.8 ui-monospace, monospace; letter-spacing: .04em; margin: 1.6rem 0 0; padding-top: 1rem; }
.dora-page .dora-note { color: #baaccb; font-size: .9rem; line-height: 1.9; margin: 1.8rem 0 0; }
.dora-page .dora-note a, .dora-page .dora-source-note a { color: #dab8f5; text-decoration: underline; }
.dora-page .dora-source-note, .dora-page .bb-prose .dora-source-note { color: #b19ec2; font-size: .78rem; line-height: 1.9; margin: 1.5rem 0 0; }
.dora-page .dora-scope { align-items: center; background: linear-gradient(120deg, #21132f, #10101e); border: 1px solid var(--bb-line); border-radius: 1rem; display: grid; gap: 2rem; grid-template-columns: 1fr 2.4fr; margin-top: 3rem; padding: 2rem; }
.dora-page .dora-label { color: #ca9ae9; display: block; font: 600 .64rem/1.7 ui-monospace, monospace; letter-spacing: .08em; }
.dora-page .dora-scope strong { color: #e8d3fa; display: block; font-size: 1.6rem; letter-spacing: -.035em; line-height: 1.3; margin-top: .7rem; }
.dora-page .dora-scope p { border-left: 1px solid var(--bb-line); color: #bfaed0; font-size: .91rem; line-height: 1.9; margin: 0; padding-left: 2rem; }
.dora-page .dora-services { background: radial-gradient(ellipse at 90% 15%, rgba(109, 44, 170, .2), transparent 65%), #100a1b; }
.dora-page .dora-service-grid, .dora-page .dora-mapping-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dora-page .dora-service-card { background: linear-gradient(140deg, #251535, #120d20); border: 1px solid rgba(193, 132, 236, .25); border-radius: 1rem; display: flex; flex-direction: column; padding: 2rem; }
.dora-page .dora-card-top { align-items: center; display: flex; justify-content: space-between; margin-bottom: 1.7rem; }
.dora-page .dora-card-top > i { color: #d4a1fb; font-size: 2.3rem; }
.dora-page .dora-service-card h3 { font-size: 1.5rem; letter-spacing: -.03em; line-height: 1.4; margin: 0 0 1rem; }
.dora-page .dora-service-card p { color: #c0b0ce; font-size: .94rem; line-height: 1.9; margin: 0 0 1.5rem; }
.dora-page .dora-service-card .bb-text-link { align-self: flex-start; margin-top: auto; }
.dora-page .dora-mapping-card { background: #151020; border: 1px solid var(--bb-line); border-radius: .9rem; padding: 2rem; }
.dora-page .dora-mapping-card h3 { font-size: 1.23rem; line-height: 1.4; margin: 1.2rem 0 .9rem; }
.dora-page .dora-mapping-card > p { color: #b6a5c5; font-size: .88rem; line-height: 1.9; margin: 0; }
.dora-page .dora-mapping-card > div { border-top: 1px solid var(--bb-line); margin-top: 1.2rem; padding-top: 1.2rem; }
.dora-page .dora-mapping-card h4 { color: #b4d7e8; font-size: .85rem; margin: 0 0 .7rem; }
.dora-page .dora-mapping-card > div p { color: #c7b6d3; font-size: .9rem; line-height: 1.9; margin: 0; }
.dora-page .dora-channel-note { align-items: flex-start; border-top: 1px solid var(--bb-line); display: flex; gap: 1.2rem; margin-top: 2.5rem; padding-top: 2rem; }
.dora-page .dora-channel-note > i { color: #cda2ed; flex-shrink: 0; font-size: 2rem; }
.dora-page .dora-channel-note h3 { font-size: 1.2rem; line-height: 1.4; margin-bottom: .8rem; }
.dora-page .dora-channel-note p { color: #bdaccb; font-size: .92rem; line-height: 1.9; margin: 0; }
.dora-page .dora-evidence { background: radial-gradient(ellipse at 5% 50%, rgba(104, 47, 153, .18), transparent 65%), #0d0817; }
.dora-page .dora-evidence-grid { display: grid; gap: 2rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.dora-page .dora-evidence-grid > div { border-top: 1px solid rgba(187, 129, 231, .28); padding-top: 1.4rem; }
.dora-page .dora-evidence-grid h3 { font-size: 1.15rem; line-height: 1.4; margin: 1rem 0 .8rem; }
.dora-page .dora-evidence-grid p { color: #beadcd; font-size: .9rem; line-height: 1.9; margin: 0; }
.dora-page .dora-handoffs { background: #100b1b; }
.dora-page .dora-handoff-grid { display: grid; gap: 2rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dora-page .dora-handoff-grid > div { border-left: 2px solid #744497; padding: .2rem 0 .2rem 1.5rem; }
.dora-page .dora-handoff-grid h3 { font-size: 1.15rem; line-height: 1.4; margin: 1rem 0 .8rem; }
.dora-page .dora-handoff-grid p { color: #bcabca; font-size: .91rem; line-height: 1.9; margin: 0; }
.dora-page .dora-related { border-top: 1px solid var(--bb-line); display: grid; gap: 2rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 3rem; padding-top: 2.5rem; }
.dora-page .dora-related h3 { font-size: 1.3rem; line-height: 1.4; margin-bottom: .8rem; }
.dora-page .dora-related p { color: #baabc8; font-size: .9rem; line-height: 1.9; margin: 0; }
.dora-page .dora-sources { background: #110b1d; border-top: 1px solid var(--bb-line); }
.dora-page .dora-reviewed { color: #a995ba; font: .68rem/1.8 ui-monospace, monospace; margin-top: 1.6rem; }
.dora-page .dora-source-list { list-style: none; margin: 0; padding: 0; }
.dora-page .dora-source-list li { border-top: 1px solid var(--bb-line); padding: 1.25rem 0; }
.dora-page .dora-source-list li:first-child { border-top: 0; padding-top: 0; }
.dora-page .dora-source-list a { color: #dfbdf7; display: flex; font-size: .96rem; gap: 1rem; justify-content: space-between; line-height: 1.7; }
.dora-page .dora-source-list li > span { color: #b19fc3; display: block; font-size: .81rem; line-height: 1.8; margin-top: .4rem; }
@media (max-width: 1199.98px) {
    .dora-page .dora-visual { padding: 1.35rem; }
    .dora-page .dora-visual-heading { font-size: 1.25rem; }
    .dora-page .dora-intake { gap: .75rem; padding: 1rem; }
    .dora-page .dora-path strong { font-size: .83rem; }
    .dora-page .dora-path p { font-size: .7rem; }
}
@media (max-width: 991.98px) {
    .dora-page .dora-visual-heading { font-size: 1.5rem; }
    .dora-page .dora-path strong { font-size: .95rem; }
    .dora-page .dora-path p { font-size: .81rem; }
    .dora-page .dora-scope { gap: 1.5rem; grid-template-columns: 1fr 2fr; }
    .dora-page .dora-handoff-grid { grid-template-columns: 1fr; }
}
@media (max-width: 575.98px) {
    .dora-page .bb-hero h1 { font-size: clamp(2.2rem, 10.9vw, 2.8rem); }
    .dora-page .bb-actions .btn, .dora-page .bb-cta .btn { font-size: .82rem; max-width: 100%; padding-left: 1.1rem; padding-right: 1.1rem; white-space: normal; }
    .dora-page .dora-service-grid, .dora-page .dora-mapping-grid, .dora-page .dora-evidence-grid, .dora-page .dora-related, .dora-page .dora-scope { grid-template-columns: 1fr; }
    .dora-page .dora-scope, .dora-page .dora-service-card, .dora-page .dora-mapping-card { padding: 1.5rem; }
    .dora-page .dora-scope p { border-left: 0; border-top: 1px solid var(--bb-line); padding: 1.3rem 0 0; }
    .dora-page .dora-visual-heading { font-size: 1.3rem; }
    .dora-page .dora-visual-footer { font-size: .43rem; letter-spacing: .01em; }
    .dora-page .dora-service-card h3 { font-size: 1.35rem; }
    .dora-page .dora-channel-note { gap: .8rem; }
    .dora-page .dora-channel-note > i { font-size: 1.6rem; }
}
