/* Product-specific guide: native diagrams and steps remain readable without JavaScript. */
.feature-guide-link { display: inline-block; margin-top: 1.25rem; color: #fff; font-weight: 600; text-underline-offset: 4px; }
.life-guide-section { background: #f8fafc; }
.guide-start { max-width: 880px; margin: 0 auto 2rem; padding: 1.5rem; background: #fff; border: 1px solid #e2e8f0; border-radius: 18px; }
.guide-start strong { color: #5b21b6; }
.guide-start p { margin: .5rem 0; color: #475569; }
.guide-start a { color: #6d28d9; text-underline-offset: 3px; }
.guide-jumps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; margin-bottom: 2rem; }
.guide-jumps a { padding: 1rem .65rem; text-align: center; border-radius: 12px; background: #ede9fe; color: #5b21b6; text-decoration: none; font-weight: 600; }
.guide-jumps a:hover { background: #ddd6fe; }
.life-guide { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 2rem; align-items: center; padding: 2.5rem 0; border-top: 1px solid #e2e8f0; scroll-margin-top: 90px; }
.guide-copy, .life-guide figure { min-width: 0; }
.guide-kicker { color: #7c3aed; font-size: .85rem; font-weight: 700; letter-spacing: .08em; }
.guide-copy h3 { font-size: 1.65rem; color: #1e293b; line-height: 1.4; margin: .6rem 0; }
.guide-path { color: #64748b; font-size: .9rem; margin-bottom: 1.25rem; }
.guide-steps { padding-left: 1.5rem; color: #475569; }
.guide-steps li { padding-left: .3rem; margin-bottom: 1rem; }
.guide-steps li::marker { color: #7c3aed; font-weight: 700; }
.guide-steps strong { color: #1e293b; }
.guide-tip { padding: 1rem; background: #fff; border-left: 3px solid #c4b5fd; color: #475569; font-size: .92rem; border-radius: 0 10px 10px 0; }
.life-guide figure img { display: block; width: 100%; height: auto; border: 1px solid #e2e8f0; border-radius: 20px; background: #fff; }
.life-guide figcaption { text-align: center; color: #64748b; font-size: .85rem; margin-top: .7rem; }
.life-faq { max-width: 960px; }
.life-faq details { border-bottom: 1px solid #e2e8f0; padding: 1rem 0; }
.life-faq summary { cursor: pointer; color: #334155; font-weight: 600; padding: .3rem; }
.life-faq details[open] summary { color: #6d28d9; }
.life-faq details p { margin: .75rem .3rem .3rem; color: #475569; line-height: 1.85; }
.guide-jumps a:focus-visible, .feature-guide-link:focus-visible, .life-faq summary:focus-visible, .guide-start a:focus-visible { outline: 3px solid #7c3aed; outline-offset: 4px; }
@media (max-width: 860px) {
    .life-guide { grid-template-columns: 1fr; gap: 1.5rem; }
    .life-guide figure { width: 100%; max-width: 600px; margin-inline: auto; }
    .guide-jumps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 400px) {
    .guide-copy h3 { font-size: 1.4rem; }
    .guide-jumps a { font-size: .88rem; padding: .85rem .4rem; }
    .guide-start { padding: 1rem; }
}
