.jbsadd-document{width:min(100% - 2.5rem, 66rem);margin:3rem auto 4rem;color:#17251e;overflow-wrap:anywhere}
.jbsadd-document-heading,.jbsadd-rules .common-laws-header{border-bottom:2px solid #255a43;padding:0 0 1.25rem;margin-bottom:1.5rem;text-align:left}
.jbsadd-document-heading p,.jbsadd-rules .common-laws-header p{color:#456457;margin:0 0 .5rem}
.jbsadd-document-heading h1,.jbsadd-rules .common-laws-header h1{font-size:clamp(2rem,6vw,3.25rem);margin:0}
.jbsadd-history-nav:not([hidden]){display:flex;align-items:center;gap:.4rem;min-width:0;border:1px solid #c9d9d0;padding:.5rem;border-radius:.5rem}
.jbsadd-year-track{display:flex;gap:.35rem;min-width:0;overflow:auto;scrollbar-width:thin}
.jbsadd-history-nav button{flex:none;min-width:2.65rem;min-height:2.75rem;padding:.3rem .6rem;background:white;color:#254a38;border:1px solid #b8ccc1;border-radius:.3rem;font:inherit;cursor:pointer}
.jbsadd-history-nav button[aria-pressed=true]{background:#255a43;color:white;border-color:#255a43}
.jbsadd-history-summary{margin:1rem 0;color:#456457}
.jbsadd-history-year{border-top:1px solid #c9d9d0;padding:1.4rem 0;display:grid;grid-template-columns:9rem minmax(0,1fr);gap:1rem}
.jbsadd-history-year[hidden]{display:none}
.jbsadd-history-year h2,.jbsadd-history-photos h2{font-size:1.5rem;color:#255a43;margin:0}
.jbsadd-history-year ol{list-style:none;padding:0;margin:0}
.jbsadd-history-year li{display:grid;grid-template-columns:8rem minmax(0,1fr);gap:.5rem;padding:.5rem 0;line-height:1.65}
.jbsadd-event-date{color:#42634f;font-weight:650}
.jbsadd-history-photos{border-top:2px solid #255a43;margin-top:1.5rem;padding-top:1.5rem}
.jbsadd-history-photos div{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;margin-top:1rem}
.jbsadd-history-photos figure{margin:0}
.jbsadd-history-photos img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f3f6f4}
.jbsadd-history-photos p{color:#456457;margin-top:1rem}
.jbsadd-editor-link{display:inline-block;margin-bottom:1rem;text-decoration:underline}
.jbsadd-rules .law-document-body{line-height:1.85}
.jbsadd-rules .law-document-body nav{background:#f2f7f3;border-left:3px solid #255a43;padding:1rem 1.5rem;margin:1rem 0 2rem}
.jbsadd-rules .law-document-body h3{color:#255a43;border-top:1px solid #c9d9d0;padding-top:1rem;margin:2rem 0 1rem}
.jbsadd-rules .law-document-body h4,.jbsadd-rules .law-document-body h5{margin:1.1rem 0 .35rem;font-size:1.05rem}
.jbsadd-footer{background:#172920;color:#eef5f0;border-top:4px solid #5e9677;padding:2.6rem 1.25rem 1.4rem;font-size:.95rem;line-height:1.7}
.jbsadd-footer-inner{max-width:72rem;margin:auto}
.jbsadd-footer-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:2.5rem}
.jbsadd-footer h2{font-size:1.17rem;margin:0 0 .8rem;color:#fff}
.jbsadd-footer address{font-style:normal;margin-bottom:.65rem}
.jbsadd-footer p{margin:.2rem 0}
.jbsadd-footer-members ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem 1.25rem;list-style:none;margin:0;padding:0}
.jbsadd-footer a{color:inherit;text-decoration:underline;text-underline-offset:.2em;overflow-wrap:anywhere}
.jbsadd-footer a:hover,.jbsadd-footer a:focus-visible{color:#bce8cd}
.jbsadd-footer-links{display:flex;flex-wrap:wrap;gap:.6rem 1.5rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #587063;color:#dce9e0}
@media(max-width:640px){.jbsadd-document{margin-top:2rem}.jbsadd-history-year{grid-template-columns:1fr;gap:.4rem}.jbsadd-history-year li{grid-template-columns:1fr;gap:0}.jbsadd-event-date:empty{display:none}.jbsadd-footer-grid,.jbsadd-footer-members ul{grid-template-columns:1fr}.jbsadd-footer-grid{gap:1.4rem}}

.jbsadd-home-stories {
    width: min(100% - 2.5rem, 72rem);
    margin: clamp(2rem, 5vw, 4rem) auto;
    color: #17251e;
}
.jbsadd-home-story {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(1.5rem, 5vw, 4.5rem);
    border-top: 1px solid #c9d9d0;
    padding: clamp(1.5rem, 4vw, 3rem) 0;
}
.jbsadd-home-story:first-child .jbsadd-story-copy { grid-column: 2; grid-row: 1; }
.jbsadd-home-story:first-child figure { grid-column: 1; grid-row: 1; }
.jbsadd-story-copy h2 { margin: 0 0 .85rem; font-size: clamp(1.45rem, 3vw, 2.15rem); line-height: 1.3; }
.jbsadd-story-copy p { color: #354a3e; line-height: 1.8; margin: 0 0 1.25rem; word-break: keep-all; overflow-wrap: anywhere; }
.jbsadd-home-story figure { margin: 0; }
.jbsadd-home-story img { display: block; width: 100%; height: auto; border-radius: .35rem; }
.jbsadd-home-story figcaption { margin-top: .55rem; font-size: .85rem; color: #456457; }
.jbsadd-story-action, .jbsadd-story-link { display: inline-flex; align-items: center; gap: .6rem; min-height: 44px; font-weight: 700; }
.jbsadd-story-action { background: #255a43; color: #fff; padding: .55rem 1rem; border-radius: .35rem; }
.jbsadd-story-action:hover, .jbsadd-story-action:focus-visible { background: #174330; color: #fff; }
.jbsadd-story-link { color: #255a43; text-decoration: underline; text-underline-offset: .2em; }
@media (max-width: 700px) {
    .jbsadd-home-story { grid-template-columns: minmax(0, 1fr); gap: 1.15rem; }
    .jbsadd-home-story:first-child .jbsadd-story-copy, .jbsadd-home-story:first-child figure { grid-column: auto; grid-row: auto; }
}

.jbsadd-membership {
    width: min(100% - 2.5rem, 72rem);
    margin: 2rem auto 3rem;
    padding: clamp(1rem, 3vw, 1.75rem) 0;
    border-block: 1px solid #c9d9d0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, .9fr);
    gap: .75rem 2rem;
    align-items: center;
}
.jbsadd-membership-heading { display: flex; align-items: center; gap: .85rem; }
.jbsadd-membership-heading img { width: clamp(3rem, 7vw, 4.5rem); height: auto; flex: none; }
.jbsadd-membership-heading h2 { margin: 0; color: #17251e; font-size: clamp(1.2rem, 3vw, 1.75rem); line-height: 1.35; word-break: keep-all; }
.jbsadd-membership-links { list-style: none; padding: 0; margin: 0; }
.jbsadd-membership-links li + li { border-top: 1px solid #dce6df; }
.jbsadd-membership-links a { display: flex; justify-content: space-between; align-items: center; gap: .75rem; min-height: 44px; padding: .4rem .25rem; color: #255a43; font-weight: 700; background: transparent; }
.jbsadd-membership-links a:hover, .jbsadd-membership-links a:focus-visible { text-decoration: underline; text-underline-offset: .24em; }
.jbsadd-membership-links a:focus-visible { outline: 2px solid #255a43; outline-offset: 2px; }
@media (max-width: 700px) { .jbsadd-membership { grid-template-columns: minmax(0, 1fr); } }
