.roster-directory{padding-block:48px 95px;scroll-margin-top:30px}.roster-section-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:40px;display:flex}.roster-section-heading h1{letter-spacing:-2.8px;font-size:clamp(46px,5vw,68px)}.roster-section-heading h1 span{color:#b54c23}.roster-section-heading>p{color:var(--muted);padding-bottom:4px;font-size:15px;line-height:1.8}.roster-section-heading strong{color:var(--ink);font-weight:600}.roster-result-count{color:var(--muted);margin-block:20px 12px;font-size:12px}.roster-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.roster-card{isolation:isolate;border-radius:10px;flex-direction:column;transition:transform .22s,box-shadow .22s;display:flex;position:relative;overflow:hidden}.roster-card-heading{z-index:1;padding:22px 22px 0;position:relative}.roster-card-heading>p{margin-bottom:9px;font-size:11px;font-weight:600}.roster-card-heading h2{letter-spacing:-1.8px;font-size:42px}.roster-card-portrait{aspect-ratio:1;object-fit:cover;object-position:top;transform-origin:bottom;border-radius:150px 150px 8px 8px;width:calc(100% - 36px);height:auto;margin:18px auto 0;transition:transform .35s}.roster-card-copy{z-index:1;background:#fffdf9c9;flex:1;padding:20px 22px;position:relative}.roster-card-copy>p{font-size:13px;line-height:1.6}.roster-card-copy blockquote{border-top:1px solid #35251a20;margin:17px 0 0;padding-top:14px;font-size:14px;font-weight:600;line-height:1.5}.roster-card-copy blockquote>span{color:var(--muted);margin-bottom:7px;font-size:10px;font-weight:400;display:block}.roster-card-featured{grid-column:span 2;grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;display:grid}.roster-card-featured .roster-card-heading{padding:30px 0 0 28px}.roster-card-featured h2{letter-spacing:-3px;font-size:70px}.roster-card-featured .roster-card-portrait{aspect-ratio:3/4;object-position:48% center;grid-area:1/2/3;align-self:center;width:calc(100% - 24px);height:auto;margin:24px 24px 24px 0}.roster-card-featured .roster-card-copy{background:0 0;grid-area:2/1;align-self:end;padding:28px}.roster-card-featured .roster-card-copy>p{font-size:16px}.roster-card-featured blockquote{background:var(--paper);border:0;border-radius:14px 14px 14px 0;margin-top:24px;padding:17px;box-shadow:0 4px #35251a08}.roster-grid-note{background:#ecd99f;border-radius:10px;flex-direction:column;justify-content:center;padding:30px;display:flex}.roster-grid-note>span{color:#a8431a;margin-bottom:36px;font-size:74px;line-height:1}.roster-grid-note p{font-family:var(--display);letter-spacing:-1px;font-size:29px;line-height:1.1}.roster-grid-note strong{margin-top:22px;font-size:13px;font-weight:400}.roster-directory-note{text-align:center;color:var(--muted);margin-top:30px;font-size:13px}.roster-directory-note>span{color:#a8431a;margin-right:8px;font-size:25px}.roster-directory-note a{text-underline-offset:4px;color:var(--ink);margin-left:8px;text-decoration:underline;display:inline-block}.roster-personal{background:var(--ink);color:var(--cream);border-radius:12px;grid-template-columns:1.15fr 1fr;align-items:center;gap:70px;padding:65px;display:grid}.roster-personal .eyebrow{letter-spacing:1.3px;font-size:10px}.roster-personal h2{letter-spacing:-2px;font-size:clamp(35px,3.5vw,48px)}.roster-personal h2 span{color:#eebc96}.roster-personal-copy>p:not(.eyebrow){color:#e0cebd;max-width:400px;margin-block:24px;font-size:15px}.roster-note-example{color:var(--ink);background:#f5e8bd;padding:30px;position:relative;transform:rotate(3deg);box-shadow:8px 10px #0000001f}.roster-note-tape{background:#fdf4e67d;width:95px;height:27px;position:absolute;top:-14px;left:calc(50% - 48px);transform:rotate(-7deg)}.roster-note-expert{align-items:center;gap:12px;display:flex}.roster-note-expert img{border-radius:50%;width:54px;height:54px}.roster-note-expert strong{font-size:14px;display:block}.roster-note-expert div>span{color:var(--muted);font-size:11px;display:block}.roster-note-text{letter-spacing:-.4px;margin-block:25px;font-size:20px;line-height:1.6}.roster-note-caption{color:var(--muted);border-top:1px solid #35251a26;padding-top:16px;font-size:11px}.roster-closing{text-align:center;padding-block:100px 80px}.roster-closing-faces{justify-content:center;margin-bottom:27px;padding-left:12px;display:flex}.roster-closing-faces img{border:3px solid var(--cream);border-radius:50%;margin-left:-12px}.roster-closing h2{font-size:clamp(34px,4vw,52px)}.roster-closing .button{margin-top:30px}@media (hover:hover) and (prefers-reduced-motion:no-preference){.roster-card:hover{transform:translateY(-5px);box-shadow:0 12px 26px #35251a14}.roster-card:hover .roster-card-portrait{transform:scale(1.035)}}@media (max-width:1100px){.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-card-portrait{max-width:320px}.roster-card-featured .roster-card-portrait{max-width:none}.roster-personal{gap:35px;padding:42px}}@media (max-width:760px){.roster-directory{padding-block:35px 60px}.roster-section-heading{display:block}.roster-section-heading>p{margin-top:24px}.roster-section-heading .eyebrow{letter-spacing:1px;font-size:10px}.roster-personal{grid-template-columns:minmax(0,1fr);gap:45px;padding:36px 28px}.roster-note-example{justify-self:center;width:min(100%,390px);padding:24px;transform:rotate(2deg)}.roster-closing{padding-block:65px}}@media (max-width:520px){.roster-grid{grid-template-columns:minmax(0,1fr);gap:20px}.roster-card-featured{grid-column:auto;display:flex}.roster-card-heading,.roster-card-featured .roster-card-heading{padding:24px 24px 0}.roster-card-heading h2,.roster-card-featured h2{letter-spacing:-2px;font-size:48px}.roster-card-portrait,.roster-card-featured .roster-card-portrait{aspect-ratio:1;width:calc(100% - 48px);max-width:320px;height:auto;margin:18px auto 0}.roster-card-copy,.roster-card-featured .roster-card-copy{background:#fffdf9c9;align-self:stretch;padding:22px 24px}.roster-card-copy>p,.roster-card-featured .roster-card-copy>p{font-size:14px}.roster-grid-note{min-height:310px}.roster-directory-note a{margin:8px 0 0;display:block}}@media (prefers-reduced-motion:reduce){html:has(.roster-page){scroll-behavior:auto}.roster-card,.roster-card-portrait{transition:none}}
