*{box-sizing:border-box}
:root{--bg:#faf6ef;--surface:#fff;--fg:#1f2a2a;--muted:#55625f;--primary:#0f5e5c;--primary-fg:#fff;--link:#0b5553;--line:#e3dccd;--soft:#e8f1ee;--note:#fdece6;--accent:#e07a5f;--ph:#cfe3df}
@media (prefers-color-scheme:dark){:root{--bg:#10191a;--surface:#182324;--fg:#e8eeed;--muted:#a3b3b0;--primary:#5fc2bb;--primary-fg:#082524;--link:#7fd6cf;--line:#2a3a3b;--soft:#1d3130;--note:#2c2321;--accent:#ee9a82;--ph:#1d3130}}
html{font-size:17px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",system-ui,sans-serif;line-height:1.8;word-break:keep-all;overflow-wrap:break-word}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
a{color:var(--link)}
a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
header.site{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--line)}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:8px;color:var(--primary);font-weight:700;font-size:1rem;line-height:1.3;text-decoration:none}
.brand span{color:var(--fg)}
.mark{flex:none;color:var(--primary)}
nav{display:flex;flex-wrap:wrap;gap:6px;font-size:.88rem}
nav a{display:inline-block;padding:2px 12px;border-radius:999px;background:var(--soft);color:var(--link);text-decoration:none;line-height:1.7;border:1px solid transparent}
nav a:hover{border-color:var(--primary)}
h1{font-size:1.7rem;line-height:1.4;margin:0 0 .6em;color:var(--primary)}
h2{font-size:1.25rem;line-height:1.4;margin:2.2em 0 .6em;padding-left:12px;border-left:4px solid var(--primary)}
h3{font-size:1.05rem;line-height:1.5;margin:0 0 .3em}
p{margin:.8em 0}
ul,ol{padding-left:1.4em}
li{margin:.4em 0}
.ph{display:block;background:var(--ph);aspect-ratio:16/9;border-radius:14px;overflow:hidden}
.ph img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.hero{padding:20px 0 4px}
.hero-img{border-radius:20px}
.hero-t{padding:20px 0 0}
.hero h1{font-size:1.9rem;margin-bottom:.4em}
.lead{font-size:1.05rem;color:var(--muted);margin:0}
.cards3,.arts{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.card{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.help{padding:16px 18px;color:var(--primary)}
.help p{margin:.5em 0 0;color:var(--fg);font-size:.98rem;line-height:1.7}
.help svg{display:block}
.art a{display:block;color:inherit;text-decoration:none;height:100%}
.art .ph{border-radius:0}
.art .body{display:block;padding:14px 18px 16px}
.art h3{color:var(--primary)}
.art a:hover h3{text-decoration:underline}
.ex{display:block;color:var(--muted);font-size:.93rem;line-height:1.7}
.more-l{display:inline-block;margin-top:.5em;font-size:.85rem;font-weight:700;color:var(--link)}
.more-l::after{content:" \2192"}
.about p,.order p{max-width:720px}
.order p{background:var(--soft);border-radius:12px;padding:14px 18px}
.cover{padding-top:20px}
.cover-img{border-radius:20px}
.prose{max-width:752px;padding-top:24px}
.prose h1{font-size:1.65rem}
.prose p,.prose li{font-size:1.06rem}
.prose ul,.prose ol{padding-left:1.4em}
ol.check{list-style:none;padding:0;counter-reset:n}
ol.check li{position:relative;padding:10px 14px 10px 46px;margin:8px 0;background:var(--surface);border:1px solid var(--line);border-radius:10px}
ol.check li::before{content:"";position:absolute;left:14px;top:.95em;width:20px;height:20px;border:2px solid var(--primary);border-radius:6px;background:var(--bg)}
ol.check li::after{content:"";position:absolute;left:20px;top:calc(.95em + 3px);width:6px;height:11px;border:solid var(--primary);border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
.prose ul:not(.x){list-style:none;padding-left:0}
.prose ul>li{position:relative;padding-left:30px}
.prose ul>li::before{content:"";position:absolute;left:3px;top:.62em;width:15px;height:15px;border:2px solid var(--primary);border-radius:4px;background:var(--bg)}
.note{margin:2em 0 0;background:var(--note);border-left:4px solid var(--accent);border-radius:10px;padding:2px 18px}
.note p{font-size:.95rem;margin:.8em 0;color:var(--fg)}
.more{padding-bottom:8px;max-width:960px}
.arts.small{grid-template-columns:1fr}
.arts.small .art h3{font-size:.98rem}
.arts.small .art .body{padding:10px 14px 12px}
.back a{display:block;color:var(--link);text-decoration:none;height:100%}
.back .body{display:block;padding:14px 18px}
.back h3{color:var(--link)}
footer{margin-top:3em;padding:20px 0 36px;background:var(--soft);border-top:1px solid var(--line);font-size:.88rem;color:var(--muted)}
footer p{margin:.3em 0}
.nf .prose{min-height:40vh}
@media (min-width:700px){
.hero h1{font-size:2.4rem}
.cards3{grid-template-columns:repeat(3,1fr)}
.arts{grid-template-columns:repeat(3,1fr)}
.arts.small{grid-template-columns:repeat(3,1fr)}
.hero-t{padding-top:26px}
}
@media (max-width:420px){.hero h1{font-size:1.6rem}h1{font-size:1.45rem}}

/* 간단한 움직임(11-09): 들어올 때 살짝 떠오름, 카드 위에 올리면 들림. 움직임 줄이기 설정이면 끔 */
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
main>*{animation:rise .6s ease-out both}
main>*:nth-child(2){animation-delay:.08s}
main>*:nth-child(3){animation-delay:.16s}
main>*:nth-child(4){animation-delay:.24s}
main>*:nth-child(n+5){animation-delay:.3s}
a[class*="card"],.card,article.card{transition:transform .2s ease,box-shadow .2s ease}
a[class*="card"]:hover,.card:hover{transform:translateY(-4px);box-shadow:0 10px 24px rgba(15,94,92,.14)}
img{transition:transform .4s ease}
a:hover img{transform:scale(1.03)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
