/* 호랑이청소부 홈 V3: 에디토리얼 이미지와 한 방향 타이포 모션 */
.tc-home .tc-type-line {
  display: block;
  overflow: hidden;
  padding: 0 0 .07em;
  margin: 0 0 -.07em;
  color: var(--tc-paper);
  white-space: nowrap;
}

.tc-home .tc-type-line-signal { color: var(--tc-signal); }
.tc-home .tc-type-word {
  display: inline-block;
  margin-right: .13em;
  color: inherit;
  transform-origin: 50% 100%;
}
.tc-home .tc-type-word:last-child { margin-right: 0; }

.tc-motion-capable .tc-home .tc-type-word { opacity: 0; transform: translateY(118%) rotate(.5deg); filter: blur(5px); }
.tc-motion-capable .tc-home.is-motion-ready .tc-type-word {
  animation: tc-word-rise-v3 .82s var(--tc-ease) both;
  animation-delay: calc(70ms + var(--word) * 72ms);
}
.tc-motion-capable .tc-home .tc-hero-copy > .tc-kicker,
.tc-motion-capable .tc-home .tc-hero-copy > .tc-hero-lede,
.tc-motion-capable .tc-home .tc-hero-copy > .tc-actions,
.tc-motion-capable .tc-home .tc-hero-copy > .tc-hero-points,
.tc-motion-capable .tc-home .tc-hero-visual { opacity: 0; transform: translateY(22px); }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-kicker,
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-hero-lede,
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-actions,
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-hero-points,
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-visual { animation: tc-follow-rise-v3 .72s var(--tc-ease) both; }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-kicker { animation-delay: 20ms; }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-hero-lede { animation-delay: 480ms; }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-actions { animation-delay: 570ms; }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-copy > .tc-hero-points { animation-delay: 660ms; }
.tc-motion-capable .tc-home.is-motion-ready .tc-hero-visual { animation-delay: 260ms; }

@keyframes tc-word-rise-v3 {
  55% { opacity: 1; filter: blur(0); }
  100% { opacity: 1; transform: none; filter: blur(0); }
}
@keyframes tc-follow-rise-v3 { to { opacity: 1; transform: none; } }

.tc-home [data-reveal] { --stagger: 0; }
.tc-motion-capable .tc-home [data-reveal] {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .72s var(--tc-ease), transform .72s var(--tc-ease);
  transition-delay: calc(var(--stagger) * 70ms);
}
.tc-motion-capable .tc-home [data-reveal].is-visible { opacity: 1; transform: none; }

.tc-home .tc-heading-focus {
  position: relative;
  display: inline-block;
  color: #865d00;
  font-style: normal;
  isolation: isolate;
}
.tc-home .tc-section-dark .tc-heading-focus { color: var(--tc-signal); }
.tc-home .tc-heading-focus::after {
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: -.07em;
  left: 0;
  height: .085em;
  background: currentColor;
  content: "";
  opacity: .68;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .85s .2s var(--tc-ease);
}
.tc-home [data-reveal="heading"].is-visible .tc-heading-focus::after,
html:not(.tc-motion-capable) .tc-home .tc-heading-focus::after { transform: scaleX(1); }

.tc-home .tc-service-grid article { position: relative; overflow: hidden; }
.tc-home .tc-service-grid article::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: var(--tc-signal);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .7s calc(120ms + var(--stagger) * 60ms) var(--tc-ease);
}
.tc-home .tc-service-grid article.is-visible::before { transform: scaleX(1); }

.tc-home .tc-process-list { gap: 18px; }
.tc-home .tc-process-list li {
  min-height: 465px;
  padding: 0;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border-color: #3a3935;
  border-radius: 16px;
  background: #111;
  box-shadow: 0 24px 60px rgba(0, 0, 0, .2);
}
.tc-home .tc-process-media {
  position: relative;
  aspect-ratio: 3 / 2;
  margin: 0;
  overflow: hidden;
  background: #201d17;
}
.tc-home .tc-process-media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(9, 9, 9, .62));
  content: "";
  pointer-events: none;
}
.tc-home .tc-process-media img,
.tc-home .tc-space-card figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.045);
  transition: transform 1.1s var(--tc-ease), filter .35s ease;
}
.tc-home .tc-process-list li.is-visible img,
.tc-home .tc-space-card.is-visible figure img { transform: scale(1); }
.tc-home .tc-process-list li:hover img,
.tc-home .tc-space-card:hover figure img { transform: scale(1.025); }
.tc-home .tc-process-index {
  position: absolute;
  z-index: 2;
  top: 18px;
  left: 18px;
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--tc-signal);
  color: var(--tc-ink);
  font: 900 .7rem/1 ui-monospace, monospace;
}
.tc-home .tc-process-copy { align-self: end; padding: 26px; }
.tc-home .tc-process-copy h3 { margin-bottom: 12px; font-size: 1.55rem; }
.tc-home .tc-process-copy p { margin-bottom: 0; color: #c4c0b7; font-size: .92rem; line-height: 1.72; }

.tc-home .tc-spaces-title > span { display: inline-block; }
.tc-home .tc-spaces-title .tc-heading-focus-xl {
  font-size: 1.3em;
  line-height: .86;
}
.tc-home .tc-spaces-title small {
  display: inline-block;
  margin-left: .16em;
  font-size: .5em;
  font-weight: 850;
  letter-spacing: -.055em;
  vertical-align: .18em;
}
.tc-home .tc-space-grid {
  gap: 16px;
  border: 0;
  background: transparent;
}
.tc-home .tc-space-grid article.tc-space-card {
  min-height: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #c8c0b2;
  border-radius: 15px;
  background: #fffdf8;
  box-shadow: 0 16px 38px rgba(39, 30, 11, .06);
}
.tc-home .tc-space-card figure {
  position: relative;
  aspect-ratio: 3 / 2;
  margin: 0;
  overflow: hidden;
  background: #d8d1c4;
}
.tc-home .tc-space-card figure::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(9, 9, 9, .38));
  content: "";
  pointer-events: none;
}
.tc-home .tc-space-card figure span {
  position: absolute;
  z-index: 2;
  bottom: 14px;
  left: 16px;
  color: var(--tc-signal);
  font: 900 .7rem/1 ui-monospace, monospace;
}
.tc-home .tc-space-card-copy { min-height: 190px; padding: 23px; }
.tc-home .tc-space-card-copy h3 { margin: 0 0 12px; font-size: 1.42rem; }
.tc-home .tc-space-card-copy p { margin: 0; color: #504a40; font-size: .89rem; line-height: 1.7; }

.tc-home .tc-featured .tc-section-heading h2 .tc-heading-focus { color: #7b5500; }
.tc-home .tc-featured .tc-card-body h3 {
  margin-top: 14px;
  font-size: clamp(1.28rem, 1.55vw, 1.48rem);
  line-height: 1.3;
}
.tc-home .tc-featured .tc-card-body strong {
  color: #4f493f;
  font-size: .91rem;
  line-height: 1.67;
}
.tc-home .tc-featured .tc-article-card img { transition: transform .75s var(--tc-ease), filter .3s ease; }
.tc-home .tc-featured .tc-article-card a:hover img { transform: scale(1.025); }
.tc-home .tc-featured .tc-article-card a:focus-visible { outline: 3px solid #745000; outline-offset: 3px; }

/* 매거진 V3: 한 화면에 12개씩 읽는 정적 페이지 탐색 */
.tc-magazine .tc-magazine-page-breadcrumb {
  max-width: var(--tc-max);
  margin: 0 auto 34px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  color: #6d665b;
  font-size: .76rem;
  font-weight: 750;
}
.tc-magazine .tc-magazine-page-breadcrumb a { text-decoration: none; }
.tc-magazine .tc-magazine-page-breadcrumb b { color: var(--tc-ink); }
.tc-magazine .tc-magazine-page-count { margin-bottom: 6px; }
.tc-magazine .tc-magazine-category-links {
  max-width: var(--tc-max);
  margin: 0 auto 42px;
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 7px;
}
.tc-magazine .tc-magazine-category-links a {
  min-width: 0;
  padding: 12px 8px;
  border: 1px solid #bdb5a7;
  border-radius: 8px;
  background: #fffdf8;
  color: #2d2a24;
  overflow-wrap: anywhere;
  text-align: center;
  text-decoration: none;
  font-size: .72rem;
  font-weight: 850;
  line-height: 1.35;
  transition: border-color 220ms ease, background 220ms ease, transform 220ms ease;
}
.tc-magazine .tc-magazine-category-links a:hover {
  border-color: #8b6500;
  background: #fff7d7;
  transform: translateY(-2px);
}
.tc-magazine .tc-magazine-pagination {
  max-width: var(--tc-max);
  margin: 74px auto 0;
  padding-top: 24px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-top: 2px solid var(--tc-ink);
}
.tc-magazine .tc-magazine-pagination a {
  min-width: 48px;
  min-height: 48px;
  padding: 10px 14px;
  display: inline-grid;
  place-items: center;
  border: 1px solid #a9a194;
  border-radius: 8px;
  background: #fffdf8;
  color: var(--tc-ink);
  text-decoration: none;
  font-size: .82rem;
  font-weight: 900;
  transition: border-color 220ms ease, background 220ms ease, color 220ms ease, transform 220ms ease;
}
.tc-magazine .tc-magazine-pagination a:hover {
  border-color: var(--tc-ink);
  transform: translateY(-2px);
}
.tc-magazine .tc-magazine-pagination a[aria-current="page"] {
  border-color: var(--tc-ink);
  background: var(--tc-ink);
  color: var(--tc-signal);
}
.tc-magazine .tc-magazine-pagination-previous,
.tc-magazine .tc-magazine-pagination-next { min-width: 74px; }

@media (max-width: 1040px) {
  .tc-home .tc-process-list li { min-height: 430px; }
  .tc-home .tc-space-card-copy { min-height: 168px; }
  .tc-magazine .tc-magazine-category-links { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .tc-home .tc-type-line { white-space: normal; }
  .tc-home .tc-type-word { margin-right: .1em; }
  .tc-home .tc-process-list { gap: 14px; }
  .tc-home .tc-process-list li { min-height: 0; }
  .tc-home .tc-process-media { aspect-ratio: 16 / 9; }
  .tc-home .tc-process-copy { padding: 22px; }
  .tc-home .tc-spaces-title .tc-heading-focus-xl { display: block; width: max-content; font-size: 1.22em; }
  .tc-home .tc-spaces-title small { margin: .28em 0 0; display: block; font-size: .48em; vertical-align: 0; }
  .tc-home .tc-space-card-copy { min-height: 0; }
  .tc-home .tc-space-card figure { aspect-ratio: 16 / 10; }
  .tc-magazine .tc-magazine-category-links { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 34px; }
  .tc-magazine .tc-magazine-pagination { margin-top: 52px; gap: 6px; }
  .tc-magazine .tc-magazine-pagination a { min-width: 42px; min-height: 42px; padding: 8px 11px; }
  .tc-magazine .tc-magazine-pagination-previous,
  .tc-magazine .tc-magazine-pagination-next { min-width: 62px; }
}

@media (max-width: 560px) {
  .tc-magazine .tc-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .tc-magazine .tc-category-grid > a { min-height: 168px; padding: 16px; }
  .tc-magazine .tc-category-grid h3 { margin-bottom: 0; font-size: 1rem; line-height: 1.32; }
  .tc-magazine .tc-category-grid strong { display: none; }
  .tc-magazine .tc-category-grid > a > b { top: 15px; right: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .tc-motion-capable .tc-home .tc-type-word,
  .tc-motion-capable .tc-home .tc-hero-copy > .tc-kicker,
  .tc-motion-capable .tc-home .tc-hero-copy > .tc-hero-lede,
  .tc-motion-capable .tc-home .tc-hero-copy > .tc-actions,
  .tc-motion-capable .tc-home .tc-hero-copy > .tc-hero-points,
  .tc-motion-capable .tc-home .tc-hero-visual,
  .tc-motion-capable .tc-home [data-reveal] { opacity: 1; transform: none; filter: none; animation: none; transition: none; }
  .tc-home .tc-heading-focus::after,
  .tc-home .tc-service-grid article::before { transform: scaleX(1); transition: none; }
  .tc-home .tc-process-media img,
  .tc-home .tc-space-card figure img { transform: none; transition: none; }
}
