:root{color-scheme:light;--ink:#20221e;--muted:#65685f;--paper:#f8f9f5;--accent:#286142;--surface:#eef1e8}*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;line-height:1.8}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--accent)}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px;border-radius:3px}.skip{position:absolute;top:-80px;left:12px;background:white;padding:10px;z-index:20}.skip:focus{top:12px}.masthead{max-width:1320px;margin:auto;min-height:94px;padding:22px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{text-decoration:none;font-size:26px;font-weight:800;letter-spacing:-1px}.wordmark span{display:inline-block;font-size:12px;letter-spacing:.02em;font-weight:500;margin-left:16px;color:var(--muted)}nav{display:flex;flex-wrap:wrap;gap:12px 24px}.masthead nav{font-size:14px}.masthead nav a{text-decoration:none}main{max-width:1240px;margin:0 auto;padding:12px 40px 96px}.breadcrumbs{gap:8px 12px;font-size:12px;color:var(--muted);margin:12px 0 48px}.intro{max-width:860px;margin:0 0 46px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:.17em;color:var(--accent);margin:0 0 22px}h1{font-size:clamp(32px,4.2vw,60px);line-height:1.35;letter-spacing:-.035em;font-weight:650;margin:0 0 24px;overflow-wrap:anywhere}h1 span{display:block;font-size:.62em;line-height:1.6;letter-spacing:-.02em;margin-top:16px}.lead{font-size:clamp(16px,1.4vw,19px);line-height:2;max-width:780px;color:#51574d}.byline{font-size:12px;color:var(--muted);margin-top:28px}h2{font-size:clamp(22px,2.1vw,30px);line-height:1.6;letter-spacing:-.025em}h3{font-size:20px;line-height:1.65;margin:10px 0 12px}.topics{margin-bottom:48px;gap:10px}.topics a{padding:10px 18px;border-radius:999px;background:var(--surface);text-decoration:none;font-size:14px}.topics a[aria-current]{background:var(--ink);color:white}.section-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline;margin-bottom:24px}.section-heading h2{margin:0}.section-heading span{font-size:13px;color:var(--muted);white-space:nowrap}.cards{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 24px}.study-card{display:block;text-decoration:none;height:100%}.cover{background:var(--surface);border-radius:16px;overflow:hidden;aspect-ratio:8/5}.cover img{display:block;width:100%;height:100%;object-fit:contain}.card-copy{padding:20px 2px}.card-copy>span:first-child{font-size:12px;letter-spacing:.03em;color:var(--muted)}.card-copy p{font-size:14px;color:var(--muted);margin:0 0 18px;line-height:1.85}.read{font-size:13px;color:var(--accent);font-weight:650}.hero-image{margin:0 0 64px}.hero-image img{display:block;width:100%;height:auto;background:var(--surface);border-radius:20px}.hero-image figcaption{margin-top:12px;font-size:12px;color:var(--muted)}.reading{max-width:740px;margin:0 auto}.reading section{margin-bottom:44px}.reading p{font-size:16px;line-height:2.1}.section-label{font-size:12px;color:var(--accent);letter-spacing:.08em;margin:0 0 30px}.guide{margin-top:84px}.source-note{background:var(--surface);border-radius:18px;padding:28px;margin:54px 0 32px}.source-note h2{font-size:18px;margin:0 0 12px}.source-note p{font-size:14px;margin:12px 0}.library-cta{padding:12px 0 36px}.library-cta a,.next-step>a{font-weight:650;color:var(--accent)}.related{margin-top:72px}.related>p{font-size:14px;margin-bottom:28px}.next-step{background:var(--surface);border-radius:24px;margin-top:64px;padding:40px}.next-step h2{margin-top:0}footer{max-width:1240px;margin:auto;padding:48px 40px 64px}footer strong{font-size:24px;letter-spacing:-1px}footer p{font-size:14px;color:var(--muted)}footer nav{font-size:13px;margin-top:24px}@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.masthead{padding:20px 24px}main{padding:8px 24px 64px}}@media(max-width:600px){.masthead{align-items:flex-start;flex-direction:column;gap:12px}.masthead nav{font-size:12px;gap:10px 16px}.wordmark span{font-size:11px}.breadcrumbs{margin-bottom:32px}.intro{margin-bottom:30px}.cards{grid-template-columns:1fr;gap:18px}.topics{gap:8px;margin-bottom:32px}.topics a{font-size:12px;padding:9px 14px}.hero-image{margin-bottom:36px}.hero-image img{border-radius:12px}.source-note,.next-step{padding:22px}.guide{margin-top:48px}footer{padding:32px 24px}.reading p{font-size:15px}h3{font-size:20px}}
