
.dds-booking-dialog{width:min(1340px,calc(100vw - 40px));max-width:1340px;max-height:88vh;max-height:88dvh;padding:0;border:1px solid #d8cfc4;border-radius:14px;background:#faf4e8;color:#2d1c22;overflow:auto;box-shadow:0 24px 90px #0005;font-family:"DM Sans",Arial,sans-serif}
.dds-booking-dialog::backdrop{background:linear-gradient(rgba(45,28,34,.66),rgba(45,28,34,.76)),url("offres-animal-print.webp") center/560px auto repeat}
.dds-booking-modal-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 2rem;background:#652233;color:#faf4e8;position:sticky;top:0;z-index:2}
.dds-booking-modal-head h2{font:400 clamp(1.6rem,3vw,2.5rem)/1.1 "Italiana",Georgia,serif;margin:0 0 .4rem;letter-spacing:-.025em}.dds-booking-modal-head p{font-size:.75rem;line-height:1.5;margin:0;letter-spacing:.065em}
.dds-booking-close{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-shrink:0;min-height:44px;padding:.55rem .8rem;border:1px solid #faf4e880;border-radius:99px;background:transparent;color:inherit;font:500 .75rem/1.4 "DM Sans",Arial,sans-serif;cursor:pointer}.dds-booking-close span{font-size:1.4rem;line-height:1}.dds-booking-close:hover{background:#faf4e8;color:#652233}.dds-booking-close:focus-visible{outline:2px solid #faf4e8;outline-offset:3px}
.dds-booking-dialog .dds-booking-modal-surface{padding:1.5rem;border:0;border-radius:0;margin:0;background:#faf4e8;max-width:none;color:#2d1c22;min-width:0}.dds-booking-dialog .booking-calendar{width:100%;min-height:540px;min-width:0;overflow:auto}.dds-booking-dialog iframe{width:100%;max-width:100%;display:block;border:0}.dds-booking-dialog .booking-status{font-size:.9rem;line-height:1.6;margin:0 0 1rem}.dds-booking-dialog [hidden]{display:none!important}.dds-booking-dialog .booking-confirmation{padding:1rem;border:1px solid #d8cfc4;border-left:3px solid #652233;color:#652233;font-size:.95rem;line-height:1.6;margin:0 0 1rem}.dds-booking-dialog .booking-fallback{font-size:.8rem;line-height:1.7;margin:1rem 0 0}.dds-booking-dialog .booking-fallback a{color:#652233;text-decoration:underline;text-underline-offset:3px;padding:.3rem 0;display:inline-block}.dds-booking-dialog a:focus-visible{outline:2px solid #652233;outline-offset:3px}.dds-booking-dialog [data-state="failed"] .booking-calendar:empty{min-height:0}
@media(max-width:650px){.dds-booking-dialog{width:calc(100vw - 16px);max-height:94vh;max-height:94dvh;border-radius:10px}.dds-booking-modal-head{padding:1rem;align-items:flex-start}.dds-booking-modal-head h2{font-size:1.6rem}.dds-booking-dialog .dds-booking-modal-surface{padding:1rem .5rem}.dds-booking-dialog .booking-calendar{min-height:640px}.dds-booking-close{padding:.5rem .65rem}}

.copy .dds-discovery-button,.closing .dds-discovery-button{display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;min-height:46px;padding:.8rem 1.3rem;border:1px solid currentColor;border-radius:99px;background:transparent;font:500 .8125rem/1.4 "DM Sans",Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;text-align:center;white-space:normal;transition:background .2s,color .2s}
.copy .dds-discovery-button{color:#652233;margin-top:2.5rem}.copy .dds-discovery-button:hover{background:#652233;color:#faf4e8}.closing .dds-discovery-button:hover{background:#faf4e8;color:#652233}.dds-discovery-button:focus-visible{outline:2px solid currentColor;outline-offset:4px}

/* Le motif encadre la réservation ; le planning reste uni. */
.dds-booking-modal-head{background:linear-gradient(rgba(101,34,51,.91),rgba(101,34,51,.91)),url("offres-animal-print.webp") center/420px auto repeat}
