:root{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#10243e;
  background:#f5f8fc;
  line-height:1.55;
}
*{box-sizing:border-box}
html{width:100%;overflow-x:hidden}
body{margin:0;width:100%;min-width:0;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
a{overflow-wrap:anywhere}
.page-header{width:100%;max-width:1120px;margin:0 auto;padding:58px 24px 34px}
.back{display:inline-block;margin-bottom:42px;text-decoration:none;font-weight:700;color:#0b5db7}
.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800;color:#54708f}
.page-header h1{font-size:clamp(40px,6vw,72px);line-height:1.02;margin:12px 0 20px;letter-spacing:-.04em;overflow-wrap:break-word}
.page-header h1 span{color:#0b67c2}
.lead{font-size:19px;max-width:760px;color:#4d6279;margin:0;overflow-wrap:anywhere}
main{width:100%;max-width:1120px;margin:0 auto;padding:0 24px 70px}
.notice{width:100%;background:#fff5d9;border:1px solid #e5c873;border-radius:18px;padding:22px 24px;margin:10px 0 34px;overflow:hidden}
.notice strong{font-size:18px}
.notice p{margin:8px 0 0;color:#4d4122;overflow-wrap:anywhere}
.sources{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
.source-card{min-width:0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:22px;background:#fff;border:1px solid #dbe4ef;border-radius:20px;padding:25px;box-shadow:0 8px 28px rgba(16,36,62,.06)}
.badge{width:62px;height:62px;border-radius:16px;display:grid;place-items:center;font-weight:900;font-size:15px;background:#e8f2ff;color:#075daf}
.source-card h2{margin:0 0 8px;font-size:24px;line-height:1.2;overflow-wrap:anywhere}
.source-card p{margin:0 0 15px;color:#50657a;overflow-wrap:anywhere}
.links{display:flex;flex-wrap:wrap;gap:9px;min-width:0}
.links a{display:inline-block;max-width:100%;padding:9px 12px;border-radius:10px;background:#eef5fc;color:#075daf;text-decoration:none;font-weight:700;font-size:14px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}
.links a:hover,.links a:focus-visible{text-decoration:underline;background:#e2effc}
.how,.boundary{margin-top:32px;background:#10243e;color:#fff;border-radius:20px;padding:28px;overflow:hidden}
.how h2,.boundary h2{margin-top:0}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.steps div{min-width:0;background:rgba(255,255,255,.08);border-radius:14px;padding:16px}
.steps b{display:block;color:#8ec5ff;font-size:13px;margin-bottom:8px}
.steps span{display:block;overflow-wrap:anywhere}
.boundary{background:#edf5ff;color:#17324e;border:1px solid #cfe2f7}
.boundary p{margin-bottom:0;overflow-wrap:anywhere}
@media (max-width:760px){
  .page-header{padding:34px 18px 25px}
  .back{margin-bottom:30px}
  main{padding:0 18px 50px}
  .source-card{grid-template-columns:1fr;gap:14px;padding:22px}
  .badge{width:58px;height:58px}
  .source-card h2{font-size:22px}
  .links{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  .links a{width:100%}
  .steps{grid-template-columns:1fr 1fr}
  .page-header h1{font-size:clamp(40px,11vw,54px)}
  .lead{font-size:17px}
}
@media (max-width:460px){
  .notice,.source-card,.how,.boundary{padding:20px}
  .steps{grid-template-columns:1fr}
  .page-header h1{font-size:clamp(36px,10.5vw,46px)}
  .eyebrow{font-size:11px}
}
@media (min-width:761px) and (max-width:980px){
  .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}