/* 메인(홈) 디자인에 맞춘 공통 머리글·바닥글과 위키·알쓸신반·페이지 스타일. 회사 테마와 위키 플러그인은 고치지 않고 덮어쓴다 */
:root { --orange:#F47C37; --orange-hover:#DE6625; --orange-soft:#FFF1E7; --ink:#222322; --sub:#70736f; --dim:#989b96; --line:#eeeae6; --container:1320px;
	--color-primary:#F47C37; --color-primary-hover:#DE6625; --color-primary-light:#FFF1E7; --color-primary-light-hover:#FDE6D6; --color-primary-soft:#FFF1E7; --color-primary-softer:#FFF8F2; --color-text-primary:#222322; }
body { color:var(--ink); font-family:'DM Sans','Noto Sans KR',sans-serif; letter-spacing:-.035em; word-break:keep-all; overflow-wrap:break-word; -webkit-font-smoothing:antialiased; }
body h1, body h2, body h3, body h4, body p, body a, body li, body button, body input, body textarea { font-family:inherit; }

.pp-wrap { width:min(calc(100% - 80px), var(--container)); margin:auto; }
.pp-icon { display:inline-block; width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.pp-header { height:78px; border-bottom:1px solid #f1efec; background:#fffc; backdrop-filter:blur(16px); position:sticky; top:0; z-index:30; }
.admin-bar .pp-header { top:32px; }
.pp-head-inner { height:100%; display:flex; align-items:center; gap:40px; }
.pp-logo { display:flex; align-items:center; flex:none; min-height:44px; }
.pp-logo img { display:block; width:105px; height:auto; }
.pp-nav { display:flex; align-items:center; gap:36px; margin-left:auto; }
.pp-nav a { font-size:14px; font-weight:700; color:#4e504e; text-decoration:none; }
.pp-nav a:hover, .pp-nav a.current { color:var(--orange); }
.pp-menu-btn { display:none; border:0; background:transparent; margin-left:auto; padding:8px; color:var(--ink); cursor:pointer; }
.pp-menu-btn:hover, .pp-menu-btn:focus { background:transparent; color:var(--ink); }
.pp-menu-btn .pp-icon { width:25px; height:25px; }
.pp-mobile-nav { display:none; }

.pp-footer { border-top:1px solid var(--line); padding:40px 0 44px; background:#fff; }
.pp-foot-grid { display:flex; justify-content:space-between; gap:30px; align-items:flex-start; }
.pp-foot-logo { display:block; width:84px; height:auto; }
.pp-foot-desc { margin-top:11px; color:#aaa49c; font-size:11px; line-height:1.9; }
.pp-foot-links { display:flex; gap:22px; flex-wrap:wrap; color:#73716b; font-size:12px; font-weight:600; }
.pp-foot-links a { color:inherit; text-decoration:none; }
.pp-foot-links a:hover { color:var(--orange); }
.pp-foot-bottom { margin-top:25px; font-size:11px; color:#aaa49c; line-height:1.9; }

/* 위키·알쓸신반 목록: 홈의 위키 카드 */
main.terra-blog-archive { max-width:none; margin:0; padding:94px max(40px, calc((100% - var(--container)) / 2)) 90px; background:radial-gradient(ellipse 38% 420px at 10% 40px, #fff7f1 0%, transparent 95%), radial-gradient(ellipse 30% 380px at 94% 200px, #fff8f2 0%, transparent 95%); background-repeat:no-repeat; }
.terra-blog-archive .terra-blog-archive__hero { margin-bottom:46px; }
.terra-blog-archive .terra-blog-archive__eyebrow { display:inline-flex; border:1px solid #f7e4d6; background:#fffaf6; border-radius:999px; padding:8px 13px; margin-bottom:22px; color:#bb754a; font-family:inherit; font-size:11px; font-weight:800; letter-spacing:.025em; }
.terra-blog-archive .terra-blog-archive__title { font-family:inherit; font-size:clamp(33px, 3.55vw, 52px); font-weight:800; letter-spacing:-.075em; line-height:1.34; color:var(--ink); margin:0; }
.terra-blog-archive .patpat-wiki-cats { gap:8px; margin:0 0 30px; }
.terra-blog-archive .patpat-wiki-cats a { background:#fff; border:1px solid #eae7e2; color:#72716d; padding:10px 18px; font-size:12px; font-weight:750; }
.terra-blog-archive .patpat-wiki-cats a:hover { background:#fff; border-color:#f0cbb2; color:#72716d; }
.terra-blog-archive .patpat-wiki-cats a[aria-current="page"] { background:#292823; border-color:#292823; color:#fff; }
.terra-blog-archive .terra-blog-grid { grid-template-columns:repeat(4, minmax(0, 1fr)); gap:34px 24px; }
.terra-blog-archive .terra-blog-card, .terra-blog-archive .terra-blog-card:hover { background:transparent; border:0; border-radius:0; box-shadow:none; transform:none; overflow:visible; }
.terra-blog-archive .terra-blog-card__thumb { aspect-ratio:1.36; border-radius:17px; background:#f2ece7; }
.terra-blog-archive .terra-blog-card:hover .terra-blog-card__thumb img { transform:scale(1.06); }
.terra-blog-archive .terra-blog-card__thumb--empty svg { color:#d9cfc6; }
.terra-blog-archive .terra-blog-card__body { padding:14px 1px 0; }
.terra-blog-archive .terra-blog-card__cat { color:#bb754a; font-size:11px; font-weight:800; margin-bottom:6px; }
.terra-blog-archive .terra-blog-card__title { font-family:inherit; font-size:16px; font-weight:750; line-height:1.55; letter-spacing:-.045em; color:var(--ink); margin:0 0 6px; }
.terra-blog-archive .terra-blog-card__title a:hover { color:var(--orange); }
.terra-blog-archive .terra-blog-card__excerpt { display:none; }
.terra-blog-archive .terra-blog-card__meta { border:0; padding:0; margin:0; font-size:11px; color:#95908b; }
.terra-blog-archive .terra-blog-pagination a, .terra-blog-archive .terra-blog-pagination span { min-width:38px; height:38px; border-radius:50%; font-size:13px; }
.terra-blog-archive .terra-blog-pagination a { background:#fff; border-color:#eae7e2; color:#5c554f; }
.terra-blog-archive .terra-blog-pagination a:hover { background:var(--orange-soft); border-color:#f7ddcc; color:#b95420; }
.terra-blog-archive .terra-blog-pagination .current { background:var(--orange); border-color:var(--orange); color:#fff; }

/* 글 화면 */
.hc-single-title { font-family:inherit; font-weight:800; letter-spacing:-.06em; color:var(--ink); }
.hc-breadcrumb a:hover { color:var(--orange); }
.hc-single-content a { color:var(--orange-hover); }
.hc-meta-card { border-color:var(--line); }
.hc-single-content .patpat-wiki-writer, .hc-single-content .patpat-tip-writer { border-color:var(--line); border-radius:18px; background:#fbfaf9; }
.hc-single-content .patpat-wiki-writer__name, .hc-single-content .patpat-tip-writer__name { color:var(--ink); }
.hc-single-content .patpat-wiki-comments, .hc-single-content .patpat-tip-comments { border-top-color:var(--line); }
.hc-single-content .patpat-wiki-comments h3 span, .hc-single-content .patpat-tip-comments h3 span { color:var(--orange); }

/* 고정 페이지·문의·없는 주소 */
.site-main .patpat-legal-title, .pp-petflu h1 { font-family:inherit; font-weight:800; letter-spacing:-.06em; color:var(--ink); }
.pp-petflu a, .legal-content a { color:var(--orange-hover); }
.elementor-button, .elementor-form .elementor-button { background-color:var(--orange); border-radius:999px; font-family:inherit; }
.elementor-button:hover, .elementor-form .elementor-button:hover { background-color:var(--orange-hover); }
.elementor-form input:focus, .elementor-form textarea:focus { border-color:var(--orange); }

@media (max-width:1000px) {
	.pp-wrap { width:min(calc(100% - 48px), var(--container)); }
	main.terra-blog-archive { padding-left:24px; padding-right:24px; }
	.terra-blog-archive .terra-blog-grid { gap:30px 17px; }
	.terra-blog-archive .terra-blog-card__title { font-size:14px; }
}
@media (max-width:782px) { .admin-bar .pp-header { top:46px; } }
@media (max-width:700px) {
	.pp-wrap { width:calc(100% - 36px); }
	.pp-header { height:65px; }
	.pp-head-inner { gap:12px; }
	.pp-logo img { width:83px; }
	.pp-nav { display:none; }
	.pp-menu-btn { display:block; }
	.pp-mobile-nav.open { display:flex; position:absolute; top:65px; left:0; right:0; padding:16px 20px 20px; background:#fff; box-shadow:0 12px 18px #0000000c; border-bottom:1px solid var(--line); flex-direction:column; }
	.pp-mobile-nav a { display:block; padding:13px 5px; font-size:14px; font-weight:700; color:var(--ink); text-decoration:none; }
	main.terra-blog-archive { padding:65px 18px 60px; }
	.terra-blog-archive .terra-blog-archive__hero { margin-bottom:30px; }
	.terra-blog-archive .terra-blog-archive__title { font-size:33px; }
	.terra-blog-archive .terra-blog-grid { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:23px 13px; }
	.terra-blog-archive .terra-blog-card__thumb { border-radius:12px; }
	.terra-blog-archive .terra-blog-card__title { font-size:13px; }
	.pp-foot-grid { display:block; }
	.pp-foot-links { margin-top:25px; gap:15px; }
}
