/* Team page only - isolated from global header/footer/navigation */
body.team-page main{background:#f4efe7;position:relative;overflow:hidden}
body.team-page .team-directory{position:relative;padding:18px 0 72px}
body.team-page .team-directory::before,
body.team-page .team-directory::after{content:"";position:absolute;pointer-events:none;opacity:.38}
body.team-page .team-directory::before{width:340px;height:340px;border:1px solid rgba(111,91,67,.18);border-radius:50%;left:-170px;top:110px}
body.team-page .team-directory::after{width:260px;height:520px;border-radius:52% 48% 0 0;background:linear-gradient(180deg,rgba(201,184,162,.22),rgba(201,184,162,0));right:-105px;bottom:-190px;transform:rotate(9deg)}
body.team-page .team-intro{position:relative;z-index:1;text-align:center;max-width:760px;margin:0 auto 44px}
body.team-page .team-intro .eyebrow{margin-bottom:12px;letter-spacing:.28em}
body.team-page .team-intro h1{font-family:var(--display);font-size:clamp(2.8rem,5vw,4.65rem);font-weight:400;line-height:.98;margin:0 0 18px;color:var(--ink)}
body.team-page .team-intro .lead{max-width:720px;margin:0 auto;color:#625b52;font-size:1.02rem;line-height:1.7}
body.team-page .team-directory-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
body.team-page .team-person-card{appearance:none;border:1px solid rgba(77,68,57,.18);background:#fbf8f3;padding:0;text-align:left;overflow:hidden;border-radius:3px;box-shadow:0 8px 26px rgba(63,54,43,.07);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;color:inherit;font:inherit}
body.team-page .team-person-card:hover,
body.team-page .team-person-card:focus-visible{transform:translateY(-4px);box-shadow:0 14px 34px rgba(63,54,43,.12);border-color:rgba(72,91,67,.42);outline:none}
body.team-page .team-person-media{aspect-ratio:414/235;overflow:hidden;background:#e5d9cb;position:relative;display:flex;align-items:flex-end;justify-content:center}
body.team-page .team-person-media img{display:block;width:100%;height:100%;object-fit:cover}
body.team-page .team-person-card[data-member="cecil"] .team-person-media img,
body.team-page .team-person-card[data-member="kristine"] .team-person-media img,
body.team-page .team-person-card[data-member="ali"] .team-person-media img{object-position:center center}
body.team-page .team-placeholder{height:100%;width:100%;display:grid;place-items:center;position:relative;background:#e6dacb;color:#4d654b;font-family:var(--display);font-size:6.3rem;line-height:1}
body.team-page .team-placeholder::after{content:"";position:absolute;inset:auto 0 0 0;height:58%;opacity:.45;background-repeat:no-repeat;background-position:right bottom;background-size:72% auto}
body.team-page .team-person-card[data-member="brittany"] .team-placeholder::after{background-image:linear-gradient(58deg,transparent 43%,rgba(255,255,255,.45) 44% 47%,transparent 48%),linear-gradient(69deg,transparent 53%,rgba(255,255,255,.38) 54% 57%,transparent 58%),linear-gradient(80deg,transparent 62%,rgba(255,255,255,.34) 63% 66%,transparent 67%)}
body.team-page .team-person-card[data-member="chris"] .team-placeholder::after{right:-12%;left:auto;width:50%;height:78%;border-radius:50% 50% 0 0;background:rgba(255,255,255,.24)}
body.team-page .team-person-card[data-member="nesta"] .team-placeholder::after{width:100%;height:46%;background:linear-gradient(150deg,transparent 0 18%,rgba(255,255,255,.31) 18% 38%,transparent 38% 46%,rgba(255,255,255,.23) 46% 65%,transparent 65%)}
body.team-page .team-person-copy{display:block;width:100%;min-height:86px;padding:17px 20px 15px;background:#fffdf9}
body.team-page .team-person-name{display:block;font-family:var(--display);font-size:1.48rem;line-height:1.05;font-weight:400;margin:0 0 9px;color:var(--ink)}
body.team-page .team-person-role{display:block;margin:0;font-size:.72rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#66594b}
body.team-page .team-bio-overlay{position:fixed;inset:0;z-index:9999;background:rgba(29,35,31,.69);display:none;align-items:center;justify-content:center;padding:28px}
body.team-page .team-bio-overlay.is-open{display:flex}
body.team-page.team-modal-open{overflow:hidden}
body.team-page .team-bio-dialog{position:relative;width:min(980px,calc(100vw - 56px));max-height:min(86vh,720px);display:grid;grid-template-columns:minmax(330px,42%) minmax(0,58%);background:#fffdf9;box-shadow:0 24px 70px rgba(0,0,0,.26);overflow:hidden;border:1px solid rgba(96,82,66,.16)}
body.team-page .team-bio-photo{min-height:520px;background:#e6dacb;overflow:hidden;display:flex;align-items:stretch;justify-content:center}
body.team-page .team-bio-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 24%}
body.team-page .team-bio-dialog[data-member="ali"] .team-bio-photo{background:#e6dacb;padding:24px;align-items:center}
body.team-page .team-bio-dialog[data-member="ali"] .team-bio-photo img{object-fit:cover;object-position:center center;width:100%;height:100%;max-width:100%;max-height:100%}
body.team-page .team-bio-dialog[data-member="cecil"] .team-bio-photo img{object-position:center 18%}
body.team-page .team-bio-dialog[data-member="kristine"] .team-bio-photo img{object-position:center 14%}
body.team-page .team-bio-content{padding:54px 64px 50px;overflow:auto}
body.team-page .team-bio-content .eyebrow{margin:0 0 10px;color:#a17f5c}
body.team-page .team-bio-content h2{font-family:var(--display);font-weight:400;font-size:3.55rem;line-height:1;margin:0 0 10px;color:var(--ink)}
body.team-page .team-bio-role{font-size:1rem;font-weight:700;letter-spacing:.08em;color:#4d654b;margin-bottom:30px}
body.team-page .team-bio-text{font-size:1rem;line-height:1.75;color:#6b645c;margin:0}
body.team-page .team-bio-close{position:absolute;right:18px;top:18px;width:44px;height:44px;border:1px solid rgba(37,35,31,.18);background:#fffdf9;color:#25231f;font-size:1.7rem;line-height:1;cursor:pointer;z-index:2;font-family:Arial,sans-serif;font-weight:300}
body.team-page .team-bio-close:hover{background:#f4efe7}
@media(max-width:980px){
 body.team-page .team-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.team-page .team-bio-dialog{grid-template-columns:42% 58%}
 body.team-page .team-bio-content{padding:48px 44px 42px}
}
@media(max-width:720px){
 body.team-page .team-directory{padding:18px 0 58px}
 body.team-page .team-intro{margin-bottom:34px}
 body.team-page .team-directory-grid{grid-template-columns:1fr;gap:18px}
 body.team-page .team-person-media{aspect-ratio:414/235}
 body.team-page .team-bio-overlay{padding:14px;align-items:flex-start;overflow:auto}
 body.team-page .team-bio-dialog{width:100%;max-height:none;grid-template-columns:1fr;margin:18px 0;overflow:visible}
 body.team-page .team-bio-photo{min-height:0;height:420px}
 body.team-page .team-bio-dialog[data-member="ali"] .team-bio-photo{padding:20px}
 body.team-page .team-bio-content{padding:34px 28px 38px;overflow:visible}
 body.team-page .team-bio-content h2{font-size:3rem}
 body.team-page .team-bio-close{position:fixed;right:24px;top:24px}
}
@media(max-width:430px){
 body.team-page .team-person-media{aspect-ratio:414/235}
 body.team-page .team-bio-photo{height:350px}
 body.team-page .team-bio-content{padding:30px 22px 34px}
 body.team-page .team-bio-text{font-size:.96rem}
}
body.team-page .team-bio-dialog.no-photo{grid-template-columns:1fr;max-width:720px}
body.team-page .team-bio-dialog.no-photo .team-bio-content{padding-right:72px}
@media(max-width:720px){body.team-page .team-bio-dialog.no-photo .team-bio-content{padding-right:28px}}
