:root{--ink:#17191c;--muted:#666;--line:#d8d8d8;--surface:#fff;--accent:#df202b;--paper:#f5f5f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:26px}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;font-size:16px;line-height:1.8;word-break:keep-all;letter-spacing:-.025em}.paper{max-width:1120px;margin:28px auto;background:var(--paper)}.wrap{width:calc(100% - 112px);margin-inline:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.3;letter-spacing:-.055em}h1{font-size:clamp(38px,4.9vw,64px);font-weight:850}h2{font-size:38px;font-weight:780}h3{font-size:21px;font-weight:700}p{color:var(--muted)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:4px}a:hover{color:var(--accent)}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip:focus{display:block;background:#fff;padding:14px}.site-header{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{display:block;flex-shrink:0;width:178px}.brand img{width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.nav-contact{color:var(--accent)}.opening{padding-top:44px}.hero-lead{font-size:18px;margin:22px 0 12px}.text-link{display:inline-block;color:var(--accent);border-bottom:1px solid currentColor;font-weight:650;font-size:15px}.six-cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 22px;margin-top:32px}.cover-card{min-width:0}.cover-card img{aspect-ratio:1;object-fit:contain;width:100%;height:auto}.cover-caption{display:flex;justify-content:space-between;align-items:start;gap:8px;font-size:13px;padding-top:10px;line-height:1.5}.cover-caption small{color:var(--muted);font-size:11px;margin-right:9px}.cover-card[aria-current] .cover-caption{color:var(--accent);font-weight:700}.section{padding-block:66px;border-bottom:1px solid var(--line)}.section-intro{font-size:16px;margin-top:20px;line-height:1.9}.home-faq{display:grid;grid-template-columns:.85fr 1.35fr;gap:44px;margin-top:20px}.faq-list details{border-top:1px solid var(--line);padding:23px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer}.faq-list summary{font-size:18px;line-height:1.55;font-weight:650;list-style:none;display:flex;justify-content:space-between;gap:22px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span::before{content:'+';color:var(--accent);font-size:25px;line-height:1}.faq-list details[open] summary span::before{content:'−'}.faq-list details p{font-size:15px;background:#fff;padding:20px;margin-top:20px;line-height:1.9}.scope-list{margin-top:32px}.scope-row{display:grid;grid-template-columns:205px 1fr 22px;gap:28px;align-items:center;border-bottom:1px solid var(--line);padding:25px 0}.scope-row:last-child{border-bottom:0}.scope-row h3{font-size:20px}.scope-row p{border-left:1px solid var(--line);padding-left:28px;font-size:15px}.scope-row>span{color:var(--accent);font-size:24px}.process ol{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.process li{border-top:1px solid #bbb;padding-top:19px}.process li>span{font-size:25px;color:var(--accent);font-weight:750}.process h3{margin:5px 0 12px}.process li p{font-size:14px}.home>.library{width:100%}.library{padding-block:66px;border-bottom:1px solid var(--line)}.library h2{margin-bottom:16px}.library .section-head p{font-size:15px}.topic-list{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 22px}.topic-button{padding:9px 13px;background:#fff;border:1px solid var(--line);font-size:12px;line-height:1.5}.topic-button.selected{color:var(--accent);border-color:var(--accent)}.search-form{display:flex;gap:0;background:#fff;border:1px solid var(--line);align-items:center;margin-bottom:25px}.search-form select,.search-form input{width:100%;border:0;background:transparent;border-radius:0;padding:16px;font-size:14px;min-height:55px}.search-form label:first-child{width:170px;border-right:1px solid var(--line)}.search-field{flex:1;min-width:0}.search-form button{background:var(--accent);color:#fff;border:0;align-self:stretch;padding:13px 24px}.search-form>a{padding:14px;font-size:12px;white-space:nowrap}.article-results{border-top:1px solid #b8b8b8}.article-row{display:grid;grid-template-columns:1fr 24px;gap:7px 20px;padding:25px 0;border-bottom:1px solid var(--line)}.article-row .topic{font-size:11px;color:var(--muted);grid-column:1}.article-row h3{font-size:20px;line-height:1.6;grid-column:1}.article-row p{font-size:14px;line-height:1.85;grid-column:1}.article-arrow{grid-column:2;grid-row:1/4;align-self:center;font-size:22px;color:var(--accent)}.pagination{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:28px;font-size:13px}.pagination a{padding:7px 15px;border:1px solid var(--line);background:#fff}.pagination [aria-disabled]{color:#888}.empty{padding:30px 0}.company-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:36px}.company-roles article+article{border-left:1px solid var(--line);padding-left:28px}.company-roles p{font-size:15px;margin-top:17px;line-height:1.9}.contact{display:grid;grid-template-columns:1.08fr 1fr;gap:54px}.contact h2{font-size:31px}.contact-phone{display:block;font-size:29px;font-weight:750;margin-top:33px}.contact-email{font-size:16px;overflow-wrap:anywhere}.form-grid{display:grid;gap:12px}.form-grid label{font-size:12px;color:var(--muted)}.form-grid label>span{color:var(--accent)}.form-grid input,.form-grid textarea{display:block;width:100%;margin-top:5px;padding:11px 14px;background:#fff;border:1px solid #ccc;border-radius:3px;font-size:15px}.form-grid textarea{resize:vertical}.inquiry-submit{background:var(--accent);color:#fff;border:0;width:100%;padding:14px;margin-top:18px;font-size:16px;font-weight:600}.inquiry-submit:hover,.solid:hover{background:#b61720;color:#fff}.form-note,.inquiry-status{font-size:11px;margin-top:12px;line-height:1.8}.site-footer{display:grid;grid-template-columns:170px 1fr auto;gap:24px;padding-block:35px 42px;align-items:start}.site-footer .brand{width:156px}.site-footer p{font-size:10px;line-height:1.9}.site-footer>a:last-child{font-size:12px}.mobile-break{display:none}
/* Service pages use the same complete gallery and restrained document system. */
.breadcrumbs{display:flex;gap:12px;font-size:12px;padding-top:25px;color:var(--muted)}.service-detail>.six-cover-grid{margin-top:25px}.detail-top{padding:48px 0;border-bottom:1px solid var(--line)}.detail-top h1{font-size:43px}.section-label{font-size:12px;color:var(--accent);margin-bottom:16px}.detail-top .section-label{display:none}.detail-lead{font-size:25px;font-weight:600;color:var(--ink);margin:20px 0 12px}.detail-top p{font-size:16px}.solid{display:inline-block;background:var(--accent);color:#fff;padding:12px 23px;margin-top:23px;font-size:14px}.service-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:40px}.service-toc{padding-top:35px;align-self:start;position:sticky;top:24px}.service-toc h2{font-size:17px;margin-bottom:14px}.service-toc nav{display:grid}.service-toc a{font-size:13px;padding:11px 0;border-bottom:1px solid var(--line)}.service-copy{min-width:0}.hub-section{padding:35px 0;border-bottom:1px solid var(--line)}.hub-section h2{font-size:27px;margin-bottom:18px}.section-index{display:block;color:var(--accent);font-size:14px;margin-bottom:10px}.hub-section p,.hub-section li{font-size:15px;line-height:1.9}.hub-section ul,.hub-process{padding-left:20px}.hub-process li{margin:20px 0}.hub-process h3{font-size:18px;margin-bottom:8px}.hub-section details{border-top:1px solid var(--line);padding:18px 0}.hub-section summary{font-size:17px;font-weight:650}.hub-section details p{margin-top:16px}.service-detail>.library{width:100%}.service-contact{padding:40px 0 60px}.service-contact h2{font-size:30px}.service-contact p{margin:18px 0}.service-contact .text-link{margin-left:18px}
/* Source manuscripts retain their words; headings, tables and FAQs get reading styles. */
.reading{max-width:860px;padding-block:34px 60px}.back{font-size:13px;color:var(--accent)}.reading>.section-label{margin-top:28px}.reading h1{font-size:38px;line-height:1.5;overflow-wrap:anywhere}.article-meta{font-size:12px;margin-top:18px}.reading-lead{font-size:18px;line-height:1.9;margin:25px 0 35px}.toc-title{font-size:21px;border-top:2px solid var(--ink);padding-top:20px}.toc{display:grid;counter-reset:toc;margin:14px 0 44px}.toc a{counter-increment:toc;display:grid;grid-template-columns:32px 1fr;gap:10px;border-bottom:1px solid var(--line);padding:12px 0;font-size:14px}.toc a::before{content:counter(toc,decimal-leading-zero) '.';color:var(--accent);font-weight:700}.reading article section{margin:38px 0}.reading article h2{font-size:27px;line-height:1.6;border-top:1px solid #b8b8b8;padding-top:24px;margin-bottom:20px}.reading article h3{font-size:21px;line-height:1.65;margin:27px 0 14px}.reading article p,.reading article li{font-size:17px;line-height:1.95;overflow-wrap:anywhere}.reading article p{margin:16px 0}.reading article ul,.reading article ol{padding-left:24px}.reading article a{color:var(--accent);text-decoration:underline}.answer-box,.case-box,.note-box{padding:24px 28px;border:1px solid var(--line);background:#fff;margin:22px 0}.box-label{font-size:12px;font-weight:700;color:var(--accent)}.table-wrap,.baseline-table{max-width:100%;overflow-x:auto;margin:24px 0}.reading table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.8;min-width:500px}.reading th,.reading td{padding:13px;border:1px solid #ccc;vertical-align:top;text-align:left}.reading th{background:#e8e8e8}.table-caption{font-weight:600}.faq-card,.faq-acc{border:1px solid var(--line);background:white;padding:20px 24px;margin:14px 0}.faq-card h3{margin-top:0!important}.faq-acc summary{font-size:17px;font-weight:650;line-height:1.7}.related-box,.sources-box{border-top:1px solid var(--line);padding-top:25px;margin-top:36px}.related-box h2,.sources-box h2{font-size:23px;margin-bottom:18px}.related-box ul,.sources-box ul{padding-left:20px}.related-box li,.sources-box li{margin:10px 0;font-size:14px;overflow-wrap:anywhere}.to-top{display:block;text-align:right;font-size:13px;color:var(--accent);margin-top:30px}
@media(max-width:1180px){.paper{margin:20px 28px}.wrap{width:calc(100% - 80px)}h1{font-size:52px}h2{font-size:34px}.site-header nav{gap:22px}.scope-row{grid-template-columns:180px 1fr 22px;gap:20px}.scope-row p{padding-left:20px}.contact{gap:32px}.contact h2{font-size:29px}}
@media(max-width:720px){.paper{margin:12px;background:#f5f5f5}.wrap{width:calc(100% - 36px)}.site-header{flex-wrap:wrap;gap:15px;padding-block:20px}.brand{width:150px}.site-header nav{width:100%;gap:0;justify-content:space-between;font-size:12px}.opening{padding-top:32px}h1{font-size:34px;line-height:1.3}h2{font-size:29px}.hero-lead{font-size:14px;line-height:1.85;margin-top:18px}.mobile-break{display:block}.text-link{font-size:13px}.six-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;margin-top:25px}.cover-caption{font-size:11px;padding-top:8px}.cover-caption small{font-size:10px;margin-right:5px}.section{padding-block:43px}.home-faq{grid-template-columns:1fr;gap:25px;margin-top:4px}.faq-list summary{font-size:16px}.faq-list details{padding:19px 0}.faq-list details p{font-size:14px;padding:17px}.scope-list{margin-top:20px}.scope-row{grid-template-columns:1fr 20px;gap:9px 15px;padding:22px 0}.scope-row h3{font-size:19px}.scope-row p{grid-column:1;padding:0;border:0;font-size:14px}.scope-row>span{grid-column:2;grid-row:1/3}.process ol{grid-template-columns:1fr 1fr;gap:28px 19px}.process h3{font-size:19px}.process li p{font-size:13px}.section-intro{font-size:14px}.library{padding-block:43px}.library h2{font-size:29px}.library .section-head p{font-size:14px}.topic-list{gap:6px;margin:22px 0 18px}.topic-button{font-size:11px;padding:8px 9px}.search-form{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.search-form>label:first-child{grid-column:1/-1}.search-form .search-field{min-width:0}.search-form label:first-child{width:100%;border-right:0;border-bottom:1px solid var(--line)}.search-form select,.search-form input{padding:12px;font-size:12px;min-height:46px}.search-form button{font-size:12px;padding:10px 13px}.search-form>a{font-size:11px;padding:10px}.article-row{padding:22px 0;gap:7px 12px}.article-row h3{font-size:18px}.article-row p{font-size:13px}.pagination{font-size:12px;gap:18px}.company-roles{grid-template-columns:1fr;gap:23px;margin-top:26px}.company-roles article+article{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.company-roles h3{font-size:21px}.company-roles p{font-size:14px;margin-top:10px}.contact{grid-template-columns:1fr;gap:30px}.contact h2{font-size:28px}.contact-phone{font-size:28px;margin-top:22px}.contact-email{font-size:14px}.site-footer{grid-template-columns:1fr;gap:18px;padding-block:28px}.site-footer .brand{width:140px}.service-layout{display:block}.service-toc{position:static;padding-top:25px}.service-toc nav{grid-template-columns:1fr 1fr;gap:0 15px}.detail-top{padding:32px 0}.detail-top h1{font-size:32px}.detail-lead{font-size:21px}.detail-top p{font-size:15px}.hub-section h2{font-size:25px}.service-contact h2{font-size:27px}.service-contact .text-link{margin:20px 0 0}.reading{padding-top:26px}.reading h1{font-size:29px}.reading-lead{font-size:16px}.reading article h2{font-size:25px}.reading article p,.reading article li{font-size:16px}.toc a{font-size:13px}.answer-box,.case-box,.note-box,.faq-card,.faq-acc{padding:18px}.reading table{font-size:13px}.related-box h2,.sources-box h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
