:root{--ink:#29231f;--paper:#f5f0e8;--card:#fffdfa;--line:#ded3c5;--bronze:#a46f45;--muted:#746b64}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}.booking-page{width:min(900px,calc(100% - 32px));margin:0 auto;padding:48px 0 80px}.mark{width:46px;height:46px;border:1px solid var(--bronze);display:grid;place-items:center;color:var(--bronze);font:25px Georgia,serif}.brand{font-size:10px;letter-spacing:.24em;color:var(--bronze);font-weight:700;margin:18px 0 42px}.eyebrow,label>span{font-size:10px;letter-spacing:.15em;text-transform:uppercase;font-weight:700;color:var(--bronze)}h1,h2{font-family:Georgia,serif;font-weight:400}h1{font-size:clamp(48px,8vw,84px);line-height:.95;margin:0 0 22px}.intro{max-width:650px;color:var(--muted);font-size:17px;line-height:1.65;margin-bottom:42px}.notice{padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--card);margin:0 0 30px}.notice strong{display:block;font:26px Georgia,serif;margin-bottom:8px}.notice p{margin:0;color:var(--muted);line-height:1.6}.form-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:34px;margin-bottom:20px}.form-card h2{font-size:30px;margin:0 0 24px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wide{grid-column:1/-1}label{display:block}label>span{display:block;margin-bottom:9px;color:#514942}input,select,textarea{width:100%;border:1px solid var(--line);background:white;border-radius:8px;padding:14px;font:16px Arial,sans-serif;color:var(--ink)}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(164,111,69,.23);border-color:var(--bronze)}.choices{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice{border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;gap:12px;align-items:flex-start}.choice input{width:auto;margin-top:2px}.choice span{font-size:15px;line-height:1.4}.room-help{background:#f2ebe2;border-radius:10px;padding:18px;color:var(--muted);line-height:1.55;margin-top:16px}.checks label{display:flex;gap:12px;margin:14px 0;line-height:1.5}.checks input{width:auto}.submit{width:100%;border:0;border-radius:8px;background:var(--ink);color:white;padding:18px;font-size:12px;font-weight:700;letter-spacing:.15em;cursor:pointer}.status{margin:16px 0 0;color:#9a3c35}.success{background:var(--ink);color:white;border-radius:15px;padding:34px}.success h2{font-size:36px;margin:0 0 16px}.success p{line-height:1.65;color:#ddd3ca}.success a,.room-link{display:inline-block;margin:12px 12px 0 0;color:white;border:1px solid #6e625a;border-radius:7px;padding:14px 18px;text-decoration:none;font-size:11px;font-weight:700;letter-spacing:.1em}.honeypot{position:absolute;left:-9999px}.room{max-width:720px}.room-head{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px;background:#eee5da;border-radius:10px}.pill{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.messages{display:grid;gap:14px;margin:30px 0}.message{max-width:82%;padding:17px;border-radius:10px;background:#eee8e1}.message.kalli{margin-left:auto;background:var(--ink);color:white}.message b{display:block;font-size:9px;letter-spacing:.14em;margin-bottom:8px}.return-link{color:var(--bronze)}@media(max-width:650px){.booking-page{padding-top:28px}.grid,.choices{grid-template-columns:1fr}.wide{grid-column:auto}.form-card{padding:24px 18px}h1{font-size:52px}.intro{font-size:16px}}
