/* Practice review only: shared navigation and footer retain their existing styles. */
.ff-practice{--fp-accent:#17637a;--fp-ink:#273944;--fp-line:#d4e2e7;max-width:1000px;margin:0 auto;padding:12px 18px 48px;color:var(--fp-ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.95;overflow-wrap:anywhere;min-width:0}
.ff-practice *{box-sizing:border-box;min-width:0}
.ff-practice p{margin:0 0 18px}.ff-practice strong{font-weight:700}
.ff-practice h2,.ff-practice h3{color:var(--fp-ink);line-height:1.5;letter-spacing:.01em}
.ff-practice h2{font-size:clamp(22px,3vw,27px);margin:54px 0 22px;padding:0 0 14px;border-bottom:1px solid #b8d0da;border-left:0}
.ff-practice h3{font-size:20px;margin:28px 0 12px}
.ff-practice a{color:var(--fp-accent);text-decoration:underline;text-underline-offset:4px}.ff-practice a:hover{color:#10495c}.ff-practice a:focus-visible,.ff-practice [tabindex]:focus-visible{outline:3px solid #17637a;outline-offset:4px}
.ff-practice section{scroll-margin-top:100px}
.ff-practice .fp-intro{padding:14px 0 30px;border-bottom:1px solid var(--fp-line)}
.ff-practice .fp-eyebrow{font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--fp-accent);margin-bottom:16px}
.ff-practice .fp-lead{font-size:clamp(18px,2.2vw,22px);line-height:1.9}
.ff-practice .fp-takeaway{display:grid;gap:7px;background:#f0f7f9;border-left:4px solid #328ba8;padding:20px 24px;margin-top:26px}
.ff-practice .fp-takeaway strong{color:var(--fp-accent)}
.ff-practice .fp-toc{margin:30px 0 38px;padding:22px 26px;background:#f4f8f9;border:1px solid var(--fp-line);border-radius:12px}
.ff-practice .fp-toc ol{columns:2;column-gap:28px;padding-left:24px;margin:12px 0 0}.ff-practice .fp-toc li{break-inside:avoid;margin:6px 0}
.ff-practice .fp-table{max-width:100%;overflow-x:auto;margin:24px 0;border:1px solid var(--fp-line);border-radius:10px}
.ff-practice table{width:100%;min-width:580px;border-collapse:collapse;font-size:15px;line-height:1.8;margin:0}
.ff-practice caption{caption-side:top;text-align:left;color:var(--fp-ink);font-weight:700;background:#edf4f6;padding:14px 16px}
.ff-practice th,.ff-practice td{text-align:left;vertical-align:top;border:0;border-bottom:1px solid var(--fp-line);padding:14px 16px}.ff-practice thead th{background:#edf4f6;font-weight:700}.ff-practice tbody th{background:#f8fbfc;font-weight:600;width:24%}.ff-practice tbody tr:last-child>*{border-bottom:0}
.ff-practice .fp-note{background:#f3f6f7;border-left:4px solid #658b99;border-radius:0 8px 8px 0;padding:19px 22px;margin:24px 0;font-size:15px}.ff-practice .fp-note p{margin:8px 0 0}
.ff-practice .fp-screen{display:grid;grid-template-columns:minmax(0,330px) minmax(0,1fr);gap:34px;align-items:start;margin:28px 0}
.ff-practice figure{margin:0;width:100%;max-width:330px;border:1px solid #c9dce3;border-radius:12px;overflow:hidden;background:#f3f8fa}
.ff-practice figure>a{display:block}.ff-practice figure img{display:block;width:100%;max-width:100%;height:auto;margin:0}
.ff-practice figcaption{padding:17px 18px;font-size:13px;line-height:1.85;color:#435b68;text-align:left}.ff-practice figcaption strong{display:block;color:var(--fp-ink);margin-bottom:8px}
.ff-practice .fp-screen-copy h3{margin-top:0}.ff-practice .fp-screen-copy ul,.ff-practice .fp-checks{padding-left:24px}.ff-practice .fp-screen-copy li{padding-left:4px;margin-bottom:18px}.ff-practice .fp-checks li>strong{color:var(--fp-accent)}.ff-practice .fp-checks p{margin:7px 0 0}
.ff-practice .fp-small{font-size:13px;line-height:1.8;color:#526873}
.ff-practice .fp-memo{padding:24px 28px;background:#f3f8fa;border:1px solid var(--fp-line);border-radius:12px;margin:28px 0}.ff-practice .fp-memo h3{margin-top:0}.ff-practice .fp-memo dl{margin:0 0 18px;display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px 20px}.ff-practice .fp-memo dt{color:var(--fp-accent);font-weight:700}.ff-practice .fp-memo dd{margin:0}.ff-practice .fp-memo p:last-child{margin:0}
.ff-practice .fp-routine{padding-left:25px}.ff-practice .fp-routine li{padding-left:6px;margin-bottom:20px}.ff-practice .fp-routine li::marker{color:var(--fp-accent);font-weight:700}.ff-practice .fp-routine p{margin-top:6px}
.ff-practice .fp-cta{background:#edf7fa;border:1px solid #a7cbd8;border-top:5px solid #328ba8;border-radius:12px;padding:30px;margin:30px 0}.ff-practice .fp-cta h3{font-size:clamp(25px,4vw,32px);margin:8px 0 18px}.ff-practice .fp-cta .fp-small{margin:16px 0 0}
.ff-practice .fp-button{display:inline-block;min-height:48px;background:var(--fp-accent);color:#fff;text-align:center;text-decoration:none;font-weight:700;padding:14px 24px;border-radius:8px}.ff-practice .fp-button:hover{background:#10495c;color:#fff}
.ff-practice .fp-summary{border-top:3px solid #328ba8;padding:4px 24px 24px;background:#f3f8fa;margin-top:44px}.ff-practice .fp-summary h2{border:0;margin-top:22px}.ff-practice .fp-summary p{margin-bottom:0}
@media(max-width:850px){.ff-practice .fp-screen{grid-template-columns:minmax(0,1fr);gap:26px}.ff-practice figure{margin:0 auto}.ff-practice .fp-screen-copy{width:100%}}
@media(max-width:600px){.ff-practice{padding:6px 8px 36px;font-size:15px}.ff-practice .fp-toc{padding:18px}.ff-practice .fp-toc ol{columns:1}.ff-practice .fp-takeaway{padding:17px}.ff-practice h2{margin-top:40px}.ff-practice .fp-note{padding:17px}.ff-practice .fp-memo{padding:20px}.ff-practice .fp-memo dl{grid-template-columns:1fr;gap:4px}.ff-practice .fp-memo dd{margin-bottom:12px}.ff-practice .fp-cta{padding:23px 18px}.ff-practice .fp-button{display:block;width:100%}.ff-practice .fp-summary{padding:4px 18px 22px}}
