@font-face{font-family:'Lato';font-style:normal;font-weight:300;font-display:swap;src:url('/static/people-fonts/font-0.ttf') format('truetype')}
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url('/static/people-fonts/font-1.ttf') format('truetype')}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url('/static/people-fonts/font-3.ttf') format('truetype')}
:root{--cream:#f8f4ec;--ink:#1f1b16;--moss:#5a6b4a;--muted:rgb(31 27 22 / .74);--rule:rgb(31 27 22 / .16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-color:var(--moss) var(--cream)}
body{margin:0;background:var(--cream);color:var(--ink);font:300 17px/1.7 Lato,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
::selection{background:rgb(217 167 156 / .45);color:var(--ink)}
a{color:inherit;text-decoration-color:var(--moss);text-underline-offset:5px}
a:hover{color:var(--moss)}
:focus-visible{outline:2px solid var(--moss);outline-offset:5px}
input{font:inherit;color:inherit}
input{caret-color:var(--moss)}
h1,h2,p,figure{margin:0}
h1,h2,.monogram{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:400;line-height:1.1}
p{color:var(--muted)}
.wrap{max-width:1128px;margin:auto;padding-inline:28px}
.reading{max-width:728px;margin-inline:auto;padding-inline:28px}
.guest-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:92px}
.monogram{text-decoration:none;font-size:27px;white-space:nowrap}
.guest-header nav{display:flex;gap:30px;font-size:14px;font-weight:400}
.guest-header nav a{text-decoration:none}
.guest-header nav [aria-current]{text-decoration:underline}
.guest-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:65px;padding-top:30px}
h1{font-size:clamp(54px,6.3vw,82px);letter-spacing:-.025em}
.hero-description{font-size:20px;line-height:1.5;margin-top:26px;max-width:400px}
.hero-small{font-size:13px;margin-top:24px}
.guest-hero img{display:block;width:100%;height:350px;object-fit:cover;object-position:center;border-radius:16px}
.guest-hero figcaption{font-size:12px;margin-top:11px;color:var(--muted)}
.welcome{padding-top:75px;padding-bottom:70px;font-size:23px;line-height:1.6;text-align:center}
.list-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;padding-bottom:24px;border-bottom:1px solid var(--rule)}
.list-tools label{display:block;font-size:14px;font-weight:400;margin-bottom:8px}
.list-tools input{width:100%;max-width:390px;border:1px solid var(--rule);background:transparent;border-radius:8px;padding:10px 13px;font-size:15px;min-height:45px}
input::placeholder{color:var(--muted);opacity:1}
#guest-count{font-size:14px;padding-bottom:11px;white-space:nowrap}
.person{display:grid;grid-template-columns:340px 1fr;gap:45px;padding:36px 0;border-bottom:1px solid var(--rule)}
.person[hidden]{display:none}
.person-heading{display:flex;gap:20px;align-items:start}
.connection{font-size:12px;font-weight:400;margin-top:8px;color:var(--moss)}
.person h2{font-size:29px;line-height:1.2;overflow-wrap:anywhere}
.person-intro{padding-top:3px}
.bio{max-width:650px;line-height:1.75}
#no-results{padding:45px 0}
.closing{text-align:center;padding-top:85px;padding-bottom:70px}
.closing h2{font-size:46px;letter-spacing:-.02em}
.closing p{margin-top:24px}
.back-link{display:inline-flex;align-items:center;min-width:44px;min-height:44px;font-size:15px;margin-top:25px}
.back-link span{margin-left:15px}
footer.wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:28px;padding-bottom:30px;border-top:1px solid var(--rule);font-size:12px}
footer.wrap>a{display:inline-flex;align-items:center;min-width:44px;min-height:44px}
footer p{text-align:center;line-height:1.7}
@media(max-width:900px){.guest-hero{gap:35px}
.person{grid-template-columns:280px 1fr;gap:30px}
.person-heading{gap:14px}
.list-tools{gap:20px}}
@media(max-width:760px){.wrap,.reading{padding-inline:24px}
.guest-header{min-height:80px}
.guest-header nav{gap:21px;font-size:13px}
.guest-hero{grid-template-columns:1fr;gap:30px;padding-top:20px}
.guest-hero h1{font-size:61px}
.hero-description{font-size:18px;margin-top:23px}
.hero-small{margin-top:18px}
.guest-hero img{height:300px;object-position:center 45%}
.welcome{padding-top:45px;padding-bottom:45px;font-size:21px}
.list-tools{grid-template-columns:minmax(0,1fr) auto;gap:18px}
.list-tools>div{grid-column:1/-1}
.list-tools input{max-width:none}
#guest-count{padding-bottom:4px}
.person{grid-template-columns:1fr;gap:16px;padding:30px 0}
.person h2{font-size:30px}
.person-intro{padding-top:0}
.bio{font-size:16px}
.closing{padding-top:60px;padding-bottom:50px}
.closing h2{font-size:40px}
footer.wrap{flex-wrap:wrap;justify-content:center;gap:20px}
footer p{flex-basis:65%}}
@media(max-width:360px){.wrap,.reading{padding-inline:20px}
.guest-header nav{gap:15px;font-size:12px}
.guest-hero h1{font-size:53px}
.hero-description{font-size:17px}
.hero-description br{display:none}
.list-tools{grid-template-columns:minmax(0,1fr) auto}
#guest-count{padding-bottom:0}
.person h2{font-size:27px}
.welcome{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.action-icon{display:inline-block;vertical-align:middle;margin-left:10px;flex-shrink:0}
.person-heading{align-items:center;gap:18px}
.portrait{position:relative;display:block;width:108px;height:108px;flex:0 0 108px;overflow:hidden;border-radius:12px;background:transparent}
.portrait img{position:absolute;left:50%;top:38%;height:auto;max-width:none;display:block}
.talk-about{font-size:13px;line-height:1.6;color:var(--moss);margin-top:12px}
@media(max-width:900px){.person{grid-template-columns:300px 1fr;gap:30px}}
@media(max-width:760px){.person{grid-template-columns:1fr;gap:18px}
.person-heading{gap:16px}
.portrait{width:92px;height:92px;flex-basis:92px}
.person h2{font-size:29px}
.talk-about{font-size:13px}}
@media(max-width:360px){.person-heading{gap:12px}
.person h2{font-size:27px}}
.guest-hero img{height:auto;aspect-ratio:4/3;object-position:center}
.skip-link{position:absolute;top:-100px;left:20px;background:var(--cream);padding:10px;z-index:2}
.skip-link:focus{top:10px}
.list-tools{grid-template-columns:minmax(0,1fr) auto}
@media(max-width:760px){.list-tools{grid-template-columns:1fr}}

.portraits{display:flex;gap:12px;flex-shrink:0;align-items:start}
.portrait-item figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:6px;text-align:center}
.person-heading.multiple-portraits{flex-direction:column;align-items:start;gap:16px}
