/* Crown's white booking surface, scoped to Atlas; Hotelux typography and CTA retained. */
.atlas-booking{padding:40px 0;background:#f8f5f1}
.atlas-booking h2{font-size:32px;text-transform:none;margin-bottom:22px}
.atlas-booking form{display:grid;grid-template-columns:1.4fr 1.4fr .8fr .8fr 1.4fr;gap:20px;align-items:end;padding:30px;background:#fff;border-radius:12px;color:#191628}
.atlas-booking label{display:grid;gap:8px;margin:0;font-size:16px;line-height:1.4;font-weight:600;min-width:0}
.atlas-booking input,.atlas-booking select{width:100%;min-width:0;height:52px;background:#fff;color:#191628;border:1px solid #807a74;border-radius:4px;padding:10px;font:inherit;font-weight:400;color-scheme:light}
.atlas-booking input[type=hidden]{display:none}
.atlas-booking .thm-btn{width:100%;min-height:52px;padding:12px;white-space:normal;line-height:1.4;border:0;background:#715526;color:#fff;text-align:center;text-transform:none}
.atlas-booking .thm-btn:hover{background:#191628}
.atlas-booking [data-child-ages]{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.atlas-booking [hidden]{display:none!important}
.atlas-booking [role=alert]{grid-column:1/-1;color:#a1261c;margin:0}
.atlas-booking [role=alert]:empty{display:none}
.atlas-booking .atlas-booking-note{margin:18px 0 0;color:#514b46;font-size:16px}
.atlas-booking :focus-visible,.atlas-map a:focus-visible{outline:3px solid #715526;outline-offset:3px}
.atlas-map{padding:60px 0;background:#f8f5f1}
.atlas-map h2{font-size:36px;text-transform:none;margin-bottom:16px}
.atlas-map iframe{width:100%;height:440px;border:0;display:block;margin-top:24px;background:#e9e4de}
.atlas-map p{max-width:70ch;color:#514b46}
.atlas-map a:not(.thm-btn){text-decoration:underline;text-underline-offset:4px}
.atlas-photo-grid a{display:block}
.atlas-room-facts{margin:18px 0}.atlas-room-facts dt{font-weight:600}.atlas-room-facts dd{margin-bottom:12px}
@media(max-width:991px){.atlas-booking form{grid-template-columns:repeat(2,minmax(0,1fr))}.atlas-booking form>button{grid-column:1/-1;order:2}.atlas-booking [role=alert]{order:3}.atlas-booking [data-child-ages]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:575px){.atlas-booking form{padding:20px;gap:16px}.atlas-booking label{font-size:16px}.atlas-booking h2{font-size:27px}.atlas-booking [data-child-ages]{grid-template-columns:1fr}.atlas-map iframe{height:340px}.atlas-map h2{font-size:30px}}
