[data-tasktown-background-page] .page-head { padding-top: 0; }
.tasktown-intro {
  position: relative;
  isolation: isolate;
  padding: 36px 0 8px;
}
.tasktown-background {
  position: absolute;
  top: 0;
  bottom: 12px;
  left: 0;
  width: 100%;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
  background: #181e1b;
}
.tasktown-background::after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--project-scrim);
}
.tasktown-background-poster,
.tasktown-background-video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-height: none;
  object-fit: cover;
  object-position: center;
  background: transparent;
}
.tasktown-background-video { opacity: 0; }
.tasktown-background.is-playing .tasktown-background-video { opacity: 1; }
.tasktown-background.is-playing .tasktown-background-poster { visibility: hidden; }
.tasktown-intro-copy {
  position: relative;
  z-index: 1;
  color: #fff;
  text-shadow: 0 2px 8px rgb(0 0 0 / 65%);
}
.tasktown-intro-copy .breadcrumb,
.tasktown-intro-copy .subtitle,
.tasktown-intro-copy .project-intro { color: #f1f4ef; }
.tasktown-intro-copy .eyebrow { color: #c3e5cd; }
.tasktown-intro-copy a:hover { color: #d5f4dd; }
.tasktown-intro-details {
  position: relative;
  padding-top: 32px;
}
/* 설명 뒤부터 옅게 시작하여 정보 영역까지 긴 구간에 걸쳐 테마색으로 이어집니다. */
.tasktown-intro-details::before {
  content: "";
  position: absolute;
  top: -128px;
  bottom: -13px;
  left: 0;
  width: 100%;
  pointer-events: none;
  background: linear-gradient(to bottom,
    transparent 0%,
    color-mix(in srgb, var(--paper) 4%, transparent) 32px,
    color-mix(in srgb, var(--paper) 10%, transparent) 76px,
    color-mix(in srgb, var(--paper) 24%, transparent) 128px,
    color-mix(in srgb, var(--paper) 50%, transparent) 160px,
    color-mix(in srgb, var(--paper) 84%, transparent) 196px,
    color-mix(in srgb, var(--paper) 97%, transparent) calc(100% - 28px),
    var(--paper) 98%);
}
.tasktown-intro .meta-grid { position: relative; margin: 0; }
.tasktown-background-toggle {
  position: absolute;
  right: 0;
  top: -29px;
  z-index: 2;
  width: 44px;
  height: 44px;
  border: 1px solid rgb(255 255 255 / 45%);
  border-radius: 50%;
  padding: 0;
  background: rgb(0 0 0 / 45%);
  color: #fff;
  font-size: 15px;
  line-height: 1;
}
.tasktown-background-toggle[hidden] { display: none; }
@media (max-width: 640px) {
  .tasktown-intro { padding-top: 26px; }
  .tasktown-intro-details { padding-top: 24px; }
  .tasktown-intro-copy .project-intro { margin-top: 18px; }
  .tasktown-intro-copy .breadcrumb { padding-right: 52px; }
  .tasktown-background-toggle { top: -13px; }
}
@media print {
  .tasktown-background,
  .tasktown-background-toggle,
  .tasktown-intro-details::before { display: none !important; }
  .tasktown-intro-copy { color: var(--ink); text-shadow: none; }
  .tasktown-intro-copy .breadcrumb,
  .tasktown-intro-copy .subtitle,
  .tasktown-intro-copy .project-intro { color: var(--muted); }
  .tasktown-intro-copy .eyebrow { color: var(--green); }
}
