/* Artist enquiries: shared branding with a focused, responsive booking workflow. */
.bookings-page{background:radial-gradient(ellipse at 15% 20%,#14213a88,transparent 40%),#04050a}
.booking-main{padding-top:135px}
.booking-heading{padding-bottom:42px}
.booking-back{display:inline-flex;gap:12px;font-size:11px;color:#acbad2;margin-bottom:35px}
.booking-heading>.kicker{margin-bottom:16px}
.booking-heading h1{font-family:var(--f-display);font-size:clamp(38px,5.6vw,76px);font-weight:400;line-height:1.13;letter-spacing:-.035em;margin:0 0 18px}
.booking-heading h1 span{color:#bcd2f5}
.booking-heading>p:last-child{font-size:15px;color:#abb9d0;margin:0}
.booking-grid{display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:60px;align-items:start}
.booking-portrait{position:relative;aspect-ratio:4/4.4;overflow:hidden;border:1px solid var(--line);border-radius:10px}
.booking-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 27%}
.booking-portrait::after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#070c19f5);pointer-events:none}
.booking-portrait figcaption{position:absolute;z-index:1;left:26px;right:20px;bottom:24px}
.booking-portrait .kicker{font-size:8px;letter-spacing:.17em;color:#d2dff2}
.booking-portrait h2{font:400 clamp(23px,2.5vw,36px)/1.2 var(--f-display);margin:10px 0 0;color:#edf3ff}
.booking-direct{padding:30px 0 20px;border-bottom:1px solid var(--line)}
.booking-direct>a{display:flex;justify-content:space-between;gap:10px;font-size:clamp(14px,1.5vw,20px);color:#d6e5ff;overflow-wrap:anywhere}
.booking-direct p:last-child{font-size:13px;line-height:1.9;color:#aab8cf;margin:18px 0 0}
.booking-categories{display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}
.booking-categories li{border:1px solid var(--line);border-radius:99px;padding:6px 11px;color:#aebed7;font-size:10px}
.booking-disclaimer{color:#8d9db7;font-size:11px;line-height:1.8;max-width:45ch}
.booking-card{padding:34px;border-radius:10px;background:linear-gradient(140deg,rgba(23,32,52,.88),rgba(7,12,24,.9))}
.booking-card h2{font:400 32px/1.2 var(--f-display);color:#e4edff;margin:0 0 16px}
.booking-intro{font-size:12px;line-height:1.8;color:#aab9d1;margin:0 0 28px}
#booking-fields{border:0;padding:0;margin:0;min-width:0}
.booking-fields-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:19px 16px}
.booking-wide{grid-column:1/-1}
.booking-fields-grid label,.booking-draft>label{display:flex;flex-direction:column;gap:8px;color:#d0dbed;font-size:11px;font-weight:400;min-width:0}
.booking-fields-grid input,.booking-fields-grid select,.booking-fields-grid textarea,#booking-draft-text{width:100%;min-width:0;max-width:100%;border:1px solid #9fb9df35;border-radius:5px;background:#060b17b3;color:#e2ebfb;font:400 14px/1.5 var(--f-body);padding:12px;min-height:46px;color-scheme:dark}
.booking-fields-grid textarea,#booking-draft-text{resize:vertical;min-height:130px}
.booking-fields-grid input::placeholder,.booking-fields-grid textarea::placeholder{color:#8492ab;font-weight:300}
.booking-fields-grid select{cursor:pointer}
.booking-fields-grid .field-hint{font-size:10px;line-height:1.5;color:#8f9fb9}
.booking-submit{width:100%;justify-content:space-between;margin-top:25px;border-radius:6px}
.booking-privacy{font-size:10px;line-height:1.8;color:#9dacc4;margin:18px 0 0}
.booking-draft{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.booking-draft[hidden]{display:none}
.booking-draft h3{font:400 21px/1.5 var(--f-display);color:#dce8fd;margin:0 0 12px}
.booking-draft>p{font-size:12px;line-height:1.8;color:#b1bed4}
#booking-draft-text{margin:10px 0 16px;font-size:12px;min-height:200px}
.booking-draft-actions{display:flex;gap:10px;flex-wrap:wrap}
.booking-draft-actions .btn{font-size:9px;letter-spacing:.08em;padding-inline:18px}
.booking-status{font-size:12px;color:#d1e3ff;line-height:1.8;margin:16px 0 0}
.booking-status:empty{display:none}
.booking-note{display:flex;flex-direction:column;align-items:center;text-align:center;margin-top:70px;padding:55px 20px 65px;border-top:1px solid var(--line)}
.booking-note>span{color:#bed5fd;font-size:22px}
.booking-note h2{font:400 27px/1.3 var(--f-display);margin:20px 0 0}
.booking-note p{color:#a9b9d3;font-size:13px;margin:15px 0 24px}
.nav-links a[aria-current="page"]{color:#d4e7ff;opacity:1}
.nav-links a[aria-current="page"]::after{transform:scaleX(1)}
@media(max-width:1100px){.booking-grid{gap:30px}.booking-card{padding:27px}}
@media(max-width:760px){.booking-main{padding-top:112px}.booking-heading{padding-bottom:32px}.booking-grid{grid-template-columns:1fr;gap:30px}.booking-portrait{aspect-ratio:4/3;max-height:390px}.booking-direct{padding-top:24px}.booking-disclaimer{max-width:none}.booking-note{margin-top:45px}.booking-back{margin-bottom:26px}}
@media(max-width:480px){.booking-heading h1{font-size:39px}.booking-heading>p:last-child{font-size:13px}.booking-card{padding:26px 20px}.booking-fields-grid{grid-template-columns:1fr;gap:18px}.booking-fields-grid input,.booking-fields-grid select,.booking-fields-grid textarea{font-size:16px}.booking-card h2{font-size:28px}.booking-submit{font-size:9px;padding-inline:16px}.booking-draft-actions .btn{width:100%}.booking-note h2{font-size:24px}}
