.site-alert{max-width:var(--max);margin:1rem auto;padding:1rem 1.2rem;border-left:5px solid var(--blue);background:#eaf2f4;color:#294b5b}.site-alert.success{border-color:#287a55;background:#e9f6ef}.site-alert.error{border-color:#a33b3b;background:#fff0f0;color:#6f2222}.site-alert.info{border-color:#326f99}.site-alert ul{margin:.4rem 0 0;padding-left:1.2rem}.application-section{margin-top:5rem}.application-form{padding:clamp(1.2rem,3vw,2rem)}.application-form fieldset{margin:0 0 2rem;padding:0;border:0}.application-form legend{width:100%;margin:0 0 1rem;padding:0 0 .6rem;border-bottom:1px solid var(--line);font:700 1.35rem "Libre Franklin",sans-serif}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.form-grid .wide{grid-column:1/-1}.application-form label,.admin-form label{display:flex;flex-direction:column;gap:.35rem;color:#425e69;font-size:.9rem;font-weight:700}.application-form label>span,.admin-form label>span{color:#8c2f2f}.application-form input,.application-form select,.application-form textarea,.admin-form input,.admin-form select,.admin-form textarea,.directory-search input{width:100%;min-height:46px;padding:.7rem .8rem;border:1px solid #93aab4;border-radius:0;background:#fff;color:var(--ink);font:inherit}.application-form textarea,.admin-form textarea{min-height:120px;resize:vertical}.application-form input:disabled{background:#eef2f3;color:#536a74}.radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.radio-cards label,.check-grid label{display:flex;flex-direction:row;align-items:flex-start;padding:.8rem;border:1px solid var(--line);background:#fff}.radio-cards input,.check-grid input,.check-line input{width:auto;min-height:auto;margin:.25rem .55rem 0 0}.check-line{display:flex!important;flex-direction:row!important;align-items:flex-start;margin:1rem 0}.check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.committee-grid{grid-template-columns:repeat(3,1fr)}.field-label{margin:1.3rem 0 .55rem;font-weight:700}.agreement{font-size:1rem!important}.form-help,.privacy-note{color:#5b727c;font-size:.9rem}.button:disabled{cursor:not-allowed;opacity:.55}.dues-table{display:grid;gap:.7rem;margin:1rem 0}.dues-table>div{display:grid;grid-template-columns:1fr auto;gap:.1rem 1rem;padding:.85rem;border:1px solid var(--line)}.dues-table span{color:#647b85;font-size:.88rem}.dues-table b{grid-row:1/3;grid-column:2;align-self:center}.membership-card h2{margin:.1rem 0;font:700 1.35rem "Libre Franklin",sans-serif}.narrow-page{max-width:850px}.renewal-card{padding:2rem}.renewal-card h2{margin:.2rem 0}.renewal-price{font:700 3rem "Libre Franklin",sans-serif;color:var(--navy)}.member-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:2rem;padding:1rem 1.2rem;background:var(--ink);color:#fff}.member-toolbar>div{display:flex;gap:1rem}.member-toolbar>div:first-child{flex-direction:column;gap:0}.member-toolbar a{color:#d9edf5;font-weight:700}.directory-search{margin:0 0 1rem}.directory-search label{display:block;margin-bottom:.4rem;font-weight:700}.directory-search>div{display:flex}.directory-search input{flex:1}.directory-search .button{min-height:46px;border:0}.privacy-note{padding:.8rem 1rem;border-left:4px solid var(--signal);background:#fff8e3}.member-directory .person-card h2{margin:0;font:700 1.15rem "Libre Franklin",sans-serif}.empty-state{padding:3rem;border:1px solid var(--line);background:#fff;text-align:center}.empty-state h2{margin:0 0 .4rem;font:700 1.5rem "Libre Franklin",sans-serif}.admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:2rem}.compact-hero{padding-top:3.5rem;padding-bottom:3.5rem}.admin-list{display:grid;gap:.75rem}.admin-list article{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);background:#fff}.admin-list h3,.admin-list p{margin:.2rem 0}.admin-list article>a{font-weight:700;color:var(--blue)}.admin-form{align-self:start;padding:1.4rem}.admin-form h2{margin-top:0}.admin-form form{display:grid;gap:.85rem}.admin-form textarea{min-height:90px}
@media(max-width:900px){.admin-grid{grid-template-columns:1fr}.radio-cards,.check-grid,.committee-grid{grid-template-columns:repeat(2,1fr)}.member-toolbar{align-items:flex-start;flex-direction:column}.member-toolbar>div:last-child{flex-wrap:wrap}}
@media(max-width:600px){.form-grid,.radio-cards,.check-grid,.committee-grid{grid-template-columns:1fr}.member-toolbar>div:last-child{flex-direction:column;gap:.45rem}.directory-search>div{align-items:stretch;flex-direction:column}.dues-table>div{grid-template-columns:1fr}.dues-table b{grid-row:auto;grid-column:auto}}
.application-list{display:grid;gap:1rem}.application-list>article{display:grid;grid-template-columns:1fr auto;gap:1.5rem;padding:1.25rem}.application-list h2,.application-list p{margin:.2rem 0}.application-list form{display:grid;align-content:start;gap:.6rem;min-width:210px}.application-list form label{font-size:.85rem;font-weight:700}.application-list form select{width:100%;padding:.65rem;border:1px solid var(--line);background:#fff;font:inherit}.application-list details{margin-top:.8rem}.application-list summary{cursor:pointer;color:var(--blue);font-weight:700}.application-details{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 1.5rem;padding-top:.7rem}.application-details p{color:#4c6570}
.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.application-list>article,.application-details{grid-template-columns:1fr}.application-list form{min-width:0}}
.event{grid-template-columns:145px 1fr auto}.event-detail{grid-template-columns:145px 1fr}.event-date{display:grid;grid-template-columns:auto auto;align-items:baseline;justify-content:start;gap:0 .45rem;line-height:1.05;white-space:nowrap}.event-date strong{font-size:1.625rem;white-space:nowrap}.event-date span{order:-1;font-size:1.125rem;font-weight:600}.event-date i{grid-column:1/-1;margin-top:.3rem}@media(max-width:700px){.event,.event-detail{grid-template-columns:125px minmax(0,1fr)}}
.next-event .date{gap:.45rem;font-size:1.125rem;font-weight:600;white-space:nowrap}.next-event .date strong{font-size:1.625rem;font-weight:700}
.member-toolbar-nav{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;flex-wrap:wrap}.member-toolbar-nav>a,.member-menu>summary{display:flex;align-items:center;min-height:40px;padding:.45rem .6rem;color:#d9edf5;font-weight:700;white-space:nowrap}.member-menu{position:relative}.member-menu>summary{cursor:pointer;list-style:none}.member-menu>summary::-webkit-details-marker{display:none}.member-menu>summary:after{content:"\25BE";margin-left:.4rem;color:#8bc4da;font-size:.72rem}.member-menu[open]>summary,.member-toolbar-nav>a:hover,.member-toolbar-nav>a:focus-visible,.member-menu>summary:hover,.member-menu>summary:focus-visible{background:rgba(255,255,255,.1);color:#fff}.member-menu-panel{position:absolute;z-index:30;top:calc(100% + .35rem);right:0;display:grid;min-width:225px;padding:.4rem;border:1px solid var(--line);background:#fff;color:var(--ink);box-shadow:0 14px 35px rgba(13,28,56,.2)}.member-toolbar .member-menu-panel a{padding:.7rem .8rem;color:var(--ink);font-weight:700}.member-toolbar .member-menu-panel a:hover,.member-toolbar .member-menu-panel a:focus-visible{background:var(--mist);color:var(--blue)}
@media(max-width:900px){.member-toolbar-nav{width:100%;justify-content:flex-start}.member-menu{width:100%}.member-menu>summary{justify-content:space-between}.member-menu-panel{position:static;min-width:0;margin:.2rem 0 .5rem;padding:.25rem;box-shadow:none}.member-menu-panel a{display:block}.member-toolbar-nav>a{width:auto}}
.member-dashboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.member-feature{display:block;padding:1.6rem;transition:transform .2s ease,box-shadow .2s ease}.member-feature:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(25,58,75,.12)}.member-feature>span{color:var(--blue);font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.member-feature h2{margin:.35rem 0;font:700 1.45rem "Libre Franklin",sans-serif}.member-feature p{margin:0;color:#5b727c}.document-list{display:grid;gap:.85rem}.document-row{display:flex;align-items:center;justify-content:space-between;gap:1.2rem;padding:1.2rem 1.35rem}.document-row h2,.document-row h3{margin:.2rem 0;font:700 1.2rem "Libre Franklin",sans-serif}.document-row p{margin:0;color:#607783}.document-year{margin:1.5rem 0 .15rem;font:700 1.7rem "Libre Franklin",sans-serif}.library-filters{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:1rem;margin-bottom:2rem;padding:1.1rem}.library-filters label{display:flex;flex-direction:column;gap:.35rem;font-weight:700}.library-filters select{min-height:46px;padding:.65rem;border:1px solid #93aab4;background:#fff;font:inherit}.feature-photo{display:block;width:100%;height:330px;margin:1.5rem 0;object-fit:cover}.member-photo-banner{height:330px;margin:1.5rem 0 0;background-position:center;background-size:cover}.award-page-grid.single-feature{grid-template-columns:minmax(0,520px)}
@media(max-width:900px){.member-toolbar>div:last-child{gap:.75rem}.library-filters{grid-template-columns:1fr 1fr}.library-filters .button{grid-column:1/-1}.member-dashboard{grid-template-columns:1fr}}
@media(max-width:600px){.document-row{align-items:flex-start;flex-direction:column}.library-filters{grid-template-columns:1fr}.library-filters .button{grid-column:auto}.feature-photo,.member-photo-banner{height:240px}}

.member-admin-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,1fr);gap:2rem;align-items:start}.member-admin-grid .admin-list article{padding:1rem;border-bottom:1px solid #ccd6df;display:flex;justify-content:space-between;gap:1rem}.member-admin-grid input,.member-admin-grid select{max-width:100%}.member-admin-grid fieldset{min-width:0}.member-delete{margin-top:1.5rem}.member-delete summary{cursor:pointer;font-weight:700}@media(max-width:800px){.member-admin-grid{grid-template-columns:minmax(0,1fr)}}

/* Keep the complete member menu inside its panel at every page width. */
.member-toolbar{flex-wrap:wrap;align-items:flex-start}
.member-toolbar>div:first-child{flex:0 0 auto;min-width:0}
.member-toolbar>div:last-child{flex-wrap:wrap;min-width:0;max-width:100%}
.member-toolbar a{white-space:nowrap}
@media(min-width:901px){.member-toolbar>div:last-child{flex:1 1 30rem}}
@media(max-width:900px){.member-toolbar>div:last-child{width:100%}}

.member-highlight-section,.home-highlight-section{margin:3rem auto}.home-highlight-section{max-width:var(--max);padding:0 1.5rem}.member-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.member-highlight-grid.is-fallback{grid-template-columns:minmax(0,520px)}.member-highlight-card{margin:0;overflow:hidden}.member-highlight-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.member-highlight-card figcaption{padding:1.1rem}.member-highlight-card h3{margin:0 0 .35rem;font:700 1.25rem "Libre Franklin",sans-serif}.member-highlight-card strong{display:block;color:var(--blue)}.member-highlight-card p{margin:.5rem 0 0;color:#5b727c}.highlight-admin-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:2rem;align-items:start}.highlight-admin-list{display:grid;gap:1rem}.highlight-admin-list article{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding:1rem}.highlight-admin-list img{width:150px;height:112px;object-fit:cover}.highlight-admin-list h3,.highlight-admin-list p{margin:.3rem 0}.highlight-edit-preview{display:block;width:100%;max-height:300px;margin-bottom:1rem;object-fit:cover}@media(max-width:900px){.member-highlight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-highlight-grid.is-fallback{grid-template-columns:minmax(0,520px)}.highlight-admin-grid{grid-template-columns:1fr}}@media(max-width:600px){.member-highlight-grid,.member-highlight-grid.is-fallback{grid-template-columns:1fr}.highlight-admin-list article{grid-template-columns:100px 1fr}.highlight-admin-list img{width:100px;height:80px}}
.newsletter-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,520px);gap:2rem;align-items:start}.newsletter-status-card{display:flex;flex-direction:column;margin:0 0 1rem;padding:1rem;border-left:4px solid var(--signal);background:#fff}.newsletter-status-card span{color:#5b727c}.newsletter-composer fieldset{margin:1rem 0;padding:1rem;border:1px solid var(--line)}.newsletter-composer legend{padding:0 .4rem;font:700 1rem "Libre Franklin",sans-serif}.newsletter-fields.is-locked{opacity:.72}.newsletter-test,.newsletter-send{display:grid;gap:.75rem;margin-top:1rem;padding:1rem;background:#eef4f6}.newsletter-send{border-left:4px solid var(--signal)}.newsletter-send p{margin:0}.queue-controls{margin-bottom:1rem}.preference-card{padding:2rem}.preference-card h2{margin-top:0}.action-row>form{margin:0}.action-row>form .button{height:100%}@media(max-width:980px){.newsletter-admin-grid{grid-template-columns:1fr}}@media(max-width:600px){.newsletter-composer{padding:1rem}.newsletter-composer fieldset{padding:.75rem}}
.role-preview-switcher{display:flex;align-items:center;gap:.45rem;margin:0 0 0 .25rem;padding:.3rem .4rem;border:1px solid rgba(255,255,255,.28)}.role-preview-switcher label{display:flex;align-items:center;gap:.4rem;color:#d9edf5;font-size:.8rem;font-weight:700}.role-preview-switcher select{min-height:34px;padding:.25rem;border:1px solid #8da7b4;background:#fff;color:var(--ink);font:inherit}.role-preview-switcher button{min-height:34px;padding:.3rem .65rem;border:0;background:var(--signal);color:var(--ink);font-weight:700;cursor:pointer}@media(max-width:900px){.role-preview-switcher{width:100%;margin:.3rem 0}.role-preview-switcher label{flex:1}.role-preview-switcher select{flex:1}}
