*{box-sizing:border-box}body{margin:0;font-family:Poppins,system-ui,sans-serif;background:#fff8f3;color:#2a1a22}
header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#fff;border-bottom:1px solid #f1dfe5;position:sticky;top:0}
.logo{font-family:'DM Serif Display',Georgia,serif;font-size:28px;color:#d6456b}.pill{background:#d6456b;color:#fff;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:600}
main{max-width:520px;margin:auto;padding:18px}h1{font-family:'DM Serif Display',Georgia,serif;font-size:32px;line-height:1.15;margin:6px 0}.sub{color:#5b4650}
.gal{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;margin:14px -18px;padding:0 18px}.gal img{width:78%;flex:none;border-radius:14px;scroll-snap-align:start;box-shadow:0 4px 14px #0002}
.note{font-size:12px;color:#8a7380;margin:0}.price{background:#fff;border:1px solid #f1dfe5;border-radius:14px;padding:12px 14px;margin:14px 0;font-weight:600}.price small{font-weight:400;color:#6d5864}
h2{font-size:19px}form{display:flex;flex-direction:column;gap:10px}input,select{padding:13px;border:1px solid #dcc6cf;border-radius:10px;font:inherit;font-size:16px;background:#fff}
.ck{font-size:13px;display:flex;gap:8px;align-items:flex-start}.ck input{margin-top:3px}button{background:#d6456b;color:#fff;border:0;border-radius:12px;padding:15px;font:inherit;font-weight:600;font-size:17px}
.err{color:#b00020;font-size:13px}.reserve{background:#fff;border:2px dashed #d6456b;border-radius:14px;padding:14px;display:flex;flex-direction:column;gap:10px}
footer{font-size:12px;color:#8a7380;text-align:center;padding:24px}.warn{background:#fff3cd;border:1px solid #e0b100;padding:10px;border-radius:8px}
