body.page-rentals .audio-bg {
  display: none;
}

body.page-rentals .intro-panel h1 {
  max-width: 9ch;
}

body.page-rentals .intro-copy {
  color: var(--color-logo-white);
}

body.page-rentals .type-pill strong {
  color: #ffb8ef;
}

body.page-rentals .type-pill span {
  color: var(--color-logo-white);
}

body.page-rentals form {
  overflow-x: hidden;
  overflow-y: auto;
}

body.page-rentals .form-panel {
  --rental-form-panel-pad: clamp(1rem, 1.5vw, 1.35rem);
  overflow: hidden;
  padding: var(--rental-form-panel-pad);
}

body.page-rentals .form-head {
  margin: calc(var(--rental-form-panel-pad) * -1) calc(var(--rental-form-panel-pad) * -1) 0;
  padding: .8rem var(--rental-form-panel-pad);
  background: #050505;
  border-bottom-color: rgba(255,255,255,.5);
}

.rental-choice-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
}

.rental-choice,
.rental-addon {
  position: relative;
  display: flex;
  align-items: center;
  gap: .56rem;
  min-height: 46px;
  padding: .55rem .68rem;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.24);
  background: rgba(255,255,255,.04);
  color: var(--color-logo-white);
  cursor: pointer;
}

.rental-choice {
  width: 100%;
  min-width: 0;
}

.rental-choice input,
.rental-addon input {
  width: auto;
  min-height: auto;
  margin-top: 0;
  accent-color: #ff3fc8;
}

.rental-choice strong,
.rental-addon strong {
  display: block;
  font-size: .88rem;
  line-height: 1.08;
}

.rental-choice small,
.rental-addon small {
  display: block;
  margin-top: .28rem;
  color: rgba(255,247,255,.68);
  font-size: .76rem;
  line-height: 1.25;
  font-weight: 750;
}

.rental-choice:has(input:checked),
.rental-addon:has(input:checked) {
  border-color: rgba(255,255,255,.72);
  background: rgba(255,63,200,.1);
}

.rental-addon {
  width: 100%;
  min-width: 0;
}

.rental-summary {
  margin-top: .75rem;
  padding: .74rem .82rem;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,.34);
  background: rgba(0,0,0,.2);
  color: var(--color-logo-white);
}

.summary-label {
  color: #ffb8ef;
  font-size: .68rem;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

#rental-summary-text {
  margin-top: .24rem;
  font-weight: 950;
}

.rental-calendar {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: .75rem;
}

.rental-contact-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.rental-picker-label {
  position: relative;
}

.rental-picker-control {
  width: 100%;
  min-height: 42px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(4,4,12,.62);
  color: var(--text);
  outline: none;
  padding: .72rem .82rem;
  font: inherit;
  font-size: .88rem;
  font-weight: 950;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.02);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  text-align: left;
  cursor: pointer;
}

.rental-picker-control[aria-expanded="true"],
.rental-picker-control:focus-visible {
  border-color: rgba(255,255,255,.48);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

.rental-picker-control.is-invalid {
  border-color: #ff4f6d;
}

.rental-picker-control i {
  color: var(--color-logo-white);
  font-size: 1rem;
}

.rental-picker-value {
  color: #ffc2f5;
}

.rental-picker-value.is-selected {
  color: var(--color-logo-white);
}

.rental-picker-popover {
  --rental-picker-width: 286px;
  position: fixed;
  z-index: 30;
  top: 0;
  left: 0;
  width: min(var(--rental-picker-width), calc(100vw - 1rem));
  padding: .46rem;
  border-radius: 0;
  border: 1px solid rgba(255,255,255,.34);
  background: #2f2f2f;
  box-shadow: none;
}

.rental-picker-popover--date {
  --rental-picker-width: 262px;
}

.rental-picker-popover--time {
  --rental-picker-width: 176px;
}

.rental-picker-popover[hidden] {
  display: none;
}

.rental-picker-head {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  align-items: center;
  gap: .16rem;
  margin-bottom: .42rem;
}

.rental-picker-title {
  color: var(--color-logo-white);
  font-size: .84rem;
  font-weight: 950;
  min-width: 0;
  white-space: nowrap;
  grid-column: 1 / 6;
}

.rental-picker-nav {
  display: contents;
}

.rental-picker-nav button,
.rental-picker-option,
.rental-picker-day {
  border: 1px solid transparent;
  background: transparent;
  color: var(--color-logo-white);
  font: inherit;
  font-weight: 900;
  cursor: pointer;
}

.rental-picker-nav button {
  width: 100%;
  height: 1.8rem;
  border-color: rgba(255,255,255,.16);
}

.rental-picker-nav button:first-child {
  grid-column: 6;
}

.rental-picker-nav button:last-child {
  grid-column: 7;
}

.rental-picker-weekdays,
.rental-picker-days {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: .15rem;
}

.rental-picker-weekdays span {
  color: rgba(255,255,255,.8);
  font-size: .64rem;
  font-weight: 950;
  text-align: center;
}

.rental-picker-day {
  aspect-ratio: 1;
  border-radius: 6px;
  font-size: .78rem;
}

.rental-picker-day.is-muted {
  color: rgba(255,255,255,.32);
}

.rental-picker-day.is-booked,
.rental-picker-option.is-booked {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.075);
  color: rgba(255,255,255,.34);
}

.rental-picker-day[disabled] {
  color: rgba(255,255,255,.22);
  cursor: not-allowed;
}

.rental-picker-option[disabled] {
  cursor: not-allowed;
}

.rental-picker-day.is-range {
  border-color: rgba(255,184,239,.36);
  background: rgba(255,184,239,.16);
  color: var(--color-logo-white);
}

.rental-picker-day.is-range-edge {
  border-color: rgba(255,184,239,.36);
  background: rgba(255,184,239,.16);
  color: var(--color-logo-white);
}

.rental-picker-day.is-booked[disabled],
.rental-picker-option.is-booked[disabled] {
  border-color: rgba(255,255,255,.16);
  background: rgba(255,255,255,.075);
  color: rgba(255,255,255,.24);
}

.rental-time-clear {
  grid-row: 4;
  align-self: end;
  border: 1px solid rgba(255,255,255,.34);
  border-radius: 6px;
  background: transparent;
  color: var(--color-logo-white);
  cursor: pointer;
  font: inherit;
  font-size: .66rem;
  font-weight: 950;
  min-height: 1.72rem;
  padding: 0 .48rem;
  width: 100%;
}

.rental-time-clear[disabled] {
  color: rgba(255,255,255,.28);
  cursor: not-allowed;
}

.rental-picker-option.is-selected {
  border-color: rgba(255,184,239,.36);
  background: rgba(255,184,239,.16);
  color: var(--color-logo-white);
}

.rental-time-grid {
  display: grid;
  grid-template-columns: 2.65rem 2.65rem 2.9rem;
  justify-content: center;
  gap: .12rem;
}

.rental-time-col {
  max-height: 13rem;
  overflow-x: hidden;
  overflow-y: auto;
  display: grid;
  align-content: start;
  grid-auto-rows: min-content;
  gap: .16rem;
  padding-right: .22rem;
  scrollbar-color: transparent transparent;
  scrollbar-width: thin;
}

.rental-time-col--with-action {
  align-content: stretch;
  grid-template-rows: min-content min-content 1fr min-content;
  overflow: visible;
}

.rental-time-col.is-scrolling {
  scrollbar-color: rgba(255,184,239,.5) transparent;
}

.rental-time-col::-webkit-scrollbar {
  width: .42rem;
}

.rental-time-col::-webkit-scrollbar-track {
  background: transparent;
}

.rental-time-col::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: transparent;
}

.rental-time-col.is-scrolling::-webkit-scrollbar-thumb {
  background: rgba(255,184,239,.48);
}

.rental-picker-option {
  min-height: 1.72rem;
  border-radius: 6px;
  font-size: .82rem;
}

.rental-picker-option:hover,
.rental-picker-day:not([disabled]):hover,
.rental-picker-nav button:hover {
  border-color: rgba(255,255,255,.48);
}

.rental-picker-day.is-range:hover {
  border-color: rgba(255,184,239,.36);
  background: rgba(255,184,239,.16);
  color: var(--color-logo-white);
}

.rental-picker-option.is-selected:hover {
  border-color: rgba(255,184,239,.36);
  background: rgba(255,184,239,.16);
  color: var(--color-logo-white);
}

body.page-rentals .rental-fieldset-body {
  display: grid;
  align-content: center;
  width: 100%;
  min-width: 0;
  min-height: 0;
  margin-block: auto;
}

body.page-rentals .rental-section-gear .rental-fieldset-body,
body.page-rentals .rental-section-details .rental-fieldset-body {
  gap: var(--rental-inner-gap, .55rem);
}

body.page-rentals .rental-details-secondary {
  margin-top: 0;
}

@media (min-width: 981px) {
  body.page-rentals .form-panel {
    --rental-form-panel-pad: clamp(.72rem, 1vw, 1rem);
    --rental-panel-gap: clamp(.72rem, 1.25vh, 1.08rem);
    --rental-form-gap: clamp(.48rem, 1vh, .78rem);
    --rental-section-pad-y: clamp(.66rem, 1.08vh, .9rem);
    --rental-section-pad-x: clamp(.64rem, .86vw, .84rem);
    --rental-inner-gap: clamp(.44rem, .74vh, .66rem);
    --rental-field-h: clamp(34px, 4.15vh, 40px);
    --rental-choice-h: clamp(34px, 4.05vh, 40px);
    --rental-details-textarea-h: clamp(84px, 10.6vh, 112px);
    --rental-gear-min: 9rem;
    --rental-window-min: 5.6rem;
    --rental-contact-min: 5.6rem;
    --rental-details-min: 13rem;
    padding: var(--rental-form-panel-pad);
    gap: var(--rental-panel-gap);
  }

  body.page-rentals .form-head {
    margin: calc(var(--rental-form-panel-pad) * -1) calc(var(--rental-form-panel-pad) * -1) 0;
    padding:
      clamp(.48rem, .86vh, .72rem)
      var(--rental-form-panel-pad)
      clamp(.34rem, .68vh, .5rem);
  }

  body.page-rentals form {
    display: grid;
    grid-template-rows:
      minmax(var(--rental-gear-min), 1.02fr)
      minmax(var(--rental-window-min), .72fr)
      minmax(var(--rental-contact-min), .72fr)
      minmax(var(--rental-details-min), 1.45fr)
      auto;
    gap: var(--rental-form-gap);
    align-content: stretch;
    align-items: stretch;
    overflow: hidden;
    padding-right: 0;
  }

  body.page-rentals fieldset {
    display: flex;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding: var(--rental-section-pad-y) var(--rental-section-pad-x);
    border-radius: 16px;
  }

  body.page-rentals legend {
    flex: 0 0 auto;
    font-size: clamp(.62rem, .68vw, .68rem);
    letter-spacing: .1em;
  }

  body.page-rentals label {
    gap: .2rem;
    font-size: clamp(.75rem, .78vw, .82rem);
  }

  body.page-rentals input,
  body.page-rentals select,
  body.page-rentals .rental-picker-control {
    min-height: var(--rental-field-h);
    height: var(--rental-field-h);
    padding: .44rem .6rem;
    border-radius: 11px;
    font-size: clamp(.78rem, .8vw, .88rem);
  }

  body.page-rentals .rental-choice,
  body.page-rentals .rental-addon {
    min-height: var(--rental-choice-h);
    padding: .3rem .56rem;
    gap: .42rem;
    border-radius: 12px;
  }

  body.page-rentals .rental-choice strong,
  body.page-rentals .rental-addon strong {
    font-size: clamp(.78rem, .82vw, .88rem);
  }

  body.page-rentals .rental-choice-grid,
  body.page-rentals .rental-calendar,
  body.page-rentals .grid-2,
  body.page-rentals .grid-3 {
    gap: var(--rental-inner-gap);
  }

  body.page-rentals .rental-summary {
    margin-top: 0;
    padding: clamp(.5rem, .86vh, .72rem) .72rem;
    border-radius: 12px;
  }

  body.page-rentals .summary-label {
    font-size: clamp(.58rem, .64vw, .68rem);
  }

  body.page-rentals #rental-summary-text {
    margin-top: .1rem;
    font-size: clamp(.82rem, .84vw, .94rem);
  }

  body.page-rentals textarea {
    min-height: var(--rental-details-textarea-h);
    height: var(--rental-details-textarea-h);
    padding: .48rem .6rem;
    border-radius: 11px;
    font-size: clamp(.78rem, .8vw, .88rem);
    resize: none;
    overflow: hidden;
  }

  body.page-rentals .submit-row {
    align-self: end;
    padding-top: 0;
  }

  body.page-rentals .button {
    min-height: clamp(35px, 4.6vh, 46px);
    padding-block: .42rem;
  }
}

@media (min-width: 981px) and (max-width: 1280px) {
  body.page-rentals .form-panel {
    --rental-panel-gap: clamp(.88rem, 1.45vh, 1.18rem);
    --rental-form-gap: clamp(.54rem, 1.12vh, .82rem);
    --rental-section-pad-y: clamp(.7rem, 1.15vh, .88rem);
    --rental-gear-min: 9.15rem;
    --rental-window-min: 5.7rem;
    --rental-contact-min: 5.7rem;
    --rental-details-min: 13.2rem;
  }
}

@media (min-width: 981px) and (max-height: 860px) {
  body.page-rentals .form-panel {
    --rental-form-panel-pad: .72rem;
    --rental-panel-gap: clamp(.64rem, 1.08vh, .86rem);
    --rental-form-gap: clamp(.42rem, .86vh, .64rem);
    --rental-section-pad-y: clamp(.54rem, .9vh, .7rem);
    --rental-section-pad-x: .56rem;
    --rental-inner-gap: clamp(.38rem, .65vh, .5rem);
    --rental-field-h: 33px;
    --rental-choice-h: 33px;
    --rental-details-textarea-h: clamp(78px, 10.5vh, 88px);
    --rental-gear-min: 8.85rem;
    --rental-window-min: 5.25rem;
    --rental-contact-min: 5.25rem;
    --rental-details-min: 12.45rem;
  }

  body.page-rentals .form-head {
    padding-top: .46rem;
    padding-bottom: .32rem;
  }
}

@media (min-width: 981px) and (min-height: 1200px) {
  body.page-rentals form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows:
      minmax(13rem, .68fr)
      minmax(14rem, .55fr)
      minmax(22rem, 1.08fr)
      auto;
  }

  body.page-rentals form > fieldset:nth-of-type(1),
  body.page-rentals form > fieldset:nth-of-type(4),
  body.page-rentals .submit-row {
    grid-column: 1 / -1;
  }

  body.page-rentals .rental-calendar {
    grid-template-columns: 1fr;
  }

  body.page-rentals .rental-contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  body.page-rentals .intro-panel h1 {
    max-width: 100%;
  }

  .rental-choice-grid,
  .rental-calendar {
    grid-template-columns: 1fr;
  }

  .rental-choice,
  .rental-addon {
    width: 100%;
  }

  .rental-contact-grid {
    grid-template-columns: 1fr;
  }

  .rental-picker-popover {
    width: min(var(--rental-picker-width), calc(100vw - 1rem));
  }
}
