:root{--ink:#172c42;--blue:#244c73;--muted:#55677a;--line:#d3dce4;--paper:#f0f4f7;--accent:#eaf18a;color-scheme:light;font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;color:var(--ink);background:#fff;font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.85}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #387bbd;outline-offset:5px}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.55}h1{letter-spacing:-.05em}h2{font-size:28px;letter-spacing:-.035em}h3{font-size:19px}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.section{padding-block:65px}.skip{position:absolute;top:-100px;left:15px;z-index:100;background:#fff;padding:12px}.skip:focus{top:8px}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;line-height:1.4;font-size:23px;font-weight:700;white-space:nowrap}.brand b{background:var(--ink);color:#fff;padding:2px 7px;margin-left:6px}.brand small{display:block;font-size:11px;font-weight:500;margin-top:8px;letter-spacing:.06em}.brand-house{font-size:47px;line-height:1}.header-inner nav{display:flex;align-items:center;gap:28px;font-size:13px;font-weight:700}.header-inner nav a{text-decoration:none}.service-link{border:1px solid var(--line);border-radius:3px;padding:11px 15px}.service-link span{margin-left:14px}.hero{padding-block:80px 84px;display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center}.section-label{font-size:12px;font-weight:700;color:var(--blue);margin-bottom:23px}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:600;font-size:clamp(34px,3.7vw,51px);line-height:1.6;margin-bottom:26px}.hero-lead{color:var(--muted);font-size:16px;line-height:2.1;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:52px;padding:14px 22px;border-radius:3px;background:var(--ink);color:#fff;text-decoration:none;font-size:14px;font-weight:700}.button:hover{background:var(--blue)}.hero-notebook{position:relative;padding:36px 0 0 25px;transform:rotate(2deg)}.notebook-tabs{display:flex;gap:5px;margin-left:32px}.notebook-tabs span{background:#dde6ee;border-radius:8px 8px 0 0;padding:9px 22px;font-size:12px;font-weight:700}.notebook-tabs span:first-child{background:var(--accent)}.notebook-page{position:relative;background:var(--paper);border:1px solid #c8d4df;box-shadow:9px 10px 0 #fff,10px 11px 0 #cad4dd,19px 20px 0 #e4ebf0;border-radius:4px 10px 10px 4px;padding:32px 35px 24px 49px}.notebook-page:before{content:'';position:absolute;left:20px;top:0;bottom:0;border-left:1px solid #bdcbd8}.note-brand{font-size:11px;color:var(--muted)}.note-title{font-size:30px;line-height:1.65;font-weight:700;letter-spacing:-.05em;margin:24px 0}.notebook-page ul{padding:0;margin:0;list-style:none}.notebook-page li{padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.notebook-page li:before{content:'✓';margin-right:13px;color:var(--blue)}.note-bottom{font-size:12px;margin:22px 0 0;text-align:right}.topic-section{background:var(--paper);padding:65px 0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-heading h2{margin:0}.section-heading p{font-size:13px;color:var(--muted);margin:0}.topics{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.topic{background:#fff;border-radius:5px;padding:22px 19px 17px;text-decoration:none;border:1px solid transparent;display:flex;flex-direction:column}.topic:hover{border-color:var(--blue)}.topic h3{font-size:16px;margin-bottom:12px;display:flex;justify-content:space-between;gap:5px}.topic h3 span{font-size:15px;font-weight:400}.topic p{font-size:12px;color:var(--muted);margin-bottom:16px}.topic small{font-size:10px;color:var(--muted);margin-top:auto}.featured{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.article-item{padding:25px 0;border-top:1px solid var(--line)}.item-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);gap:15px;margin-bottom:12px}.item-meta a{font-weight:700;text-decoration:none;color:var(--blue)}.item-meta span{white-space:nowrap}.article-item h3{margin:0 0 13px;font-size:18px;line-height:1.8}.article-item h3 a{text-decoration:none}.article-item h3 a:hover{text-decoration:underline}.article-item p{font-size:13px;line-height:1.95;color:var(--muted);margin:0}.featured>.article-item:first-child{border-top:3px solid var(--blue);padding-top:23px}.search{display:flex;align-items:center;gap:14px;max-width:700px}.search label{font-size:13px;font-weight:700;white-space:nowrap}.search input{min-width:0;flex:1;border:1px solid #acbbc9;border-radius:4px;background:#fff;padding:14px 16px;font-size:15px}.search button{border:0;background:transparent;text-decoration:underline;font-size:12px;padding:12px}.search-status{font-size:12px;color:var(--muted);margin:20px 0}.article-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:45px}.more{display:block;margin:28px auto 0;border:1px solid var(--ink);border-radius:3px;background:#fff;min-width:240px;padding:13px 20px;font-size:14px}.more:hover{background:var(--paper)}[hidden]{display:none!important}.service-cta{margin:20px 0 75px;padding:42px 48px;background:var(--paper);border-left:7px solid var(--accent);display:flex;align-items:center;justify-content:space-between;gap:35px}.service-cta h2{font-size:32px;margin-bottom:16px}.service-cta .section-label{margin-bottom:15px}.service-cta p:last-child{font-size:14px;color:var(--muted);margin:0}.service-cta .button{flex-shrink:0}.site-footer{background:var(--ink);color:#fff;padding:45px 0 24px}.site-footer .brand b{background:var(--accent);color:var(--ink)}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:30px}.footer-top>p{font-family:'Yu Mincho',serif;font-size:22px;line-height:1.8;margin:0}.footer-top>div{display:flex;flex-direction:column;gap:8px;font-size:12px}.copyright{font-size:10px;margin:32px 0 0;color:#bbcbd9}.breadcrumbs{font-size:11px;color:var(--muted);padding-top:25px}.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;gap:9px;flex-wrap:wrap}.breadcrumbs li+li:before{content:'›';margin-right:9px}.breadcrumbs a{text-decoration:none}.category-heading{padding-block:48px 15px}.category-heading h1{font-size:43px;margin-bottom:15px}.category-heading>p:not(.section-label){color:var(--muted)}.category-heading>span{font-size:12px}.category-heading .section-label{margin-bottom:12px}.article-heading{max-width:860px;margin:45px auto 44px}.category-pill{display:inline-block;background:var(--paper);padding:4px 12px;border-radius:4px;text-decoration:none;font-size:12px;font-weight:700;margin-bottom:18px}.article-heading h1{font-size:clamp(28px,3.1vw,40px);line-height:1.65;margin-bottom:25px}.byline{display:flex;flex-wrap:wrap;gap:20px;font-size:12px;color:var(--muted)}.reading-layout{display:grid;grid-template-columns:240px minmax(0,720px);gap:55px;justify-content:center;align-items:start}.toc{position:sticky;top:30px;font-size:12px;background:var(--paper);padding:24px 22px;border-radius:5px}.toc summary{font-size:13px;font-weight:700;cursor:pointer}.toc ol{padding-left:17px;margin:18px 0}.toc li{margin-bottom:12px}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.back-category{display:block;font-weight:700;border-top:1px solid var(--line);padding-top:15px}.prose{font-size:16px;line-height:2.05;overflow-wrap:anywhere}.prose .intro{font-size:18px;line-height:2.1;margin-bottom:40px}.prose section{scroll-margin-top:24px;margin:0 0 37px}.prose h2{font-size:24px;line-height:1.7;margin:0 0 18px;letter-spacing:-.025em}.prose p{margin-bottom:24px}.prose .checklist{background:var(--paper);padding:28px 30px;border-radius:5px}.checklist h2,.example h2{font-size:19px}.checklist ol{padding-left:23px;margin-bottom:0}.checklist li{margin:7px 0;font-size:15px}.prose .example{border-left:4px solid #c2c96d;background:#f8fae9;padding:25px 28px}.example p{font-size:15px;margin-bottom:0}.references{font-size:13px}.references h2{font-size:18px}.references ul{padding-left:20px}.references>p{font-size:12px;color:var(--muted)}.article-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:25px;font-size:12px}.article-actions button{border:1px solid var(--line);background:#fff;padding:10px 15px;border-radius:3px;font-size:12px}.prose .author{border-top:1px solid var(--line);margin-top:30px;padding-top:25px;font-size:13px}.author p{margin:10px 0}.author a{font-size:12px}.related{padding-top:50px}.related h2{font-size:25px}.info-page{max-width:740px;margin:55px auto 85px}.info-page h1{font-size:36px;margin-bottom:36px}.info-page h2{margin-top:35px}.info-page p{line-height:2.1}
@media(max-width:1000px){.topics{grid-template-columns:repeat(3,1fr)}.hero{gap:30px}.hero-notebook{padding-left:0}.notebook-page{padding-right:22px}.note-title{font-size:26px}.notebook-tabs span{padding-inline:17px}.reading-layout{grid-template-columns:190px minmax(0,1fr);gap:30px}.service-cta{padding:35px}.header-inner nav{gap:15px}.footer-top>p{font-size:18px}}
@media(max-width:720px){.wrap{width:calc(100% - 36px)}.header-inner{min-height:82px;gap:14px}.brand{font-size:19px;gap:7px}.brand-house{font-size:37px}.brand small{font-size:9px;margin-top:6px}.header-inner nav>a:not(.service-link){display:none}.service-link{font-size:11px;padding:10px}.service-link span{margin-left:6px}.hero{padding-block:42px 58px;grid-template-columns:1fr;gap:26px}.hero h1{font-size:36px;margin-bottom:20px}.hero-lead{font-size:14px}.section-label{font-size:11px;margin-bottom:17px}.hero-notebook{max-width:400px;width:100%;margin-inline:auto;padding:0 18px 0 5px;transform:rotate(1deg)}.notebook-page{padding:23px 25px 20px 38px}.notebook-page:before{left:16px}.note-title{font-size:25px;margin:15px 0}.notebook-page li{font-size:12px;padding-block:8px}.note-bottom{font-size:11px;margin-top:15px}.section,.topic-section{padding-block:43px}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:25px;margin-bottom:8px}.section-heading p{font-size:12px}.topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topic{padding:18px 14px}.topic h3{font-size:15px;margin-bottom:8px}.topic p{font-size:11px}.featured,.article-list{grid-template-columns:1fr;gap:0}.article-item{padding:21px 0}.article-item h3{font-size:17px;line-height:1.8}.article-item p{font-size:12px}.search{flex-wrap:wrap;gap:8px}.search label{width:100%;font-size:12px}.search input{font-size:14px;padding:12px}.search button{padding:10px 5px}.service-cta{display:block;padding:28px 24px;margin-bottom:48px}.service-cta h2{font-size:28px}.service-cta p:last-child{font-size:12px}.service-cta .button{margin-top:24px;width:100%;font-size:12px;gap:10px}.footer-top{flex-wrap:wrap;gap:30px}.footer-top>p{font-size:18px}.footer-top>div{width:100%;font-size:12px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.site-footer{padding-top:32px}.reading-layout{display:flex;flex-direction:column;gap:30px}.toc{position:static;width:100%;padding:20px}.toc li{margin-bottom:8px}.toc ol{columns:2;column-gap:25px}.toc li{break-inside:avoid}.toc .back-category{font-size:11px}.article-heading{margin:28px 0}.article-heading h1{font-size:28px;margin-bottom:21px}.byline{gap:12px;font-size:11px}.prose{font-size:15px}.prose .intro{font-size:16px;margin-bottom:30px}.prose h2{font-size:21px}.prose .checklist,.prose .example{padding:23px 20px}.checklist h2,.example h2{font-size:18px}.checklist li,.example p{font-size:14px}.prose section{margin-bottom:30px}.category-heading{padding-block:30px 0}.category-heading h1{font-size:33px}.category-heading p{font-size:14px}.info-page{margin:32px 0 55px}.info-page h1{font-size:29px}.desktop{display:none}.related{padding-top:30px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}a,button{transition:background .15s,border-color .15s}}
@media print{.site-header,.site-footer,.toc,.service-cta,.related,.article-actions{display:none}.wrap{width:100%}.reading-layout{display:block}.article-heading{max-width:none}.prose{font-size:12pt}.prose .intro{font-size:12pt}a{text-decoration:none;color:#000}body{color:#000}}

.brand{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.04em}.brand small{font-family:'Yu Gothic',sans-serif;letter-spacing:.02em}.hero h1{font-size:clamp(38px,5vw,65px);letter-spacing:.02em}.department-section{padding:10px 0 65px}.department-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.department-card{padding:27px 24px;border-right:1px solid var(--line)}.department-card:last-child{border-right:0}.department-number{font-family:Georgia,serif;font-size:15px;color:var(--muted)}.department-card h3{font-family:'Yu Mincho',serif;font-size:29px;margin:12px 0}.department-card b{display:block;font-size:12px;line-height:1.8;margin-bottom:14px}.department-card p{font-size:12px;color:var(--muted);margin-bottom:20px}.department-card a,.coming{font-size:11px;font-weight:700}.coming{color:var(--muted)}.service-link{background:var(--ink);color:white}.service-cta{background:var(--ink);color:white;border-left:7px solid var(--accent)}.service-cta .section-label,.service-cta p:last-child{color:#d5e0eb}.service-cta .button,.inline-cta .button{background:var(--accent);color:var(--ink)}.cta-buttons{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.cta-buttons small{font-size:10px;color:#d5e0eb}.cta-buttons>a:last-child{font-size:12px;color:#d5e0eb}.toc{max-height:calc(100vh - 60px);overflow:auto}.prose>h2{margin:55px 0 24px;padding-bottom:15px;border-bottom:2px solid var(--ink);scroll-margin-top:30px}.prose>p{margin-bottom:26px}.reading-summary{background:var(--paper);border-top:3px solid var(--ink);padding:24px 28px;margin-bottom:32px}.reading-summary b{font-size:14px}.reading-summary p{margin:12px 0;font-size:14px}.reading-summary span{font-size:12px;color:var(--muted)}.prose figure{margin:32px 0 38px;max-width:100%}.prose figcaption{font-size:12px;font-weight:700;line-height:1.8;margin-bottom:12px}.prose figcaption small{display:block;font-weight:400;color:var(--muted)}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:4px}.prose table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.8;text-align:left;min-width:550px}.prose th,.prose td{padding:16px 14px;vertical-align:top;border-bottom:1px solid var(--line)}.prose thead{background:var(--ink);color:white}.prose tbody th{width:23%;background:var(--paper);font-weight:700}.prose tbody tr:last-child>*{border-bottom:0}.prose tbody tr:nth-child(even) td{background:#fafbfd}.flow-figure{background:var(--paper);padding:25px;border:1px solid var(--line)}.flow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:flow}.flow-steps li{counter-increment:flow;position:relative;background:white;padding:18px 13px;border-top:3px solid var(--blue);font-size:13px;line-height:1.8}.flow-steps li:before{content:counter(flow,decimal-leading-zero);display:block;font-family:Georgia,serif;color:var(--blue);font-size:20px;margin-bottom:8px}.screen-figure img{display:block;width:100%;height:auto;border:1px solid var(--line)}.screen-figure figcaption{font-weight:400;margin-top:12px;color:var(--muted)}.inline-cta{padding:25px 28px;background:var(--ink);color:#fff;border-left:5px solid var(--accent);margin:45px 0}.inline-cta p{font-size:14px;line-height:1.9;margin-bottom:20px}.inline-cta small{display:block;font-size:11px;margin-top:12px;color:#d5e0eb}.mobile-cta{display:none}.article-item p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
@media(max-width:1000px){.department-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.department-card:nth-child(2){border-right:0}.department-card:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:720px){body{padding-bottom:69px}.department-section{padding-bottom:40px}.department-card{padding:20px 15px}.department-card h3{font-size:25px}.department-card b{font-size:11px}.department-card p{font-size:11px}.hero h1{font-size:43px}.toc{max-height:none}.toc details[open] ol{max-height:220px;overflow:auto;columns:auto}.prose{max-width:100%;width:100%;min-width:0}.prose table{font-size:12px;min-width:530px}.prose th,.prose td{padding:12px}.prose>h2{margin-top:40px;font-size:21px}.flow-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.flow-figure{padding:18px}.inline-cta{padding:24px 20px}.inline-cta .button{width:100%;font-size:13px;gap:8px}.reading-summary{padding:20px}.cta-buttons{display:block}.cta-buttons small{display:block;margin:12px 0}.mobile-cta{display:flex;align-items:center;justify-content:space-between;gap:8px;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--ink);color:#fff;border-top:1px solid #607285;padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.mobile-cta span{font-size:10px}.mobile-cta a{background:var(--accent);color:var(--ink);font-size:12px;font-weight:700;text-decoration:none;padding:9px 12px;border-radius:3px}.service-cta .button{margin-top:23px}.header-inner .brand{font-size:18px}.header-inner .brand-house{font-size:29px}.header-inner nav .service-link{font-size:10px;padding:9px 10px}}

html{scroll-behavior:auto}.prompt-example{padding:24px;background:#f5f7f9;border:1px solid #d3dce4;margin:32px 0}.prompt-example p{font-size:13px;margin:0 0 15px}.prompt-example pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.9;margin:0}.prompt-example code{font-family:inherit}.ai-feature{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:35px 40px;border:1px solid #d3dce4;background:#f0f4f7;margin-bottom:60px}.ai-feature h2{margin-bottom:12px}.ai-feature p{font-size:14px}.ai-feature .section-label{margin-bottom:12px}@media(max-width:720px){.ai-feature{display:block;padding:28px 22px;margin-bottom:40px}.ai-feature .button{width:100%;font-size:13px}.prompt-example{padding:20px 16px}}

@media(max-width:720px){.prose>h2 .section-number{display:inline-block;min-width:2.4em;margin-right:8px;font-family:Georgia,serif;font-size:.62em;letter-spacing:.08em;color:var(--blue);vertical-align:.15em}.prose .table-scroll-hint{display:flex;align-items:center;justify-content:space-between;margin:0 0 8px;padding:8px 10px;border:1px solid #c7d3dd;background:#f6f9fb;color:var(--blue);font-size:12px;font-weight:700;line-height:1.5}.table-scroll-hint span{font-size:19px;line-height:1}.table-scroll{box-shadow:inset -16px 0 0 rgba(36,76,115,.13)}}

@media(min-width:721px){.prose>h2 .section-number{display:inline-block;min-width:2.6em;margin-right:11px;font-family:Georgia,serif;font-size:.62em;letter-spacing:.08em;color:var(--blue);vertical-align:.15em}.table-scroll-hint{display:none}}
.source-cta a{color:#fff}.source-cta .button{display:flex;width:fit-content;max-width:100%;margin:16px 0;line-height:1.6;white-space:normal;overflow-wrap:anywhere;text-decoration:none}.source-cta p:last-child{margin-bottom:0}.mobile-cta[hidden]{display:none}

.media-hero{padding:0;margin-block:40px 55px;gap:0;grid-template-columns:1fr 1.15fr;background:#f7f5ed;border-bottom:3px solid var(--ink);min-height:420px}
.media-hero .hero-copy{padding:42px 34px 44px 40px;align-self:center;min-width:0}
.media-hero h1{font-size:clamp(36px,4.5vw,59px);letter-spacing:.03em;white-space:nowrap}
.media-hero .hero-lead{font-size:14px;line-height:2.05}
.hero-illustration,.cover-visual{display:flex;align-items:center;justify-content:center;min-width:0;background:#f7f5ed}
.hero-illustration img,.cover-visual img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.article-cover,.section-cover{display:grid;grid-template-columns:1.12fr 1fr;align-items:center;max-width:none;margin:32px 0 44px;padding:0;background:#f7f5ed;border-bottom:3px solid var(--ink);min-height:340px}
.cover-copy{padding:36px 36px 40px;min-width:0}
.cover-copy>p:last-of-type{font-size:14px;line-height:1.9;color:var(--muted)}
.cover-copy>span{font-size:12px;color:var(--muted)}
.cover-brand{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:14px;font-weight:700;letter-spacing:.06em;margin-bottom:22px}
.cover-brand span{display:inline-block;font-family:'Yu Gothic',sans-serif;font-size:10px;font-weight:500;margin-left:16px;padding-left:16px;border-left:1px solid #a9b2b7;letter-spacing:.02em}
.article-cover .category-pill{font-size:11px;background:#e8ebde;margin-bottom:14px}
.article-cover h1{font-size:clamp(26px,2.7vw,38px);letter-spacing:-.025em;line-height:1.55;margin:0 0 25px;word-break:normal;overflow-wrap:anywhere;line-break:strict}
.article-cover h1 .no-break{white-space:nowrap}
.cover-subtitle{display:block;font-size:clamp(17px,1.75vw,24px);font-weight:600;letter-spacing:0;line-height:1.65;margin-top:14px}
.article-cover .byline{font-size:10px;gap:8px 14px;line-height:1.8}
.section-cover h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(34px,3.8vw,48px);margin-bottom:18px}
.section-cover .section-label{font-size:11px;margin-bottom:20px}
.department-art{display:block;background:#f7f5ed;margin:-8px -7px 24px;overflow:hidden}
.department-art img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.article-card-banner{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;min-height:155px;margin-bottom:15px;background:#f7f5ed;border-bottom:2px solid #cad1ca;text-decoration:none;transition:border-color .15s}
.article-card-banner:hover{border-color:var(--ink)}
.article-item .article-card-banner h3{margin:0;padding:20px 6px 20px 20px;font-size:16px;line-height:1.75;overflow-wrap:anywhere}
.article-card-banner img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.featured .article-card-banner{grid-template-columns:1fr;min-height:0}
.featured .article-card-banner img{grid-row:1;max-height:190px;object-fit:contain}
.featured .article-card-banner h3{padding:20px;font-size:17px}
.ai-feature{padding:25px 30px;gap:25px;background:#f7f5ed}
.ai-feature-art{flex:0 0 190px}
.ai-feature-art img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.ai-feature>div:not(.ai-feature-art){flex:1;min-width:0}
.ai-feature .button{flex-shrink:0;white-space:nowrap}
.cover-subtitle::before{content:'—';display:inline-block;margin-right:.35em;color:#78878d}
@media(max-width:1000px){.media-hero{grid-template-columns:1fr 1fr;min-height:0}.media-hero .hero-copy{padding:34px 25px}.media-hero h1{font-size:39px}.media-hero .hero-lead{font-size:12px}.article-cover,.section-cover{grid-template-columns:1.2fr 1fr}.cover-copy{padding:30px 25px}.article-cover h1{font-size:28px}.cover-subtitle{font-size:19px}.ai-feature{display:grid;grid-template-columns:180px 1fr;gap:12px 25px}.ai-feature-art{grid-row:1/3}.ai-feature .button{grid-column:2;justify-self:start}.ai-feature h2{font-size:25px}.ai-feature p{font-size:12px}}
@media(max-width:720px){.media-hero{grid-template-columns:1fr;margin-block:24px 40px}.media-hero .hero-copy{padding:30px 25px 22px}.media-hero h1{font-size:39px}.media-hero .hero-lead{font-size:14px}.hero-illustration img{max-height:255px;object-fit:contain}.article-cover,.section-cover{grid-template-columns:1fr;margin:24px 0 32px;min-height:0}.cover-copy{padding:28px 23px 20px}.article-cover h1{font-size:clamp(20px,6.1vw,24px);line-height:1.6}.cover-subtitle{font-size:18px}.cover-brand{font-size:13px;margin-bottom:18px}.cover-visual img{max-height:220px;object-fit:contain}.section-cover h1{font-size:34px}.article-cover .byline{font-size:10px}.department-art{margin:-6px -4px 18px}.article-card-banner{min-height:155px;grid-template-columns:1.4fr 1fr}.article-item .article-card-banner h3{font-size:15px;padding:18px 6px 18px 17px}.featured .article-card-banner h3{padding:20px;font-size:17px}.ai-feature{display:block;padding:22px}.ai-feature-art{max-width:260px;margin:0 auto 18px}.ai-feature .button{width:100%}.ai-feature p{font-size:14px}}
@media(max-width:720px){.media-hero h1{font-size:clamp(28px,9.3vw,39px)}}

/* Shared visual language with the laboratory homepage and product LP. */
:root {
  --ink:#242622; --blue:#465649; --muted:#636861; --line:#d9ddd5;
  --paper:#f4f5f2; --accent:#e7ebe3;
  --media-font:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;
  font-family:var(--media-font); background:#fff;
}
body { font-family:var(--media-font); color:var(--ink); background:#fff; }
body :is(h1,h2,h3) { font-family:var(--media-font); font-weight:600; letter-spacing:-.04em; }
body :is(a,button,input,summary):focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
body .wrap { width:min(1280px,calc(100% - 96px)); }
body .site-header { background:#fff; border-color:var(--line); }
body .header-inner { width:min(1360px,calc(100% - 72px)); min-height:76px; gap:28px; }
body .brand { font-family:var(--media-font); font-weight:600; font-size:21px; letter-spacing:-.04em; gap:11px; }
body .brand-house { width:35px; display:inline-flex; align-items:center; }
body .brand-house svg { width:35px; height:35px; }
body .brand small { font-family:var(--media-font); font-size:10px; letter-spacing:.02em; margin-top:4px; font-weight:500; }
body .header-inner nav { font-size:12px; font-weight:500; gap:25px; }
body .service-link { background:var(--ink); border:1px solid var(--ink); border-radius:5px; padding:12px 18px; color:#fff; }
body .service-link:hover { background:var(--blue); border-color:var(--blue); }
body .button { min-height:54px; padding:15px 23px; border-radius:5px; font-size:14px; font-weight:600; background:var(--ink); color:#fff; }
body .button:hover { background:var(--blue); }
body .section-label { color:var(--muted); font-weight:500; letter-spacing:.04em; }
body .media-hero { background:#fff; border:0; grid-template-columns:1fr 1.07fr; gap:60px; margin-block:56px 76px; }
body .media-hero .hero-copy { padding:24px 0; }
body .media-hero h1 { font-family:var(--media-font); font-size:clamp(34px,3.6vw,50px); line-height:1.6; letter-spacing:-.045em; }
body .resource-feature { margin:24px auto; padding:20px 24px; background:var(--paper); border:1px solid var(--line); border-radius:5px; }
body .resource-feature p { margin:8px 0 0; }
body .media-hero .hero-lead { font-size:15px; line-height:2.15; }
body :is(.hero-illustration,.cover-visual,.department-art) { background:var(--paper); }
body .hero-illustration { padding:18px; }
body .section { padding-block:76px; }
body .topic-section { background:var(--paper); padding-block:70px; }
body .section-heading { margin-bottom:34px; align-items:center; }
body .section-heading h2 { font-size:30px; line-height:1.6; }
body .department-section { padding-bottom:76px; }
body .department-grid { border-color:var(--line); }
body .department-card { padding:30px 26px; border-color:var(--line); }
body .department-card h3 { font-family:var(--media-font); font-size:25px; font-weight:600; }
body :is(.department-number,.flow-steps li:before,.prose>h2 .section-number) { font-family:Arial,var(--media-font); }
body .topic { border:1px solid var(--line); border-radius:5px; }
body .article-card-banner { background:var(--paper); border:0; border-radius:5px; }
body .article-item .article-card-banner h3 { font-weight:600; }
body .featured>.article-item:first-child { border-top:1px solid var(--line); padding-top:25px; }
body .ai-feature { background:var(--paper); border-color:var(--line); border-radius:5px; padding:36px; margin-bottom:72px; }
body :is(.article-cover,.section-cover) { background:var(--paper); border-bottom:1px solid var(--line); margin-block:36px 56px; }
body .cover-copy { padding:40px; }
body .article-cover h1 { font-size:clamp(26px,2.5vw,36px); line-height:1.75; font-weight:600; }
body .cover-subtitle { font-size:clamp(17px,1.55vw,22px); font-weight:500; }
body .cover-subtitle::before { color:var(--muted); }
body .cover-brand { font-family:var(--media-font); font-weight:600; color:var(--muted); }
body .cover-brand span { border-color:var(--line); }
body .article-cover .category-pill { background:var(--accent); color:var(--blue); border-radius:4px; }
body .section-cover h1 { font-family:var(--media-font); font-weight:600; font-size:clamp(30px,3.4vw,44px); }
body .reading-layout { grid-template-columns:230px minmax(0,740px); gap:64px; }
body .toc { background:var(--paper); border:1px solid var(--line); border-radius:5px; padding:24px; }
body .prose { font-size:16px; line-height:2.1; }
body .prose>h2 { font-weight:600; border-bottom:1px solid var(--line); padding-bottom:20px; }
body .prose .intro { font-size:18px; }
body :is(.reading-summary,.flow-figure,.prompt-example) { background:var(--paper); border-color:var(--line); border-radius:5px; }
body .reading-summary { border-top:2px solid var(--blue); }
body .prose .example { background:var(--paper); border-left-color:var(--blue); }
body .prose tbody tr:nth-child(even) td { background:var(--paper); }
body .flow-steps li { border-top:2px solid var(--blue); }
body .service-cta { background:var(--paper); color:var(--ink); border:1px solid var(--line); border-radius:5px; padding:48px; }
body .service-cta h2 { font-weight:600; line-height:1.65; }
body .service-cta :is(.section-label,p:last-child,.cta-buttons small,.cta-buttons>a:last-child) { color:var(--muted); }
body .service-cta .button { background:var(--ink); color:#fff; }
body .inline-cta { background:var(--paper); color:var(--ink); border:1px solid var(--line); border-radius:5px; padding:30px; }
body .inline-cta :is(small,a:not(.button)) { color:var(--blue); }
body .inline-cta .button { background:var(--ink); color:#fff; }
body .site-footer { background:#fff; color:var(--ink); border-top:1px solid var(--line); padding-block:50px 28px; }
body .footer-top>p { font-family:var(--media-font); font-size:18px; font-weight:500; }
body .copyright { color:var(--muted); }
body .kit-hero { padding-block:60px; }
body .kit-hero h1 { font-family:var(--media-font); font-weight:600; }
body .kit-card h2 { font-weight:600; }
body .kit-preview { background:var(--paper); border-radius:5px; }
body :is(.search input,.more,.article-actions button) { border-color:var(--line); border-radius:5px; }
@media (max-width:1000px) {
  body .wrap { width:calc(100% - 56px); }
  body .header-inner { width:calc(100% - 40px); }
  body .header-inner nav { gap:16px; }
  body .header-inner nav .lab-parent-link { display:none; }
  body .media-hero { gap:30px; }
  body .media-hero h1 { font-size:36px; }
  body .reading-layout { grid-template-columns:190px minmax(0,1fr); gap:30px; }
}
@media (max-width:720px) {
  body { padding-bottom:76px; }
  body:has(.kit-hero) { padding-bottom:0; }
  body .wrap { width:calc(100% - 40px); }
  body .header-inner { width:calc(100% - 32px); min-height:70px; gap:12px; }
  body .brand { font-size:17px; gap:7px; }
  body .brand-house,body .brand-house svg { width:26px; height:26px; }
  body .brand small { font-size:8px; letter-spacing:0; }
  body .header-inner nav { gap:10px; }
  body .header-inner nav .service-link { font-size:10px; padding:10px; }
  body .media-hero { grid-template-columns:1fr; gap:26px; margin-block:28px 48px; }
  body .media-hero .hero-copy { padding:8px 0 0; }
  body .media-hero h1 { font-size:clamp(28px,8vw,38px); }
  body .media-hero .hero-lead { font-size:14px; }
  body .hero-illustration { padding:8px; }
  body :is(.section,.topic-section) { padding-block:48px; }
  body .section-heading h2 { font-size:25px; }
  body .department-section { padding-bottom:48px; }
  body .department-card { padding:24px 16px; }
  body .department-card h3 { font-size:23px; }
  body :is(.article-cover,.section-cover) { margin-block:26px 36px; }
  body .cover-copy { padding:28px 22px; }
  body .article-cover h1 { font-size:clamp(20px,5.8vw,26px); line-height:1.75; }
  body .cover-subtitle { font-size:17px; }
  body .section-cover h1 { font-size:32px; }
  body .reading-layout { display:flex; gap:28px; }
  body .prose { font-size:15px; }
  body .prose .intro { font-size:16px; }
  body .prose .table-scroll-hint { background:var(--paper); color:var(--blue); border-color:var(--line); }
  body .table-scroll { box-shadow:inset -16px 0 0 #46564918; }
  body .service-cta { padding:28px 22px; }
  body .inline-cta { padding:24px 20px; }
  body .ai-feature { padding:24px; margin-bottom:48px; }
  body .mobile-cta { background:#fff; border-top:1px solid var(--line); color:var(--ink); padding:12px 20px max(12px,env(safe-area-inset-bottom)); }
  body .mobile-cta a { background:var(--ink); color:#fff; border-radius:5px; padding:12px; }
  body .kit-hero { padding-block:36px; }
}
@media (max-width:360px) {
  body .header-inner { gap:8px; width:calc(100% - 24px); }
  body .brand { font-size:15px; }
  body .brand small { font-size:7px; }
  body .header-inner nav .service-link { font-size:9px; padding:9px 7px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } body *,body *::before,body *::after { transition:none; animation:none; } }
@media print { body { padding-bottom:0; } body .wrap { width:100%; } body .reading-layout { display:block; } body .mobile-cta { display:none; } }

/* Keep the site's white, sage and charcoal palette; make the hierarchy visible. */
body .task-departments { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; border:0; }
body .task-department { display:flex; flex-direction:column; min-width:0; padding:24px; border:1px solid var(--line); border-radius:5px; text-decoration:none; background:#fff; }
body .task-department:hover { border-color:var(--blue); background:var(--paper); }
body .task-department .department-art { display:block; margin:0 0 22px; aspect-ratio:3/2; overflow:hidden; }
body .task-department .department-art img { width:100%; height:100%; object-fit:cover; }
body .department-name { color:var(--muted); font-size:12px; margin-bottom:7px; }
body .task-department h3 { font-size:23px; line-height:1.5; margin:0 0 15px; }
body .task-department p { font-size:13px; color:var(--muted); margin:0 0 24px; }
body .department-count { margin-top:auto; display:flex; justify-content:space-between; gap:8px; font-size:12px; color:var(--blue); font-weight:600; }
body .tag-links { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:28px; }
body .tag-links>span { margin-right:8px; font-size:12px; color:var(--muted); }
body .tag-links a { border:1px solid var(--line); border-radius:4px; padding:7px 15px; font-size:13px; text-decoration:none; }
body .tag-links a:hover { background:var(--paper); border-color:var(--blue); }
body .topic-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
body .topic-grid .topic { padding:24px; }
body .topic-grid .topic h3 { font-size:18px; }
body .topic-grid .topic p { font-size:13px; }
body .topic-grid .topic small { font-size:12px; }
body .library-search { display:block; max-width:none; }
body .library-filters { display:flex; flex-wrap:wrap; gap:18px; margin-bottom:20px; }
body .filter-field { display:flex; flex-direction:column; flex:1; min-width:180px; gap:6px; }
body .filter-field select { width:100%; min-height:48px; padding:10px 36px 10px 12px; border:1px solid var(--line); border-radius:4px; color:var(--ink); background:#fff; font:inherit; font-size:14px; }
body select:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
body .keyword-search { display:flex; align-items:center; gap:14px; }
body .keyword-search input { flex:1; }
body .related-index { margin:24px 0; font-size:12px; color:var(--muted); }
body .related-index summary { cursor:pointer; }
body .related-index nav { display:flex; flex-wrap:wrap; gap:10px 22px; padding-top:14px; }
body .article-tags { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; font-size:12px; }
body .article-tags a { padding:3px 9px; border:1px solid var(--line); border-radius:4px; text-decoration:none; }
@media(max-width:1100px) {
 body .task-departments { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:720px) {
 body .task-departments { gap:12px; }
 body .task-department { padding:18px; }
 body .task-department h3 { font-size:20px; }
 body .task-department .department-art { margin-bottom:16px; }
 body .task-department p { font-size:12px; }
 body .task-department .department-count { font-size:11px; }
 body .topic-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 body .topic-grid .topic { padding:18px; }
 body .topic-grid .topic h3 { font-size:16px; }
 body .tag-links>span { width:100%; }
 body .filter-field { min-width:100%; }
 body .keyword-search { flex-wrap:wrap; gap:8px; }
 body .keyword-search label { width:100%; }
 body .keyword-search input { width:0; }
}
@media(max-width:420px) {
 body .task-departments,body .topic-grid { grid-template-columns:1fr; }
 body .task-department .department-art { display:none; }
 body .task-department p { margin-bottom:18px; }
}

/* Reader navigation and article entry; keep the existing media identity. */
.mobile-menu { display:none; }
.hero-search { max-width:520px; margin:26px 0 18px; }
.hero-search label { display:block; font-size:14px; font-weight:600; margin-bottom:9px; }
.hero-search>div { display:flex; gap:8px; }
.hero-search input { flex:1; min-width:0; padding:12px; border:1px solid var(--line); border-radius:5px; background:white; font:inherit; font-size:16px; }
body .hero-search .button { min-height:48px; padding:12px 20px; border:0; flex-shrink:0; }
.hero-topic-link { font-size:13px; }
.hero-shortcuts { display:flex; flex-wrap:wrap; gap:12px 24px; }
.item-meta { flex-wrap:wrap; gap:6px 14px; }
.item-meta time { font-size:11px; }
body .library-sort { max-width:360px; margin-bottom:20px; }
body .article-card-banner:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
body { padding-bottom:0; }
body .article-brief { max-width:1034px; padding:26px 30px; margin:0 0 28px; }
body .article-brief h2 { font-size:18px; margin:0 0 12px; }
body .article-brief .brief-outcome { font-size:16px; font-weight:600; line-height:1.85; }
body .article-brief .brief-opening { font-size:15px; line-height:1.95; }
body .article-brief .editorial-note { margin:20px 0 0; font-size:12px; color:var(--muted); }
.reading-route { display:flex; flex-wrap:wrap; gap:12px 24px; font-size:13px; }
.reading-route a { min-height:36px; display:inline-flex; align-items:center; }
.source-checked { display:block; font-size:12px; color:var(--muted); margin-top:4px; }
body .article-cover .byline { font-size:12px; }
.brief-points { padding-left:1.35em; font-size:15px; line-height:1.9; }
.brief-points li { margin-bottom:8px; }
body .recent-articles { padding-block:24px 36px; }
body .recent-articles .section-heading { margin-bottom:18px; }
body .recent-articles h2 { font-size:24px; }
.recent-articles ol { list-style:none; margin:0; padding:0; }
.recent-articles li { display:grid; grid-template-columns:135px 1fr 140px; align-items:baseline; gap:16px; padding:14px 0; border-top:1px solid var(--line); }
.recent-articles time,.recent-articles li>span { color:var(--muted); font-size:12px; }
.recent-articles li>a { font-size:15px; font-weight:600; text-decoration:none; }
.recent-articles li>a:hover { text-decoration:underline; }
.wrap>.recent-articles { width:100%; }
.footer-reader-nav { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:32px; font-size:13px; }
.footer-reader-nav a { min-height:36px; display:inline-flex; align-items:center; }
.subsidy-audiences { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.subsidy-audiences>a { display:block; padding:20px; border:1px solid var(--line); border-radius:5px; font-weight:600; }
.subsidy-audiences small { display:block; font-size:12px; font-weight:400; margin-top:8px; }
body .prose table[data-columns="2"],body .prose table[data-columns="3"] { min-width:0; width:100%; table-layout:fixed; overflow-wrap:anywhere; }
body .prose table[data-columns="4"] { min-width:480px; }
body .prose table[data-columns]:not([data-columns="2"]):not([data-columns="3"]):not([data-columns="4"]) { min-width:600px; }
.contextual-cta h2 { font-size:23px; }
.contextual-cta .cta-disclosure { font-size:12px; color:var(--muted); }
.contextual-cta .cta-disclosure a { color:var(--blue); }
.toc summary { cursor:pointer; min-height:32px; }
#article-overview,#article-toc,#article-sources,#related { scroll-margin-top:24px; }
@media(max-width:720px) {
 body:has(.reader-tools) { padding-bottom:72px; }
 body .header-inner nav { gap:14px; }
 body .header-inner nav>a.service-link { display:none; }
 body .header-inner nav>a.reader-search-link { display:inline-flex; align-items:center; min-height:44px; font-size:12px; white-space:nowrap; }
 body .mobile-menu { display:block; position:relative; font-size:12px; }
 .mobile-menu summary { display:flex; align-items:center; min-height:44px; cursor:pointer; white-space:nowrap; }
 .mobile-menu summary::after { content:'＋'; margin-left:4px; }
 .mobile-menu[open] summary::after { content:'−'; }
 .mobile-menu summary::-webkit-details-marker { display:none; }
 .mobile-menu>div { position:absolute; z-index:30; top:100%; right:0; width:232px; padding:8px 16px; background:#fff; border:1px solid var(--line); border-radius:5px; box-shadow:0 8px 24px #24262214; }
 body .mobile-menu a { display:block; padding:13px 0; font-size:14px; }
 body .media-hero { margin-bottom:28px; }
 body .hero-search { margin-top:20px; }
 body .hero-illustration img { max-height:180px; object-fit:cover; }
 body .library-sort { max-width:none; }
 body .article-cover .cover-visual { display:none; }
 body .header-inner .brand small { display:none; }
 .recent-articles li { grid-template-columns:1fr; gap:5px; }
 .recent-articles li>span { display:none; }
 .subsidy-audiences { grid-template-columns:1fr; gap:10px; }
 body .article-cover { margin-bottom:22px; }
 body .article-brief { padding:20px; }
 body .article-brief .brief-outcome { font-size:15px; }
 body .article-brief .brief-opening { font-size:14px; }
 body .article-brief .editorial-note { font-size:12px; line-height:1.8; }
 body .reading-layout { gap:20px; }
 body .toc { padding:16px 20px; }
 body .reader-tools { justify-content:space-around; padding:6px 12px max(6px,env(safe-area-inset-bottom)); }
 body .reader-tools a { display:inline-flex; justify-content:center; align-items:center; min-height:44px; flex:1; padding:8px; font-size:13px; color:var(--ink); background:#fff; border-radius:0; }
 body .reader-tools a+a { border-left:1px solid var(--line); }
}
@media(max-width:360px) {
 body .header-inner nav { gap:8px; }
 body .header-inner .brand { font-size:15px; }
 body .header-inner .brand small { font-size:7px; }
 body .header-inner .brand-house,body .header-inner .brand-house svg { width:23px; height:23px; }
}
@media(max-width:420px) {
 body .article-card-banner img { display:none; }
 body .article-card-banner { grid-template-columns:1fr; min-height:0; }
 body .article-item .article-card-banner h3 { padding:18px; font-size:17px; }
}
@media print { .hero-search,.mobile-menu { display:none; } }
