@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700&display=swap');
:root{--bg:#fffaf5;--ink:#40372f;--muted:#887c70;--accent:#b87555;--line:#eaded3;--card:#fff;--shadow:0 18px 50px rgba(77,55,38,.10)}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--ink);font-family:'Noto Sans KR',sans-serif}
button,input,textarea{font:inherit} button{cursor:pointer}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:fixed;top:0;left:0;right:0;z-index:10;background:rgba(255,250,245,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(234,222,211,.7)}
.brand{font-weight:800;font-size:21px;letter-spacing:-1px;cursor:pointer}.step{font-size:12px;color:var(--muted);letter-spacing:1px}
.page{display:none;min-height:100vh;padding:110px 6vw 60px;align-items:center;justify-content:center}.page.active{display:flex}.content{width:min(980px,100%);text-align:center}.content.narrow{width:min(720px,100%)}
.eyebrow{font-size:11px;letter-spacing:3px;color:var(--accent);font-weight:800;margin:0 0 16px}.logo-mark{display:inline-flex;border:2px solid var(--ink);padding:9px 18px;border-radius:50%;font-weight:800;font-size:25px;margin-bottom:12px}
h1{font-size:clamp(42px,7vw,76px);line-height:1.15;letter-spacing:-4px;margin:12px 0 20px}h2{font-size:clamp(30px,4vw,48px);line-height:1.28;letter-spacing:-2px;margin:0 0 18px}h1 span,h2 span{color:var(--accent)}.lead,.intro{color:var(--muted);line-height:1.9}.gift-visual{border:0;background:transparent;margin:35px auto 0;display:block;color:var(--muted);font-size:13px}.gift-box,.gift-lid{position:relative;margin:auto}.gift-box{width:190px;height:145px;background:#c98d6d;border-radius:7px;box-shadow:var(--shadow)}.gift-box:before{content:"";position:absolute;left:77px;top:0;width:36px;height:145px;background:#f5e5d5}.gift-box:after{content:"";position:absolute;left:0;top:50px;width:190px;height:28px;background:#f5e5d5}.gift-lid{width:215px;height:48px;background:#b87555;border-radius:8px;margin-bottom:-4px;z-index:1}.gift-lid:before{content:"";position:absolute;left:89px;top:0;width:36px;height:48px;background:#f5e5d5}.gift-visual span{display:block;margin-top:20px}
.boxes{display:grid;grid-template-columns:repeat(9,1fr);gap:12px;margin:35px 0}.mini-box{height:95px;border-radius:14px;position:relative;box-shadow:0 8px 22px rgba(60,40,25,.09)}.mini-box:before{content:"";position:absolute;left:42%;top:0;width:16%;height:100%;background:rgba(255,255,255,.65)}.mini-box:after{content:"";position:absolute;left:0;top:43%;width:100%;height:15%;background:rgba(255,255,255,.65)}
.primary,.secondary{border-radius:999px;padding:15px 24px;border:1px solid var(--accent);font-weight:700}.primary{background:var(--accent);color:white;box-shadow:0 10px 25px rgba(184,117,85,.22)}.secondary{background:transparent;color:var(--accent)}.arrow b{margin-left:10px;font-size:18px}
.options{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:35px}.option{background:white;border:1px solid var(--line);border-radius:18px;padding:20px;text-align:left;display:flex;align-items:center;gap:14px;transition:.2s}.option:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--accent)}.option input{display:none}.option .radio{width:22px;height:22px;border:1px solid #cbbcaf;border-radius:50%;flex:none}.option.selected{border:2px solid var(--accent);background:#fff8f2}.option.selected .radio{box-shadow:inset 0 0 0 5px white;background:var(--accent)}.swatch{width:42px;height:42px;border-radius:12px;flex:none}.option strong{display:block}.option small{color:var(--muted)}
.button-row{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:28px}.recommend-card{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:white;border:1px solid var(--line);border-radius:28px;padding:28px;text-align:left;box-shadow:var(--shadow);margin-top:30px;align-items:center}.recommend-art{height:260px;border-radius:20px;background:linear-gradient(135deg,#f4d7c6,#f8eee7);position:relative;overflow:hidden}.recommend-art:before{content:"";position:absolute;width:150px;height:110px;background:#c98d6d;left:50%;top:50%;transform:translate(-50%,-45%);border-radius:12px;box-shadow:0 15px 35px rgba(70,40,20,.15)}.recommend-art:after{content:"행복담";position:absolute;left:50%;top:50%;transform:translate(-50%,-45%);font-weight:800;color:white;font-size:24px}.recommend-card h3{font-size:25px;margin:0 0 12px}.recommend-card p{color:var(--muted);line-height:1.8}.tags{display:flex;gap:7px;flex-wrap:wrap}.tag{font-size:11px;background:#f6eee8;padding:7px 10px;border-radius:999px;color:#8b6654}
form{background:white;border:1px solid var(--line);border-radius:25px;padding:26px;text-align:left;box-shadow:var(--shadow);margin-top:25px}label{display:block;font-size:13px;font-weight:700;margin-bottom:15px}input,textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fffdfb;outline:none}input:focus,textarea:focus{border-color:var(--accent)}.selected-summary{background:#faf1ea;padding:14px;border-radius:12px;font-size:13px;line-height:1.7;margin:10px 0 18px}.submit{width:100%}.small{font-size:11px;color:#9b8f84;line-height:1.7;margin-top:14px}
@media(max-width:700px){.boxes{grid-template-columns:repeat(3,1fr)}.options{grid-template-columns:1fr}.recommend-card{grid-template-columns:1fr}.recommend-art{height:210px}.page{padding-left:20px;padding-right:20px}h1{letter-spacing:-2px}.topbar{padding:0 20px}}

.nav-row { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.nav-row button { min-width:140px; }
