.delivery-network{display:grid;grid-template-columns:minmax(0,1fr) 365px;background:#202b32;color:#fff;border-radius:16px;overflow:hidden;margin:34px 0 60px;isolation:isolate}
.delivery-geography{padding:31px 27px 23px;display:flex;flex-direction:column;min-width:0;background:radial-gradient(ellipse at 48% 50%,#354752 0,transparent 72%)}
.delivery-map-caption{display:flex;align-items:center;justify-content:space-between;gap:15px}
.delivery-map-caption .eyebrow{margin:0;color:#aab9c2;font-size:10px;letter-spacing:.12em}.delivery-map-caption>span:last-child{font-size:12px;color:#acbac2}
.delivery-canvas{aspect-ratio:1000/550;position:relative;width:100%;max-width:1000px;align-self:center;margin:auto 0}
.delivery-outline{display:block;width:100%;height:100%;overflow:visible}
.delivery-land{fill:#415561;stroke:#647b88;stroke-width:.65;stroke-linejoin:round}
.delivery-cities{fill:#9fadb5}.delivery-city-selected{fill:#ffad48;stroke:#202b32;stroke-width:2}.delivery-city-ring{fill:none;stroke:#f9a340;stroke-width:1.5;animation:delivery-pulse .7s ease-out both}
.delivery-dot{position:absolute;left:var(--city-x);top:var(--city-y);width:38px;height:38px;transform:translate(-50%,-50%);background:transparent;border-radius:50%;z-index:1;transition:background .2s}
.delivery-dot:hover,.delivery-dot:focus-visible{background:#f8a54620;outline:1px solid #f8a54688}
.delivery-dot-label{position:absolute;left:50%;bottom:38px;transform:translateX(-50%);background:#152127;color:#fff;padding:6px 9px;border:1px solid #5a6c77;border-radius:5px;font-size:12px;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:0 5px 18px #0002}
.delivery-dot:hover .delivery-dot-label,.delivery-dot:focus-visible .delivery-dot-label,.delivery-dot[aria-pressed=true] .delivery-dot-label{opacity:1}
.delivery-map-bottom{display:flex;justify-content:space-between;gap:18px;font-size:11px;color:#aab8c0;margin-top:17px}.delivery-map-bottom>span:first-child{display:flex;align-items:center;gap:8px}.delivery-map-bottom i{width:6px;height:6px;background:#f3a448;border-radius:50%}
.delivery-copy{padding:34px 30px;background:#19252c;border-left:1px solid #ffffff0c}
.delivery-copy>.eyebrow{font-size:10px;letter-spacing:.07em;color:#e3a65e;margin-bottom:15px}
.delivery-copy h2{font-size:30px;line-height:1.16;letter-spacing:-.038em;margin-bottom:17px}
.delivery-copy>p{font-size:14px;line-height:1.8;color:#bbc5cb;margin-bottom:22px}
.delivery-copy form>label{display:block;font-size:13px;font-weight:600;margin-bottom:9px}
.delivery-city-field{display:flex;align-items:center;gap:10px;border:1px solid #627079;border-radius:8px;padding:0 13px;background:#24323a;min-height:50px;transition:border-color .18s,box-shadow .18s}
.delivery-city-field svg{width:20px;height:20px;color:#d8a262;flex-shrink:0}
.delivery-city-field input{min-width:0;flex:1;width:100%;background:none;border:0;padding:13px 0;color:#fff;font-size:15px;outline:none}.delivery-city-field input::placeholder{color:#a0adb5}
.delivery-city-field:focus-within{border-color:#efa54f;box-shadow:0 0 0 3px #f3a44817}.delivery-city-field input:focus{outline:none;box-shadow:none}
.delivery-city-shortcuts{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:7px}.delivery-city-shortcuts button{background:none;color:#adbcc5;font-size:11px;padding:6px 0;text-decoration:underline;text-decoration-color:#adbcc550;text-underline-offset:3px}.delivery-city-shortcuts button:hover,.delivery-city-shortcuts button[aria-pressed=true]{color:#ffb965}
.delivery-status{font-size:12px;color:#b2c0c9;line-height:1.6;min-height:39px;margin:13px 0 9px}
.delivery-submit{width:100%;justify-content:space-between;min-height:48px;font-size:14px;padding:12px 15px}
.delivery-submit svg,.delivery-terms svg{width:18px;height:18px}
.delivery-copy>.delivery-detail{font-size:12px;line-height:1.65;margin:14px 0;color:#8f9fa9}
.delivery-terms{display:inline-flex;align-items:center;gap:9px;font-size:12px;color:#d2dde3}.delivery-terms:hover{color:#ffb965}
.delivery-network :is(a,button):focus-visible{outline:2px solid #f3a448;outline-offset:3px;border-radius:4px}
@keyframes delivery-pulse{from{r:7;opacity:.9}to{r:22;opacity:.25}}
@media(max-width:1100px){.delivery-network{grid-template-columns:minmax(0,1fr) 335px}.delivery-geography{padding:25px 18px 22px}.delivery-copy{padding:28px 24px}.delivery-copy h2{font-size:28px}.delivery-map-caption{display:block}.delivery-map-caption>span:last-child{display:block;margin-top:7px}.delivery-map-bottom{flex-direction:column;gap:7px}}
@media(max-width:850px){.delivery-network{grid-template-columns:minmax(0,1fr)}.delivery-geography{padding:27px 25px 20px}.delivery-canvas{max-width:760px;align-self:center;margin:20px 0 10px}.delivery-map-caption,.delivery-map-bottom{display:flex;flex-direction:row}.delivery-map-caption>span:last-child{margin:0}.delivery-copy{padding:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 30px}.delivery-copy>.eyebrow,.delivery-copy h2,.delivery-copy>p,.delivery-copy>a{grid-column:1}.delivery-copy form{grid-column:2;grid-row:1/6;align-self:center}.delivery-copy h2{font-size:31px}.delivery-dot{width:32px;height:32px}}
@media(max-width:620px){.delivery-network{margin:22px 0 38px;border-radius:12px}.delivery-geography{padding:23px 16px 17px}.delivery-map-caption{gap:9px}.delivery-map-caption .eyebrow{font-size:9px}.delivery-map-caption>span:last-child{font-size:10px}.delivery-map-bottom>span:last-child{display:none}.delivery-dot{display:none}.delivery-canvas{margin:18px 0 5px}.delivery-copy{display:block;padding:25px 23px}.delivery-copy h2{font-size:32px}.delivery-copy>p{font-size:14px}.delivery-city-field input{font-size:16px}.delivery-city-shortcuts button{font-size:12px}.delivery-map-bottom{margin-top:5px}.delivery-status{min-height:0}}
@media(prefers-reduced-motion:reduce){.delivery-city-ring{animation:none}.delivery-dot,.delivery-city-field{transition:none}}

/* Address lookup, city zoom and quiet route preview. */
.delivery-canvas{overflow:hidden;border-radius:10px}
.delivery-outline{overflow:hidden}
.delivery-land path{vector-effect:non-scaling-stroke}
.delivery-route-preview{fill:none;stroke:#fba43e;stroke-width:1.7;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:.8;pointer-events:none}
.delivery-city-ring{animation:none;opacity:.55;vector-effect:non-scaling-stroke}.delivery-city-selected{vector-effect:non-scaling-stroke}
.delivery-reset{position:absolute;right:12px;top:12px;z-index:3;color:#f6dcc1;background:#18252eeb;border:1px solid #73828a;border-radius:7px;padding:10px 13px;font-size:12px;min-height:40px;box-shadow:0 4px 14px #0002;transition:background .2s}
.delivery-reset:hover{background:#32414a}
.delivery-place{position:absolute;bottom:12px;left:12px;max-width:calc(100% - 24px);padding:11px 15px;background:#18252eeb;border:1px solid #ffffff24;border-radius:9px;box-shadow:0 4px 18px #0002;pointer-events:none}
.delivery-place>span{display:block;font-size:8px;letter-spacing:.13em;color:#e8b776;margin-bottom:4px}.delivery-place strong{display:block;font-size:17px;line-height:1.2;color:#fff}.delivery-place small{display:block;font-size:10px;color:#b7c4cc;margin-top:4px;line-height:1.35}
.delivery-network [hidden]{display:none!important}
.delivery-map-bottom{flex-wrap:wrap;gap:6px 13px;align-items:center;font-size:10px}
.delivery-map-bottom>span{margin-right:auto}.delivery-map-bottom>a{color:#aab8c0;text-underline-offset:3px}.delivery-map-bottom>a:hover{text-decoration:underline;color:#fff}
.delivery-city-field{gap:8px;padding:0 4px 0 11px}
.delivery-city-field>svg{width:18px;height:18px}
.delivery-city-field input{font-size:14px}
.delivery-city-field .delivery-search{display:grid;place-items:center;flex:0 0 42px;min-height:42px;padding:0;background:#ffffff09;border-radius:6px;color:#ffd6a5;transition:background .18s,opacity .18s}
.delivery-city-field .delivery-search svg{width:19px;height:19px;color:inherit}.delivery-search:hover{background:#ffffff16}.delivery-search:disabled{opacity:.45;cursor:wait}
.delivery-city-shortcuts{position:relative;gap:4px 11px}.delivery-city-shortcuts button{position:relative;text-decoration:none;font-size:11px;min-height:32px;padding:8px 0;color:#b6c3cb}
.delivery-shortcut-indicator{position:absolute;top:0;left:0;height:2px;background:#ffad48;border-radius:2px;opacity:0;pointer-events:none;transition:transform .32s cubic-bezier(.2,.7,.2,1),width .32s cubic-bezier(.2,.7,.2,1),opacity .18s}
.delivery-status{min-height:39px;font-size:12px;margin:12px 0}
.delivery-results{display:grid;gap:5px;margin:-1px 0 14px}
.delivery-results button{display:grid;grid-template-columns:1fr 18px;gap:4px 8px;align-items:center;text-align:left;background:#27363f;border:1px solid #61717b;border-radius:7px;color:#fff;padding:10px 12px;min-height:52px;transition:border-color .2s,background .2s}
.delivery-results button:hover{background:#32444e;border-color:#f3a448}.delivery-results strong{font-size:13px;font-weight:600}.delivery-results span{grid-column:1;color:#b6c5cf;font-size:11px;line-height:1.4}.delivery-results svg{grid-column:2;grid-row:1/3;width:18px;height:18px;color:#ffc37c}
@media(max-width:1100px){.delivery-map-bottom{flex-direction:row}.delivery-city-shortcuts{gap:4px 9px}.delivery-city-shortcuts button{font-size:10px}}
@media(max-width:850px){.delivery-city-shortcuts button{font-size:11px}.delivery-map-bottom{flex-direction:row}.delivery-map-bottom>span{display:flex}.delivery-city-field input{font-size:16px}}
@media(max-width:620px){.delivery-canvas{min-height:185px;aspect-ratio:1000/600}.delivery-map-bottom{margin-top:9px;font-size:9px;gap:5px 8px}.delivery-map-bottom>span{width:100%;margin-bottom:3px}.delivery-reset{right:5px;top:5px;font-size:11px;min-height:36px;padding:8px 11px}.delivery-place{bottom:5px;left:5px;padding:8px 10px;max-width:calc(100% - 10px)}.delivery-place strong{font-size:14px}.delivery-place small{font-size:9px}.delivery-place>span{font-size:7px}.delivery-city-shortcuts{gap:4px 12px}.delivery-city-shortcuts button{font-size:11px;min-height:36px}.delivery-city-field .delivery-search{flex-basis:44px;min-height:44px}}
@media(prefers-reduced-motion:reduce){.delivery-shortcut-indicator,.delivery-reset,.delivery-results button,.delivery-search{transition:none}}
