/* Portraits retain individual character within a shared editorial frame. */
.team-section{padding:68px 0 25px;overflow:hidden;background:#eaece5;color:#163c30;border-bottom:1px solid #ccd2c7}
.team-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:0 var(--pad);margin-bottom:34px}
.team-heading .eyebrow{color:#4d6557;margin-bottom:12px;font-size:10px;letter-spacing:1.8px}
.team-heading h2{font-size:clamp(30px,4.1vw,58px);font-weight:500;line-height:1.2;letter-spacing:-.055em;margin:0;word-break:keep-all}
.team-heading h2 em{font-style:normal}
.team-heading-side{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:end}
.team-heading-side p{font-size:12px;color:#526557;margin:0}
.team-motion{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #87968b;background:transparent;border-radius:30px;min-height:42px;min-width:88px;padding:7px 13px;font-size:11px;white-space:nowrap}
.team-motion:hover{background:#163c30;color:#edeee8}
.team-motion span{font-size:17px;line-height:1}
.team-rail{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-behavior:auto;padding:6px 0 10px;margin-left:var(--pad);touch-action:pan-x pan-y}
.team-rail::-webkit-scrollbar{display:none}
.team-rail,.team-rail .team-card{cursor:grab}
.team-rail.is-dragging,.team-rail.is-dragging .team-card{cursor:grabbing}
.team-rail.is-dragging .team-card-image>img{transform:none;transition:none}
.team-group{display:flex;gap:22px;flex:none;padding-right:22px}
.team-group:first-child,.team-group-copy{padding-left:0}
.team-card{display:block;flex:0 0 auto;width:clamp(245px,28vw,390px);padding:0;text-align:left;border:0;background:transparent;position:relative;user-select:none}
.team-card-image{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:#b8b7ae}
.team-card-image>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 25%;transition:transform .55s cubic-bezier(.2,.7,.3,1)}
.team-card[data-person="kwak"] .team-card-image>img{object-position:45% 50%}
.team-card-image::after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#091e162e);pointer-events:none}
.team-card-open{position:absolute;right:16px;bottom:16px;z-index:1;width:40px;height:40px;display:grid;place-items:center;background:#b7ff3c;color:#163c30;border-radius:50%;font-size:25px;transition:transform .25s}
.team-card:hover .team-card-image>img{transform:scale(1.025)}
.team-card:hover .team-card-open{transform:rotate(45deg)}
.team-card:focus-visible{outline-offset:3px}
.team-card-caption{display:flex;justify-content:space-between;align-items:end;padding:17px 2px 12px;border-bottom:1px solid #a9b7ab}
.team-card-caption small{display:block;font-size:9px;letter-spacing:1.5px;line-height:1.5;color:#586b5c;margin-bottom:5px}
.team-card-caption strong{font-size:24px;font-weight:500;letter-spacing:-.04em;line-height:1.2}
.team-name-line,.team-profile-heading{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.team-role,.team-profile-role{font-size:11px;font-weight:400;letter-spacing:0;color:#5d7162;white-space:nowrap}
.team-profile-heading{gap:12px}.team-profile-role{font-size:12px}
.team-card-number{font-size:11px;font-variant-numeric:tabular-nums;color:#6e7c70}
.team-footnote{margin:23px var(--pad) 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#5c6d5e}
.team-footnote>span:first-child{font-size:9px;letter-spacing:1.8px}
.team-footnote b{font-size:17px;font-weight:400;padding-left:8px}
body.team-profile-open{overflow:hidden}
dialog.team-profile{padding:0;border:0;width:min(830px,calc(100vw - 48px));max-width:none;max-height:90dvh;overflow:auto;background:#f0f1e9;color:#163c30;box-shadow:0 30px 120px #07150f55}
.team-profile::backdrop{background:#0a1b17bf;backdrop-filter:blur(7px)}
.team-profile-layout{display:grid;grid-template-columns:1fr 1fr;min-height:480px}
.team-profile-portrait{background:#b7b6af;min-width:0;min-height:100%;height:540px}
.team-profile-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 20%}
.team-profile-info{padding:34px 34px 28px;display:flex;flex-direction:column;align-items:start;min-width:0}
.team-profile-brand{font-family:Georgia,serif;font-size:27px;letter-spacing:-1px;margin:0 0 65px!important;line-height:1}
.team-profile-brand span{font-family:Manrope,sans-serif;font-size:8px;letter-spacing:2px;display:block;margin-top:6px}
.team-profile-info .eyebrow{margin:0 0 10px;font-size:9px;letter-spacing:1.5px;color:#6a7a6d}
.team-profile-info h2{font-size:42px;letter-spacing:-.05em;font-weight:500;margin:0;line-height:1.2}
.team-profile-company{font-size:13px!important;color:#6a7a6d;margin:10px 0 28px!important}
.team-profile-contact{margin-top:auto;width:100%;padding-top:20px}
.team-kakao{display:flex;gap:9px;align-items:center;padding:14px 16px;background:#163c30;color:#f2f4ec;font-size:12px;min-height:52px}
.team-kakao>span:last-child{margin-left:auto;font-size:19px;color:#b7ff3c}
.team-kakao img{width:23px;height:23px;border-radius:4px}
.team-profile-contact>p{font-size:10px!important;margin:8px 0 21px;color:#6d786b}
.team-phone{display:flex;gap:10px;justify-content:space-between;align-items:center;min-height:44px;border-top:1px solid #ced4c7;padding:14px 0 0;font-size:9px;letter-spacing:1px}
.team-phone span{font-size:12px;letter-spacing:0}
.team-profile-close{position:absolute;z-index:2;right:12px;top:12px;display:grid;place-items:center;border:0;background:#f0f1e9e6;color:#163c30;border-radius:50%;width:40px;height:40px;font-size:27px;line-height:1}
@media(min-width:1400px){.team-card{width:calc((100vw - 2*var(--pad) - 44px)/3)}}
@media(max-width:640px){
 .team-section{padding-top:38px;padding-bottom:20px}
 .team-heading{align-items:start;margin-bottom:20px;gap:16px}
 .team-heading .eyebrow{font-size:8px;letter-spacing:1.25px;margin-bottom:10px}
 .team-heading h2{font-size:29px;line-height:1.3}
 .team-heading-side p{display:none}.team-motion{min-width:65px;min-height:36px;padding:6px 10px;font-size:10px;margin-top:24px}
 .team-card{width:67vw;max-width:320px;min-width:220px}.team-group{gap:15px;padding-right:15px}
 .team-card-caption{padding-top:13px}.team-card-caption strong{font-size:22px}.team-card-caption small{font-size:8px}
 .team-card-open{width:35px;height:35px;right:12px;bottom:12px;font-size:23px}
 .team-footnote{margin-top:16px;font-size:9px}.team-footnote>span:first-child{font-size:7px;letter-spacing:.7px}
 dialog.team-profile{width:calc(100vw - 32px);max-height:88dvh}
 .team-profile-layout{grid-template-columns:1fr;min-height:0}
 .team-profile-portrait{height:360px;min-height:0;overflow:hidden}
 .team-profile-photo{object-position:50% 5%}
 .team-profile[data-person="kwak"] .team-profile-photo{object-position:50% 38%}
 .team-profile-info{padding:23px 24px 20px;position:relative}
 .team-profile-brand{position:absolute;top:29px;right:24px;font-size:23px;margin:0!important}
 .team-profile-heading{padding-right:70px;gap:7px}.team-profile-role{font-size:10px}.team-role{font-size:10px}
 .team-profile-info .eyebrow{font-size:8px;margin-bottom:7px}.team-profile-info h2{font-size:33px}
 .team-profile-company{margin:7px 0 0!important}.team-profile-contact{padding-top:22px}
 .team-kakao{min-height:48px;padding:11px 13px}.team-profile-contact>p{margin-bottom:14px}
 .team-phone{padding-top:12px}
}
@media(prefers-reduced-motion:reduce){.team-motion,.team-group-copy{display:none}.team-card-image>img{transition:none}.team-card:hover .team-card-image>img{transform:none}}

/* Kakao contact keeps its visual identity while pending. */
.team-kakao{background:#fee500;color:#241d00;border-radius:12px;gap:12px;text-decoration:none;font-weight:600}.team-kakao img{width:30px;height:30px;border-radius:8px}.team-kakao>span:last-child{color:#241d00}.team-kakao.is-pending{cursor:default}.team-kakao.is-pending>span:last-child{font-size:10px;font-weight:500;white-space:nowrap;background:rgba(255,255,255,.58);border:1px solid rgba(70,55,0,.12);border-radius:20px;padding:5px 8px}.team-kakao:focus-visible{outline:2px solid #163c30;outline-offset:4px}
