
:root{--ink:#172b35;--muted:#55646b;--paper:#f6f5ef;--white:#fff;--line:#d6ddd9;--accent:#174f4a;--pale:#e8f0e9;--warm:#ece5d1;--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--accent)}.skip{position:absolute;top:-80px;left:16px;z-index:9;background:white;padding:10px}.skip:focus{top:8px}.wrap{max-width:1160px;margin:auto;padding:0 40px}.preview-bar{background:var(--warm);border-bottom:1px solid #dbd2bb;font-size:12px;padding:10px 0;line-height:1.55}.preview-bar .wrap{display:flex;justify-content:space-between;gap:18px}.preview-bar strong{letter-spacing:.04em}.preview-bar a{white-space:nowrap}.site-header{padding:28px 0;border-bottom:1px solid var(--line)}.header-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{text-decoration:none;display:flex;align-items:baseline;gap:14px}.brand b{font:600 30px/1 var(--serif);letter-spacing:.05em}.brand span{font-size:10px;letter-spacing:.22em}.nav{display:flex;gap:26px;font-size:13px;align-items:center}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}.nav .pill{padding:9px 14px;border:1px solid var(--line)}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);font-weight:700;margin:0 0 20px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;padding:66px 0 64px;align-items:start}.hero h1{font:400 clamp(42px,5vw,66px)/1.04 var(--serif);letter-spacing:-.045em;margin:0 0 10px}.ticker{font-size:12px;letter-spacing:.1em;color:var(--muted);margin:0 0 28px}.hero h2{font:400 clamp(24px,2.7vw,34px)/1.18 var(--serif);letter-spacing:-.025em;max-width:510px;margin:0 0 20px}.lead{font-size:16px;color:var(--muted);max-width:520px;line-height:1.8}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;background:var(--accent);border:1px solid var(--accent);color:white;padding:13px 19px;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer;border-radius:2px;min-height:48px}.button:hover{filter:brightness(1.1)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.small-note{font-size:12px;color:var(--muted);line-height:1.6}.publication{background:var(--ink);color:#f8faf7;min-height:455px;padding:32px 34px 25px;position:relative;box-shadow:12px 12px 0 #e2e6df}.publication .cover-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.14em;color:#c6d7d1}.publication h3{font:400 36px/1.12 var(--serif);letter-spacing:-.03em;margin:40px 0 9px}.publication .cover-sub{font-size:13px;max-width:290px;color:#c6d7d1}.cover-lines{margin:30px 0 26px;border-top:1px solid #52646b}.cover-line{display:flex;justify-content:space-between;gap:14px;align-items:center;border-bottom:1px solid #52646b;padding:10px 0;font-size:11px;letter-spacing:.02em}.cover-line span:first-child{color:#b8cec6}.cover-foot{font-size:10px;letter-spacing:.1em;color:#c6d7d1}.cover-caption{font-size:11px;margin:20px 0 0;color:var(--muted)}.fact-strip{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:60px}.fact{padding:20px 20px 20px 0}.fact+.fact{border-left:1px solid var(--line);padding-left:26px}.fact b{display:block;font-size:14px;font-weight:500}.fact span{font-size:11px;color:var(--muted)}section{scroll-margin-top:24px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:28px}.section-head h2,.section-title{font:400 36px/1.15 var(--serif);letter-spacing:-.03em;margin:0}.section-head p{font-size:13px;color:var(--muted);max-width:320px;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.card{border-top:2px solid var(--accent);padding-top:19px}.card .number{font-size:11px;letter-spacing:.15em;color:var(--accent)}.card h3{font:400 24px/1.2 var(--serif);margin:22px 0 14px;letter-spacing:-.02em}.card p{font-size:14px;color:var(--muted);margin-bottom:0}.section{padding:0 0 64px}.band{background:var(--pale);padding:46px 0;margin-bottom:64px}.band-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px}.band h2{font:400 32px/1.15 var(--serif);letter-spacing:-.025em;margin:0}.band p{font-size:15px;margin:0 0 14px;color:var(--muted)}.license{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;border-top:1px solid var(--line);padding-top:40px}.price{font:400 42px/1.1 var(--serif);margin:12px 0 7px;letter-spacing:-.02em}.price span{font:400 13px var(--sans);color:var(--muted);letter-spacing:0}.license-box{background:white;border:1px solid var(--line);padding:28px}.license-box dl{margin:20px 0 0}.license-box dl div{display:grid;grid-template-columns:85px 1fr;gap:16px;border-top:1px solid var(--line);padding:11px 0;font-size:12px}.license-box dt{color:var(--muted)}.license-box dd{margin:0}.steps{margin:22px 0 0;padding:0;list-style:none;counter-reset:steps}.steps li{counter-increment:steps;position:relative;padding:0 0 22px 37px;font-size:14px;color:var(--muted)}.steps li::before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:1px;font-size:11px;letter-spacing:.04em;color:var(--accent)}.steps b{display:block;color:var(--ink);font-weight:600}.form-section{background:#fff;border-top:1px solid var(--line);padding:54px 0 60px}.form-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px}.form-layout h2{font:400 36px/1.14 var(--serif);letter-spacing:-.03em;margin:0 0 18px}.form-intro p{font-size:14px;color:var(--muted)}.tag{display:inline-block;background:var(--warm);font-size:10px;letter-spacing:.08em;padding:4px 8px;margin-bottom:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}.field label{font-size:12px;display:block;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #b7c3bc;border-radius:2px;padding:10px 11px;background:#fff;min-height:46px;font-size:14px;color:var(--ink)}.field textarea{resize:vertical;min-height:90px}.checkbox{display:flex;gap:10px;font-size:12px;color:var(--muted);margin:17px 0}.checkbox input{margin-top:5px;flex-shrink:0;width:15px;height:15px}.form-feedback{font-size:13px;background:var(--warm);padding:14px;margin:14px 0}.form-feedback[hidden],[hidden]{display:none!important}.site-footer{border-top:1px solid var(--line);padding:25px 0;font-size:11px;color:var(--muted)}.footer-row{display:flex;justify-content:space-between;gap:22px}.footer-row a{margin-left:18px}.content-page{max-width:810px;margin:0 auto;padding:65px 36px 80px}.content-page h1{font:400 43px/1.12 var(--serif);letter-spacing:-.03em;margin:0 0 26px}.content-page h2{font-size:18px;margin:32px 0 10px}.content-page p,.content-page li{font-size:15px;color:var(--muted)}.content-page .notice{background:var(--warm);padding:18px 22px;margin:24px 0}.content-page .notice p{margin:0}.content-page code{font-size:13px;background:#e5e9e3;padding:2px 5px}.jp{font-family:var(--sans)}.jp h1{font-family:var(--sans);font-size:32px;line-height:1.45;letter-spacing:0}.link-list li{margin:14px 0}.local-status{font-size:12px;padding:12px 16px;border:1px solid var(--line);margin-top:20px;background:var(--paper)}
@media(max-width:850px){.wrap{padding:0 26px}.hero{gap:30px}.publication{padding:25px;min-height:430px}.publication h3{font-size:31px}.hero h1{font-size:50px}.license,.form-layout,.band-inner{gap:35px}.section-head{gap:28px}.cards{gap:20px}.nav{gap:16px}.nav .pill{display:none}}
@media(max-width:640px){.wrap{padding:0 22px}.preview-bar .wrap{display:block}.preview-bar a{display:inline-block;margin-top:4px}.site-header{padding:22px 0}.brand b{font-size:27px}.brand span{font-size:9px}.nav{gap:13px;font-size:12px}.nav a:first-child{display:none}.hero{grid-template-columns:1fr;padding:40px 0 36px;gap:30px}.hero h1{font-size:50px}.hero h2{font-size:31px}.publication{max-width:410px;min-height:415px;margin:4px 9px 0 0}.cover-caption{max-width:410px}.publication h3{margin-top:32px;font-size:34px}.fact-strip{margin-bottom:42px}.fact{padding:16px 10px 16px 0}.fact+.fact{padding-left:12px}.fact b{font-size:12px}.fact span{font-size:10px;line-height:1.4;display:block;margin-top:5px}.section-head{display:block;margin-bottom:28px}.section-head h2,.section-title{font-size:32px}.section-head p{margin-top:16px}.cards{grid-template-columns:1fr;gap:30px}.card h3{margin-top:13px}.section{padding-bottom:42px}.band{padding:35px 0;margin-bottom:42px}.band-inner,.license,.form-layout{grid-template-columns:1fr;gap:30px}.form-section{padding:40px 0}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.license-box{padding:23px}.price{font-size:38px}.footer-row{display:block}.footer-row div+div{margin-top:10px}.footer-row a{margin:0 14px 0 0}.content-page{padding:42px 22px 60px}.content-page h1{font-size:36px}.content-page.jp h1{font-size:28px}.actions{gap:10px}.button{font-size:12px;padding:12px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Review build 2: report sample integration. */
.sample-cover-block{max-width:410px;width:100%;justify-self:end}
.sample-cover-link{display:block;background:white;border:1px solid var(--line);box-shadow:10px 10px 0 #e2e6df;transition:transform .15s ease}
.sample-cover-link:hover{transform:translateY(-3px)}
.sample-cover{display:block;width:100%;height:auto}
.contents-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 38px}
.contents-grid article{border-top:1px solid var(--line);padding-top:20px}
.contents-grid .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:12px}
.contents-grid h3{font:400 23px/1.25 var(--serif);margin:0 0 12px}
.contents-grid article>p:last-child{font-size:14px;color:var(--muted);margin:0}
.scope-note{font-size:12px;line-height:1.8;color:var(--muted);padding:18px 22px;background:var(--pale);margin-top:28px}
.sample-outline>div{padding:13px 0;border-top:1px solid var(--line)}
.sample-outline b{display:block;font-size:14px}.sample-outline span{font-size:13px;color:var(--muted)}
.text-link{font-size:13px;font-weight:700}
@media(max-width:640px){.sample-cover-block{justify-self:start;max-width:330px;margin-right:10px}.contents-grid{grid-template-columns:1fr;gap:24px}.contents-grid h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.sample-cover-link{transition:none}.sample-cover-link:hover{transform:none}}

/* LORE update 01/02: publisher identification and direct contact only. */
.about-publisher{border-top:1px solid var(--line);padding-top:40px}
.about-publisher .section-head{align-items:start}
.publisher-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:28px}
.publisher-card{background:#fff;border:1px solid var(--line);padding:25px}
.publisher-card h3{font:400 25px/1.3 var(--serif);margin:8px 0 15px;overflow-wrap:anywhere}
.publisher-card p{font-size:14px;color:var(--muted)}
.publisher-details{margin:22px 0 0;font-size:13px}
.publisher-details>div{display:grid;grid-template-columns:145px 1fr;gap:20px;border-top:1px solid var(--line);padding:12px 0}
.publisher-details dt{font-weight:600;color:var(--ink)}
.publisher-details dd{margin:0;color:var(--muted);overflow-wrap:anywhere}
.publisher-direct{font-size:14px;margin-top:20px;overflow-wrap:anywhere}
.footer-contact{display:block;margin-top:8px;overflow-wrap:anywhere}
.footer-row .footer-contact a{margin-left:0}
.footer-extra{display:flex;gap:12px 18px;flex-wrap:wrap;justify-content:flex-end;align-content:start}
.footer-row .footer-extra a{margin:0}
.content-page .publisher-details{font-size:14px}
@media(max-width:640px){.publisher-grid{grid-template-columns:1fr;gap:18px}.publisher-card{padding:21px}.publisher-details>div{grid-template-columns:1fr;gap:4px}.footer-extra{justify-content:flex-start}}
