/* Compact, discoverable before/after interaction. */
.real-patient-section{padding:clamp(42px,6vh,68px) 0}
.real-patient-section .real-patient-layout{gap:clamp(28px,3vw,46px)}
.real-patient-section .real-patient-intro h2{font-size:clamp(2.5rem,3.7vw,4.25rem)}
.real-patient-section .comparison-instruction{margin:18px 0 14px;padding:12px 14px}
.comparison-demo-button{position:relative;flex:0 0 58px;width:58px;height:58px;border:0;border-radius:50%;background:var(--deep);color:#fff;display:grid;place-content:center;gap:1px;cursor:pointer;box-shadow:0 8px 22px rgba(23,63,55,.2);animation:demo-button-pulse 2s ease-in-out infinite}
.comparison-demo-button:before{content:'';position:absolute;inset:-6px;border:1px solid rgba(23,63,55,.3);border-radius:50%;animation:demo-button-ring 2s ease-out infinite}
.comparison-demo-button>span{font-size:18px;line-height:1}
.comparison-demo-button>small{font-size:7px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.08em}
.comparison-demo-button:hover,.comparison-demo-button:focus-visible{transform:scale(1.07);outline:3px solid rgba(71,117,103,.22);outline-offset:3px}
.comparison-demo-button.is-demonstrating{animation:none;background:#2e7562}
.real-patient-section .compare.is-demonstrating .compare-handle{animation:none;box-shadow:0 0 0 8px rgba(255,255,255,.22),0 10px 34px rgba(8,35,29,.34)}
.real-patient-section .real-patient-comparisons .compare{height:clamp(350px,58vh,500px);aspect-ratio:auto}
.real-patient-section .compare-handle{margin-left:-26px;width:50px;height:50px;border:2px solid rgba(23,63,55,.12);color:var(--deep);box-shadow:0 8px 28px rgba(8,35,29,.24);animation:compare-hint 1.35s ease-in-out 4}
.real-patient-section .compare-handle:after{content:'DRAG';position:absolute;top:calc(100% + 9px);left:50%;transform:translateX(-50%);padding:4px 7px;border-radius:99px;background:rgba(23,63,55,.88);color:#fff;font:700 8px/1 'DM Sans';letter-spacing:.12em;white-space:nowrap;transition:opacity .2s ease}
.real-patient-section .compare-line{margin-left:0;box-shadow:0 0 0 1px rgba(23,63,55,.12)}
.real-patient-section .compare.has-interacted .compare-handle{animation:none}
.real-patient-section .compare.has-interacted .compare-handle:after{opacity:0}
.real-patient-carousel-actions{align-items:center}
.real-patient-carousel-actions:before{content:'More patient results';margin-right:auto;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}
.real-patient-carousel-button{border-color:#aac1b8;box-shadow:0 6px 18px rgba(23,63,55,.1)}
.real-patient-carousel-button.next{background:var(--deep);color:#fff;animation:next-result-hint 1.8s ease-in-out 3}
@keyframes compare-hint{0%,100%{transform:translate(-50%,-50%)}50%{transform:translate(calc(-50% - 9px),-50%);box-shadow:0 10px 34px rgba(8,35,29,.34)}}
@keyframes next-result-hint{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
@keyframes demo-button-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
@keyframes demo-button-ring{0%{opacity:.65;transform:scale(.82)}75%,100%{opacity:0;transform:scale(1.28)}}
@media(max-width:980px){.real-patient-section .real-patient-comparisons .compare{height:auto;aspect-ratio:4/5}.real-patient-section .real-patient-intro{max-width:none}.real-patient-section .comparison-instruction{max-width:620px}}
@media(max-width:560px){.real-patient-section{padding:48px 0}.real-patient-section .real-patient-intro h2{font-size:2.65rem}.real-patient-carousel-actions:before{content:'Swipe or use arrows'}.real-patient-section .compare-handle{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.real-patient-section .compare-handle,.real-patient-carousel-button.next,.comparison-demo-button,.comparison-demo-button:before{animation:none}}
.result-rich-text{color:var(--muted);font-size:inherit;line-height:inherit}.result-rich-text p{margin:0 0 10px}.result-rich-text p:last-child{margin-bottom:0}.result-rich-text ul,.result-rich-text ol{margin:9px 0;padding-left:22px}.result-rich-text li+li{margin-top:4px}.result-rich-text a{color:#287463;text-decoration:underline;text-underline-offset:2px}.result-rich-text strong,.result-rich-text b{color:var(--ink)}
