@charset "UTF-8";
.supplier-page{font-size:16px}
.supplier-shell{max-width:1160px;padding-top:48px}
.supplier-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.9fr);gap:54px;align-items:center;padding-bottom:45px;border-bottom:1px solid var(--line)}
.supplier-hero h1{font-size:49px;line-height:1.08;letter-spacing:-1.8px;margin-bottom:22px}
.supplier-hero .lede{font-size:17px;line-height:1.75}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin:25px 0 15px}
.hero-actions .button,.bottom-cta .button{font-size:15px;padding:13px 20px}
.quiet-link{font-size:14px;color:var(--muted)}
.hero-fact{font-size:13px;color:var(--muted);margin-bottom:0}
.mapping-sheet{margin:0;background:var(--surface);border:1px solid #d7e0ef;box-shadow:0 16px 40px #1d3b6b0b;border-radius:12px;overflow:hidden}
.sheet-top{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line);font-size:13px;font-weight:650}
.sheet-top span{font-weight:450;color:var(--muted)}
.sheet-columns,.map-row{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1.08fr);gap:10px;padding:11px 22px;align-items:center}
.sheet-columns{background:#f8faff;color:#728197;font-size:11px;letter-spacing:.5px;padding-top:12px;padding-bottom:12px}
.map-row{border-top:1px solid #f0f3f8;font-size:13px}
.map-row code{background:transparent;border:0;padding:0;font-size:13px}
.map-arrow{color:#9baac0;text-align:center}
.map-target{background:var(--tint);border:1px solid #dce5ff;border-radius:5px;padding:5px 8px;color:#244cce;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.source-strip{padding:15px 22px;background:#f8fafc;border-top:1px solid var(--line);font-size:12px;line-height:1.8;color:var(--muted)}
.source-strip strong{display:block;color:var(--ink);font-weight:600}
.example-caption{grid-column:1/-1;font-size:13px;color:var(--muted);margin:17px 0 0}
.reading-layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:50px;margin-top:44px}
.contents{align-self:start;position:sticky;top:24px;font-size:13px;padding-top:7px}
.contents strong{display:block;font-weight:650;margin-bottom:13px}
.contents nav{display:flex;flex-direction:column;gap:2px;font-size:13px}
.contents nav a{padding:7px 0;border:0}
.article-body{min-width:0}
.article-section{padding-bottom:30px;margin-bottom:31px;border-bottom:1px solid var(--line);scroll-margin-top:24px}
.article-section h2{font-size:27px;margin-bottom:16px;letter-spacing:-.7px}
.article-section h2 .number{font-size:13px;letter-spacing:.7px;color:var(--accent);display:block;margin-bottom:8px}
.article-section p,.article-section li{font-size:16px;color:#4c5d75;line-height:1.85}
.article-section ul,.article-section ol{padding-left:23px}
.article-section li{padding-left:3px;margin-bottom:9px}
.article-section strong{color:var(--ink)}
.article-section code{font-size:14px}
.scope-note{background:#f8fafc;border-left:3px solid #9bb2d3;padding:17px 20px;margin:20px 0}
.scope-note p{font-size:14px;margin:0;line-height:1.8}
.export-comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:20px 0}
.export-file{background:white;border:1px solid var(--line);padding:21px;border-radius:8px;min-width:0}
.export-file .file-type{font-size:11px;color:var(--accent);font-weight:650;letter-spacing:.8px;margin-bottom:8px}
.export-file h3{font-size:18px;line-height:1.4;margin-bottom:10px}
.export-file p{font-size:14px;margin-bottom:15px}
.export-file a{font-size:14px;font-weight:600;color:#244cce}
.example-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);background:white;border-radius:8px;margin-top:20px}
.example-table{border-collapse:collapse;width:100%;min-width:480px;font-size:13px;text-align:left}
.example-table th,.example-table td{padding:12px 15px;border-bottom:1px solid var(--line);vertical-align:top}
.example-table th{font-weight:650;background:#f8faff;color:#526583}
.example-table tr:last-child td{border-bottom:0}
.example-table td{color:#4c5d75}
.example-table code{font-size:12px;background:transparent;border:0;padding:0}
.example-table caption{text-align:left;padding:12px 15px;font-size:13px;color:var(--muted)}
.small-note{font-size:13px!important;color:var(--muted)!important;line-height:1.7!important}
.faq-section h2{font-size:27px}
.faq-section summary{font-size:16px}
.faq-section details p{font-size:15px;line-height:1.85;max-width:740px}
.bottom-cta{margin-top:32px;padding:27px 30px;background:#162d64;color:white;border-radius:10px;display:flex;gap:24px;align-items:center;justify-content:space-between}
.bottom-cta h2{font-size:23px;letter-spacing:-.5px;margin-bottom:8px;color:#fff}
.bottom-cta p{font-size:14px;color:#b9c9e4;margin:0}
.bottom-cta .button{background:#fff;border-color:#fff;color:#203c81;flex-shrink:0;box-shadow:none}
.references{font-size:13px;color:var(--muted);margin-top:25px;line-height:1.8}
.references p{margin-bottom:8px}
.references a{margin-right:12px}
@media(max-width:960px){.supplier-hero{gap:30px;grid-template-columns:minmax(0,1fr) minmax(300px,.95fr)}.supplier-hero h1{font-size:42px}.reading-layout{gap:30px;grid-template-columns:160px minmax(0,1fr)}}
@media(max-width:760px){.supplier-shell{padding-top:30px}.supplier-hero{grid-template-columns:1fr;gap:28px;padding-bottom:30px}.supplier-hero h1{font-size:36px;letter-spacing:-1.1px;max-width:600px}.supplier-hero .lede{font-size:16px}.mapping-sheet{max-width:500px;width:100%}.reading-layout{grid-template-columns:1fr;gap:26px;margin-top:27px}.contents{position:static;padding:0}.contents nav{flex-direction:row;flex-wrap:wrap;gap:0 18px}.contents strong{margin-bottom:7px}.article-section h2,.faq-section h2{font-size:25px}.article-section p,.article-section li{font-size:15px}.bottom-cta{align-items:flex-start;flex-direction:column;padding:24px}.bottom-cta .button{width:100%}.example-caption{margin-top:0}.export-comparison{gap:12px}.export-file{padding:18px}}
@media(max-width:480px){.export-comparison{grid-template-columns:1fr}.sheet-top{padding:15px 16px}.map-row,.sheet-columns{padding-left:16px;padding-right:16px;gap:7px;grid-template-columns:minmax(0,1fr) 16px minmax(0,1.15fr)}.source-strip{padding:14px 16px}.hero-actions .button{width:100%}.hero-actions{gap:12px}.supplier-hero h1{font-size:34px}.article-section{padding-bottom:24px;margin-bottom:25px}}
