@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');
* { margin:0; padding:0; box-sizing:border-box; font-family:'Pretendard', -apple-system, sans-serif; word-break:keep-all; }
body { background-color:#f8f9fa; color:#2d3748; line-height:1.7; font-size:16px; letter-spacing:-0.3px; }
a { text-decoration:none; color:inherit; }
.container { max-width:1200px; margin:0 auto; padding:0 20px; }

/* Header */
.header { background:#fff; border-bottom:1px solid #e2e8f0; position:sticky; top:0; z-index:100; box-shadow:0 2px 10px rgba(0,0,0,0.05); }
.header-inner { display:flex; justify-content:space-between; align-items:center; height:80px; }
.logo { font-size:1.8rem; font-weight:800; color:#276749; display:flex; align-items:center; gap:8px; }
.nav-links { display:flex; gap:30px; font-weight:600; font-size:1.1rem; }
.nav-links a:hover { color:#2f855a; }

/* Hero Section */
.hero { background:linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('https://images.unsplash.com/photo-1542601906990-b4d3fb778b09?w=1600&q=80') center/cover; color:#fff; padding:100px 0; }
.hero-content { max-width:700px; }
.hero-content h2 { font-size:1.2rem; font-weight:600; color:#9ae6b4; margin-bottom:15px; }
.hero-content h1 { font-size:3rem; font-weight:800; line-height:1.3; margin-bottom:20px; }
.hero-content p { font-size:1.1rem; opacity:0.9; line-height:1.6; margin-bottom:30px; }
.btn { display:inline-block; padding:12px 30px; border-radius:30px; font-weight:700; background:#38a169; color:#fff; transition:0.3s; }
.btn:hover { background:#2f855a; transform:translateY(-2px); }

/* Quick Menu Grid */
.quick-menu-wrap { margin-top:-40px; position:relative; z-index:10; }
.quick-menu-grid { display:grid; grid-template-columns:repeat(4, 1fr); background:#fff; border-radius:15px; box-shadow:0 10px 30px rgba(0,0,0,0.1); overflow:hidden; }
.quick-menu-item { padding:40px 20px; text-align:center; transition:0.3s; color:#fff !important; text-shadow: 1px 1px 4px rgba(0,0,0,0.8); }
.quick-menu-item:hover { transform:translateY(-5px); }
.quick-icon { font-size:3rem; margin-bottom:15px; }
.quick-title { font-size:1.4rem; font-weight:800; margin-bottom:10px; }
.quick-desc { font-size:0.95rem; opacity:0.9; line-height:1.5; }

/* Section & Cards */
.section-title { font-size:2rem; font-weight:800; margin:60px 0 30px; text-align:center; color:#1a202c; }
.section-subtitle { text-align:center; color:#718096; margin-top:-20px; margin-bottom:40px; font-size:1.1rem; }
.grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:30px; }
.card { background:#fff; border-radius:12px; overflow:hidden; box-shadow:0 4px 6px rgba(0,0,0,0.05); transition:0.3s; border:1px solid #e2e8f0; display:flex; flex-direction:column; }
.card:hover { transform:translateY(-5px); box-shadow:0 10px 20px rgba(0,0,0,0.1); }
.card-img { width:100%; height:200px; object-fit:cover; border-bottom:1px solid #edf2f7; }
.card-content { padding:25px; flex-grow:1; display:flex; flex-direction:column; }
.card-tag { display:inline-block; padding:4px 12px; border-radius:20px; font-size:0.85rem; font-weight:700; margin-bottom:15px; align-self:flex-start; }
.card-title { font-size:1.3rem; font-weight:700; margin-bottom:10px; line-height:1.4; }
.card-title a { color:#1a202c; }
.card-title a:hover { color:#38a169; }
.card-desc { color:#4a5568; font-size:1rem; line-height:1.6; }

/* Post Content */
.post-header { text-align:center; padding:60px 0 40px; border-bottom:1px solid #e2e8f0; margin-bottom:40px; }
.post-title { font-size:2.5rem; font-weight:800; color:#1a202c; margin-bottom:20px; line-height:1.3; }
.post-meta { color:#718096; font-size:1rem; }
.post-thumbnail { width:100%; max-height:500px; object-fit:cover; border-radius:15px; margin-bottom:40px; }
.post-body { font-size:1.15rem; line-height:1.8; color:#2d3748; padding-bottom:60px; max-width:800px; margin:0 auto; }

/* Author Box */
.author-box { background:#f0fff4; border:1px solid #c6f6d5; padding:30px; border-radius:15px; display:flex; align-items:center; gap:25px; margin:60px auto; max-width:800px; }
.author-avatar { font-size:4rem; }
.author-info h3 { font-size:1.4rem; color:#276749; margin-bottom:8px; }
.author-info p { color:#2f855a; font-size:1.05rem; }

/* Footer */
.footer { background:#1A202C; color:#CBD5E0; padding:80px 0 40px; margin-top:80px; }
.footer-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; margin-bottom:40px; }
.footer h3 { color:#fff; font-size:1.3rem; margin-bottom:20px; }
.footer p { margin-bottom:10px; font-size:1rem; }
.footer-bottom { border-top:1px solid #2D3748; padding-top:20px; display:flex; justify-content:space-between; align-items:center; }
.footer-links a { color:#CBD5E0; margin-left:20px; font-size:0.95rem; }
.footer-links a:hover { color:#fff; }

@media (max-width:768px) {
  .header-inner { flex-direction:column; height:auto; padding:10px 0; gap:10px; }
  .logo { font-size:1.5rem; justify-content:center; }
  .nav-links { display:grid; grid-template-columns:1fr 1fr; gap:10px; text-align:center; font-size:0.95rem; padding:0 10px; width:100%; }
  .nav-links a { background:#f0fff4; padding:8px 5px; border-radius:5px; color:#276749; }
  .hero-content h1 { font-size:2.2rem; }
  .quick-menu-wrap { margin-top:0; }
  .quick-menu-grid { grid-template-columns:1fr; border-radius:0;}
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; gap:15px; text-align:center; }
}
