/* ── Homepage-specific styles ── */
/* Extracted from index.html inline <style> on 2026-08-07. */

.hero-section{padding:clamp(3.25rem,7vw,5.75rem) 0 clamp(3.25rem,6vw,5rem)}
.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(28px,5vw,64px);align-items:end}
.hero-copy{max-width:720px}
/* 한글 세리프 대형 제목: 라틴 디스플레이용 과밀 트래킹(-.06em) 완화, 3행 리듬 위주 leading */
.hero-title{margin-top:0;margin-bottom:22px;max-width:none;font-size:clamp(2.8rem,5.4vw,4.65rem);line-height:1.12;letter-spacing:-.035em}
.hero-title__ending,.hero-lead__closing{white-space:nowrap}
.hero-lead{margin-bottom:24px;max-width:36ch;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.7}

/* Korean editorial copy should wrap by phrase, never by a stray syllable. */
main :where(
  .hero-lead,
  .hero-latest-link__title,
  .editors-note__title,
  .editors-note__body,
  .section-title,
  .section-desc,
  .article-section__desc,
  .story-lead__title,
  .story-lead__desc,
  .story-row__title,
  .story-row__desc,
  .topic-index__name,
  .topic-index__desc,
  .archive-entry__label,
  .archive-entry__desc,
  .principle-list__text,
  .about-teaser__title,
  .about-teaser__desc
){
  word-break:keep-all;
  overflow-wrap:break-word;
}
main :where(.section-title,.story-lead__title,.story-row__title,.editors-note__title,.about-teaser__title){text-wrap:balance}
main :where(.hero-lead,.hero-latest-link__title,.editors-note__body,.section-desc,.article-section__desc,.story-lead__desc,.story-row__desc,.topic-index__desc,.archive-entry__desc,.principle-list__text,.about-teaser__desc){text-wrap:pretty}
main :where(.article-section__desc,.story-lead__desc){text-wrap:balance}
.phrase-lock{white-space:nowrap}
.site-footer :where(.footer-body,.footer-links a,.footer-bottom){word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.hero-actions{margin-bottom:0}
.hero-actions .btn--primary{border-radius:var(--radius-pill);padding:13px 22px}

.hero-latest-link{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:baseline;
  width:min(100%,720px);margin-top:28px;padding-top:13px;border-top:1px solid rgba(45,106,106,.26);
  color:inherit;text-decoration:none
}
.hero-latest-link__label{font-size:11px;font-weight:500;letter-spacing:.06em;color:var(--fg-3);white-space:nowrap}
.hero-latest-link__title{font-family:var(--font-serif);font-size:15px;font-weight:500;line-height:1.45;letter-spacing:var(--ls-tight);color:var(--fg-1)}
.hero-latest-link__arrow{color:var(--fg-3);font-size:18px;line-height:1;transition:transform var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}
.hero-latest-link:hover .hero-latest-link__title{color:var(--color-accent)}
.hero-latest-link:hover .hero-latest-link__arrow{transform:translateX(2px);color:var(--color-accent)}

.editors-note{max-width:360px;justify-self:end;background:transparent;border:0;border-top:1px solid var(--color-accent);border-radius:0;padding:24px 0 0;box-shadow:none}
.editors-note__title{font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.17;letter-spacing:-.045em}
.editors-note__body{max-width:30ch;font-size:15px;line-height:1.8}

.articles-section{padding:clamp(3.75rem,7vw,6rem) 0;scroll-margin-top:96px}
.article-section{scroll-margin-top:96px}
.article-section + .article-section{margin-top:clamp(2.5rem,5vw,4.5rem);padding-top:clamp(2rem,4vw,3.5rem);border-top:.5px solid var(--color-border)}
/* 섹션 타이틀은 기사 타이틀보다 조용하게 — 주인공은 스토리 (계층 역전 수정) */
.article-section .section-title{font-size:clamp(1.75rem,3vw,2.6rem);font-weight:600;line-height:1.2;letter-spacing:-.03em;margin-bottom:12px}
.article-section__desc{margin-top:0;color:var(--fg-2);font-size:clamp(15px,1.5vw,18px);line-height:1.75;max-width:46ch}
.section-head-row{margin-bottom:clamp(1.5rem,3vw,2.75rem)}
.story-lead{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:clamp(1.5rem,3.5vw,3.5rem);align-items:end;padding-bottom:clamp(1.5rem,3vw,2.25rem)}
.story-lead__media{max-width:720px;border-radius:2px}
/* 텍스트 리드 밴드 — 사진 없이 큰 세리프 제목이 주인공 (밴드 구조 차별화) */
.story-lead--text{grid-template-columns:minmax(0,1fr);align-items:start}
.story-lead--text .story-lead__title{font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:1.16;letter-spacing:-.035em;max-width:30ch}
.story-lead--text .story-lead__desc{max-width:52ch}
/* 번호 텍스트 브리프 목록 — 사진 없는 이론 브리프 전용 (principle-list 계열) */
.brief-list{border-top:.5px solid var(--color-border)}
.brief-list__item{display:grid;grid-template-columns:3.5rem minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:.5px solid var(--color-border);align-items:start;text-decoration:none;color:inherit;transition:background-color var(--dur-base) var(--ease-out)}
.brief-list__num{font-family:var(--font-serif);font-weight:500;font-size:26px;line-height:1.35;color:var(--color-accent);letter-spacing:-.02em;font-feature-settings:"lnum"}
.brief-list__body{display:flex;flex-direction:column;gap:6px;min-width:0}
.brief-list__title{font-family:var(--font-serif);font-weight:600;font-size:clamp(1.15rem,2vw,1.45rem);line-height:1.35;letter-spacing:-.02em;color:var(--fg-1);word-break:keep-all;overflow-wrap:break-word;text-wrap:balance;transition:color var(--dur-base) var(--ease-out)}
.brief-list__item:hover{background:var(--color-surface-tint)}
.brief-list__item:hover .brief-list__title{color:var(--color-accent)}
.brief-list__desc{margin:0;font-size:14.5px;line-height:1.7;color:var(--fg-2);max-width:60ch;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.brief-list__meta{font-size:12px;color:var(--fg-3);letter-spacing:.02em}
.story-lead__body{gap:12px;padding-bottom:4px}
.story-lead__title{font-size:clamp(1.7rem,3vw,2.55rem);font-weight:500;line-height:1.17;letter-spacing:-.045em}
.story-lead__desc{font-size:16px;line-height:1.8;max-width:44ch}
.story-row{grid-template-columns:104px minmax(0,1fr) auto;gap:16px;padding:17px 0}
.story-row__thumb{width:104px;height:78px;border-radius:2px}
.story-row__title{font-size:17.5px;font-weight:500}
.section{padding:clamp(3.75rem,7vw,6rem) 0}
.section>.container>.section-head .section-title{font-size:clamp(1.9rem,3.2vw,2.75rem);font-weight:600;line-height:1.2;letter-spacing:-.03em}
.topic-index__item{padding:24px 0}
.topic-index__name{font-size:20px}
.topic-index__desc{font-size:15px;line-height:1.8}
.principle-list__item{padding:28px 0}
.principle-list__text{max-width:64ch}
.section-desc{max-width:60ch}

.about-teaser{
  margin-top:var(--section-gap);padding-top:clamp(2rem,4vw,3rem);
  border-top:.5px solid var(--color-border);
  display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end
}
.about-teaser__title{font-family:var(--font-serif);font-weight:600;font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.35;letter-spacing:var(--ls-tight);color:var(--fg-1);margin:0 0 8px}
.about-teaser__desc{font-size:15px;line-height:1.7;color:var(--fg-2);margin:0;max-width:56ch}

.archive-section-wrap{padding:0;border:0;background:transparent}
.archive-entries{display:grid;gap:0;border-top:.5px solid var(--color-border);margin-top:8px}
.archive-entry{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;
  padding:16px 0;border-bottom:.5px solid var(--color-border);text-decoration:none;color:inherit
}
.archive-entry:hover .archive-entry__label{color:var(--color-accent)}
.archive-entry__label{font-family:var(--font-serif);font-size:16px;font-weight:600;color:var(--fg-1);letter-spacing:var(--ls-tight);transition:color var(--dur-base) var(--ease-out)}
.archive-entry__desc{font-size:13.5px;color:var(--fg-2);line-height:1.55;margin-top:4px}
.archive-entry__arrow{font-size:14px;color:var(--fg-3);transition:transform var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}
.archive-entry:hover .archive-entry__arrow{transform:translateX(3px);color:var(--color-accent)}
.archive-all{margin-bottom:12px}

.site-footer{margin-top:0}

/* ── Masthead strip ── */
.masthead-strip{display:flex;justify-content:space-between;align-items:baseline;padding:10px 0;border-top:.5px solid var(--color-border);border-bottom:2px solid var(--color-border);margin:0;gap:24px}
.masthead-strip__issue{font-family:var(--font-serif);font-size:12.5px;line-height:1.6;color:var(--fg-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.masthead-strip__locale{font-family:var(--font-serif);font-size:12px;color:var(--fg-3);flex-shrink:0;letter-spacing:.04em}

@media (max-width:1040px){
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-lead{max-width:44rem}
  .editors-note{max-width:600px;justify-self:start}
  .story-lead{grid-template-columns:1fr}
  .story-lead__media{max-width:720px}
  .story-lead__body{max-width:48rem}
}

@media (max-width:640px){
  .hero-section{padding:3.25rem 0 3rem}
  .hero-title{font-size:clamp(2.6rem,11vw,3.8rem);margin-bottom:18px}
  .hero-lead{font-size:15px;margin-bottom:20px}
  .hero-actions .btn--primary{padding:12px 18px}
  .hero-latest-link{grid-template-columns:minmax(0,1fr) 28px;gap:4px 12px;margin-top:24px;padding-top:12px}
  .hero-latest-link__label{grid-column:1}
  .hero-latest-link__title{grid-column:1}
  .hero-latest-link__arrow{grid-column:2;grid-row:1 / span 2}
  .editors-note{padding-top:20px}
  .editors-note__title{font-size:2rem}
  .articles-section{padding:3.5rem 0}
  .article-section .section-title{font-size:clamp(1.6rem,7vw,2.2rem)}
  .section>.container>.section-head .section-title{font-size:clamp(1.7rem,7.4vw,2.3rem)}
  .brief-list__item{grid-template-columns:2.75rem minmax(0,1fr);gap:12px}
  .story-lead__title{font-size:1.7rem}
  .story-lead__desc{font-size:15.5px}
  .story-row{grid-template-columns:80px minmax(0,1fr);gap:12px;padding:15px 0}
  .story-row__thumb{width:80px;height:60px}
  .story-row__title{font-size:16px;-webkit-line-clamp:3}
  .principle-list__item{grid-template-columns:2.75rem minmax(0,1fr);gap:12px}
  .principle-list__text{font-size:15.5px}
  .about-teaser{grid-template-columns:1fr;align-items:start}
  .masthead-strip{flex-direction:column;gap:2px;align-items:flex-start}
  .masthead-strip__issue{font-size:11.5px}
  .masthead-strip__locale{font-size:11px}
}
