/* ============================================================
   BOEKINGSFORMULIER — TRAVELLERS MODAL + LIST STYLING
   ============================================================ */

/* ---------- TRAVELLERS LIST (on the GF page) ---------- */
.bmp-travellers-wrap{margin:1em 0}
.bmp-travellers-list{margin-bottom:1em}
.bmp-no-travellers{color:#666;font-style:italic}
.bmp-travellers-ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5em}
.bmp-traveller-row{display:flex;align-items:center;gap:1em;padding:.75em 1em;background:#f7f7f7;border:1px solid #e0e0e0;border-radius:6px}
.bmp-traveller-num{font-weight:600;color:#004b4b;min-width:9em}
.bmp-traveller-name{flex:1}
.bmp-traveller-actions{display:flex;gap:.5em}
.bmp-edit-btn,.bmp-delete-btn{padding:.4em .9em;border:none;border-radius:4px;cursor:pointer;font-size:.9em}
.bmp-edit-btn{background:#004b4b;color:#fff}
.bmp-edit-btn:hover{background:#003838}
.bmp-delete-btn{background:#fff;color:#c00;border:1px solid #c00}
.bmp-delete-btn:hover{background:#c00;color:#fff}
.bmp-add-traveller-btn{padding:.75em 1.5em;background:#004b4b;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:1em;font-weight:600}
.bmp-add-traveller-btn:hover{background:#003838}

/* ---------- MODAL OVERLAY ---------- */
.bmp-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:center;justify-content:center;z-index:99999;padding:1em}
.bmp-modal-overlay.bmp-modal-active{display:flex}
body.bmp-modal-open{overflow:hidden}
.bmp-modal-wrap{background:#fff;width:100%;max-width:760px;max-height:90vh;border-radius:8px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.3)}
.bmp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1em 1.5em;border-bottom:1px solid #e0e0e0;background:#fafafa;flex-shrink:0}
.bmp-modal-title{margin:0;font-size:1.25em;color:#004b4b}
.bmp-modal-close{background:none;border:none;font-size:1.8em;line-height:1;cursor:pointer;color:#666;padding:0 .25em}
.bmp-modal-close:hover{color:#000}
.bmp-modal-body{flex:1;overflow-y:auto;padding:1.5em}

.bmp-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:.5em;padding:1em 1.5em;border-top:1px solid #e0e0e0;background:#fafafa;flex-shrink:0}
.bmp-modal-footer-right{display:flex;gap:.5em}
.bmp-modal-btn{padding:.65em 1.4em;border:none;border-radius:4px;cursor:pointer;font-size:1em;font-weight:600;line-height:1}
.bmp-cancel-btn{background:#fff;color:#666;border:1px solid #ccc}
.bmp-cancel-btn:hover{background:#f0f0f0;color:#000}
.bmp-prev-btn{background:#e0e0e0;color:#333}
.bmp-prev-btn:hover:not(:disabled){background:#cfcfcf}
.bmp-prev-btn:disabled{opacity:.4;cursor:not-allowed}
.bmp-next-btn,.bmp-finish-btn{background:#004b4b;color:#fff}
.bmp-next-btn:hover,.bmp-finish-btn:hover{background:#003838}

/* ---------- MODAL FORM (CSS GRID for half-width support) ---------- */
.bmp-modal-form{display:grid;grid-template-columns:1fr 1fr;gap:1em;align-items:start}
.bmp-modal-section{grid-column:1 / -1;margin:1.5em 0 .5em;padding-bottom:.5em;border-bottom:2px solid #004b4b}
.bmp-modal-section:first-child{margin-top:0}
.bmp-modal-section h3{margin:0 0 .25em;color:#004b4b;font-size:1.1em}
.bmp-section-desc{margin:0;font-size:.9em;color:#666;font-style:italic}

/* Default: every field spans both columns (full width) */
.bmp-field{grid-column:1 / -1;margin:0}
/* Halves */
.bmp-field-half-left{grid-column:1 / 2}
.bmp-field-half-right{grid-column:2 / 3}
.bmp-field.bmp-hidden{display:none}

.bmp-field label{display:block;margin-bottom:.35em;font-weight:600;font-size:.95em;color:#222}
.bmp-field input[type=text],.bmp-field input[type=tel],.bmp-field input[type=date],.bmp-field input[type=email],.bmp-field textarea{width:100%;padding:.55em .7em;border:1px solid #ccc;border-radius:4px;font-size:.95em;font-family:inherit;box-sizing:border-box;background:#fff}
.bmp-field textarea{min-height:80px;resize:vertical}
.bmp-field input:focus,.bmp-field textarea:focus{outline:none;border-color:#004b4b;box-shadow:0 0 0 2px rgba(0,75,75,.2)}
.bmp-req{color:#c00}

.bmp-radio-group{display:flex;flex-direction:column;gap:.4em}
.bmp-radio-option,.bmp-checkbox-option{display:flex;align-items:flex-start;gap:.6em;cursor:pointer;font-weight:400;padding:.4em .5em;border-radius:4px;transition:background .15s;line-height:1.4}
.bmp-radio-option:hover,.bmp-checkbox-option:hover{background:#f5f5f5}
.bmp-radio-option input[type=radio],.bmp-checkbox-option input[type=checkbox]{appearance:auto;-webkit-appearance:auto;width:18px;height:18px;min-width:18px;margin:.15em 0 0;flex-shrink:0;cursor:pointer;opacity:1;position:static;visibility:visible;display:inline-block}
.bmp-radio-option span,.bmp-checkbox-option span{flex:1}

.bmp-field-desc{margin:.35em 0 0;font-size:.85em;color:#666;font-style:italic}
.bmp-field-error{margin:.35em 0 0;font-size:.85em;color:#c00;min-height:0}
.bmp-field-error:empty{display:none}
.bmp-field.bmp-has-error input,.bmp-field.bmp-has-error textarea{border-color:#c00;background:#fff5f5}
.bmp-field.bmp-has-error label{color:#c00}

@media(max-width:600px){
.bmp-modal-wrap{max-height:100vh;border-radius:0}
.bmp-modal-overlay{padding:0}
.bmp-traveller-row{flex-wrap:wrap}
.bmp-traveller-num{min-width:auto;width:100%}
.bmp-modal-form{grid-template-columns:1fr}
.bmp-field-half-left,.bmp-field-half-right{grid-column:1 / -1}
.bmp-modal-footer{flex-wrap:wrap}
}

/* ---------- GF NATIVE STYLING — PROGRESS BAR + BUTTONS ---------- */
.gform_wrapper .gf_progressbar_percentage{background-color:#004b4b!important}
.gform_wrapper .gform_button,
.gform_wrapper .gform_next_button,
.gform_wrapper .gform_previous_button{background:#004b4b!important;color:#fff!important;border:none!important;padding:.75em 1.5em!important;border-radius:6px!important;font-weight:600!important;cursor:pointer!important}
.gform_wrapper .gform_button:hover,
.gform_wrapper .gform_next_button:hover,
.gform_wrapper .gform_previous_button:hover{background:#003838!important}
.gform_wrapper .gform_previous_button{background:#fff!important;color:#004b4b!important;border:1px solid #004b4b!important}
.gform_wrapper .gform_previous_button:hover{background:#f0f0f0!important;color:#003838!important}

/* ---------- REQUIRED ASTERISK SPACING ---------- */
.bmp-field label span.bmp-req{margin-left:6px}
.gform_wrapper .gfield_required{margin-left:6px}

