/* Compact route entry; the full reservation stays on /reserveren/. */
.hero-with-booking { overflow: visible; }
.hero-with-booking .hero-decoration { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.hero-with-booking .hero-visual { padding: 23px 0 0; min-width: 0; }
.hero-with-booking .hero-image-wrap { height: 270px; border-radius: 28px; }
.hero-with-booking .hero-image-wrap img { height: 100%; aspect-ratio: auto; object-position: center 60%; }
.hero-with-booking .hero-price { top: 145px; right: 14px; bottom: auto; min-width: 0; padding: 12px 16px; z-index: 1; }
.hero-with-booking .hero-price strong { font-size: 1.35rem; }
#rtx-home-entry { position: relative; z-index: 2; box-sizing: border-box; width: calc(100% - 24px); max-width: 430px; margin: -22px auto 0; padding: 0; border: 1px solid #cadbd5; border-radius: 15px; background: #fff; color: #102e3b; font-family: Poppins, sans-serif; box-shadow: 0 12px 36px #173b2520; scroll-margin-top: 120px; }
#rtx-home-entry * { box-sizing: border-box; }
#rtx-home-entry .rtx-home-entry-header { padding: 18px 16px; border-radius: 14px 14px 0 0; background: #003f2c; }
#rtx-home-entry .rtx-home-entry-header h2 { margin: 0; color: #fff; font-size: 16px; line-height: 1.4; font-weight: 700; letter-spacing: 0; }
#rtx-home-entry .rtx-home-entry-body { padding: 16px; }
#rtx-home-entry .rtx-home-entry-field { margin-bottom: 16px; }
#rtx-home-entry label { display: block; margin: 0 0 7px; font-size: 13px; line-height: 1.4; font-weight: 700; }
#rtx-home-entry .form-group { position: relative; margin: 0; }
#rtx-home-entry input { display: block; width: 100%; min-width: 0; height: 48px; padding: 10px 10px 10px 35px; border: 1px solid #a9b8c8; border-radius: 7px; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300ab78' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 12-8 12S4 16 4 10a8 8 0 0 1 16 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E") no-repeat 10px center / 19px 22px; color: #19394b; font: 400 16px/1.4 Poppins, sans-serif; }
#rtx-home-entry input::placeholder { color: #526578; opacity: 1; font-size: 13px; }
#rtx-home-entry input:focus, #rtx-home-entry button:focus-visible { outline: 2px solid #00805b; outline-offset: 3px; }
#rtx-home-entry .rtx-home-next-button { display: block; width: 100%; min-height: 48px; padding: 12px; border: 0; border-radius: 7px; color: #003f2c; background: #ffda44; font: 700 14px/1.5 Poppins, sans-serif; cursor: pointer; }
#rtx-home-entry .rtx-home-next-button:hover { background: #ffcf24; }
#rtx-home-entry .rtx-home-next-button:disabled { cursor: wait; opacity: .75; }
#rtx-home-entry .rtx-home-next-note { margin: 9px 0 0; color: #526578; text-align: center; font-size: 11px; line-height: 1.6; }
#rtx-home-entry .rtx-home-route-message { margin: 10px 0 0; color: #814220; font-size: 13px; line-height: 1.5; }
#rtx-home-entry .rtx-home-route-message:empty { display: none; }
#rtx-home-entry .rtx-home-route-message a { color: #005c41; text-decoration: underline; }
@media (max-width: 1080px) and (min-width: 901px) { .hero-with-booking .hero-grid { gap: 32px; grid-template-columns: 1fr 1fr; } }
@media (max-width: 900px) {
  .hero-with-booking .hero-grid { gap: 30px; padding-block: 40px 64px; }
  .hero-with-booking .hero-visual { display: flex; flex-direction: column; width: min(100%, 500px); padding: 0; }
  #rtx-home-entry { order: -1; width: 100%; max-width: none; margin: 0; }
  .hero-with-booking .hero-image-wrap { margin-top: 24px; height: 240px; }
  .hero-with-booking .hero-price { top: auto; bottom: 16px; right: 12px; }
  .hero-with-booking .hero-chip { display: none; }
}
