:root { --ink:#17201c; --muted:#69736e; --paper:#f5f7f2; --card:#fff; --lime:#c9f45b; --line:#dfe5dc; }
* { box-sizing:border-box; }
body { margin:0; font-family:Inter, Pretendard, system-ui, sans-serif; color:var(--ink); background:var(--paper); }
.hero { color:white; background:radial-gradient(circle at 85% 15%,#397a63 0,transparent 32%),#122c24; padding:24px max(24px,calc((100% - 1080px)/2)) 76px; }
nav { display:flex; justify-content:space-between; align-items:center; letter-spacing:.08em; }
.badge { padding:7px 12px; border:1px solid #ffffff50; border-radius:999px; font-size:12px; letter-spacing:0; }
.badge.live { color:#16271f; border:0; background:var(--lime); }
.hero-copy { margin-top:90px; max-width:760px; }
.eyebrow { color:#88bca8; font-size:12px; font-weight:800; letter-spacing:.18em; }
h1 { margin:12px 0 20px; font-size:clamp(40px,7vw,76px); line-height:1.04; letter-spacing:-.055em; }
.hero-copy>p:last-child { color:#c5d1cc; font-size:17px; }
main { width:min(1080px,calc(100% - 40px)); margin:-34px auto 0; }
.panel { background:var(--card); border:1px solid var(--line); border-radius:18px; box-shadow:0 14px 36px #16261e0b; }
.service-grid { display:grid; grid-template-columns:1fr 1fr; padding:22px; gap:14px; }
.service-grid article { display:flex; align-items:center; gap:14px; padding:10px 16px; }
.service-grid small { display:block; color:var(--muted); margin-top:4px; }
.dot { width:12px; height:12px; border-radius:50%; box-shadow:0 0 0 6px #eee; }
.firebase { background:#ffad29; box-shadow:0 0 0 6px #fff1d8; }.cloudflare { background:#f48120; box-shadow:0 0 0 6px #ffead8; }
.workspace { padding:70px 0; }.section-title { display:flex; justify-content:space-between; align-items:end; margin-bottom:22px; }
h2,h3,p { margin-top:0; }h2 { font-size:32px; margin-bottom:0; }.section-title span { color:var(--muted); }
.idea-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.idea-card { min-height:190px; padding:24px; border:1px solid var(--line); border-radius:16px; background:var(--card); display:flex; flex-direction:column; }
.idea-card .tag { align-self:flex-start; color:#285c49; background:#e6f4ea; padding:5px 9px; border-radius:99px; font-size:11px; font-weight:700; }
.idea-card h3 { margin:20px 0 8px; }.idea-card p { color:var(--muted); line-height:1.55; font-size:14px; }.idea-card time { margin-top:auto; color:#9aa29e; font-size:11px; }
.pilot-card { display:grid; grid-template-columns:1.35fr 1fr; gap:36px; padding:34px; border:1px solid var(--line); border-radius:18px; background:var(--card); }
.pilot-card .tag { display:inline-block; color:#285c49; background:#e6f4ea; padding:6px 10px; border-radius:99px; font-size:11px; font-weight:800; }
.summary { max-width:580px; margin:24px 0; font-size:23px; font-weight:700; line-height:1.45; letter-spacing:-.025em; }
dl { margin:0; display:grid; gap:9px; }
dl div { display:grid; grid-template-columns:52px 1fr; gap:12px; }
dt { color:var(--muted); font-size:13px; font-weight:800; } dd { margin:0; font-size:14px; }
.validation-form { padding:26px; border-radius:14px; background:#f4f8f2; }
.validation-form h3 { margin-bottom:20px; }
.validation-form label { display:flex; align-items:center; gap:10px; margin:13px 0; color:var(--ink); font-size:14px; font-weight:650; }
.validation-form input { width:18px; height:18px; margin:0; accent-color:#285c49; }
.validation-form button { width:100%; margin:18px 0 10px; }
.guide { display:grid; grid-template-columns:.7fr 1.3fr; gap:30px; margin-top:24px; padding:28px 34px; }
.guide h3 { margin-bottom:0; }.guide ol { margin:0; padding-left:20px; color:var(--muted); line-height:1.9; font-size:14px; }
.idea-form { margin-top:26px; padding:28px; }.idea-form label { color:var(--muted); font-size:13px; font-weight:700; }
input,textarea,select { width:100%; margin:8px 0 18px; border:1px solid var(--line); border-radius:10px; padding:13px; font:inherit; background:#fbfcfa; }
textarea { min-height:90px; resize:vertical; }.form-row { display:grid; grid-template-columns:1fr auto; gap:16px; align-items:end; }
button { margin-bottom:18px; border:0; border-radius:10px; padding:14px 24px; font-weight:800; color:#163026; background:var(--lime); cursor:pointer; }
button:disabled { opacity:.55; cursor:wait; }.message { min-height:20px; margin:0; color:var(--muted); font-size:13px; }
footer { padding:28px; border-top:1px solid var(--line); text-align:center; color:var(--muted); font-size:12px; }
@media(max-width:720px){.hero-copy{margin-top:60px}.service-grid,.idea-grid,.pilot-card,.guide{grid-template-columns:1fr}.pilot-card{padding:24px}.form-row{display:block}.workspace{padding-top:50px}.section-title{align-items:start;gap:10px}.section-title>span{font-size:12px;text-align:right}}
