:root{color:#2f2a25;background:#f7f3ed;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:20rem}button,input{font:inherit}.login-shell{width:min(100% - 2rem,32rem);margin:0 auto;padding:clamp(2rem,10vh,6rem) 0 3rem}form{display:flex;flex-direction:column}h1{margin:0 0 .75rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,8vw,2.75rem);line-height:1.1}p{margin:0 0 1.5rem;font-size:1.125rem;line-height:1.55}.eyebrow{margin-bottom:1.5rem;color:#695f55;font-size:.875rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}label:not(.checkbox-row){margin-bottom:.5rem;font-size:1.05rem;font-weight:700}input:not([type=checkbox]){width:100%;min-height:3.5rem;margin-bottom:1rem;padding:.75rem;border:2px solid #756b61;border-radius:.5rem;background:#fff;color:#211d19;font-size:max(1.125rem,16px)}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #176d78;outline-offset:3px}.code-input{letter-spacing:.35em;text-align:center;font-size:1.5rem!important}button,.button-link{min-height:3.5rem;margin-top:.5rem;padding:.75rem 1rem;border:2px solid #284c43;border-radius:.5rem;background:#284c43;color:#fff;font-size:1.125rem;font-weight:750;text-align:center;text-decoration:none;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.secondary{background:transparent;color:#284c43}.text-button{border-color:transparent;background:transparent;color:#315e67;text-decoration:underline}.neutral{padding:1rem;border-left:4px solid #8b795f;background:#eee6da}.error{margin-bottom:.5rem;color:#a22222;font-weight:700}.checkbox-row{display:flex;align-items:flex-start;gap:.875rem;margin:.5rem 0 1.25rem;padding:1rem;border:2px solid #756b61;border-radius:.5rem;background:#fff;font-size:1.125rem;cursor:pointer}.checkbox-row input{width:1.5rem;height:1.5rem;margin:0;flex:0 0 auto;accent-color:#284c43}.checkbox-row span{display:flex;flex-direction:column;gap:.25rem}.checkbox-row small{color:#695f55;font-size:.95rem}@media(max-height:35rem){.login-shell{padding-top:1.5rem}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.directory-shell{width:min(100%,62rem);margin:0 auto;padding:0 1rem 4rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid #ded5ca}.site-name{color:#2f2a25;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;text-decoration:none}.site-header nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem}.site-header nav a{display:flex;align-items:center;min-height:2.75rem;padding:.6rem .75rem;border-radius:999px;color:#564e47;font-weight:700;text-decoration:none}.site-header nav a.active{background:#7a5c3e;color:#fff}.directory-shell main{padding-top:2rem}.directory-shell h1{margin-bottom:1.5rem}.search-label{display:block;margin-bottom:.5rem;font-size:1rem;font-weight:700}.directory-search{border-radius:999px!important;border-color:#b6aa9d!important}.directory-message{margin:2rem 0;text-align:center}.directory-message p{margin-bottom:.75rem}.directory-message button{width:auto;min-height:2.75rem}.branch{margin-top:2rem}.branch h2{margin:0 0 .5rem;color:#7a5c3e;font-size:.9rem;letter-spacing:.08em;text-transform:uppercase}.member-list{overflow:hidden;border:1px solid #ded5ca;border-radius:.75rem;background:#fff}.member-row{position:relative;display:flex;align-items:center;gap:.875rem;min-height:5.25rem;padding:.65rem;border-bottom:1px solid #e5ddd2}.member-row:last-child{border-bottom:0}.avatar{display:flex;flex:0 0 3rem;align-items:center;justify-content:center;width:3rem;height:3rem;border:1px solid #ded5ca;border-radius:50%;background:#faf7f2;color:#7a5c3e;font-weight:800}.member-details{min-width:0;flex:1}.member-details h3{display:flex;align-items:center;gap:.4rem;margin:0;font-size:1.05rem}.profile-link{display:inline-flex;align-items:center;min-height:2.75rem;color:#2f2a25;text-decoration:none}.profile-link:after{position:absolute;top:0;right:0;bottom:0;left:0;content:""}.profile-link:hover{text-decoration:underline}.captain{color:#b87900;font-size:1rem}.contact-links{display:flex;flex-wrap:wrap;gap:.35rem .75rem}.contact-links a{position:relative;z-index:1;display:inline-flex;align-items:center;min-height:2.75rem;color:#185ba2;font-weight:750;text-underline-offset:.18em}.contact-links a span{margin-left:.3rem;color:#5f574f;font-weight:500}.no-contact{color:#6b6259;line-height:2.75rem}@media(max-width:40rem){.site-header{align-items:flex-start;flex-direction:column}.site-name{padding-top:.4rem}.site-header nav{width:100%;justify-content:space-between}.site-header nav a{padding-inline:.55rem;font-size:.9rem}.directory-shell main{padding-top:1.5rem}.contact-links{flex-direction:column;gap:0}.contact-links a{width:fit-content}}@media(min-width:50rem){.member-row{padding-inline:1rem}}.profile-shell main{padding-top:2rem}.profile-card{overflow:hidden;border:1px solid #ded5ca;border-radius:1rem;background:#fff}.profile-heading{position:relative;display:grid;grid-template-columns:8rem 1fr auto;align-items:center;gap:1.5rem;padding:1.5rem;background:#f1e9df}.profile-photo{display:flex;width:8rem;height:8rem;align-items:center;justify-content:center;overflow:hidden;border:2px solid #fff;border-radius:50%;background:#faf7f2;color:#7a5c3e;font-size:2rem;font-weight:800;text-transform:uppercase}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-branch{margin:0 0 .35rem;color:#695f55;font-size:.95rem;font-weight:750;letter-spacing:.05em;text-transform:uppercase}.profile-heading h1{margin:0}.life-dates,.birthday{margin:.65rem 0 0;color:#564e47;font-size:1rem}.edit-profile{min-width:5rem;min-height:2.75rem;margin:0}.profile-section{padding:1.5rem;border-top:1px solid #e5ddd2}.profile-section h2{margin:0 0 1rem;font-family:Georgia,Times New Roman,serif;font-size:1.5rem}.profile-contact,.relationship-group ul{margin:0;padding:0;list-style:none}.profile-contact li{display:grid;grid-template-columns:minmax(5rem,8rem) 1fr;gap:1rem;align-items:center;min-height:3rem}.profile-contact li>span{color:#695f55;font-weight:700;text-transform:capitalize}.profile-contact a,.relationship-group a,.address a{color:#185ba2;font-size:1.05rem;font-weight:700;text-underline-offset:.18em}.address{display:flex;flex-direction:column;gap:.35rem;margin:1rem 0 0;white-space:pre-line}.remembrance{background:#faf7f2}.remembrance p{margin:0;white-space:pre-line}.relationships{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.relationship-group h3{margin:0 0 .5rem;color:#695f55;font-size:1rem}.relationship-group li{margin-bottom:.5rem}.relationships>p{margin:0}@media(max-width:40rem){.profile-heading{grid-template-columns:5.5rem 1fr;gap:1rem;padding:1rem}.profile-photo{width:5.5rem;height:5.5rem;font-size:1.4rem}.edit-profile{grid-column:1 / -1}.profile-section{padding:1.25rem 1rem}.relationships{grid-template-columns:1fr;gap:1rem}.profile-contact li{grid-template-columns:1fr;gap:0;padding:.4rem 0}}
