/* Dedicated public page only: the original mobile dialog and /client/ are untouched. */
[data-reservation-page] #reservation{padding:0 0 48px;background:#f5f5f5;display:block}
[data-reservation-page] .reservation-scene{height:370px;position:relative;isolation:isolate;overflow:hidden;background:#111;color:#fff}
[data-reservation-page] .reservation-scene>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 57%;filter:grayscale(1) brightness(.55);z-index:-1}
[data-reservation-page] .reservation-scene-copy{max-width:1080px;margin:auto;padding:54px 0 75px}
[data-reservation-page] .reservation-scene .eyebrow{color:#eee;font-size:10px;letter-spacing:2px;margin:0 0 16px}
[data-reservation-page] .reservation-scene h1{font-size:clamp(40px,4vw,56px);line-height:1.1;letter-spacing:-2px;margin:0 0 18px}
[data-reservation-page] .reservation-scene h1 em{color:inherit}
[data-reservation-page] .reservation-scene-copy>p:last-child{font-size:15px;max-width:450px;margin:0;color:#eee}
[data-reservation-page] .reservation-sheet{position:relative;max-width:1080px;margin:-52px auto 0;background:#fff;border:1px solid #dedede;border-radius:16px;padding:30px 32px;z-index:1}
[data-reservation-page] #reservation .reservation-account-link{position:absolute;right:32px;top:28px;max-width:none;margin:0;padding:0;z-index:2}
[data-reservation-page] #reservation #customer-access{border:0;background:none;box-shadow:none;padding:4px 0;min-height:32px;width:auto;font-size:12px;color:#666}
[data-reservation-page] #reservation #customer-access strong{text-decoration:underline;text-underline-offset:3px;font-weight:400}
[data-reservation-page] #reservation #reservation-form{max-width:none;margin:0;padding:0;background:none;border:0;border-radius:0;box-shadow:none}
[data-reservation-page] #reservation .step-heading{margin-bottom:20px}
[data-reservation-page] #reservation .journey-step>.step-heading{padding-right:220px}
[data-reservation-page] #reservation .form-grid{gap:18px 24px}
[data-reservation-page] #reservation .journey-step>.form-grid>label.full{grid-column:auto}
[data-reservation-page] #reservation .journey-step>.form-grid>label:nth-of-type(1){grid-column:1;grid-row:1}
[data-reservation-page] #reservation .journey-step>.form-grid>label:nth-of-type(2){grid-column:2;grid-row:1}
[data-reservation-page] #reservation .stop-editor{grid-row:2;grid-column:1/-1}
[data-reservation-page] #reservation .contact-step .form-grid>label.full{grid-column:1/-1}
[data-reservation-page] #reservation .contact-step{margin-top:24px;padding-top:24px}
[data-reservation-page] #reservation .passenger-selector{margin-top:0;margin-bottom:18px}
[data-reservation-page] #reservation .chauffeur-picker{margin-top:24px;padding-top:24px}
[data-reservation-page] #reservation #reservation-form .chauffeur-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-height:none;overflow:visible;padding:0;background:none;mask-image:none}
[data-reservation-page] #reservation #reservation-form .chauffeur-grid[hidden]{display:none!important}
[data-reservation-page] #reservation #reservation-form .chauffeur-card{min-height:76px;padding:12px 25px 12px 12px;border-radius:7px;gap:10px;box-shadow:none;background:#fff}
[data-reservation-page] #reservation #reservation-form .chauffeur-card:has(input:checked){border-color:#111;background:#f8f8f8}
[data-reservation-page] #reservation #reservation-form .chauffeur-photo,[data-reservation-page] #reservation #reservation-form .chauffeur-initials{width:38px;height:38px;min-width:38px}
[data-reservation-page] #reservation #reservation-form>.button{background:#111;color:#fff;justify-content:center;width:100%;margin-top:20px}
[data-reservation-page] .reservation-help{max-width:1080px;margin:0 auto;padding:0 0 48px;display:flex;align-items:center;justify-content:space-between;gap:40px}
[data-reservation-page] .reservation-help .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:8px}
[data-reservation-page] .reservation-help h2{font-size:30px;margin-bottom:10px}
[data-reservation-page] .reservation-help h2 em{font-family:Georgia,serif;font-weight:400}
[data-reservation-page] .reservation-help p:last-child{font-size:13px;color:#666;max-width:420px;margin:0}
[data-reservation-page] .reservation-help>.button{min-width:220px}
@media(max-width:1200px){[data-reservation-page] .reservation-scene-copy{margin:0 6%}[data-reservation-page] .reservation-sheet,[data-reservation-page] .reservation-help{margin-left:6%;margin-right:6%}}
@media(max-width:900px){[data-reservation-page] #reservation #reservation-form .chauffeur-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-reservation-page] .reservation-help{gap:24px}}
@media(max-width:700px){
 [data-reservation-page] .reservation-scene{height:300px}
 [data-reservation-page] .reservation-scene>img{object-position:66% 55%;filter:grayscale(1) brightness(.45)}
 [data-reservation-page] .reservation-scene-copy{padding-top:34px}
 [data-reservation-page] .reservation-scene h1{font-size:38px}
 [data-reservation-page] .reservation-scene-copy>p:last-child{font-size:14px;max-width:290px}
 [data-reservation-page] .reservation-sheet{margin-top:-32px;padding:22px 20px}
 [data-reservation-page] #reservation .reservation-account-link{position:static;margin:0 0 16px}
 [data-reservation-page] #reservation .mobile-booking-launch{margin:0;width:100%}
 [data-reservation-page] .reservation-help{display:block;padding-bottom:32px}
 [data-reservation-page] .reservation-help>.button{margin-top:20px}
 [data-reservation-page] .reservation-help h2{font-size:28px}
}
@media(min-width:701px){
 [data-reservation-page] #reservation .contact-step{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}
 [data-reservation-page] #reservation .contact-step>.step-heading{grid-column:1/-1;margin-bottom:0}
 [data-reservation-page] #reservation .contact-step>.form-grid{display:contents}
 [data-reservation-page] #reservation .contact-step .passenger-selector{grid-column:1;grid-row:2;min-width:0;margin:0}
 [data-reservation-page] #reservation .contact-step .form-grid>label.full{grid-column:2;grid-row:2}
 [data-reservation-page] #reservation .contact-step .form-grid>label{align-self:start}
}
/* Three-step presentation; the same controls and handler remain mounted. */
[data-reservation-page] .reservation-sheet{max-width:1000px;padding-top:70px}
[data-reservation-page] #reservation .reservation-account-link{top:18px}
[data-reservation-page] .reservation-progress{list-style:none;display:flex;gap:24px;margin:0 0 28px;padding:0 0 18px;border-bottom:1px solid #e5e5e5;scroll-margin-top:24px;font-size:12px;color:#777}
[data-reservation-page] .reservation-progress li+li::before{content:'→';margin-right:24px;color:#999}
[data-reservation-page] .reservation-progress [aria-current=step]{color:#111;font-weight:600}
[data-reservation-page] .reservation-panel[hidden],[data-reservation-page] #reservation-form [hidden]{display:none!important}
[data-reservation-page] .reservation-panel>h2{font-size:25px;letter-spacing:-.6px;margin:0 0 22px;line-height:1.25;outline:none}
[data-reservation-page] #reservation .reservation-panel .step-heading{display:none}
[data-reservation-page] #reservation .reservation-panel .contact-step{border:0;margin:0;padding:0 0 12px}
[data-reservation-page] #reservation .reservation-panel .personal-journey{margin-top:12px}
[data-reservation-page] .reservation-step-actions{display:flex;gap:16px;margin-top:24px}
[data-reservation-page] .reservation-step-actions>.button{flex:1;min-height:48px;justify-content:center;border-radius:7px;background:#111;color:#fff;font-size:14px;gap:12px}
[data-reservation-page] .reservation-step-actions>.reservation-back{flex:0 0 110px;background:#fff;color:#111;border:1px solid #ccc}
[data-reservation-page] .reservation-step-actions button:disabled{opacity:.55;cursor:wait}
[data-reservation-page] .reservation-step-error{font-size:13px;margin:10px 0;color:#333}
[data-reservation-page] .reservation-step-error:empty{display:none}
[data-reservation-page] .reservation-review{display:grid;grid-template-columns:1fr 1fr;gap:16px 28px;margin:0;padding:0 0 18px}
[data-reservation-page] .reservation-review>div{min-width:0}
[data-reservation-page] .reservation-review dt{font-size:11px;color:#777}
[data-reservation-page] .reservation-review dd{font-size:14px;line-height:1.5;margin:4px 0 0;overflow-wrap:anywhere;white-space:pre-line}
[data-reservation-page] .reservation-review-edits{display:flex;gap:24px;margin-bottom:22px}
[data-reservation-page] .reservation-review-edits button{background:none;border:0;text-decoration:underline;text-underline-offset:3px;font-size:12px;padding:8px 0;cursor:pointer;color:#555}
[data-reservation-page] .reservation-chauffeur-choice{border-top:1px solid #ddd;border-bottom:1px solid #ddd;margin:0 0 20px}
[data-reservation-page] .reservation-chauffeur-choice>summary{padding:18px 0;cursor:pointer;font-size:13px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
[data-reservation-page] .reservation-chauffeur-choice>summary strong{font-weight:500}
[data-reservation-page] .reservation-chauffeur-choice>summary span:last-child{margin-left:auto;text-decoration:underline;text-underline-offset:3px;font-size:12px}
[data-reservation-page] #reservation .reservation-chauffeur-choice .chauffeur-picker{border:0;margin:0;padding:0 0 16px}
[data-reservation-page] #reservation .reservation-chauffeur-choice .chauffeur-picker legend{display:none}
[data-reservation-page] .reservation-final-terms .form-note{max-width:none;font-size:11px;text-align:center}
@media(max-width:700px){
 [data-reservation-page] .reservation-sheet{padding:56px 18px 22px}
 [data-reservation-page] #reservation .reservation-account-link{position:absolute;top:14px;left:18px;right:auto}
 [data-reservation-page] .reservation-progress{gap:10px;font-size:10px;margin-bottom:22px;justify-content:space-between}
 [data-reservation-page] .reservation-progress li{flex:1;line-height:1.5}
 [data-reservation-page] .reservation-progress li+li::before{content:none}
 [data-reservation-page] .reservation-panel>h2{font-size:23px}
 [data-reservation-page] #reservation .journey-step>.form-grid{grid-template-columns:1fr;gap:16px}
 [data-reservation-page] #reservation .journey-step>.form-grid>label,[data-reservation-page] #reservation .journey-step>.form-grid>label.full,[data-reservation-page] #reservation .stop-editor{grid-column:1!important;grid-row:auto!important}
 [data-reservation-page] #reservation .contact-step .form-grid{grid-template-columns:1fr}
 [data-reservation-page] #reservation .contact-step .form-grid>label{grid-column:1!important}
 [data-reservation-page] .reservation-review{grid-template-columns:1fr;gap:12px}
 [data-reservation-page] .reservation-review-edits{gap:16px}
 [data-reservation-page] .reservation-step-actions>.reservation-back{flex-basis:80px}
 [data-reservation-page] #reservation #reservation-form .chauffeur-grid{grid-template-columns:1fr}
 [data-reservation-page] .reservation-chauffeur-choice>summary span:last-child{margin-left:0;width:100%}
}
@media(min-width:701px){
 [data-reservation-page] #reservation .reservation-panel .contact-step .passenger-selector,
 [data-reservation-page] #reservation .reservation-panel .contact-step .form-grid>label.full{grid-row:1}
}
[data-reservation-page] .reservation-panel>label{margin-top:20px}
/* Approved cinematic presentation. Scoped to the dedicated public page. */
[data-reservation-page] #reservation{position:relative;isolation:isolate;min-height:calc(100vh - 70px);padding-bottom:64px;background:#080808;color:#f5f5f5}
[data-reservation-page] .reservation-scene{position:static;isolation:auto;overflow:visible;height:auto;background:none}
[data-reservation-page] .reservation-scene>img{height:760px;max-height:none;object-position:65% 100%;filter:grayscale(1) brightness(.48);z-index:-1}
[data-reservation-page] .reservation-scene-copy{width:88%;max-width:1440px;margin:0 auto;padding:64px 0 42px}
[data-reservation-page] .reservation-scene h1{font-size:clamp(40px,4vw,60px);max-width:650px}
[data-reservation-page] .reservation-shell{width:88%;max-width:1440px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 300px;border:1px solid #393939;border-radius:7px;background:rgba(8,8,8,.89);position:relative}
[data-reservation-page] .reservation-sheet{min-width:0;max-width:none;margin:0;padding:64px 34px 32px;border:0;border-radius:0;background:none}
[data-reservation-page] #reservation #customer-access{color:#bbb}
[data-reservation-page] .reservation-progress{color:#aaa;border-color:#333;gap:18px;justify-content:space-between;font-size:11px}
[data-reservation-page] .reservation-progress li+li::before{content:none}
[data-reservation-page] .reservation-progress [aria-current=step]{color:#fff}
[data-reservation-page] .reservation-panel>h2{color:#fff;font-weight:500}
[data-reservation-page] #reservation-form{color-scheme:dark;color:#eee}
[data-reservation-page] #reservation-form :is(input:not([type=radio]):not([type=checkbox]),select,textarea){background:#0b0b0b;color:#f3f3f3;border-color:#3b3b3b;box-shadow:none}
[data-reservation-page] #reservation-form :is(input,textarea)::placeholder{color:#a5a5a5;opacity:1}
[data-reservation-page] #reservation-form :is(input[type=radio],input[type=checkbox]){accent-color:#fff}
[data-reservation-page] #reservation-form :is(label,legend){color:#eee}
[data-reservation-page] #reservation-form :is(.form-note,.field-hint,.optional,.address-manual-toggle,.address-attribution,.passenger-help){color:#bcbcbc}
[data-reservation-page] #reservation-form :is(a,.text-button){color:#ddd}
[data-reservation-page] #reservation-form :is(.journey-details,.personal-journey,.passenger-selector,.passenger-options,.address-widget,.address-results){background:transparent;border-color:#333;color:#eee}
[data-reservation-page] #reservation-form .address-results{background:#111}
[data-reservation-page] #reservation-form .address-results [role=option]{color:#eee;background:#111;border-color:#333}
[data-reservation-page] #reservation-form .address-results [role=option]:is(:hover,[aria-selected=true]){background:#333}
[data-reservation-page] #reservation-form :is(summary,.stop-actions button,.stop-remove){color:#ddd}
[data-reservation-page] #reservation-form .reservation-step-actions>.button{background:#f5f5f5;color:#111;border:1px solid #eee}
[data-reservation-page] #reservation-form .reservation-step-actions>.reservation-back{background:transparent;color:#eee;border-color:#555}
[data-reservation-page] #reservation-form :focus-visible{outline:2px solid #eee;outline-offset:3px}
[data-reservation-page] .reservation-step-error{color:#eee}
[data-reservation-page] .reservation-review dt{color:#bcbcbc}
[data-reservation-page] .reservation-review-edits button{color:#ddd}
[data-reservation-page] .reservation-chauffeur-choice{border-color:#333}
[data-reservation-page] #reservation #reservation-form .chauffeur-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-reservation-page] #reservation #reservation-form .chauffeur-card{background:#101010;border-color:#444;color:#eee}
[data-reservation-page] #reservation #reservation-form .chauffeur-card:has(input:checked){background:#202020;border-color:#eee}
[data-reservation-page] #reservation #reservation-form .chauffeur-card :is(small,.chauffeur-model){color:#bbb}
@media(max-width:1100px){
 [data-reservation-page] .reservation-shell{grid-template-columns:minmax(0,1fr) 250px}
 [data-reservation-page] .reservation-sheet{padding-left:24px;padding-right:24px}
}
@media(max-width:900px){
 [data-reservation-page] .reservation-shell{grid-template-columns:1fr}
}
@media(max-width:700px){
 [data-reservation-page] #reservation{padding-bottom:32px}
 [data-reservation-page] .reservation-scene>img{height:720px;object-position:66% 45%;filter:grayscale(1) brightness(.40)}
 [data-reservation-page] .reservation-scene-copy{padding:36px 0 32px}
 [data-reservation-page] .reservation-scene h1{font-size:38px}
 [data-reservation-page] .reservation-shell{width:92%}
 [data-reservation-page] .reservation-sheet{padding:56px 18px 24px}
 [data-reservation-page] .reservation-progress{gap:8px;font-size:10px}
 [data-reservation-page] #reservation #reservation-form .chauffeur-grid{grid-template-columns:1fr}
}

[data-reservation-page] #reservation-form .reservation-step{padding-bottom:0}
[data-reservation-page] #reservation-form .ride-extras{border-color:#333}
[data-reservation-page] #reservation-form :is(.add-stop,.remove-stop,.address-help,.pj-optional,.pj-note,.pj-card small,.personal-journey summary small,.pj-icon,.pj-check){color:#bcbcbc}
[data-reservation-page] #reservation-form .pj-card{background:#111;border-color:#444}
[data-reservation-page] #reservation-form .pj-card:has(input:checked){background:#242424;border-color:#ddd;box-shadow:none}
[data-reservation-page] #reservation-form .chauffeur-card:has(input:checked)::after{color:#eee}

/* Connected steps and contact assistance requested for the local review. */
[data-reservation-page] .reservation-shell{display:block;max-width:1100px}
[data-reservation-page] .reservation-sheet{padding:64px 36px 30px}
[data-reservation-page] .reservation-scene-copy{max-width:1100px}
[data-reservation-page] .reservation-progress{gap:16px}
[data-reservation-page] .reservation-progress li{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
[data-reservation-page] .reservation-progress li:last-child{flex:0 1 auto}
[data-reservation-page] .reservation-progress-label{flex-shrink:0}
[data-reservation-page] .reservation-wire{display:block;flex:1;min-width:20px;height:1px;background:#454545;position:relative;overflow:hidden}
[data-reservation-page] .reservation-wire i{display:block;position:absolute;inset:0 auto 0 -35%;width:35%;background:#eee;animation:reservation-current 2.2s ease-in-out infinite}
[data-reservation-page] .reservation-progress li[data-complete=true] .reservation-wire{background:#aaa}
[data-reservation-page] .reservation-progress [aria-current=step] .reservation-wire i{animation-name:reservation-current-active}
@keyframes reservation-current{from{left:-35%}to{left:100%}}
@keyframes reservation-current-active{from{left:-35%}to{left:100%}}
[data-reservation-page] #reservation #customer-access{display:inline-flex;align-items:center;gap:7px}
[data-reservation-page] #customer-access::before{content:'';width:7px;height:7px;flex:none;border-radius:50%;background:#51c788;box-shadow:0 0 5px #51c78866;animation:reservation-heartbeat 2.2s ease-out infinite}
@keyframes reservation-heartbeat{0%,35%,100%{box-shadow:0 0 0 0 #51c78800;opacity:.85}10%,24%{box-shadow:0 0 0 5px #51c78822;opacity:1}17%{box-shadow:0 0 0 1px #51c78844}}
[data-reservation-page] #reservation-form :is(input[type=date],input[type=time]){cursor:pointer}
[data-reservation-page] .reservation-recurring{display:flex;align-items:center;gap:14px;padding:16px 18px;margin-top:26px;border:1px solid #343434;border-radius:7px;color:#eee;background:#ffffff02}
[data-reservation-page] .reservation-recurring-icon{width:34px;height:34px;border-radius:50%;background:#ffffff09;display:grid;place-items:center;flex:none}
[data-reservation-page] .reservation-recurring-icon svg{width:21px;height:21px}
[data-reservation-page] .reservation-recurring strong{display:block;font-size:12px;font-weight:500;line-height:1.5}
[data-reservation-page] .reservation-recurring small{display:block;font-size:12px;color:#bbb;line-height:1.5;margin-top:3px}
[data-reservation-page] .reservation-link-arrow{font-size:26px;margin-left:auto}
[data-reservation-page] .reservation-recurring:hover{border-color:#666;background:#ffffff05}
[data-reservation-page] .reservation-assistance{width:88%;max-width:1100px;margin:30px auto 0;border-top:1px solid #333;padding:24px 0 0;display:grid;grid-template-columns:1.1fr 1fr auto;gap:30px;align-items:center}
[data-reservation-page] .reservation-assistance .eyebrow{font-size:9px;font-weight:500;letter-spacing:2px;color:#bcbcbc;margin:0 0 12px}
[data-reservation-page] #reservation .reservation-assistance h2{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1.3;letter-spacing:-.6px;margin:0;color:#eee}
[data-reservation-page] .reservation-assistance h2 em{font-weight:400}
[data-reservation-page] .reservation-assistance>p{color:#bbb;font-size:12px;line-height:1.8;margin:0}
[data-reservation-page] .reservation-assistance>.button{background:transparent;border:1px solid #777;border-radius:6px;color:#eee;font-size:12px;gap:26px;padding:13px 20px}
@media(max-width:900px){[data-reservation-page] .reservation-assistance{grid-template-columns:1fr auto}[data-reservation-page] .reservation-assistance>p{grid-row:2}[data-reservation-page] .reservation-assistance>.button{grid-column:2;grid-row:1/3}}
@media(max-width:700px){
 [data-reservation-page] .reservation-sheet{padding:56px 18px 24px}
 [data-reservation-page] .reservation-progress{gap:8px}
 [data-reservation-page] .reservation-progress li{gap:8px;flex:1}
 [data-reservation-page] .reservation-progress-label{flex-shrink:1}
 [data-reservation-page] .reservation-wire{flex:none;width:14px;min-width:0}
 [data-reservation-page] .reservation-assistance{display:flex;flex-direction:column;align-items:stretch;gap:18px;width:88%;margin-top:24px}
 [data-reservation-page] .reservation-assistance>.button{justify-content:space-between;align-self:flex-start}
 [data-reservation-page] .reservation-recurring{padding:14px 12px;gap:10px}
 [data-reservation-page] .reservation-recurring strong,[data-reservation-page] .reservation-recurring small{font-size:11px}
}
@media(prefers-reduced-motion:reduce){[data-reservation-page] .reservation-wire i,[data-reservation-page] #customer-access::before{animation:none!important}}

/* Compact arrangements link stays above the steps, opposite customer access. */
[data-reservation-page] .reservation-sheet{padding-top:22px}
[data-reservation-page] .reservation-recurring{width:fit-content;max-width:calc(100% - 250px);margin:0 0 26px;padding:10px 12px;gap:10px}
[data-reservation-page] .reservation-recurring strong,[data-reservation-page] .reservation-recurring small{font-size:10px}
[data-reservation-page] .reservation-recurring-icon{width:28px;height:28px}
[data-reservation-page] .reservation-recurring-icon svg{width:18px;height:18px}
[data-reservation-page] .reservation-link-arrow{font-size:21px}
[data-reservation-page] #reservation .reservation-account-link{top:34px}
@media(max-width:700px){
 [data-reservation-page] .reservation-sheet{padding-top:56px}
 [data-reservation-page] .reservation-recurring{max-width:100%;margin-bottom:24px}
 [data-reservation-page] #reservation .reservation-account-link{top:14px}
}

/* Keep the full skyline/SUV composition at G9 widths instead of enlarging the road. */
@media(min-width:1800px){
 [data-reservation-page] .reservation-scene>img{width:min(100%,2000px);height:1100px;left:50%;right:auto;transform:translateX(-50%);object-position:center top;mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent),linear-gradient(to bottom,#000 65%,transparent);mask-composite:intersect}
}
[data-reservation-page] .reservation-recurring strong{font-size:12px;font-weight:400}

/* Dedicated dark booking surfaces: override the original light-theme !important rules. */
[data-reservation-page] #reservation-form .address-results button strong{color:#f5f5f5}
[data-reservation-page] #reservation-form .address-results button small,
[data-reservation-page] #reservation-form .address-attribution{color:#bcbcbc}
[data-reservation-page] #reservation-form .pj-card{padding-right:42px}
[data-reservation-page] #reservation-form .pj-card:has(input:checked){background:#242424!important;border-color:#ddd!important;box-shadow:none!important}
[data-reservation-page] #reservation-form .pj-card strong{color:#f5f5f5}
[data-reservation-page] #reservation-form .pj-check{display:flex;align-items:center;justify-content:center;position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:1px solid #888;border-radius:50%;font-size:0;color:#111}
[data-reservation-page] #reservation-form .pj-card:has(input:checked) .pj-check{display:flex;background:#fff;border-color:#fff;font-size:13px;color:#111}
@media(max-width:700px){
 [data-reservation-page] #reservation-form .address-widget.address-searching{background:#0b0b0b!important;color:#f5f5f5;box-shadow:0 0 0 100vmax #0b0b0bfa;color-scheme:dark}
 [data-reservation-page] #reservation-form .address-searching::before,
 [data-reservation-page] #reservation-form .address-search-close{color:#f5f5f5}
 [data-reservation-page] #reservation-form .address-searching .address-results button{border-bottom-color:#444!important}
}

/* Homepage experience markers: decorative line icons alongside the existing headings. */
.experience-details>div>.experience-icon{flex:0 0 20px;color:#555;padding-top:3px;line-height:1}
.experience-icon svg{display:block}

/* Decorative Boston footage; the existing photograph remains the fallback. */
[data-reservation-page] .reservation-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;filter:grayscale(1) brightness(.32);opacity:0;z-index:-1;pointer-events:none;mask-image:linear-gradient(to bottom,#000 65%,transparent)}
[data-reservation-page] .reservation-video.is-playing{opacity:1}
@media(min-width:1800px){[data-reservation-page] .reservation-video{width:min(100%,2400px);left:50%;transform:translateX(-50%);mask-image:linear-gradient(to right,transparent,#000 12%,#000 88%,transparent),linear-gradient(to bottom,#000 65%,transparent);mask-composite:intersect}}
@media(prefers-reduced-motion:reduce){[data-reservation-page] .reservation-video{display:none}}
