/* 저널 페이지 기본 템플릿. 색상은 theme.css, 개별 수정은 custom.css에서 관리합니다. */
.editorial-header { position:sticky; top:0; z-index:30; height:var(--header-height); display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 var(--page-gutter); background:var(--cream); }
.editorial-header nav { display:flex; align-items:center; gap:30px; font-size:14px; }
.editorial-header .button { min-height:38px; padding:10px 22px; border-radius:var(--button-radius); font-size:13px; }
.editorial-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; max-width:1180px; margin:38px auto 0; padding:0 30px; color:var(--muted); font-size:12px; }
.editorial-title { max-width:920px; margin:70px auto 46px; padding:0 30px; text-align:center; }
.editorial-title .eyebrow { color:var(--brand); }
.editorial-title h1 { margin-top:25px; font-size:clamp(30px,3.7vw,48px); font-weight:450; line-height:1.45; letter-spacing:-.045em; word-break:keep-all; }
.editorial-deck { max-width:670px; margin:25px auto 0; font-size:17px; color:var(--muted); line-height:1.9; word-break:keep-all; }
.editorial-meta { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:28px; font-size:12px; color:var(--muted); }
.editorial-hero { max-width:1120px; margin:0 auto; padding:0 30px; }
.editorial-hero img { width:100%; max-height:650px; aspect-ratio:16/10; object-fit:cover; background:var(--surface-soft); }
.editorial-hero figcaption { margin-top:10px; color:var(--muted); text-align:right; font-size:11px; }
.editorial-reading { display:grid; grid-template-columns:minmax(0,720px) 220px; justify-content:space-between; align-items:start; gap:65px; width:min(1120px,calc(100% - 60px)); margin:64px auto 100px; }
.editorial-prose { min-width:0; font-size:17px; line-height:1.95; overflow-wrap:break-word; word-break:keep-all; }
.editorial-intro { padding-bottom:36px; border-bottom:1px solid var(--line); font-size:20px; line-height:1.9; }
.editorial-section { margin-top:44px; scroll-margin-top:115px; }
.editorial-section h2 { margin-bottom:18px; font-size:24px; font-weight:550; line-height:1.6; }
.editorial-section p + p { margin-top:17px; }
.editorial-section ul { margin:22px 0 0; padding:25px 28px 25px 45px; background:var(--surface-soft); }
.editorial-section li + li { margin-top:8px; }
.editorial-closing { margin-top:45px; padding:26px 0 0; border-top:1px solid var(--line); font-size:19px; }
.editorial-byline { margin-top:28px; font-size:12px; color:var(--muted); }
.editorial-aside { position:sticky; top:120px; padding-top:5px; }
.editorial-aside > .eyebrow { margin-bottom:20px; color:var(--brand); font-size:11px; }
.editorial-aside nav { display:flex; flex-direction:column; gap:15px; font-size:13px; line-height:1.7; }
.editorial-aside nav a { display:flex; gap:12px; }
.editorial-aside nav span { color:var(--brand); font-size:11px; }
.editorial-aside a:hover { color:var(--brand-deep); text-decoration:underline; text-underline-offset:4px; }
.editorial-aside > div { display:flex; flex-direction:column; gap:17px; margin-top:35px; padding-top:25px; border-top:1px solid var(--line); font-size:13px; }
.editorial-aside > div > p { font-size:17px; }
.editorial-cta { padding:65px 25px; text-align:center; background:var(--surface-soft); }
.editorial-cta > .eyebrow { color:var(--brand); }
.editorial-cta h2 { margin-top:22px; font-size:34px; font-weight:450; line-height:1.6; }
.editorial-cta > p:not(.eyebrow) { margin-top:20px; font-size:15px; line-height:1.9; color:var(--muted); }
.editorial-cta > div { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; }
.editorial-cta .text-link { margin-inline:10px; }
.editorial-related, .editorial-archive { width:min(1120px,calc(100% - 60px)); margin:80px auto; }
.editorial-related > div:first-child { margin-bottom:35px; }
.editorial-related h2 { margin-top:15px; font-size:25px; font-weight:450; }
.editorial-related > .text-link { display:table; margin:40px auto 0; }
.editorial-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:45px 30px; }
.editorial-card { min-width:0; }
.editorial-card img { width:100%; aspect-ratio:4/3; object-fit:cover; background:var(--surface-soft); }
.editorial-card .eyebrow { margin-top:22px; color:var(--brand); font-size:11px; letter-spacing:0; }
.editorial-card h3 { margin-top:12px; font-size:21px; font-weight:500; line-height:1.6; word-break:keep-all; }
.editorial-card h3 + p { margin-top:12px; font-size:14px; line-height:1.9; color:var(--muted); word-break:keep-all; }
.editorial-read { display:inline-block; margin-top:20px; padding-bottom:4px; border-bottom:1px solid var(--line-strong); font-size:13px; }
.editorial-card a:hover .editorial-read { color:var(--brand-deep); border-color:var(--brand-deep); }
.editorial-archive-title { margin-top:90px; }
.editorial-footer { padding:55px 30px 35px; text-align:center; }
.editorial-footer > a { font-size:16px; }
.editorial-footer > p { margin-top:12px; font-size:14px; }
.editorial-footer > div { margin-top:26px; color:var(--muted); font-size:12px; line-height:2; }
.editorial-footer small { display:block; margin-top:25px; color:var(--muted); font-size:11px; }
.editorial-footer small a { margin-left:15px; text-decoration:underline; }
@media (max-width:850px) {
  .editorial-reading { grid-template-columns:minmax(0,1fr); max-width:720px; gap:35px; }
  .editorial-aside { position:static; border-top:1px solid var(--line); padding-top:25px; }
  .editorial-aside nav { display:none; }
  .editorial-aside > .eyebrow { display:none; }
  .editorial-aside > div { margin:0; padding:0; border:0; }
}
@media (max-width:600px) {
  .editorial-header { height:var(--header-height-mobile); padding-inline:18px; gap:14px; }
  .editorial-header .brand-logo { height:var(--logo-height-mobile); }
  .editorial-header nav { gap:17px; font-size:12px; }
  .editorial-header .editorial-portfolio { display:none; }
  .editorial-header .button { padding:9px 12px; font-size:12px; }
  .editorial-breadcrumb { margin-top:25px; padding-inline:20px; gap:9px; font-size:11px; }
  .editorial-title { margin:42px auto 32px; padding:0 23px; }
  .editorial-title h1 { margin-top:21px; font-size:29px; line-height:1.55; }
  .editorial-deck { margin-top:20px; font-size:15px; }
  .editorial-meta { gap:9px; font-size:11px; }
  .editorial-hero { padding-inline:18px; }
  .editorial-hero img { aspect-ratio:4/3; }
  .editorial-reading { width:calc(100% - 40px); margin:38px auto 55px; }
  .editorial-prose { font-size:15px; }
  .editorial-intro { font-size:18px; padding-bottom:28px; }
  .editorial-section { margin-top:33px; scroll-margin-top:90px; }
  .editorial-section h2 { font-size:21px; }
  .editorial-section ul { padding:21px 21px 21px 36px; }
  .editorial-closing { font-size:17px; }
  .editorial-cta { padding:45px 20px; }
  .editorial-cta h2 { font-size:29px; }
  .editorial-cta > div { flex-direction:column; }
  .editorial-cta .button { width:100%; max-width:350px; gap:10px; }
  .editorial-related, .editorial-archive { width:calc(100% - 40px); margin:55px auto; }
  .editorial-grid { grid-template-columns:1fr; gap:36px; }
  .editorial-card h3 { font-size:19px; }
  .editorial-footer { padding:40px 20px 30px; }
}
