/*
Theme Name: RE:HON
Template: generatepress
Description: 리:혼 — 다시 시작하는 사람들의 법률 가이드 (2026-10-15 시안) — GeneratePress 자식 테마
Version: 1.0
*/

:root {
  --rh-cream: #FBF7F0;
  --rh-ink: #3D3630;
  --rh-terra: #C96F4A;
  --rh-sage: #7D9B8A;
  --rh-mute: #8C8378;
  --rh-card: #FFFFFF;
  --rh-line: #EADFD2;
  --rh-serif: Batang, 'Nanum Myeongjo', serif;
}

.home #page, .archive #page, .search #page, .blog #page { max-width: none; padding: 0; margin: 0; }
.home .site-content, .archive .site-content, .search .site-content, .blog .site-content { padding: 0; display: block; }
.rh-wrap { max-width: 1020px; margin: 0 auto; padding: 0 22px; }

body { background: var(--rh-cream); color: var(--rh-ink); }
.rh-head a, .rh-foot a, .rh-wrap a { text-decoration: none; }

/* ── 머리글: 크림 바탕, 가벼운 줄 ── */
.rh-head { background: var(--rh-cream); border-bottom: 1px solid var(--rh-line); }
.rh-head-in { display: flex; align-items: center; gap: 14px; padding: 18px 22px; max-width: 1020px; margin: 0 auto; }
.rh-logo-h { margin: 0; font-size: inherit; }
.rh-logo { font-family: var(--rh-serif); font-weight: bold; font-size: 25px; letter-spacing: 1px; color: var(--rh-ink); }
.rh-logo span { color: var(--rh-terra); }
.rh-logo em { font-style: normal; font-size: 12px; color: var(--rh-mute); margin-left: 10px; font-family: 'Malgun Gothic', sans-serif; }
.rh-search { margin-left: auto; display: flex; border: 1px solid var(--rh-line); border-radius: 22px; background: var(--rh-card); overflow: hidden; }
.rh-search input { border: 0; background: transparent; padding: 7px 14px; width: 210px; font-size: 13.5px; color: var(--rh-ink); }
.rh-search button { border: 0; background: transparent; color: var(--rh-terra); padding: 0 13px; cursor: pointer; }
.rh-nav { border-bottom: 1px solid var(--rh-line); background: var(--rh-cream); }
.rh-nav > div { max-width: 1020px; margin: 0 auto; padding: 0 22px; display: flex; gap: 24px; }
.rh-nav a { color: var(--rh-mute); font-size: 14.5px; padding: 11px 0; border-bottom: 2.5px solid transparent; }
.rh-nav a.on, .rh-nav a:hover { color: var(--rh-terra); border-bottom-color: var(--rh-terra); }

/* ── 첫 화면 영웅칸: 둥근 원 배경 ── */
.rh-hero { position: relative; padding: 54px 0 46px; overflow: hidden; }
.rh-hero .c1 { position: absolute; right: -90px; top: -120px; width: 380px; height: 380px; border-radius: 50%; background: #F3E4D7; }
.rh-hero .c2 { position: absolute; right: 180px; top: 180px; width: 120px; height: 120px; border-radius: 50%; background: #E5EDE7; }
.rh-hero .in { position: relative; }
.rh-chip { display: inline-block; background: var(--rh-terra); color: #fff; border-radius: 20px; padding: 5px 15px; font-size: 13px; margin-bottom: 16px; }
.rh-hero h2 { font-family: var(--rh-serif); font-size: 33px; line-height: 1.55; font-weight: bold; letter-spacing: -0.5px; margin: 0; }
.rh-hero h2 em { font-style: normal; color: var(--rh-terra); }
.rh-hero p { margin-top: 13px; color: var(--rh-mute); font-size: 15.5px; }
.rh-tl { display: flex; gap: 9px; margin-top: 30px; align-items: center; font-size: 13.5px; flex-wrap: wrap; }
.rh-dot { background: var(--rh-card); border: 1.5px solid var(--rh-line); border-radius: 22px; padding: 7px 17px; color: var(--rh-ink); }
.rh-dot.on { background: var(--rh-sage); border-color: var(--rh-sage); color: #fff; }
.rh-arrow { color: var(--rh-mute); }

/* ── 둥근 카드 ── */
.rh-sec { padding: 30px 0 54px; }
.rh-sec-title { font-family: var(--rh-serif); font-size: 21px; margin: 0 0 18px; }
.rh-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.rh-card { background: var(--rh-card); border-radius: 18px; border: 1px solid var(--rh-line);
  box-shadow: 0 6px 18px rgba(61,54,48,.06); overflow: hidden; display: flex; flex-direction: column; }
.rh-card-img { display: block; height: 180px; overflow: hidden; background: #F3E4D7; }
.rh-card-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rh-card-body { padding: 18px 22px 20px; }
.rh-cat { font-size: 12.5px; color: var(--rh-sage); font-weight: bold; letter-spacing: 1px; }
.rh-card h3 { font-family: var(--rh-serif); font-size: 18.5px; margin: 7px 0 7px; line-height: 1.5; }
.rh-card h3 a { color: var(--rh-ink); }
.rh-card p { font-size: 14px; color: var(--rh-mute); margin: 0 0 8px; }
.rh-card time { font-size: 12.5px; color: var(--rh-mute); }
.rh-more { margin-top: 8px; font-size: 13.5px; color: var(--rh-terra); font-weight: bold; }

/* 많이 읽는 글 */
.rh-two { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; padding-bottom: 54px; }
.rh-rank ol { list-style: none; margin: 0; padding: 0; }
.rh-rank li { display: flex; gap: 12px; align-items: baseline; padding: 11px 0; border-bottom: 1px solid var(--rh-line); }
.rh-rank li i { font-style: normal; font-family: var(--rh-serif); font-weight: bold; color: var(--rh-terra); }
.rh-rank li a { color: var(--rh-ink); font-size: 15px; }
.rh-rank li time { margin-left: auto; font-size: 12px; color: var(--rh-mute); }
.rh-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.rh-tags a { font-size: 13px; border: 1px solid var(--rh-line); color: var(--rh-ink); padding: 5px 13px; border-radius: 18px; background: var(--rh-card); }
.rh-tags a:hover { border-color: var(--rh-terra); color: var(--rh-terra); }

/* ── 목록 ── */
.rh-archive { padding: 36px 0 54px; }
.rh-arch-head h1 { font-family: var(--rh-serif); font-size: 27px; margin: 0 0 6px; }
.rh-arch-head h1 em { font-style: normal; font-size: 13px; color: var(--rh-mute); letter-spacing: 2px; margin-left: 10px; font-family: 'Malgun Gothic', sans-serif; }
.rh-arch-head p { color: var(--rh-mute); font-size: 14.5px; margin: 0 0 20px; }
.rh-none { color: var(--rh-mute); padding: 40px 0; }

.rh-wrap .page-numbers { border: 1px solid var(--rh-line); border-radius: 16px; padding: 5px 13px; margin-right: 6px; color: var(--rh-ink); background: var(--rh-card); }
.rh-wrap .page-numbers.current { background: var(--rh-terra); border-color: var(--rh-terra); color: #fff; }

/* ── 푸터 ── */
.rh-foot { background: #F3E4D7; margin-top: 30px; }
.rh-foot-in { max-width: 1020px; margin: 0 auto; padding: 26px 22px 8px; display: flex; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.rh-foot .rh-logo { font-size: 19px; }
.rh-foot-links { margin-left: auto; font-size: 13px; }
.rh-foot-links a { color: var(--rh-mute); }
.rh-foot-copy { max-width: 1020px; margin: 0 auto; padding: 0 22px 26px; font-size: 12.5px; color: var(--rh-mute); }

/* ── 글 화면 포인트색 덮어쓰기(lawguide.css 위에) ──
   h2 모양은 2026-10-15 부터 전용 lawguide.css(에세이 판)가 직접 정한다 — 여기선 링크색만. */
.single .entry-content a { color: var(--rh-terra); }

@media (max-width: 760px) {
  .rh-search input { width: 120px; }
  .rh-two, .rh-cards { grid-template-columns: 1fr; }
  .rh-hero h2 { font-size: 26px; }
  .rh-nav > div { gap: 16px; overflow-x: auto; }
}
