:root{
  --navy:#0f172a; --navy2:#1e293b; --gold:#d4af37; --cream:#f5f1e8; --dim:#9aa6b8;
  --maxw:1080px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--navy);color:var(--cream);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans KR",sans-serif;
  line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3{margin:0;line-height:1.25}
a{color:var(--gold)}
section{padding:64px 22px}
section>*{max-width:var(--maxw);margin-left:auto;margin-right:auto}

.hero{padding:0;background:radial-gradient(1200px 600px at 80% -10%, #16233f 0%, var(--navy) 60%)}
.hero-inner{max-width:var(--maxw);margin:0 auto;padding:72px 22px;display:flex;gap:40px;
  align-items:center;justify-content:space-between;flex-wrap:wrap}
.hero-copy{flex:1 1 340px}
.hero-art{flex:0 0 auto}
.hero-art img{width:min(40vw,320px);height:auto;filter:drop-shadow(0 12px 40px #0006)}
.badge{display:inline-block;background:#d4af3722;color:var(--gold);border:1px solid #d4af3766;
  padding:4px 12px;border-radius:999px;font-size:13px;font-weight:600;margin-bottom:18px}
.wordmark{font-size:34px;font-weight:800;letter-spacing:.5px}
.wordmark::after{content:"";display:block;width:64px;height:4px;background:var(--gold);
  border-radius:2px;margin:10px 0 18px}
.tagline-main{font-size:clamp(30px,5vw,46px);font-weight:800}
.tagline-sub{color:var(--dim);font-size:18px;margin:10px 0 26px}

.waitlist{display:flex;gap:10px;flex-wrap:wrap;max-width:460px;position:relative}
.waitlist input[type=email]{flex:1 1 220px;padding:14px 16px;border-radius:10px;border:1px solid #33415a;
  background:#0b1220;color:var(--cream);font-size:16px}
.waitlist input[type=email]::placeholder{color:#5b6b82}
.waitlist button{padding:14px 20px;border:0;border-radius:10px;background:var(--gold);color:#1a1407;
  font-weight:700;font-size:16px;cursor:pointer}
.waitlist .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.status{flex-basis:100%;margin:4px 0 0;font-size:14px;min-height:18px}
.status[data-kind=ok]{color:#86efac}
.status[data-kind=err]{color:#fca5a5}
.secondary{display:inline-block;margin-top:18px;color:var(--dim);text-decoration:none;font-size:15px}
.secondary:hover{color:var(--gold)}

.pitch{text-align:center}
.pitch p{font-size:clamp(18px,2.6vw,24px)}

.features h2,.shots h2,.funnel h2,.faq h2,.final-cta h2{text-align:center;font-size:28px;margin-bottom:32px}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.feature{background:var(--navy2);border:1px solid #ffffff10;border-radius:16px;padding:24px}
.feature .ficon{font-size:28px;margin-bottom:10px}
.feature h3{font-size:18px;color:var(--gold)}
.feature p{color:var(--dim);font-size:15px;margin:8px 0 0}

.shot-row{display:flex;gap:26px;justify-content:center;flex-wrap:wrap;max-width:700px;margin-left:auto;margin-right:auto}
.phone{width:min(320px,82vw);border-radius:38px;border:8px solid #2b3a55;background:#0b1220;
  overflow:hidden;box-shadow:0 16px 50px #0009}
.phone img{width:100%;height:auto;display:block}
.phone.empty{aspect-ratio:9/19;display:flex;align-items:center;justify-content:center}
.phone.empty::after{content:"화면 준비 중";color:#3d4d66;font-size:13px}
.phone.empty img{display:none}
.shots-note{text-align:center;color:#5b6b82;font-size:13px;margin-top:18px}

.funnel{text-align:center;background:var(--navy2)}
.funnel p{color:var(--dim);max-width:560px;margin:12px auto 24px}
.btn{display:inline-block;background:var(--gold);color:#1a1407;font-weight:700;text-decoration:none;
  padding:14px 24px;border-radius:10px}

.faq{max-width:720px;margin-left:auto;margin-right:auto;text-align:center}
.faq details{border-bottom:1px solid #ffffff14;padding:16px 4px}
.faq summary{cursor:pointer;font-weight:600;font-size:17px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+ ";color:var(--gold)}
.faq details[open] summary::before{content:"– "}
.faq p{color:var(--dim);margin:10px 0 0}

.final-cta{text-align:center;background:radial-gradient(900px 400px at 50% 120%, #16233f 0%, var(--navy) 70%)}
.final-cta .waitlist{margin:0 auto;justify-content:center}

.footer{text-align:center;padding:48px 22px;border-top:1px solid #ffffff12}
.footer .wordmark.sm{font-size:20px}
.footer .wordmark.sm::after{margin:8px auto 14px}
.footer-tag{color:var(--dim);font-size:14px;letter-spacing:1px}
.footer nav{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin:16px 0}
.footer nav a{color:var(--dim);text-decoration:none;font-size:14px}
.footer nav a:hover{color:var(--gold)}
.footer .copy{color:#5b6b82;font-size:13px}
