*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,'Malgun Gothic','맑은 고딕',sans-serif;font-size:16px;background:#F5F5F5;color:#111;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
#progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,#8B0000,#C9A96E);z-index:9999;transition:width .15s}
a{color:#8B0000;text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:680px;margin:0 auto;padding:0 1rem}
/* 헤더 */
.site-hd{background:#fff;border-bottom:1px solid #eee;padding:.8rem 1rem;position:sticky;top:0;z-index:900}
.site-hd-inner{max-width:680px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}
.site-logo{font-size:1.1rem;font-weight:800;color:#8B0000;text-decoration:none}
.site-logo:hover{text-decoration:none}
.site-nav{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:flex-end}
.site-nav a{font-size:.8rem;color:#555;padding:.5rem .7rem;border-radius:6px;text-decoration:none;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}
.site-nav a:hover{background:#f0f0f0;color:#8B0000;text-decoration:none}
/* 히어로 */
.hero-light{background:#fff;padding:2.5rem 1rem 2rem;text-align:center;border-bottom:1px solid #eee}
.hero-light h1{font-size:clamp(1.4rem,4.5vw,2rem);color:#111;font-weight:800;margin-bottom:.5rem;letter-spacing:-.02em}
.hero-light h1 em{font-style:normal;color:#8B0000}
.hero-light p{color:#555;font-size:1rem;max-width:480px;margin:0 auto}
/* 카드 */
.card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);padding:1.5rem;margin-bottom:1rem;transition:box-shadow .2s,transform .2s}
.card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1);transform:translateY(-2px)}
.card h2{font-size:1.15rem;color:#111;margin-bottom:.5rem;font-weight:700}
.card h3{font-size:1.05rem;color:#111;margin-bottom:.5rem;font-weight:700}
.card p{color:#555;font-size:1rem;line-height:1.7}
.card-link{display:block;text-decoration:none;color:inherit}
.card-link:hover{text-decoration:none}
.card-link .card-arrow{color:#8B0000;font-size:.9rem;margin-top:.8rem;font-weight:600}
/* 콘텐츠 */
.content-area{padding:1.5rem 0 4rem}
.content-area h2{font-size:1.2rem;color:#8B0000;margin:2rem 0 1rem;font-weight:800;padding-left:.5rem;border-left:3px solid #8B0000}
.content-area p{color:#111;font-size:1rem;margin-bottom:1.2rem;line-height:1.7}
.content-img{width:100%;height:auto;border-radius:12px;display:block;margin:1.5rem 0;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.content-area p.sub{color:#555}
.accent-text{color:#8B0000;font-weight:700}
.tag{display:inline-block;background:#FFF5F5;color:#8B0000;font-size:.78rem;padding:.2rem .6rem;border-radius:20px;font-weight:600;margin-right:.3rem;margin-bottom:.3rem}
/* 그리드 */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0}
@media(max-width:480px){.grid-2{grid-template-columns:1fr}}
.grid-item{background:#fff;border-radius:12px;padding:1.2rem;box-shadow:0 2px 8px rgba(0,0,0,.06);text-align:center}
.grid-item .num{font-size:1.8rem;font-weight:800;color:#8B0000}
.grid-item .label{font-size:.85rem;color:#555;margin-top:.2rem}
/* 일러스트 SVG */
.illust{margin:1.5rem 0;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.illust svg{width:100%;height:auto;display:block}
.illust-cap{text-align:center;font-size:.82rem;color:#555;padding:.6rem 1rem}
/* 투표 */
.vote-sec{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);padding:1.5rem;margin:1.5rem 0}
.vote-sec h3{color:#8B0000;text-align:center;margin-bottom:1rem}
.vote-opts{display:flex;gap:.8rem}
.vote-btn{flex:1;padding:1rem;background:#FAFAFA;border:2px solid #eee;border-radius:12px;color:#111;font-size:.95rem;cursor:pointer;transition:all .2s;text-align:center;font-family:inherit}
.vote-btn:hover{border-color:#8B0000;background:#FFF5F5}
.vote-btn.voted{border-color:#8B0000;background:#FFF5F5}
.vote-bar{height:5px;background:#eee;border-radius:3px;margin-top:.6rem;overflow:hidden}
.vote-fill{height:100%;background:#8B0000;border-radius:3px;transition:width .5s}
@media(max-width:480px){.vote-opts{flex-direction:column}}
/* 퀴즈 */
.quiz-sec{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06);padding:1.5rem;margin:1.5rem 0}
.quiz-sec h3{color:#8B0000;text-align:center;margin-bottom:1rem}
.quiz-q{margin-bottom:1.5rem}
.quiz-q p{color:#111;font-weight:700;margin-bottom:.6rem;font-size:.95rem}
.quiz-opt{padding:.8rem 1rem;background:#FAFAFA;border:1px solid #eee;border-radius:8px;color:#555;cursor:pointer;transition:all .2s;font-size:1rem;margin-bottom:.5rem;min-height:44px;display:flex;align-items:center}
.quiz-opt:hover{border-color:#8B0000;color:#111}
.quiz-opt.correct{border-color:#22C55E;background:#F0FFF4;color:#16a34a}
.quiz-opt.wrong{border-color:#ef4444;background:#FFF5F5;color:#ef4444}
/* 시크릿 박스 */
.secret-box{display:none;background:linear-gradient(135deg,#FFF9F0,#FFF5F5);border:1px solid #C9A96E;border-radius:12px;padding:1.5rem;margin:1.5rem 0;text-align:center;animation:fadeUp .5s ease}
.secret-box.show{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.secret-box h3{color:#8B0000;margin-bottom:.5rem}
.secret-box p{color:#555;font-size:.92rem}
/* 카운터 */
.counter{text-align:center;margin:1.5rem 0;padding:1.2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.counter-num{font-size:1.8rem;color:#8B0000;font-weight:800}
.counter-label{color:#555;font-size:.85rem;margin-top:.2rem}
/* 공유 */
.share-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1.5rem auto;padding:.8rem 1.8rem;background:#FEE500;color:#111;border:none;border-radius:12px;font-size:.95rem;font-weight:700;cursor:pointer;transition:transform .2s;font-family:inherit;min-height:44px}
.share-btn:hover{transform:scale(1.02)}
/* 추천 카드 */
.rec-sec{margin:2rem 0}
.rec-sec h3{color:#8B0000;margin-bottom:1rem;font-size:1.05rem}
.rec-card{display:block;padding:1rem 1.2rem;background:#fff;border:1px solid #eee;border-radius:12px;margin-bottom:.6rem;text-decoration:none;color:#111;transition:all .2s}
.rec-card:hover{border-color:#8B0000;transform:translateX(3px);text-decoration:none}
.rec-card span{color:#8B0000;font-size:.8rem;font-weight:600}
.rec-card p{color:#555;font-size:.9rem;margin-top:.2rem}
/* CTA 팁 박스 */
.tip-box{background:#FFF5F5;border:1px solid #fecaca;border-radius:12px;padding:1.2rem;margin:1.5rem 0}
.tip-box strong{color:#8B0000}
.tip-box p{color:#555;font-size:.9rem}
/* 푸터 */
main{display:block}
footer{text-align:center;padding:2rem 1rem 7rem;border-top:1px solid #eee;background:#fff;margin-top:2rem}
footer p{color:#555;font-size:.82rem;margin-bottom:.5rem}
footer a{color:#8B0000}
.footer-search{margin:1rem 0;padding:.8rem;background:#F5F5F5;border-radius:8px;font-size:.85rem;color:#555}
/* CTA 바 */
.cta-bar{position:fixed;bottom:0;left:0;right:0;z-index:9998;display:flex;justify-content:center;padding:.6rem 1rem;background:rgba(255,255,255,.95);backdrop-filter:blur(8px);border-top:1px solid #eee}
.cta-btn{display:flex;align-items:center;gap:.4rem;padding:.75rem 1.8rem;background:#22C55E;color:#fff;border-radius:50px;text-decoration:none;font-size:.95rem;font-weight:700;max-width:400px;width:100%;justify-content:center;transition:transform .15s;box-shadow:0 2px 12px rgba(34,197,94,.3)}
.cta-btn:hover{transform:scale(1.02);text-decoration:none}
/* 브레드크럼 */
.breadcrumb{padding:.8rem 0;font-size:.82rem;color:#555}
.breadcrumb a{color:#8B0000}
/* Pull Quote — 매거진 스타일 */
.pull-quote{margin:2rem 0;padding:1.5rem 1.2rem;border-left:4px solid #C9A96E;background:#FFF9F5;font-size:clamp(1.15rem,3.5vw,1.5rem);font-style:italic;color:#8B0000;line-height:1.6;font-weight:600;letter-spacing:-.01em;position:relative}
.pull-quote::before{content:'\201C';position:absolute;top:-.2rem;left:.5rem;font-size:3rem;color:#C9A96E;opacity:.3;font-style:normal}
/* Photo with caption — 매거진 산재 */
.photo-inline{margin:1.5rem 0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.photo-inline img{width:100%;height:auto;display:block}
.photo-inline .photo-cap{text-align:center;font-size:.82rem;color:#555;padding:.6rem 1rem;background:#fff}
/* Mid-content CTA — 40% 위치 */
.mid-cta{display:block;max-width:100%;margin:2rem auto;padding:1rem;background:#7C3AED;color:#fff;border-radius:16px;text-align:center;font-size:1.05rem;font-weight:800;text-decoration:none;min-height:56px;line-height:1.4;transition:all .2s;box-shadow:0 4px 16px rgba(124,58,237,.3)}
.mid-cta:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(124,58,237,.4);text-decoration:none;color:#fff}
/* Social count top */
.view-count-top{text-align:center;padding:.6rem 1rem;font-size:.88rem;color:#555;margin-bottom:.5rem}
.view-count-top strong{color:#8B0000;font-weight:800;font-size:1rem}
/* FAQ — 아코디언 */
.faq-sec{margin:2.5rem 0 2rem;background:#fff;border-radius:14px;padding:1.5rem 1.2rem;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.faq-sec h2{font-size:1.2rem;color:#111;margin-bottom:1rem;font-weight:800}
.faq-item{border-bottom:1px solid #f0f0f0;padding:.85rem 0}
.faq-item:last-child{border-bottom:none}
.faq-item summary{cursor:pointer;font-weight:700;color:#111;list-style:none;display:flex;justify-content:space-between;align-items:center;font-size:1rem;line-height:1.5;min-height:44px;padding:.25rem 0}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';color:#8B0000;font-size:1.4rem;font-weight:400;margin-left:.6rem;transition:transform .15s}
.faq-item[open] summary::after{content:'−';transform:rotate(0)}
.faq-item[open] summary{color:#8B0000}
.faq-item .faq-a{padding:.6rem 0 .2rem;color:#555;font-size:.95rem;line-height:1.75}
