:root {
  --coffee: #8B5E3C;
  --gold: #D4AF37;
  --cream: #F8F5F0;
  --dark: #2C2522;
  --accent: #C9A227;
}

* { margin:0; padding:0; box-sizing:border-box; }
body { font-family: 'Noto Sans SC', system-ui, sans-serif; background:#fff; color:#2C2522; line-height:1.7; }
h1,h2,h3 { font-family: 'Playfair Display', Georgia, serif; font-weight:700; }

nav { position:sticky; top:0; background:#fff; border-bottom:1px solid #EDE5D5; z-index:100; }
.nav-inner { max-width:1200px; margin:0 auto; padding:16px 24px; display:flex; justify-content:space-between; align-items:center; }
.logo { font-size:22px; font-weight:700; color:#8B5E3C; }
.nav-links { display:flex; gap:32px; align-items:center; }
.nav-links a { color:#2C2522; text-decoration:none; font-weight:500; }
.nav-links a:hover { color:#8B5E3C; }
.btn-gold { background:#D4AF37; color:#fff; padding:8px 20px; border-radius:4px; font-size:14px; }

header { background: linear-gradient(135deg, #F8F5F0 0%, #fff 100%); padding:80px 24px 60px; }
.hero { max-width:1100px; margin:0 auto; text-align:center; }
.badge { display:inline-block; background:#EDE5D5; color:#8B5E3C; padding:6px 16px; border-radius:20px; font-size:13px; margin-bottom:24px; }
h1 { font-size:56px; line-height:1.1; margin-bottom:20px; color:#2C2522; }
.subtitle { font-size:22px; color:#665A50; margin-bottom:40px; }
.cta { display:flex; gap:16px; justify-content:center; margin-bottom:60px; }
.btn-primary { background:#8B5E3C; color:#fff; padding:14px 36px; border-radius:6px; text-decoration:none; font-weight:600; font-size:16px; }
.btn-secondary { background:transparent; color:#8B5E3C; padding:14px 36px; border:2px solid #8B5E3C; border-radius:6px; text-decoration:none; font-weight:600; }
.stats { display:flex; justify-content:center; gap:80px; margin-top:40px; }
.stats div { text-align:center; }
.stats strong { display:block; font-size:28px; color:#8B5E3C; }
.stats span { font-size:13px; color:#665A50; }

.container { max-width:1200px; margin:0 auto; padding:0 24px; }
section { padding:80px 0; }
h2 { font-size:36px; margin-bottom:40px; text-align:center; color:#2C2522; }

.grid-3 { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:24px; }
.card { background:#fff; border:1px solid #EDE5D5; padding:32px; border-radius:8px; transition:all .2s; }
.card:hover { transform:translateY(-4px); box-shadow:0 12px 24px rgba(139,94,60,0.08); }
.card .num { font-size:42px; font-weight:700; color:#D4AF37; margin-bottom:16px; }
.card h3 { font-size:20px; margin-bottom:12px; }

.bg-coffee { background:#F8F5F0; }
.map-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:16px; }
.map-item { background:#fff; padding:20px; border-radius:8px; border-left:4px solid #D4AF37; }
.map-item strong { display:block; font-size:16px; color:#8B5E3C; margin-bottom:4px; }

.skills-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; }
.skill-card { background:#fff; padding:28px; border-radius:8px; border:1px solid #EDE5D5; }
.skill-card .icon { font-size:32px; margin-bottom:16px; }
.skill-card h3 { font-size:18px; margin-bottom:12px; color:#8B5E3C; }

.timeline { display:flex; flex-direction:column; gap:20px; max-width:800px; margin:0 auto; }
.timeline-item { display:flex; gap:24px; align-items:flex-start; background:#fff; padding:24px; border-radius:8px; }
.timeline-item .day { font-weight:700; color:#D4AF37; min-width:90px; font-size:15px; }
.timeline-item strong { display:block; margin-bottom:6px; }

.enroll-box { background:#2C2522; color:#F8F5F0; padding:60px 40px; border-radius:12px; text-align:center; }
.enroll-box h2 { color:#F8F5F0; margin-bottom:20px; }
.enroll-box p { max-width:620px; margin:0 auto 32px; opacity:0.9; }
.btn-primary.large { padding:18px 48px; font-size:18px; }
.note { margin-top:24px; font-size:13px; opacity:0.6; }

footer { text-align:center; padding:40px 0; color:#998C7E; font-size:13px; }

@media (max-width:768px) {
  h1 { font-size:38px; }
  .nav-links { display:none; }
}