/*회원소개*/
.member-wrap{
  max-width:1400px;
  margin:0 auto;
}

.member-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:20px;
}

.member-card{
  background:#fff;
  border:1px solid #dcdcdc;
  border-radius:14px;
  padding:16px 18px;
  box-sizing:border-box;
}

/* 상단: 지구 배지만 */
.member-top{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin-bottom:12px;
}

.member-card-top{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}

.member-name{
  font-size:22px;
  font-weight:700;
  color:#111;
  line-height:1.2;
  margin:0;
}

.member-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#1995d3;
  color:#fff;
  font-size:12px;
  font-weight:700;
  padding:5px 10px;
  border-radius:6px;
  line-height:1;
  white-space:nowrap;
}

.member-body{
  display:grid;
  grid-template-columns:100px 1fr;
  gap:16px;
  align-items:start;
}

.member-photo img{
  width:100px;
  height:120px;
  object-fit:cover;
  border-radius:4px;
  border:1px solid #fff;
  display:block;
  background:#fff;
}

/* 내부 레이아웃 */
.member-detail{
  width:100%;
}

.detail-row{
  display:grid;
  grid-template-columns:1fr 165px;
  align-items:center;
  column-gap:10px;
  border-bottom:1px solid #fff;
  padding:6px 0;
}

.detail-left{
  color:#222;
  min-width:0;
}

.detail-right{
  color:#444;
  text-align:left; /* 오른쪽칸도 왼쪽정렬 */
  min-width:0;
}

.name-line .detail-left{
  font-size:18px;
  font-weight:700;
  letter-spacing:6px;
}

.name-line .detail-right{
  font-size:14px;
  line-height:1.5;
}

.company-line .detail-left{
  font-size:17px;
  font-weight:700;
}

.company-line .detail-right{
  font-size:14px;
  line-height:1.5;
}

.info-line .detail-left,
.info-line .detail-right,
.email-line .detail-left,
.email-line .detail-right{
  font-size:14px;
  line-height:1.45;
}

.label-inline{
  font-weight:700;
  margin-right:6px;
}

@media (max-width: 1100px){
  .member-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 768px){
  .member-card{
    padding:14px;
  }

  .member-body{
    grid-template-columns:1fr;
  }

  .member-photo img{
    width:100px;
    height:120px;
  }

  .detail-row{
    grid-template-columns:1fr;
    row-gap:4px;
  }

  .detail-right{
    text-align:left;
  }

  .name-line .detail-left{
    letter-spacing:3px;
  }
}

/* 활동앨범 슬라이더: PC 3개 / 모바일 1개 */
@media (min-width: 1025px) {
  .wp-block-greenshift-blocks-swiper .swiper-slide {
    width: calc((100% - 30px) / 3) !important;
    margin-right: 15px !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .wp-block-greenshift-blocks-swiper .swiper-slide {
    width: calc((100% - 15px) / 2) !important;
    margin-right: 15px !important;
  }
}

@media (max-width: 768px) {
  .wp-block-greenshift-blocks-swiper .swiper-slide {
    width: 100% !important;
    margin-right: 0 !important;
  }
}



/* Ultimate Member 안내 문구 중앙 정렬 */
.um {
  max-width: 1100px;
  margin: 0 auto;
  padding: 60px 20px;
  text-align: center;
}

/* 이미 가입되어 있습니다 문구 */
.um .um-notice,
.um .um-field-error,
.um .um-message,
.um p {
  text-align: center;
  font-size: 16px;
  line-height: 1.8;
}



/* 페이지 전체 위쪽 여백 제거 */
.site-content,
.content-area,
.entry-content {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* Ultimate Member 상단 여백 제거 */
.um {
  margin-top: 0 !important;
  padding-top: 20px !important;
}

/* breadcrumb 아래 여백 줄이기 */
.breadcrumb,
.page-header {
  margin-bottom: 10px !important;
}

/* "이미 가입되어 있습니다" 위치 조정 */
.um-notice {
  margin: 20px auto !important;
  text-align: center;
}


/* 회원카드 모바일에서도 PC형 레이아웃 유지 */
@media (max-width: 768px) {
  .member-card {
    padding: 12px !important;
  }

  .member-card .member-body {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  .member-card .member-photo {
    flex: 0 0 70px !important;
    width: 70px !important;
    margin: 0 !important;
  }

  .member-card .member-photo img {
    width: 70px !important;
    height: auto !important;
    display: block !important;
  }

  .member-card .member-detail {
    flex: 1 !important;
    display: block !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
  }

  .member-card .detail-row {
    display: grid !important;
    grid-template-columns: 1fr 95px !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
  }

  .member-card .name-line {
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  .member-card .label-inline {
    font-weight: 700 !important;
    margin-right: 4px !important;
  }
}

