#tour-request { display: grid; gap: 1rem; max-width: 740px; scroll-margin-top: 5rem; }
#tour-request :where(label, fieldset) { min-width: 0; }
#tour-request label { display: grid; gap: .3rem; font-weight: 600; }
#tour-request :where(input, select) { width: 100%; padding: .65rem; font: inherit; color: var(--ink); background: white; border: 1px solid #79766b; border-radius: .4rem; }
#tour-request .tour-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
#tour-request fieldset { padding: .8rem; border: 1px solid var(--line); border-radius: .4rem; margin: 0 0 .5rem; }
#tour-request [hidden] { display: none; }
#tour-request p { margin: 0; }
#tour-request button { justify-self: start; border: 0; cursor: pointer; }
#tour-request button:disabled { opacity: .7; cursor: wait; }
@media(max-width: 560px) { #tour-request .tour-fields { grid-template-columns: 1fr; } }

#tour-request .tour-review { border: 1px solid var(--line); border-radius: .6rem; padding: 1rem; background: var(--cream); }
#tour-request .tour-review h3 { margin: 0 0 .5rem; }
#tour-request .tour-review dl { margin: .65rem 0; }
#tour-request .tour-review dl div { display: flex; gap: 1rem; justify-content: space-between; }
#tour-request .tour-review dd { margin: 0; text-align: right; }
#tour-request .tour-review dl div:last-child { margin-top: .45rem; padding-top: .45rem; border-top: 1px solid var(--line); font-weight: 700; }
#tour-request button:disabled { cursor: not-allowed; }

#tour-calendar { max-width: 29rem; padding: 1rem; background: white; border: 1px solid var(--line); border-radius: .6rem; }
#tour-calendar .tour-calendar-nav { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
#tour-calendar-days { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: .3rem; text-align: center; margin-top: .65rem; }
#tour-request #tour-calendar-days button { justify-self: stretch; min-height: 2.25rem; border: 1px solid var(--line); border-radius: .3rem; background: var(--cream); color: var(--ink); }
#tour-request #tour-calendar-days button:disabled { text-decoration: line-through; background: #eee; }
#tour-request #tour-calendar-days button[aria-pressed=true] { outline: 2px solid var(--leaf); outline-offset: -2px; }
