.fts-page{--fts-ink:#171717;--fts-muted:#666;--fts-line:#e7e4df;--fts-soft:#f6f3ee;--fts-dark:#171717;color:var(--fts-ink)}
.fts-page *{box-sizing:border-box}.fts-hero{padding:78px 0 70px;background:linear-gradient(135deg,#f4efe7 0%,#fff 55%,#f1ede7 100%);border-bottom:1px solid var(--fts-line)}
.fts-system-hero{background:linear-gradient(135deg,#f0ede8 0%,#fff 58%,#ece8e2 100%)}.fts-kicker,.fts-heading>span{display:block;font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--red);margin-bottom:14px}
.fts-hero h1{max-width:880px;font-size:clamp(38px,5.5vw,72px);line-height:1.04;letter-spacing:-.045em;margin:16px 0 22px}.fts-lead{max-width:830px;font-size:19px;line-height:1.85;color:#4d4b48;margin:0}
.fts-tags{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0}.fts-tags span{padding:9px 13px;border:1px solid #d8d2c9;border-radius:999px;background:rgba(255,255,255,.7);font-size:13px}.fts-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.fts-section{padding:76px 0}.fts-alt{background:var(--fts-soft)}.fts-heading{max-width:800px;margin-bottom:34px}.fts-heading h2{font-size:clamp(29px,4vw,46px);line-height:1.18;letter-spacing:-.03em;margin:0 0 14px}.fts-heading p{font-size:16px;line-height:1.8;color:var(--fts-muted);margin:0}
.fts-grid{display:grid;gap:16px}.fts-grid-3{grid-template-columns:repeat(3,1fr)}.fts-grid article{min-height:220px;padding:28px;border:1px solid var(--fts-line);border-radius:18px;background:#fff}.fts-grid article>b{display:block;font-size:13px;color:var(--red);margin-bottom:36px}.fts-grid h3{font-size:21px;margin:0 0 12px}.fts-grid p{color:var(--fts-muted);line-height:1.8;margin:0}
.fts-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:10px}.fts-flow>div{padding:24px 20px;border:1px solid var(--fts-line);background:#fff;border-radius:16px}.fts-flow i{align-self:center;font-style:normal;color:#aaa}.fts-flow small{display:block;color:var(--red);font-weight:800;letter-spacing:.08em}.fts-flow strong{display:block;font-size:18px;margin:14px 0 8px}.fts-flow p{font-size:14px;color:var(--fts-muted);line-height:1.65;margin:0}
.fts-split{display:grid;grid-template-columns:1.45fr .75fr;gap:28px;align-items:start}.fts-copy{font-size:17px;line-height:1.95}.fts-copy p{margin:0 0 18px}.fts-split aside{padding:28px;border-radius:18px;background:#181818;color:#fff}.fts-split aside>span{display:block;color:#bbb;font-size:13px;letter-spacing:.1em;margin-bottom:16px}.fts-split ul,.fts-split ol{margin:0;padding-left:20px}.fts-split li{padding:8px 0;line-height:1.6;border-bottom:1px solid rgba(255,255,255,.12)}
.fts-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.fts-media-card{display:block;color:inherit;text-decoration:none;background:#fff;border:1px solid var(--fts-line);border-radius:18px;overflow:hidden;transition:.2s transform,.2s box-shadow}.fts-media-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(0,0,0,.07)}.fts-media-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.fts-media-card>div{padding:21px}.fts-media-card small{color:#8a8580}.fts-media-card h3{font-size:19px;line-height:1.45;margin:8px 0}.fts-media-card p{font-size:14px;line-height:1.7;color:var(--fts-muted);margin:0}.fts-more{margin-top:25px}.fts-more a{font-weight:700;color:var(--red)}
.fts-knowledge-grid,.fts-link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.fts-knowledge-grid a,.fts-link-grid a{display:block;text-decoration:none;color:inherit;padding:22px;border:1px solid var(--fts-line);border-radius:16px;background:#fff}.fts-knowledge-grid small{color:var(--red)}.fts-knowledge-grid h3,.fts-link-grid h3{font-size:18px;margin:9px 0}.fts-knowledge-grid p,.fts-link-grid p{font-size:14px;line-height:1.65;color:var(--fts-muted);margin:0}.fts-empty{padding:26px;border:1px dashed #cfc8be;border-radius:16px;color:#777;background:#fff}
.fts-dark{background:var(--fts-dark);color:#fff}.fts-dark .fts-heading p{color:#bdbdbd}.fts-dark .fts-heading>span{color:#e8b7ba}.btn.light{background:#fff;color:#151515}.btn.outline-light{border-color:#666;color:#fff;background:transparent}
.fts-faq{max-width:900px}.fts-faq details{border-top:1px solid var(--fts-line);padding:20px 0}.fts-faq details:last-child{border-bottom:1px solid var(--fts-line)}.fts-faq summary{cursor:pointer;font-weight:700;font-size:17px}.fts-faq details p{color:var(--fts-muted);line-height:1.8;padding-right:24px}
.fts-layers{display:grid;gap:12px}.fts-layers article{display:grid;grid-template-columns:82px 1fr;gap:24px;align-items:start;background:#fff;border:1px solid var(--fts-line);border-radius:18px;padding:24px}.fts-layers article>span{font-size:34px;line-height:1;color:#d5d0c8;font-weight:800}.fts-layers small{font-size:11px;letter-spacing:.14em;color:var(--red);font-weight:800}.fts-layers h3{font-size:23px;margin:8px 0}.fts-layers p{color:var(--fts-muted);line-height:1.75;margin:0 0 10px}.fts-layers a{color:var(--red);font-weight:700;text-decoration:none}
.fts-route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.fts-route-grid a{padding:28px;border:1px solid #3a3a3a;border-radius:18px;color:#fff;text-decoration:none}.fts-route-grid small{display:block;color:#aaa;margin-bottom:28px}.fts-route-grid strong{display:block;font-size:20px;line-height:1.5;margin-bottom:22px}.fts-route-grid span{color:#e6b6b9}.fts-link-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.fts-grid-3,.fts-card-grid,.fts-route-grid,.fts-link-grid{grid-template-columns:1fr 1fr}.fts-knowledge-grid{grid-template-columns:1fr 1fr}.fts-flow{grid-template-columns:1fr}.fts-flow i{display:none}.fts-split{grid-template-columns:1fr}.fts-hero{padding:58px 0 52px}.fts-section{padding:58px 0}}
@media(max-width:600px){.fts-grid-3,.fts-card-grid,.fts-route-grid,.fts-link-grid,.fts-knowledge-grid{grid-template-columns:1fr}.fts-hero h1{font-size:40px}.fts-lead{font-size:17px}.fts-layers article{grid-template-columns:52px 1fr;padding:20px}.fts-layers article>span{font-size:26px}.fts-section{padding:48px 0}.fts-grid article{min-height:auto}.fts-actions .btn{width:100%;text-align:center}}
/* V2 evidence + course architecture */
.fts-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.fts-proof-grid article{padding:28px;border:1px solid var(--fts-line);border-radius:18px;background:#fff}.fts-proof-grid article>span{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--red);margin-bottom:8px}.fts-proof-grid h3{font-size:22px;margin:4px 0 14px}.fts-proof-grid ul{padding-left:20px;margin:0}.fts-proof-grid li{padding:7px 0;line-height:1.65;color:var(--fts-muted)}.fts-note{margin:20px 0 0;padding:18px 20px;border-left:3px solid var(--red);background:#fff;line-height:1.75;color:var(--fts-muted)}
.fts-check-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.fts-check-grid>div{padding:24px 20px;border:1px solid var(--fts-line);border-radius:16px;background:#fff}.fts-check-grid b{display:block;font-size:24px;color:#d8d1c7;margin-bottom:18px}.fts-check-grid h3{font-size:18px;line-height:1.45;margin:0 0 10px}.fts-check-grid p{font-size:14px;line-height:1.7;color:var(--fts-muted);margin:0}.fts-check-grid.is-system{grid-template-columns:repeat(5,minmax(0,1fr))}
.fts-course-map{display:grid;gap:15px}.fts-course-map article{padding:28px;border:1px solid var(--fts-line);border-radius:18px;background:#fff}.fts-course-map article>span{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;color:var(--red);margin-bottom:8px}.fts-course-map h3{font-size:24px;line-height:1.45;margin:0 0 14px}.fts-course-map p{font-size:15px;line-height:1.8;color:var(--fts-muted);margin:14px 0 0}.fts-chip-row{display:flex;flex-wrap:wrap;gap:8px}.fts-chip-row i{font-style:normal;font-size:13px;padding:7px 10px;border-radius:999px;background:#f2eee8;color:#4f4a45}
@media(max-width:1100px){.fts-check-grid,.fts-check-grid.is-system{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.fts-proof-grid{grid-template-columns:1fr}.fts-check-grid,.fts-check-grid.is-system{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fts-check-grid,.fts-check-grid.is-system{grid-template-columns:1fr}.fts-course-map article,.fts-proof-grid article{padding:22px}.fts-course-map h3,.fts-proof-grid h3{font-size:20px}}
