/* Val Mira – standalone PMS enquiry form */
#vm-anfrage { padding: 72px 64px 80px; background: var(--paper); font-family: var(--sans); }
#vm-anfrage *, #vm-anfrage *::before, #vm-anfrage *::after { box-sizing: border-box; }
#vm-anfrage .vmf-card { max-width: 760px; margin: 0 auto; }
#vm-anfrage .vmf-eyebrow { margin: 0 0 18px; color: var(--ink-light); font-size: 10px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; }
#vm-anfrage .vmf-title { margin: 0 0 14px; color: var(--ink); font-family: var(--serif); font-size: clamp(38px, 4.5vw, 60px); font-weight: 300; line-height: 1.05; }
#vm-anfrage .vmf-intro { max-width: 520px; margin: 0 0 34px; color: var(--ink-mid); font-size: 15px; line-height: 1.8; }
#vm-anfrage .vmf-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 28px; margin-bottom: 18px; }
#vm-anfrage .vmf-full { grid-column: 1 / -1; }
#vm-anfrage label { display: block; margin: 0 0 8px; color: var(--ink-light); font-size: 10px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; }
#vm-anfrage input, #vm-anfrage select, #vm-anfrage textarea { width: 100%; border: 1px solid var(--border); border-radius: 0; background: #fff; color: var(--ink); font: inherit; font-size: 15px; line-height: 1.4; padding: 13px 14px; }
#vm-anfrage textarea { min-height: 118px; resize: vertical; }
#vm-anfrage input:focus, #vm-anfrage select:focus, #vm-anfrage textarea:focus { border-color: var(--ink); outline: 1px solid var(--ink); outline-offset: -1px; }
#vm-anfrage .vmf-hint { margin: 7px 0 0; color: var(--ink-light); font-size: 12px; line-height: 1.55; }
#vm-anfrage .vmf-accept { display: flex; align-items: flex-start; gap: 12px; margin: 4px 0 24px; padding: 17px 19px; background: var(--paper-dark); color: var(--ink-mid); font-size: 13px; line-height: 1.7; text-transform: none; letter-spacing: normal; }
#vm-anfrage .vmf-accept input { width: 16px; height: 16px; margin-top: 3px; accent-color: var(--ink); }
#vm-anfrage .vmf-accept label { margin: 0; color: inherit; font: inherit; letter-spacing: normal; text-transform: none; }
#vm-anfrage .vmf-accept a { color: var(--ink); text-decoration: underline; }
#vm-anfrage .vmf-btn { border: 0; background: var(--ink); color: var(--paper); cursor: pointer; font: inherit; font-size: 12px; letter-spacing: .15em; padding: 16px 36px; text-transform: uppercase; }
#vm-anfrage .vmf-btn:hover { background: var(--ink-mid); }
#vm-anfrage .vmf-btn:disabled { cursor: wait; opacity: .55; }
#vm-anfrage .vmf-msg { margin: 0 0 22px; padding: 16px 19px; background: #f2e5e1; color: #823a28; font-size: 14px; line-height: 1.6; }
#vm-anfrage .vmf-done { border-left: 2px solid var(--ink); padding: 28px; background: var(--paper-dark); color: var(--ink); font-family: var(--serif); font-size: 22px; font-weight: 300; line-height: 1.55; }
#vm-anfrage .vmf-bad { border-color: #823a28; background: #fbf4f2; }
#vm-anfrage .vmf-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 900px) { .page-wrap { display: block; } .left-image { position: relative; height: 48svh; } #vm-anfrage { padding: 56px var(--ph-sm) 64px; } }
@media (max-width: 560px) { #vm-anfrage .vmf-grid { grid-template-columns: 1fr; } }
