/* Inquiry popup (global). Cream #F8F4EB panel, clay #A77F68 accents. */
:root{--clay:#A77F68}
body.inquiry-open{overflow:hidden}
.inquiry{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .3s ease}
.inquiry[hidden]{display:none}
.inquiry.is-open{opacity:1}
.inquiry__backdrop{position:absolute;inset:0;background:rgba(24,16,10,.62);backdrop-filter:blur(3px)}
.inquiry__dialog{position:relative;display:flex;align-items:stretch;width:100%;max-width:880px;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow:hidden;border-radius:10px;background:#F8F4EB;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(16px);transition:transform .35s ease}
.inquiry.is-open .inquiry__dialog{transform:none}

.inquiry__close{position:absolute;top:14px;right:14px;z-index:3;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:rgba(248,244,235,.9);color:#1c1c1c;cursor:pointer;transition:background .2s,transform .2s}
.inquiry__close:hover{background:#fff;transform:rotate(90deg)}

/* Validation */
.field.is-invalid input,
.field.is-invalid textarea,
.field.is-invalid select,
.field.is-invalid .room-select__btn{border-bottom-color:#b3261e}
.field.is-invalid > span:first-child{color:#b3261e}
.field__error{display:block;margin-top:6px;font:400 12px/1.4 "Jost",sans-serif;color:#b3261e}

.inquiry__visual{position:relative;flex:1 1 0;min-width:0;min-height:0;background:#2a3a2c}
.inquiry__visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.inquiry__title{position:relative;margin:0;padding:34px 32px;font:300 36px/1.1 "Cormorant Garamond",serif;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.35)}
.inquiry__title em{font-style:italic}

.inquiry__panel{display:flex;flex-direction:column;flex:1 1 0;min-width:0;min-height:0;max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);padding:32px 36px 16px;overflow:hidden}
.inquiry__intro{flex:none;margin:0 0 18px;font:300 15px/1.6 "Jost",sans-serif;color:#555;padding-right:28px}
.inquiry__form{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.inquiry__scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c4b5a6 transparent}
.inquiry__scroll::-webkit-scrollbar{width:8px}
.inquiry__scroll::-webkit-scrollbar-thumb{background:#c4b5a6;border-radius:99px}
.inquiry__actions{flex:none;position:sticky;bottom:0;z-index:2;padding-top:12px;background:#F8F4EB}
.inquiry__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.field{display:block;margin-bottom:18px}
.field > span{display:block;margin-bottom:6px;font:400 10px/1 "Jost",sans-serif;letter-spacing:2px;text-transform:uppercase;color:#8a7f73}
.field input,.field textarea,.field select{display:block;width:100%;padding:8px 0 10px;border:0;border-bottom:1px solid #1c1c1c;border-radius:0;background:transparent;font:300 15px/1.4 "Jost",sans-serif;color:#1c1c1c;outline:0;resize:none;box-shadow:none}
.field input::placeholder,.field textarea::placeholder{color:#b9b0a4}
.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--clay)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field--message{margin-bottom:4px}
.field--room{position:relative}

/* Custom room-type menu. Native <select> is only for form submit — never shown. */
.room-select{position:relative}
.field--room select,
.room-select__native{
  position:absolute!important;left:0;top:0;width:1px!important;height:1px!important;padding:0!important;margin:0!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important;opacity:0!important;pointer-events:none!important;
  appearance:none;-webkit-appearance:none;background:none
}
.room-select__btn{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin:0;padding:8px 0 10px;border:0;border-bottom:1px solid #1c1c1c;background:transparent;cursor:pointer;text-align:left;font:300 15px/1.4 "Jost",sans-serif;color:#1c1c1c}
.room-select__btn:hover,.room-select.is-open .room-select__btn,.room-select__btn:focus-visible{border-bottom-color:var(--clay);outline:none}
.room-select__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.room-select__btn.is-placeholder .room-select__label{color:#b9b0a4}
.room-select__chevron{flex:none;width:22px;height:22px;display:grid;place-items:center;border:1px solid rgba(28,28,28,.18);border-radius:50%;color:#8d6550;transition:transform .2s ease,background .2s ease,border-color .2s ease,color .2s ease}
.room-select.is-open .room-select__chevron{transform:rotate(180deg);background:#1F1710;border-color:#1F1710;color:#F8F4EB}
.room-select__popover{position:fixed;z-index:10050;display:flex;flex-direction:column;min-width:180px;max-width:min(420px, calc(100vw - 24px));padding:8px;background:#fffdf9;border:1px solid rgba(167,127,104,.35);border-radius:12px;box-shadow:0 18px 44px rgba(31,23,16,.18)}
.room-select__popover[hidden]{display:none}
.room-select__menu-label{flex:none;margin:0;padding:6px 12px 8px;font:500 10px/1 "Jost",sans-serif;letter-spacing:2px;text-transform:uppercase;color:#8a7f73}
.room-select__menu{margin:0;padding:0;list-style:none;overflow:auto;scrollbar-width:thin;scrollbar-color:#c4b5a6 transparent}
.room-select__option{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:8px 12px;border-radius:8px;font:400 14px/1.35 "Jost",sans-serif;color:#1c1c1c;cursor:pointer}
.room-select__option span{min-width:0}
.room-select__option.is-active{background:rgba(167,127,104,.14)}
.room-select__option.is-selected{color:#7a5644;font-weight:500}
.room-select__check{flex:none;opacity:0;color:#A77F68}
.room-select__option.is-selected .room-select__check{opacity:1}
.room-select__empty{margin:0;padding:10px 12px 12px;font:300 14px/1.4 "Jost",sans-serif;color:#8a7f73}

.inquiry__submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;height:auto;padding:16px 20px;border:0;border-radius:2px;background:#1F1710;color:#F8F4EB;cursor:pointer;font:500 11px/1 "Jost",sans-serif;letter-spacing:2.23px;text-transform:uppercase;transition:background .2s}
.inquiry__submit:hover{background:#3a2c20}
.inquiry__submit:disabled{opacity:.6;cursor:wait}
.inquiry__status{margin:12px 0 0;font:400 13px/1.5 "Jost",sans-serif;color:#555}
.inquiry__status:empty{display:none}
.inquiry__status.is-ok{color:#2f6b3a}
.inquiry__status.is-error{color:#b3261e}
.inquiry__note{margin:14px 0 0;font:300 11px/1.5 "Jost",sans-serif;color:#8a8a8a}

/* Laptop widths 1100–1440, and any short window: keep the inquiry button on screen. */
@media (max-width:1440px), (max-height:860px){
  .inquiry{padding:16px}
  .inquiry__dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}
  .inquiry__panel{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);padding:22px 28px 14px}
  .inquiry__intro{margin-bottom:12px}
  .inquiry__title{font-size:32px;padding:24px 24px}
  .field{margin-bottom:12px}
  .field__error{margin-top:4px}
  .field textarea{min-height:58px}
  .inquiry__submit{min-height:46px;padding:14px 16px}
  .inquiry__note{margin-top:8px}
}
@media (max-height:700px){
  .field textarea{height:46px;min-height:0}
}

@media (max-width:767px){
  .inquiry{padding:0;align-items:flex-end}
  .inquiry__dialog{flex-direction:column;max-width:none;max-height:92vh;max-height:92dvh;border-radius:14px 14px 0 0;overflow-y:auto}
  .inquiry__visual{flex:none;min-height:150px}
  .inquiry__title{font-size:28px;padding:22px 24px}
  .inquiry__panel{display:block;flex:none;max-height:none;padding:28px 24px 16px;overflow:visible}
  .inquiry__form{display:block;min-height:0}
  .inquiry__scroll{overflow:visible}
  .inquiry__actions{position:sticky;bottom:0;padding-bottom:4px}
  .field-row{grid-template-columns:1fr 1fr;gap:14px}
}

@media (prefers-reduced-motion:reduce){
  .room-select__chevron{transition:none}
}