/* Cream brand canvas; the glass treatment belongs to individual profiles. */
.team-page,.team-page main{background:var(--stone);color:var(--navy)}
.team-page .page-intro{width:min(1080px,calc(100% - var(--edge)*2));padding:150px 0 54px;display:grid;grid-template-columns:1.25fr 1fr;column-gap:70px;align-items:end}
.team-page .page-intro>.eyebrow{grid-column:1/-1;margin-bottom:18px;color:#696354;letter-spacing:.2em}
.team-page .page-intro h1{font-size:clamp(44px,4.6vw,66px);margin:0;line-height:1.12}
.team-page .intro-description{margin:0 0 5px;font-size:18px;line-height:1.65;max-width:380px;color:#53606b}
.team-gallery{max-width:1080px;width:calc(100% - var(--edge)*2);margin:0 auto;padding-top:25px;border-top:1px solid #1f2e4325}
.team-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}
.team-gallery-heading .eyebrow{margin:0;color:#5d625e}.team-instruction{font-size:12px;margin:0;color:#626b72}
.team-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.team-track .person{position:relative;isolation:isolate;display:block;padding:10px;min-width:0;border:1px solid #ffffffd9;border-bottom-color:#c9c8bf80;border-radius:22px;background:linear-gradient(145deg,#ffffffb8,#ffffff38 54%,#e8e6dd85);box-shadow:inset 0 1px 0 #fff,inset 0 -1px 0 #fff9,0 8px 28px #282b3010;-webkit-backdrop-filter:blur(22px) saturate(115%);backdrop-filter:blur(22px) saturate(115%);transition:transform .24s ease,box-shadow .24s ease;scroll-margin-top:110px}
.team-track .person::before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at var(--pointer-x,25%) var(--pointer-y,0%),#ffffffd9,transparent 65%);opacity:.55;transition:opacity .24s}
.team-track .person::after{content:'';position:absolute;top:0;left:12%;width:65%;height:1px;background:linear-gradient(90deg,transparent,#fff,transparent);pointer-events:none}
.team-track .person:hover,.team-track .person:focus-within{transform:translateY(-4px);box-shadow:inset 0 1px 0 #fff,0 16px 35px #252c361c}
.team-track .person:hover::before{opacity:1}
.profile-open{position:relative;display:block;width:100%;text-align:left;color:inherit;border-radius:14px;touch-action:manipulation}
.profile-open:focus-visible{outline:2px solid #86765c;outline-offset:5px}
.card-portrait{position:relative;display:block;aspect-ratio:1.05;overflow:hidden;background:#e1e0d9;border-radius:14px}
.card-portrait>img{width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block;filter:grayscale(1);transition:transform .35s ease}
.profile-open:hover .card-portrait>img{transform:scale(1.025)}
/* Crop the scan edges from Benjamin's original photo without retouching him. */
#benjamin .card-portrait>img{transform:scale(1.10)}
.card-overlay{display:flex;flex-direction:column;position:absolute;inset:auto 12px 12px;padding:15px 16px;border:1px solid #ffffffe6;border-radius:11px;background:linear-gradient(120deg,#ffffffdc,#f2f1ecd9);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--navy);box-shadow:inset 0 1px 0 #fff,0 6px 22px #0000000f;opacity:0;transform:translateY(7px);transition:opacity .22s ease,transform .22s ease}
.card-role{font-size:10px;line-height:1.6;letter-spacing:.11em;text-transform:uppercase;font-weight:400}
.card-invitation{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-top:11px;padding-top:9px;border-top:1px solid #1f2e4325;color:#4e5a65}
.profile-open:hover .card-overlay,.profile-open:focus-visible .card-overlay{opacity:1;transform:none}
.card-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 8px 9px;min-height:72px}
.card-name{font:400 clamp(19px,1.8vw,23px)/1.25 HelveticaNeue,Helvetica,Arial,sans-serif;letter-spacing:-.015em;overflow-wrap:anywhere}
.card-arrow{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid #ffffffeb;border-radius:50%;background:#ffffff80;box-shadow:0 2px 8px #1f2e4308;font-size:18px;color:#59616a;transition:background .2s}
.profile-open:hover .card-arrow{background:#fff}
.profile-bio[hidden]{display:none}
.team-page .page-note{max-width:1080px;width:calc(100% - var(--edge)*2);padding:34px 0 64px;margin:0 auto;font-size:11px;color:#626b72}
.team-profile{color:var(--navy);background:linear-gradient(135deg,#fffffff5,#f2f1ecf5);border:1px solid #ffffffeb;border-radius:24px;padding:70px 48px 44px;width:min(920px,calc(100vw - 48px));max-height:calc(100dvh - 64px);margin:auto;overflow:auto;overscroll-behavior:contain;box-shadow:inset 0 1px 0 #fff,0 35px 110px #1f2e4340;-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px)}
.team-profile::backdrop{background:#1b233d66;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}
.profile-close{position:sticky;top:0;display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;width:fit-content;margin:-52px 0 20px auto;padding:0 16px;font-size:12px;z-index:1;border:1px solid #d4d3ca;border-radius:24px;background:#f8f7f3f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.profile-close:hover{background:#fff}.profile-close span{font-size:25px;line-height:1}
.profile-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:38px;align-items:start}
.profile-photo img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 20%;filter:grayscale(1);border-radius:14px}
.profile-photo{overflow:hidden;border-radius:14px}
#profile-photo[src$="benjamin-alemany.jpg"]{transform:scale(1.10)}
.profile-body{min-width:0}.profile-body .eyebrow{font-size:10px;line-height:1.6;margin:0 0 13px;color:#686151}
.profile-body h2{font:300 40px/1.15 Ivy,Georgia,serif;letter-spacing:-.02em;margin:0 0 25px;overflow-wrap:anywhere}
.profile-body p{font-size:15px;line-height:1.75;margin:0 0 18px;color:#43515e}
.profile-body .profile-link{margin-top:4px;min-height:44px;align-items:center}
.team-modal-open{overflow:hidden}
@media(max-width:1000px) and (min-width:701px){.team-track{grid-template-columns:repeat(2,minmax(0,1fr))}.team-gallery,.team-page .page-intro,.team-page .page-note{max-width:720px}.team-page .page-intro{column-gap:30px}.team-page .intro-description{font-size:16px}.card-name{font-size:22px}}
@media(max-width:700px){.team-page .page-intro{display:block;width:calc(100% - var(--edge)*2);max-width:460px;padding:116px 0 32px}.team-page .page-intro h1{font-size:clamp(38px,10.8vw,48px);text-wrap:balance}.team-page .intro-description{font-size:16px;margin:20px 0 0;max-width:none}.team-gallery{max-width:460px;padding-top:22px}.team-track{grid-template-columns:1fr;gap:20px}.team-gallery-heading{display:block;margin-bottom:22px}.team-instruction{margin-top:9px;font-size:13px}.team-track .person{padding:9px;border-radius:20px}.card-portrait{aspect-ratio:1.14}.card-name{font-size:22px}.card-overlay{opacity:1;transform:none;inset:auto 10px 10px;padding:11px 13px}.card-role{font-size:10px;letter-spacing:.09em}.card-invitation{display:none}.card-caption{padding:16px 7px 8px;min-height:63px}.team-page .page-note{max-width:460px;padding:26px 0 42px;line-height:1.7}.team-profile{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:20px;padding:66px 22px max(28px,env(safe-area-inset-bottom))}.profile-layout{display:block}.profile-photo{width:104px;margin-bottom:22px}.profile-photo img{aspect-ratio:1}.profile-body h2{font-size:clamp(29px,8.6vw,36px);margin-bottom:20px}.profile-body p{font-size:16px;line-height:1.7}.profile-close{margin-top:-54px;margin-bottom:20px}.profile-body .eyebrow{font-size:11px}}
@media(hover:none){.card-overlay{opacity:1;transform:none}.card-invitation{display:none}.team-track .person:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.team-track .person,.team-track .person::before,.card-overlay,.card-portrait>img,.card-arrow{transition:none}.team-track .person:hover{transform:none}}
