/* sections.css - 섹션별 스타일 */

/* 공통 섹션 */
section { padding: 50px 20px; max-width: 960px; margin: 0 auto; }
section h2 { font-size: clamp(26px, 4vw, 42px); font-weight: 800; margin-bottom: 16px; }
section h2 span { color: var(--green); }
section p { color: var(--text2); font-size: 16px; max-width: 720px; }

/* HERO */
.hero {
  min-height: 60vh;
  display: flex; flex-direction: column;
  justify-content: center; align-items: center;
  text-align: center;
  background: linear-gradient(160deg, #0a0a0a 0%, #0d1f10 60%, #0a0a0a 100%);
  padding: 30px 20px; position: relative; overflow: hidden;
}
.hero::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; bottom: 0;
  background: radial-gradient(ellipse at 50% 40%, rgba(0,200,83,0.07) 0%, transparent 70%);
}
.hero-tag { font-size: 12px; letter-spacing: 4px; color: var(--green); text-transform: uppercase; margin-bottom: 24px; }
.hero h1 { font-size: clamp(36px, 7vw, 72px); font-weight: 800; line-height: 1.15; margin-bottom: 24px; }
.hero h1 span { color: var(--green); }
.hero-sub { font-size: clamp(15px, 2.5vw, 20px); color: var(--text2); max-width: 620px; margin-bottom: 48px; }
.hero-price { display: flex; gap: 32px; flex-wrap: wrap; justify-content: center; margin-bottom: 52px; }
.price-item { text-align: center; }
.price-item .dollar { font-size: 38px; font-weight: 900; color: var(--green); }
.price-item .label { font-size: 13px; color: var(--text3); margin-top: 4px; }

/* JJASIK */
.jjasik-block {
  background: var(--bg2); border: 1px solid var(--border);
  border-radius: 20px; padding: 48px; margin-top: 48px;
}
.jjasik-block h3 { font-size: 28px; font-weight: 800; margin-bottom: 12px; }
.jjasik-block .en { font-size: 13px; color: var(--green); letter-spacing: 2px; margin-bottom: 20px; }
.jjasik-block p { color: #999; font-size: 15px; margin-bottom: 16px; }
.jjasik-sizes { display: flex; gap: 16px; flex-wrap: wrap; margin-top: 24px; }
.size-tag { background: var(--bg3); border: 1px solid var(--border2); border-radius: 8px; padding: 10px 20px; font-size: 14px; color: #ccc; }
.size-tag span { color: var(--green); font-weight: 700; }

/* 5-5-5 */
.section-dark { background: #050505; max-width: 100%; padding: 100px 20px; }
.section-dark-inner { max-width: 960px; margin: 0 auto; }
.node-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; margin-top: 48px; }

/* ROADMAP */
.roadmap { display: flex; flex-direction: column; margin-top: 48px; border-left: 2px solid #1e3320; padding-left: 32px; }
.roadmap-item { position: relative; padding-bottom: 44px; }
.roadmap-item:last-child { padding-bottom: 0; }
.roadmap-item::before { content: ''; position: absolute; left: -39px; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: var(--green); }
.roadmap-item .step { font-size: 11px; color: var(--green); letter-spacing: 2px; margin-bottom: 6px; }
.roadmap-item h4 { font-size: 20px; font-weight: 800; margin-bottom: 8px; }
.roadmap-item p { font-size: 14px; color: var(--text3); }

/* PHILOSOPHY */
.philosophy {
  background: linear-gradient(135deg, #0d1a0f 0%, #0a0a0a 100%);
  border: 1px solid #1a2e1c; border-radius: 20px;
  padding: 60px 48px; text-align: center;
}
.philosophy h3 { font-size: clamp(20px, 3vw, 30px); font-weight: 800; margin-bottom: 20px; }
.philosophy p { color: #999; font-size: 15px; max-width: 640px; margin: 0 auto 12px; }

/* CTA */
.cta-section {
  text-align: center; padding: 50px 20px;
  background: linear-gradient(160deg, #0a0a0a 0%, #061208 100%);
}
.cta-section h2 { font-size: clamp(26px, 4vw, 42px); font-weight: 800; margin-bottom: 16px; }
.cta-section p { color: #999; margin-bottom: 40px; font-size: 16px; }
.cta-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap: 16px; max-width: 800px; margin: 40px auto 0; }

/* APP 다운로드 */
.app-section { text-align: center; padding: 20px 0 60px; border-top: 1px solid #1a1a1a; margin-top: 40px; }
.app-section p { color: var(--text3); font-size: 14px; margin-bottom: 16px; }

/* FOOTER */
footer { text-align: center; padding: 20px 20px; border-top: 1px solid #1a1a1a; color: var(--text4); font-size: 13px; }
footer span { color: var(--green); }

/* 반응형 */
@media (max-width: 600px) {
  .jjasik-block { padding: 28px; }
  .philosophy { padding: 40px 24px; }
}

/* 보도자료 상세 */
.press-full h1 { font-size:26px; font-weight:700; color:#fff; margin-bottom:8px; }
.press-full h2 { font-size:17px; font-weight:700; color:#00C853; margin:40px 0 12px; }
.press-full p { font-size:15px; color:#ccc; margin-bottom:16px; }
.press-full .press-quote { border-left:3px solid #00C853; padding-left:16px; color:#aaa; font-style:italic; margin:24px 0; }
.press-full .press-meta { color:#888; font-size:13px; margin-bottom:48px; border-bottom:1px solid #333; padding-bottom:24px; }
.press-full .contact-box { background:#111; border:1px solid #333; border-radius:12px; padding:24px; margin-top:60px; font-size:14px; color:#aaa; }
.press-full .contact-box a { color:#00C853; }
