/* Booking page surroundings only. Provider components retain their own styling. */
.reservation-section{padding-top:32px}
.reservation-intro{max-width:880px}
.reservation-intro h2{margin-bottom:12px}
.reservation-intro p{margin-bottom:20px}
.reservation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:0 0 24px}
.reservation-steps li{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:12px;background:var(--turquoise);color:var(--navy);font-weight:700;font-size:15px}
.reservation-steps li:nth-child(2){background:#e3ecfc}
.reservation-steps li:nth-child(3){background:var(--violet)}
.reservation-steps span{font-size:18px}
.reservation-widget-surface{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;min-width:0;max-width:850px;margin-inline:auto}
.reservation-fallback{margin:18px 0 0;font-size:14px;line-height:1.6}
.reservation-fallback a{color:var(--muted);text-underline-offset:3px}
.reservation-help{display:flex;align-items:center;gap:32px;justify-content:space-between;margin-top:32px;padding:28px;border:1px solid #d5c8e7;background:var(--violet);border-radius:14px}
.reservation-help h2{font-size:25px;margin-bottom:12px}
.reservation-help p{max-width:720px;margin:0}
.reservation-help .button{flex-shrink:0}
@media(max-width:760px){.reservation-section{padding-top:24px}.reservation-steps{grid-template-columns:1fr;gap:8px;margin-bottom:20px}.reservation-steps li{padding:10px 14px}.reservation-widget-surface{padding:12px}.reservation-help{flex-direction:column;align-items:flex-start;padding:22px;gap:18px}.reservation-help h2{font-size:23px}}
