:root{--void:#04080d;--panel:#0a1220;--line:#1a2740;--blue:#5a9df5;--white:#fcfeff;--steel:#b0b8c2;--dim:#8a939f;--sans:"Jost","Futura",-apple-system,sans-serif;--serif:"Cormorant Garamond",Garamond,serif}
*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--void);color:var(--steel);font:300 16px/1.75 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}:focus-visible{outline:2px solid var(--blue);outline-offset:4px}::selection{background:#1e6fe0;color:#fff}
.wrap{width:min(100%,1120px);margin-inline:auto;padding-inline:clamp(20px,4.5vw,46px)}.nav{border-bottom:1px solid var(--line);background:rgba(4,8,13,.96)}.nav__in{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px}.brand img{width:clamp(150px,20vw,210px)}.back{font-size:.72rem;color:var(--steel);line-height:1.4}.back:hover{color:var(--white)}.skip{position:absolute;top:-80px;left:20px;background:var(--panel);padding:12px 20px;z-index:10}.skip:focus{top:12px}
.hero{padding:clamp(64px,9vw,110px) 0 42px;background:radial-gradient(ellipse at 70% 10%,rgba(30,111,224,.12),transparent 65%)}.eyebrow{margin:0 0 18px;color:var(--blue);font-size:.65rem;letter-spacing:.22em;text-transform:uppercase;font-weight:400}h1{max-width:850px;margin:0;color:var(--white);font-family:var(--serif);font-size:clamp(2.65rem,6.4vw,4.8rem);font-weight:400;line-height:1.08;letter-spacing:.015em}h1 span{color:var(--blue)}.lede{max-width:68ch;margin:24px 0 0;font-size:clamp(1rem,1.4vw,1.13rem);line-height:1.8}
.progression{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:36px 0 0}.level{display:block;border:1px solid var(--line);background:var(--panel);padding:22px}.level:hover{border-color:var(--blue)}.level small{display:block;color:var(--blue);font-size:.63rem;letter-spacing:.16em;text-transform:uppercase}.level strong{display:block;margin-top:9px;color:var(--white);font-size:1rem;font-weight:400}.level span{display:block;margin-top:5px;font-size:.82rem;color:var(--steel)}
.directory{padding:32px 0 70px}.directory h2,.proprietary h2{margin:0;color:var(--white);font-size:clamp(1.45rem,3vw,2rem);font-weight:300;line-height:1.3}.intro{margin:12px 0 24px;max-width:72ch;font-size:.91rem}.table-frame{border:1px solid var(--line);border-radius:5px;overflow:hidden}table{border-collapse:collapse;width:100%;table-layout:fixed;text-align:left}caption{text-align:left;padding:18px 24px;background:rgba(30,111,224,.07);font-size:.73rem;color:var(--steel)}th,td{padding:17px 24px;border-top:1px solid var(--line)}thead th{background:var(--panel);font-weight:400;font-size:.76rem;color:var(--steel)}thead th:first-child{width:44%}thead th:nth-child(2){width:28%}thead th:last-child{width:28%}tbody th{font-weight:400;color:var(--white);font-size:.94rem}tbody td{font-size:.9rem}tbody tr:nth-child(even){background:rgba(10,18,32,.5)}.stage{display:inline-block;white-space:nowrap;font-size:.76rem;border:1px solid rgba(90,157,245,.25);border-radius:3px;padding:3px 10px;color:#c2dcff;background:rgba(30,111,224,.07)}.stage--b{color:#b8ead7;border-color:rgba(66,201,139,.22);background:rgba(66,201,139,.045)}.availability{white-space:nowrap;color:var(--steel)}.note{margin:20px 0 0;font-size:.78rem;line-height:1.75;color:var(--dim);max-width:110ch}
.proprietary{display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;align-items:center;padding:36px;border:1px solid rgba(90,157,245,.35);background:radial-gradient(ellipse at 0 0,rgba(30,111,224,.14),transparent 70%),var(--panel);margin-top:40px}.proprietary img{width:240px}.proprietary .eyebrow{margin-bottom:12px}.proprietary p:last-child{margin:14px 0 0;font-size:.9rem}.actions{display:flex;gap:14px;flex-wrap:wrap;margin:36px 0 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid rgba(90,157,245,.35);padding:14px 22px;border-radius:4px;color:var(--white);font-size:.67rem;font-weight:400;letter-spacing:.13em;text-transform:uppercase;line-height:1.5}.btn:hover{border-color:var(--blue);background:rgba(30,111,224,.12)}.btn--blue{background:#1e6fe0;border-color:#1e6fe0}.btn--blue:hover{background:#3184f2}.foot{border-top:1px solid var(--line);padding:28px 0;color:var(--dim);font-size:.73rem}.foot__in{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px}.foot a:hover{color:var(--white)}
@media(max-width:640px){.progression{grid-template-columns:1fr;gap:10px}.level{padding:18px}.proprietary{grid-template-columns:1fr;gap:24px;padding:26px}.proprietary img{width:min(280px,100%)}caption{padding:16px 12px}th,td{padding:14px 12px}thead th{font-size:.69rem;line-height:1.5}thead th:first-child{width:40%}thead th:nth-child(2){width:31%}thead th:last-child{width:29%}tbody th,tbody td{font-size:.84rem}.stage{font-size:.71rem;padding:3px 7px}.actions .btn{width:100%}.nav__in{gap:16px}.back{font-size:.67rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Reading-first typography for the credential directory. Keep the approved
   display heading and artwork; never shrink table data on mobile. */
:root{--steel:#c4ccd7;--dim:#aeb9c8}
body{font-size:18px;font-weight:400;line-height:1.75}
.back{font-size:.875rem;font-weight:400;line-height:1.6}
.eyebrow{font-size:.875rem;font-weight:500;letter-spacing:.12em;line-height:1.6}
.lede,.intro,.proprietary p:last-child{font-size:1.125rem;font-weight:400;line-height:1.75}
.directory h2,.proprietary h2{font-weight:400}
.level small{font-size:.875rem;font-weight:500;letter-spacing:.08em;line-height:1.6}
.level strong{font-size:1.125rem;font-weight:500;line-height:1.5}
.level span{font-size:1rem;font-weight:400;line-height:1.65}
caption{font-size:1rem;font-weight:500;line-height:1.6}
thead th{font-size:.9375rem;font-weight:500;line-height:1.6}
tbody th{font-size:1rem;font-weight:500;line-height:1.6}
tbody td{font-size:1rem;font-weight:400;line-height:1.6}
.stage{font-size:1rem;font-weight:500;line-height:1.5;padding:4px 8px}
.note{font-size:.9375rem;font-weight:400;line-height:1.75;max-width:90ch}
.btn{font-size:.875rem;font-weight:500;letter-spacing:.075em;line-height:1.6;min-height:48px;white-space:normal}
.foot{font-size:.875rem;font-weight:400;line-height:1.7}
@media(max-width:400px){th,td{padding-inline:8px}.stage{padding-inline:6px}}
