/* Current website styling, limited to the approved teaching-method page. */
.method-current .method-current-hero { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:2rem; }
.method-current .page-hero h1 { margin:0 0 1.25rem; }
.method-current .hero-lead { font-size:1.12rem; line-height:1.75; }
.method-current .hero-actions, .method-current .course-cta-buttons { display:flex; flex-wrap:wrap; align-items:center; gap:1rem; margin-top:1.5rem; }
.method-current .method-text-link { font-weight:700; }
.method-current .method-photo { margin:0; }
.method-current .method-photo img { display:block; width:100%; height:auto; border-radius:.85rem; }
.method-current .method-photo figcaption { display:flex; flex-direction:column; gap:.25rem; margin-top:.75rem; color:var(--muted); }
.method-current .method-photo figcaption strong { color:var(--blue-dark); }
.method-current .section-heading { margin-bottom:2rem; }
.method-current .section-heading .section-title { margin-bottom:1rem; }
.method-current .method-basics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; }
.method-current .method-basics h3, .method-current .learning-principles h3 { font-size:1.35rem; font-weight:800; color:var(--blue); }
.method-current .basics-symbol { display:block; color:var(--orange); font-size:2rem; }
.method-current .pace-note { border-left:4px solid var(--blue); padding:1rem 1.25rem; background:#fff; margin:0 0 1.25rem; }
.method-current .pace-note p { margin:.5rem 0 0; }
.method-current .stage-tools { display:flex; justify-content:flex-end; margin-bottom:1.5rem; }
.method-current .stage-tools button { border:1px solid var(--blue); border-radius:.55rem; background:#fff; color:var(--blue); font:inherit; font-weight:700; padding:.6rem 1rem; }
.method-current .stage-group { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.7fr); gap:2rem; padding:2rem 0; border-top:1px solid #cce6f3; }
.method-current .group-range, .method-current .principle-label { color:var(--orange); font-weight:800; font-size:.85rem; letter-spacing:.06em; }
.method-current .stage-group-heading h3 { color:var(--blue); font-weight:800; font-size:1.5rem; margin:.5rem 0 .75rem; }
.method-current .stage-illustration { margin:1rem 0 0; }
.method-current .stage-illustration img { display:block; width:100%; max-width:280px; height:auto; margin-inline:auto; }
.method-current .stage-card { margin-bottom:.75rem; background:#fff; border:1px solid #cce6f3; border-radius:.65rem; overflow:hidden; }
.method-current .stage-card summary { display:flex; gap:1rem; align-items:flex-start; padding:1rem; cursor:pointer; list-style:none; }
.method-current summary::-webkit-details-marker { display:none; }
.method-current .stage-number { color:var(--orange); font-size:1.35rem; font-weight:800; line-height:1.35; }
.method-current .stage-summary { flex:1; min-width:0; }
.method-current .stage-summary strong { display:block; color:var(--blue-dark); font-size:1.08rem; }
.method-current .stage-summary > span { display:block; color:var(--muted); margin-top:.25rem; }
.method-current .stage-expand { color:var(--blue); font-size:1.25rem; }
.method-current .stage-card[open] .stage-expand { transform:rotate(45deg); }
.method-current .stage-body { padding:0 1rem 1rem; }
.method-current .stage-description { margin:0; }
.method-current .original-source-note { padding:1rem; background:#e1f1fa; border-left:3px solid var(--blue); margin-top:1.25rem; }
.method-current .learning-principles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; margin-top:2rem; }
.method-current .learning-principles h3 { margin:.5rem 0; }
.method-current .learning-principles .original-source-note { margin-top:.75rem; }
.method-current .faq-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,2fr); gap:2rem; }
.method-current .faq-list details { border-bottom:1px solid #cce6f3; padding:1rem 0; }
.method-current .faq-list summary { font-size:1.08rem; font-weight:700; color:var(--blue-dark); cursor:pointer; }
.method-current .faq-list details > div { padding-top:1rem; }
.method-current .course-cta { display:grid; grid-template-columns:1fr 1.2fr; gap:2rem; align-items:center; padding-block:0 4rem; }
.method-current .course-cta-photo img { display:block; width:100%; height:auto; border-radius:.85rem; }
.method-current .course-cta .section-title { margin-bottom:1rem; }
.method-current :is(summary,button,a):focus-visible { outline:3px solid var(--orange); outline-offset:4px; }
.method-current [id] { scroll-margin-top:9rem; }
@media (max-width:700px) {
    .method-current .method-current-hero, .method-current .method-basics, .method-current .stage-group, .method-current .learning-principles, .method-current .faq-grid, .method-current .course-cta { grid-template-columns:1fr; }
    .method-current .method-photo { max-width:480px; }
    .method-current .stage-group { gap:1rem; }
    .method-current .stage-group-heading { display:grid; grid-template-columns:1fr 110px; column-gap:1rem; }
    .method-current .stage-group-heading > :not(figure) { grid-column:1; }
    .method-current .stage-illustration { grid-column:2; grid-row:1 / span 3; align-self:center; margin:0; }
    .method-current .stage-card summary { gap:.65rem; padding:.85rem; }
}
@media print { .method-current .stage-tools { display:none; } .method-current .stage-card { break-inside:avoid; } }
