.biocalce-jump { margin-top: 20px; font-size: .95rem; }
.biocalce-jump a { text-decoration: underline; text-underline-offset: 4px; }
.biocalce-case { margin: 38px 0 48px; padding: clamp(20px, 4vw, 32px); background: #f8f5ee; border: 1px solid #ddd8cf; border-radius: 20px; scroll-margin-top: 100px; }
.article .biocalce-case h2 { margin-top: 12px; line-height: 1.12; }
.article .biocalce-case h3 { margin-top: 28px; line-height: 1.25; }
.biocalce-video { width: min(100%, 340px); margin: 28px auto; }
.biocalce-video video { display: block; width: 100%; height: auto; aspect-ratio: 9 / 16; object-fit: contain; background: #ddd8cf; border-radius: 12px; }
.biocalce-video figcaption { margin-top: 12px; color: #626a61; font-size: .82rem; line-height: 1.6; }
.biocalce-stages { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; border-block: 1px solid #ddd8cf; padding: 22px 0 10px; }
.biocalce-stages span { color: #677564; font-family: Georgia, serif; font-size: 1.5rem; }
.article .biocalce-stages h3 { margin-top: 10px; }
.biocalce-note { padding: 1px 20px 6px; margin: 28px 0 20px; border-left: 3px solid #7f907b; background: #e9eee7; }
.biocalce-sources { font-size: .8rem; line-height: 1.6; }
.biocalce-contact { border-top: 1px solid #ddd8cf; margin-top: 24px; }
.biocalce-contact .btn { max-width: 100%; white-space: normal; text-align: center; }
@media (max-width: 560px) { .biocalce-stages { grid-template-columns: 1fr; gap: 4px; } .biocalce-case { padding: 18px; } }
