.phoenix-evolution { padding: 64px 24px; border-top: 1px solid #dce5ec; background: #f6f9fb; color: #19344c; scroll-margin-top: 110px; }
.phoenix-evolution-inner { max-width: 1140px; margin: 0 auto; display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.phoenix-evolution h2 { font-size: clamp(1.65rem, 2.7vw, 2.2rem); line-height: 1.18; letter-spacing: -.025em; text-wrap: balance; margin: 0 0 20px; color: #0f2a4a; }
.phoenix-evolution h3 { font-size: 1.2rem; line-height: 1.4; margin: 0 0 14px; color: #0f2a4a; }
.phoenix-evolution p { font-size: 1rem; line-height: 1.7; max-width: 70ch; margin: 0 0 16px; }
.phoenix-evolution-setup { margin-bottom: 32px; }
.phoenix-evolution-links { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 24px; }
.phoenix-evolution a { color: #075681; text-decoration: underline; text-underline-offset: .2em; }
.phoenix-evolution a:hover { color: #0f2a4a; }
.phoenix-evolution a:focus-visible { outline: 2px solid #075681; outline-offset: 5px; }
@media (max-width: 767px) { .phoenix-evolution { padding: 40px 24px; } .phoenix-evolution-inner { grid-template-columns: 1fr; gap: 24px; } }

.phoenix-module-detail { padding: 64px 24px; border-top: 1px solid #dce5ec; background: #fff; color: #19344c; scroll-margin-top: 110px; }
.phoenix-module-inner { max-width: 1140px; margin: 0 auto; }
.phoenix-module-detail h2 { max-width: 30ch; margin: 0 0 20px; color: #0f2a4a; font-size: clamp(1.65rem, 2.7vw, 2.2rem); line-height: 1.2; letter-spacing: -.025em; text-wrap: balance; }
.phoenix-module-detail h3 { margin: 0 0 12px; color: #0f2a4a; font-size: 1.15rem; line-height: 1.4; }
.phoenix-module-detail p { max-width: 72ch; margin: 0 0 16px; font-size: 1rem; line-height: 1.7; }
.phoenix-module-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; margin: 32px 0; padding-left: 24px; }
.phoenix-module-steps > li { padding-left: 8px; }
.phoenix-module-steps > li::marker { color: #075681; font-weight: 700; }
.phoenix-module-questions { max-width: 78ch; margin-top: 32px; }
.phoenix-module-questions details { border-top: 1px solid #dce5ec; }
.phoenix-module-questions details:last-child { border-bottom: 1px solid #dce5ec; }
.phoenix-module-questions summary { padding: 18px 0; color: #0f2a4a; font-size: 1rem; line-height: 1.5; font-weight: 600; cursor: pointer; }
.phoenix-module-questions summary:hover { color: #075681; }
.phoenix-module-questions details p { padding-bottom: 8px; }
.phoenix-module-links { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 28px 0 0; padding: 0; list-style: none; }
#moduli-phoenix .phoenix-module-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 32px; }
.phoenix-module-detail a { color: #075681; text-decoration: underline; text-underline-offset: .2em; line-height: 1.6; }
.phoenix-module-detail a:hover { color: #0f2a4a; }
.phoenix-module-detail a:focus-visible, .phoenix-module-detail summary:focus-visible { outline: 2px solid #075681; outline-offset: 4px; }
.phoenix-module-detail ::selection { background: #dcebf4; color: #0f2a4a; }
@media (max-width: 767px) { .phoenix-module-detail { padding: 40px 24px; } .phoenix-module-steps { grid-template-columns: 1fr; gap: 20px; } #moduli-phoenix .phoenix-module-links { grid-template-columns: 1fr; } }
