:root{--guide-ink:#2f2c24;--guide-muted:#70695f;--guide-olive:#656148;--guide-line:#ded8cc}
.guide-wrap{width:min(1120px,calc(100% - 48px));margin:auto}
body:has(.guide-header){margin:0;background:#f2efe7;color:var(--guide-ink);font-family:"Malgun Gothic","Apple SD Gothic Neo",sans-serif;line-height:1.85;word-break:keep-all;overflow-wrap:break-word}
.guide-header{background:#fffdfa;border-bottom:1px solid var(--guide-line)}
.guide-header .guide-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}
.guide-brand{text-decoration:none;font-family:Batang,serif;font-size:23px;font-weight:700;line-height:1.4}
.guide-brand small{display:block;font-family:sans-serif;font-size:9px;letter-spacing:.16em;color:var(--guide-muted)}
.guide-header nav{display:flex;align-items:center;gap:24px;font-size:14px}
.guide-header a,body:has(.guide-header) a{color:inherit}
.guide-header nav a{text-decoration:none}
a.guide-button{display:inline-block;padding:11px 21px;border-radius:30px;background:var(--guide-olive);color:white;text-decoration:none;font-weight:700}
.guide-crumb{font-size:13px;color:var(--guide-muted);padding:26px 0}
.guide-hero{max-width:820px;padding:26px 0 36px}
.guide-label{display:block;font-size:12px;color:var(--guide-olive);font-weight:700;letter-spacing:.05em}
.guide-hero h1{font-family:Batang,serif;font-size:clamp(30px,4.5vw,52px);line-height:1.35;letter-spacing:-.04em;margin:15px 0 24px}
.guide-intro{font-size:18px;color:#5c554b;line-height:1.9}
.guide-meta,.guide-photo figcaption{font-size:12px;color:var(--guide-muted)}
.guide-photo{margin:0 0 48px;max-width:820px}
.guide-photo img{display:block;width:100%;max-height:540px;object-fit:contain;background:#eae4d8;border-radius:8px}
.guide-photo figcaption{padding:10px 0}
.guide-reading{max-width:780px}
.guide-reading section{margin:48px 0}
.guide-reading h2,.guide-related h2,.guide-group h2,.guide-contact h2{font-size:25px;line-height:1.5;letter-spacing:-.03em}
.guide-reading p{font-size:17px;line-height:2}
.guide-toc,.guide-check{background:#fffdfa;padding:24px 32px;border:1px solid var(--guide-line);border-radius:8px}
.guide-toc ol,.guide-check ul{padding-left:24px;margin-bottom:0}
.guide-toc li,.guide-check li{padding:5px 0}
.guide-faq details{border-top:1px solid var(--guide-line);padding:16px 0}
.guide-faq summary{cursor:pointer;font-weight:700;font-size:17px}
.guide-faq details p{margin:14px 0 0;color:var(--guide-muted)}
.guide-reading p.guide-note{font-size:14px;color:var(--guide-muted);padding-top:24px;border-top:1px solid var(--guide-line)}
.guide-related,.guide-group{margin:50px 0 64px}
.guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
a.guide-card{display:flex;flex-direction:column;padding:26px;background:#fffdfa;border:1px solid var(--guide-line);border-radius:8px;text-decoration:none;color:var(--guide-ink);transition:border-color .15s}
a.guide-card:hover{border-color:var(--guide-olive)}
.guide-card h3{font-size:19px;line-height:1.6;margin:12px 0}
.guide-card p{font-size:14px;line-height:1.85;color:var(--guide-muted);margin:0 0 22px}
.guide-arrow{margin-top:auto;font-size:13px;color:var(--guide-olive);font-weight:700}
.guide-contact{margin:60px 0;background:#e8e2d5;padding:36px;border-radius:8px}
.guide-contact p{color:#5c554b}
.guide-footer{padding:36px 0;background:#e9e4d9;font-size:13px;color:var(--guide-muted)}
.guide-footer p{margin:10px 0}
.home-guides{padding:80px 0;background:#f8f6f0}
.home-guides .lead{margin:24px 0 32px}
.home-guides .guide-cards{word-break:keep-all;overflow-wrap:break-word}
.skip{position:absolute;left:16px;top:-100px;background:#fff;padding:12px;z-index:100}
.skip:focus{top:10px}
body:has(.guide-header) a:focus-visible,.guide-card:focus-visible,summary:focus-visible{outline:3px solid #656148;outline-offset:4px}
.guide-reading section{scroll-margin-top:24px}
@media(max-width:850px){.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-header nav{gap:14px}.guide-brand{font-size:19px}}
@media(max-width:580px){.guide-wrap{width:calc(100% - 36px)}.guide-header .guide-wrap{align-items:flex-start;flex-direction:column;gap:12px;padding:16px 0}.guide-header nav{width:100%;justify-content:space-between;font-size:13px}.guide-header .guide-button{padding:8px 16px}.guide-cards{grid-template-columns:1fr}.guide-hero{padding-top:8px}.guide-intro{font-size:16px}.guide-reading p{font-size:16px}.guide-toc,.guide-check,.guide-contact{padding:22px}.guide-photo{margin-bottom:30px}.guide-reading h2,.guide-related h2,.guide-group h2{font-size:22px}.home-guides{padding:56px 0}.guide-card{padding:22px}}
