.mobile-visit{min-width:0;scroll-margin-top:64px}.mobile-visit[hidden]{display:none!important}.mobile-visit *{box-sizing:border-box}.mobile-visit .visit-back{margin:0 0 24px!important}.mobile-visit h3{margin:12px 0 14px!important}.visit-intro{font:13px/1.8 OpenSans,Arial;color:#b6a7c6;margin:0 0 20px}.visit-hours{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 28px}.visit-hours>span{display:flex;flex-direction:column;gap:7px;font:11px/1.5 OpenSans,Arial;color:#b9acc7;padding:13px 15px;border:1px solid #ab86d126;background:linear-gradient(120deg,#281c3540,#17282c40);border-radius:10px}.visit-hours b{font-size:10px;letter-spacing:.6px;color:#aaddd3}.visit-controls{padding:0;margin:0;border:0;min-width:0}.visit-calendar{padding:20px;border:1px solid #a783cf37;background:linear-gradient(155deg,#24183080,#11171f80);border-radius:16px}.visit-calendar-heading{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:12px;margin-bottom:20px}.visit-calendar-heading strong{text-align:center;font:600 14px OpenSans,Arial;color:#eadcf7}.visit-calendar-heading button{width:32px;height:32px;border:1px solid #c4a4df30;border-radius:9px;background:#ffffff05;color:#dbb8ff;font:25px/1 Arial;cursor:pointer;transition:background .2s}.visit-calendar-heading button:hover:enabled{background:#b482e522}.visit-calendar-heading button:disabled{opacity:.25;cursor:default}.visit-weekdays,.visit-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.visit-weekdays{margin-bottom:8px;text-align:center;font:10px/1.8 OpenSans,Arial;color:#a08cae}.visit-days>span{min-height:34px}.visit-days>button{min-width:0;width:100%;aspect-ratio:1;border:1px solid transparent;border-radius:10px;padding:0;background:transparent;color:#e0d1ed;font:12px OpenSans,Arial;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.visit-days>button:hover:enabled{background:#9c6ad323;border-color:#bd97e13d;transform:translateY(-1px)}.visit-days>button[aria-pressed=true]{background:linear-gradient(135deg,#8351c7,#a877e0);color:#fff;border-color:#d4b0ff60;box-shadow:0 4px 18px #8e5ad03a}.visit-days>button:disabled{opacity:.22;cursor:default}.visit-days>button[aria-current=date]:after{content:'';display:block;width:3px;height:3px;margin:1px auto -4px;border-radius:50%;background:#a2b6af}.visit-calendar-note{font:10px/1.7 OpenSans,Arial;color:#9d8eac;text-align:center;margin:18px 0 0}.mobile-visit :is(button,input,textarea):focus-visible{outline:2px solid #9bdfd1!important;outline-offset:3px}.visit-times{margin:26px 0}.mobile-visit h4{font:600 15px/1.5 OpenSans,Arial;color:#e6d9f3;margin:0 0 10px}.visit-live{font:11px/1.8 OpenSans,Arial;color:#a99bb8;min-height:20px;margin:0 0 14px}.visit-time-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;min-width:0}.visit-time-grid[aria-busy=true]{min-height:72px;border:1px dashed #b291ce2d;border-radius:10px;background:linear-gradient(100deg,#a676d609,#92ddcd0c,#a676d609);background-size:200% 100%;animation:visit-loading 1.3s linear infinite}.visit-time{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:13px 8px;border:1px solid #a785c739;border-radius:10px;background:#ffffff03;color:#ddcdef;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.visit-time:hover{transform:translateY(-2px);border-color:#a881ce88}.visit-time strong{font:600 14px OpenSans,Arial;letter-spacing:.5px}.visit-time span{font:9px OpenSans,Arial;color:#ad9dbb}.visit-time[aria-pressed=true]{background:linear-gradient(120deg,#1c3936,#20343c);border-color:#82cec6aa;box-shadow:inset 0 1px #a7eadb15}.visit-time[aria-pressed=true] strong{color:#b4f0e2}.visit-time[aria-pressed=true] span{color:#a2c6c0}.visit-retry{grid-column:1/-1;border:1px solid #a17ac044;border-radius:10px;background:#9c6ad310;color:#cbb0e4;padding:12px;cursor:pointer}.visit-itinerary{border:1px solid #7bc7bd43;border-radius:12px;background:linear-gradient(135deg,#16332e80,#14232c80);padding:20px;margin:24px 0 30px;animation:visit-arrive .25s ease both}.visit-itinerary[hidden]{display:none}.visit-itinerary>strong{display:block;color:#b0e8db;font:600 13px/1.6 OpenSans,Arial}.visit-itinerary ol{list-style:none;margin:15px 0;padding:0;display:grid;gap:12px}.visit-itinerary li{padding:0;margin:0}.visit-itinerary li>span{display:block;font:9px/1.5 OpenSans,Arial;letter-spacing:1.5px;color:#89b5af;margin-bottom:4px}.visit-itinerary li>p{font:12px/1.7 OpenSans,Arial;color:#d0e2de;margin:0}.visit-itinerary small{display:block;color:#94aca8;font:10px/1.8 OpenSans,Arial}.visit-address{padding-top:26px;margin-top:30px;border-top:1px solid #b697cd25}.visit-section-kicker{font:9px/1.6 OpenSans,Arial;letter-spacing:2px;color:#a388bd;margin:0 0 10px}.visit-coverage{font:11px/1.8 OpenSans,Arial;color:#a89ab7;margin:0 0 20px}.visit-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;min-width:0}.visit-fields .visit-wide{grid-column:1/-1}.premium-experience #payment .visit-fields label,.visit-fields label{display:block;margin:0;color:#bdaccd;font:11px/1.6 OpenSans,Arial;min-width:0}.visit-fields label>span{color:#94839f;font-size:10px}.premium-experience #payment .visit-fields input,.premium-experience #payment .visit-fields textarea,.visit-fields input,.visit-fields textarea{display:block;min-width:0;width:100%;padding:12px 13px;margin:8px 0 0;border:1px solid #ae88d03b;border-radius:8px;background:#ffffff04!important;color:#eee0fa!important;box-shadow:none;font:13px/1.5 OpenSans,Arial;transition:border-color .2s}.visit-fields input::placeholder,.visit-fields textarea::placeholder{color:#85748f;opacity:1}.visit-fields input:focus,.visit-fields textarea:focus{border-color:#bd94e3}.visit-fields textarea{resize:vertical;min-height:92px}.visit-fields input[name=postcode]{text-transform:uppercase}.visit-address-note,.visit-data-note{font:10px/1.8 OpenSans,Arial;color:#9d8bab;margin:15px 0 0}.visit-data-note{text-align:center;margin-top:15px}.visit-error{border:1px solid #ea9bae3d;background:#e587aa0a;border-radius:9px;padding:13px 15px;color:#f0b5c3;font:12px/1.7 OpenSans,Arial;margin:22px 0 15px}.visit-error[hidden]{display:none}.visit-continue{margin-top:26px}.visit-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.visit-controls:disabled{opacity:.65}.mobile-visit button:disabled{cursor:wait}.visit-controls:disabled button{cursor:wait}.mobile-visit .visit-calendar-heading button:disabled,.mobile-visit .visit-days>button:disabled{cursor:default}@keyframes visit-loading{to{background-position:-200% 0}}@keyframes visit-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:700px){.visit-calendar{padding:17px}.visit-days>button{min-height:32px}.visit-time-grid{gap:8px}.visit-fields{gap:17px 11px}.premium-experience #payment .visit-fields input,.premium-experience #payment .visit-fields textarea{font-size:16px;padding:11px}.visit-hours{gap:8px}.visit-hours>span{padding:12px;font-size:10px}.visit-itinerary{padding:17px}}@media(max-width:360px){.visit-calendar{padding:13px}.visit-weekdays,.visit-days{gap:3px}.visit-calendar-heading{gap:6px}.visit-calendar-heading strong{font-size:12px}.visit-days>button{font-size:11px;min-height:28px;border-radius:7px}.visit-fields{grid-template-columns:1fr}.visit-fields .visit-wide{grid-column:auto}.visit-hours{grid-template-columns:1fr}.visit-hours>span{flex-direction:row;gap:10px;justify-content:space-between}.visit-time-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.mobile-visit *{animation:none!important;transition:none!important}}
.visit-parking{display:flex!important;align-items:flex-start;gap:11px;margin:20px 0 0!important;padding:15px;border:1px solid #a587c62b;border-radius:10px;background:#ffffff02;color:#b9a9c8;font:11px/1.8 OpenSans,Arial}.premium-experience #payment .visit-parking input,.visit-parking input{flex:0 0 16px;width:16px!important;height:16px!important;padding:0!important;margin:3px 0 0!important;accent-color:#a478ec}.visit-parking span{display:block;min-width:0;}
.visit-demo-note{padding:11px 13px;border:1px solid #ab85d12b;border-radius:8px;background:#a075ce09;font:10px/1.8 OpenSans,Arial;color:#ad9abb;margin:16px 0}.premium-experience #payment .visit-fields select,.visit-fields select{display:block;width:100%;min-width:0;padding:12px 13px;margin-top:8px;border:1px solid #ae88d03b;border-radius:8px;background:#191421;color:#eee0fa;font:13px/1.5 OpenSans,Arial;box-shadow:none}.visit-fields select:focus-visible{outline:2px solid #9bdfd1;outline-offset:3px}@media(max-width:700px){.premium-experience #payment .visit-fields select{font-size:16px;}}
