*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:#fff;color:#242424;font-family:-apple-system,BlinkMacSystemFont,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{--masthead-height:60px;--portal-control-font-size:11px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.masthead{flex:none;position:sticky;top:0;z-index:3;height:60px;background:#fff}
.header-space{display:flex;align-items:center;width:calc(100% - 40px);height:60px;margin-inline:auto}
.brand-logo{display:block;flex:none;width:128px;height:auto;filter:brightness(0)}
.project-name{display:flex;align-items:center;flex:none;margin-left:auto;white-space:nowrap;padding:4px 7px;border:1px solid #000;border-radius:0;background:#000;color:#fff;}
.project-name,.project-name:hover,.project-name:focus,.project-name:active,.project-name:visited{text-decoration:none}
.start{flex:none;display:block;width:calc(100% - 40px);margin:0 auto;padding:24px 0 48px}
.start>section{width:100%}
h1,h2{font-size:18px;font-weight:600;line-height:22px;margin:0 0 20px}
.section-title{display:block;padding:0 0 0 6px;color:#111;font-family:"Helvetica Neue","Hiragino Sans","Yu Gothic",sans-serif;font-size:22px;font-style:normal;font-weight:650;line-height:33px;letter-spacing:0;font-feature-settings:"palt" 0}
.section-title span{position:relative;top:3px}
@media(min-width:761px){.section-title{font-size:30px;line-height:45px}.section-title span{top:5px}}
.selector{width:420px;max-width:calc(100vw - 48px);margin-inline:auto;border:1px solid #c2c2c2;border-radius:6px;overflow:hidden;background:#fff}
.page-link{display:flex;align-items:center;position:relative;width:100%;height:44px;padding:0 44px 0 16px;background:#fff;color:#333;text-align:left;text-decoration:none;white-space:nowrap;-webkit-tap-highlight-color:rgba(0,0,0,.04);touch-action:manipulation}
.page-link+.page-link{border-top:1px solid #dbdbdb}
.item-icon,.chevron{display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;color:#646464}
.item-icon{width:16px;height:16px;margin-right:10px}
.chevron{position:absolute;right:16px;width:12px;height:12px;color:#6e6e6e}
a.page-link:hover,a.page-link:active{background:#f7f7f7}
a.page-link:focus-visible{outline:2px solid #555;outline-offset:-3px}
.unavailable{color:#8a8a8a;cursor:default}
@media(min-width:761px){body{--masthead-height:72px}.masthead{height:72px}.header-space{width:min(1024px,calc(100% - 64px));height:72px}.brand-logo{width:144px;transform:translate(2px,.5px)}}

.project-name:focus-visible{outline:2px solid #555;outline-offset:3px}

.unavailable .item-icon{color:#969696}

/* Use one complete type style so matching sizes also render consistently. */
.project-name,.page-link{font-family:"Helvetica Neue","Hiragino Sans","Yu Gothic",sans-serif;font-size:var(--portal-control-font-size);font-weight:500;line-height:16px;letter-spacing:.3px}

/* Compact audience badge; Portal row typography remains at its approved size. */
.project-name{font-size:10px;line-height:14px}

/* Match the Script article title’s start position below the masthead. */
@media(min-width:761px){.start{width:min(576px,calc(100% - 40px));padding-top:60px}}

/* Keep the audience badge centered on the logo after its desktop optical offset. */
@media(min-width:761px){.project-name{transform:translateY(.5px)}}
