@charset "UTF-8";

.brb-doctors-v2 {
  --doctors-bg: #f8f3eb;
  --doctors-surface: #fffdf9;
  --doctors-surface-soft: #f1e8de;
  --doctors-ink: #2a211d;
  --doctors-muted: #766960;
  --doctors-line: #d9cec2;
  --doctors-accent: #741b36;
  --doctors-shell: 1140px;
  --doctors-gutter: 18px;
  width: 100%;
  overflow: clip;
  background: var(--doctors-bg);
  color: var(--doctors-ink);
  font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", sans-serif;
  word-break: keep-all;
}

.brb-doctors-v2 *,
.brb-doctors-v2 *::before,
.brb-doctors-v2 *::after {
  box-sizing: border-box;
}

.brb-doctors-v2 img {
  display: block;
  max-width: 100%;
  height: auto;
}

a.skip-link[href="#main-content"]:not(:focus) {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

a.skip-link[href="#main-content"]:focus {
  position: fixed;
  z-index: 100000;
  top: 10px;
  left: 10px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px 14px;
  clip: auto;
  clip-path: none;
  overflow: visible;
  background: var(--doctors-ink);
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}

.brb-doctors-v2__wrap {
  width: min(calc(100% - (var(--doctors-gutter) * 2)), var(--doctors-shell));
  margin-inline: auto;
}

.brb-doctors-v2__section {
  padding-block: 56px;
  border-top: 1px solid var(--doctors-line);
}

.brb-doctors-v2__team {
  padding-top: 64px;
  background: var(--doctors-surface);
}

.brb-doctors-v2__section-head {
  max-width: 720px;
  margin-bottom: 32px;
}

.brb-doctors-v2__kicker,
.brb-doctors-v2__role {
  margin: 0 0 10px;
  color: var(--doctors-accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .1em;
}

.brb-doctors-v2__section-head h2,
.brb-doctors-v2__profile-copy h3,
.brb-doctors-v2__entrance-grid h2 {
  margin: 0;
  color: var(--doctors-ink);
  font-family: "Noto Serif KR", Georgia, serif;
  font-weight: 600;
  letter-spacing: -.04em;
  text-wrap: balance;
}

.brb-doctors-v2__section-head h2,
.brb-doctors-v2__entrance-grid h2 {
  font-size: clamp(28px, 7vw, 40px);
  line-height: 1.35;
}

.brb-doctors-v2__section-head > p:last-child,
.brb-doctors-v2__entrance-grid > div > p:last-child {
  max-width: 660px;
  margin: 14px 0 0;
  color: var(--doctors-muted);
  font-size: 15px;
  line-height: 1.78;
}

.brb-doctors-v2__profiles {
  display: grid;
  gap: 46px;
}

.brb-doctors-v2__profile {
  margin: 0;
}

.brb-doctors-v2__portrait {
  aspect-ratio: 4 / 5;
  margin: 0 0 24px;
  overflow: hidden;
  background: #e9ddd1;
}

.brb-doctors-v2__portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 18%;
}

.brb-doctors-v2__portrait--huh img {
  object-position: 70% center;
}

.brb-doctors-v2__profile-copy h3 {
  font-size: 29px;
  line-height: 1.35;
}

.brb-doctors-v2__summary {
  margin: 12px 0 0;
  color: var(--doctors-muted);
  font-size: 15px;
  line-height: 1.75;
}

.brb-doctors-v2__credentials {
  display: grid;
  gap: 24px;
  margin-top: 26px;
  padding-top: 24px;
  border-top: 1px solid var(--doctors-line);
}

.brb-doctors-v2__credentials h4 {
  margin: 0 0 10px;
  color: var(--doctors-accent);
  font-size: 13px;
  line-height: 1.5;
}

.brb-doctors-v2__credentials ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.brb-doctors-v2__credentials li {
  position: relative;
  margin-top: 7px;
  padding-left: 12px;
  color: #514740;
  font-size: 14px;
  line-height: 1.65;
}

.brb-doctors-v2__credentials li::before {
  position: absolute;
  top: .75em;
  left: 0;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--doctors-accent);
  content: "";
}

.brb-doctors-v2__principles,
.brb-doctors-v2__gallery {
  background: var(--doctors-bg);
}

.brb-doctors-v2__space,
.brb-doctors-v2__flow {
  background: var(--doctors-surface);
}

.brb-doctors-v2__principle-grid,
.brb-doctors-v2__space-grid,
.brb-doctors-v2__flow-list {
  display: grid;
  gap: 1px;
  margin: 0;
  padding: 1px;
  background: var(--doctors-line);
  list-style: none;
}

.brb-doctors-v2__principle-grid article,
.brb-doctors-v2__space-grid article,
.brb-doctors-v2__flow-list li {
  min-width: 0;
  padding: 28px 24px;
  background: var(--doctors-surface);
}

.brb-doctors-v2__principle-grid span,
.brb-doctors-v2__space-grid span,
.brb-doctors-v2__flow-list span {
  display: block;
  margin-bottom: 20px;
  color: var(--doctors-accent);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .1em;
}

.brb-doctors-v2__principle-grid h3,
.brb-doctors-v2__space-grid h3,
.brb-doctors-v2__flow-list h3 {
  margin: 0;
  color: var(--doctors-ink);
  font-family: "Noto Serif KR", Georgia, serif;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.45;
}

.brb-doctors-v2__principle-grid p,
.brb-doctors-v2__space-grid p,
.brb-doctors-v2__flow-list p {
  margin: 10px 0 0;
  color: var(--doctors-muted);
  font-size: 14px;
  line-height: 1.72;
}

.brb-doctors-v2__entrance {
  background: var(--doctors-surface-soft);
}

.brb-doctors-v2__entrance-grid {
  display: grid;
  gap: 30px;
  align-items: center;
}

.brb-doctors-v2__entrance-image {
  display: block;
  overflow: hidden;
  background: #e6d9cd;
}

.brb-doctors-v2__entrance-image img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

.brb-doctors-v2__gallery-grid {
  display: grid;
  gap: 18px;
}

.brb-doctors-v2__gallery-grid a {
  display: block;
  overflow: hidden;
  border: 1px solid var(--doctors-line);
  background: var(--doctors-surface);
  color: var(--doctors-ink);
  text-decoration: none;
}

.brb-doctors-v2__gallery-grid img {
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  transition: transform .25s ease;
}

.brb-doctors-v2__gallery-grid a:hover img {
  transform: scale(1.015);
}

.brb-doctors-v2__gallery-grid span {
  display: block;
  padding: 16px 18px 18px;
  color: var(--doctors-muted);
  font-size: 13px;
  line-height: 1.6;
}

.brb-doctors-v2__gallery-grid b {
  display: block;
  margin-bottom: 4px;
  color: var(--doctors-accent);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (min-width: 700px) {
  .brb-doctors-v2 {
    --doctors-gutter: 20px;
  }

  .brb-doctors-v2__section {
    padding-block: 72px;
  }

  .brb-doctors-v2__team {
    padding-top: 80px;
  }

  .brb-doctors-v2__section-head {
    margin-bottom: 42px;
  }

  .brb-doctors-v2__profile {
    display: grid;
    grid-template-columns: minmax(250px, .84fr) minmax(0, 1.16fr);
    gap: clamp(36px, 6vw, 78px);
    align-items: center;
    padding-bottom: 48px;
    border-bottom: 1px solid var(--doctors-line);
  }

  .brb-doctors-v2__profile:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .brb-doctors-v2__portrait {
    margin: 0;
  }

  .brb-doctors-v2__profile-copy h3 {
    font-size: clamp(31px, 3.6vw, 42px);
  }

  .brb-doctors-v2__credentials {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brb-doctors-v2__principle-grid,
  .brb-doctors-v2__space-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .brb-doctors-v2__entrance-grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
    gap: clamp(40px, 7vw, 88px);
  }

  .brb-doctors-v2__gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brb-doctors-v2__flow-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .brb-doctors-v2__section {
    padding-block: 88px;
  }

  .brb-doctors-v2__team {
    padding-top: 96px;
  }

  .brb-doctors-v2__profiles {
    gap: 70px;
  }

  .brb-doctors-v2__gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .brb-doctors-v2__gallery-grid a:first-child,
  .brb-doctors-v2__gallery-grid a:nth-child(2) {
    grid-column: span 1;
  }

  .brb-doctors-v2__flow-list {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (prefers-reduced-motion: reduce) {
  .brb-doctors-v2__gallery-grid img {
    transition: none;
  }
}
