/* Reservation page (/rezervacia). Only the elements the contact template does not have:
   selects, checkboxes and the selected-offer summary. Everything else uses template classes. */

/* ---------- selects: same look as the template's dark contact inputs ---------- */
.ih-res-select {
  -webkit-appearance: none; -moz-appearance: none; appearance: none;
  height: 50px; padding-right: 2.75rem; cursor: pointer;
  text-overflow: ellipsis; white-space: nowrap; overflow: hidden;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5l5 5 5-5' stroke='%23ffffff' stroke-opacity='.7' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 1.25rem center; background-size: 12px 8px;
}
.ih-res-select option,
.ih-res-select optgroup { color: var(--color--gray-1); background-color: var(--color--white); }
.ih-res-select:disabled { opacity: .5; cursor: not-allowed; }

/* ---------- rows: widths inside the template's flex rows ---------- */
.ih-res-row-offer > .input-group:first-child { flex: 1.75 1 0; min-width: 0; }
.ih-res-row-offer > .input-group:last-child { flex: 1 1 0; min-width: 0; }
.ih-res-row-people > .input-group { flex: 1 1 0; min-width: 0; }
.ih-res-row-people > .input-group:last-child { flex: 2.1 1 0; }
.ih-res-kids > .input-group { flex: 0 0 calc((100% - 3 * var(--gap--gap-8)) / 4); min-width: 0; }

/* ---------- consent checkboxes on the dark panel ---------- */
.ih-res-consents { margin-bottom: 1.875rem; }
.ih-res-check { align-items: flex-start; margin-bottom: .75rem; padding-left: 0; cursor: pointer; }
.ih-res-check:before, .ih-res-check:after { display: none; }
.ih-res-check .checkbox {
  float: none; flex: none; margin: 1px 0 0; min-width: 18px; min-height: 18px; width: 18px; height: 18px;
  border: 1px dashed var(--color--white-op20); border-radius: 4px; background-color: var(--color--white-op5);
}
.ih-res-check .checkbox.w--redirected-checked {
  border: 1px solid var(--ih-turq-deep); border-radius: 4px; background-color: var(--ih-turq-deep);
  background-image: url(/assets/6a0182a6a372d31842dd4580/6a0182a6a372d31842dd45b1_check-white.svg);
  background-position: 50%; background-repeat: no-repeat; background-size: 11px;
}
.ih-res-check .checkbox-label {
  color: var(--color--gray-3); font-size: var(--_typography---body--body-sm);
  line-height: var(--_typography---body--line-height-2); padding-left: 10px;
}
.ih-res-check .checkbox-label a { color: var(--color--white); text-decoration: underline; text-underline-offset: 2px; }

/* ---------- validation ---------- */
.contact-input.ih-invalid { border-style: solid; border-color: var(--ih-promo); }
.ih-res-check.ih-invalid .checkbox { border-style: solid; border-color: var(--ih-promo); }

/* ---------- left: selected offer summary (sits where the template's quote was) ---------- */
.ih-res-info { max-width: 440px; }
.ih-res-summary { display: flex; flex-direction: column; gap: var(--gap--gap-7); }
.ih-res-head { display: flex; flex-direction: column; gap: var(--gap--gap-4); }
.ih-res-pills { display: flex; flex-wrap: wrap; align-items: center; gap: var(--gap--gap-3); }
.ih-res-pills .ih-promo-badge { position: static; }
.ih-res-title { font-weight: var(--_typography---body--font-weight-2); }
.ih-res-meta {
  display: flex; flex-direction: column; gap: 6px;
  color: var(--color--white-op70); font-size: var(--_typography---body--body-sm);
  line-height: var(--_typography---body--line-height-2);
}
.ih-res-icon { filter: brightness(0) invert(1); opacity: .75; }
.ih-res-money { display: flex; flex-direction: column; gap: var(--gap--gap-4); }
.ih-res-price { color: var(--color--white-op70); font-size: var(--_typography---body--body-md); line-height: var(--_typography---body--line-height-2); }
.ih-res-price .ih-old-price { color: var(--color--white-op50); margin-left: 2px; }
.ih-res-price-num { color: var(--color--white); font-size: var(--_typography---body--body-xl); font-weight: var(--_typography---body--font-weight-2); }
.ih-res-total {
  border: 1px dashed var(--color--white-op20); border-radius: var(--border-radius--md);
  background-color: var(--color--white-op5); padding: 1rem 1.25rem;
  -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.ih-res-total-label { color: var(--color--gray-3); font-size: var(--_typography---body--body-sm); line-height: var(--_typography---body--line-height-2); }
.ih-res-total-sum {
  font-family: var(--_typography---font-family--heading); color: var(--color--white);
  font-size: var(--_typography---h4--h4); line-height: 1.25; margin: 2px 0 4px;
}
.ih-res-total-note { color: var(--color--white-op70); font-size: var(--_typography---body--body-xs); line-height: 1.5; }
.ih-res-links { gap: var(--gap--gap-7); }
.ih-res-link { text-decoration: underline; text-underline-offset: 3px; transition: color .3s ease-in-out; }
.ih-res-link:hover { color: var(--color--white); }

/* ---------- sent: keep the panel from collapsing around the success message ---------- */
.ih-res-sent .w-form { display: flex; flex-direction: column; justify-content: center; min-height: 560px; }
