.Locations-module__Fsodma__locationsPage{background:#f8f6f3;width:100%;min-height:100vh}.Locations-module__Fsodma__splitLayout{flex-direction:row-reverse;min-height:100vh;display:flex}.Locations-module__Fsodma__sidebar{background:var(--color-sage);z-index:10;border-left:1px solid #ffffff1a;flex-direction:column;width:460px;min-width:460px;height:100vh;padding-top:100px;display:flex;position:relative}.Locations-module__Fsodma__sidebarHeader{border-bottom:1px solid #ffffff1a;padding:2.5rem 2rem 1.5rem}.Locations-module__Fsodma__badge{font-family:var(--font-body);color:#fff;letter-spacing:.02em;background:#ffffff26;border-radius:100px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;display:inline-flex}.Locations-module__Fsodma__badge svg{opacity:.85}.Locations-module__Fsodma__title{font-family:var(--font-display);color:#fff;letter-spacing:-.02em;margin:0 0 .5rem;font-size:2.25rem;font-weight:400;line-height:1.15}.Locations-module__Fsodma__subtitle{font-family:var(--font-body);color:#ffffffb3;margin:0;font-size:.9375rem;line-height:1.5}.Locations-module__Fsodma__locationsList{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:1.5rem;padding:1rem 1.25rem;display:flex;overflow-y:auto}.Locations-module__Fsodma__locationSection{flex-direction:column;gap:.75rem;display:flex}.Locations-module__Fsodma__sectionHeader{align-items:flex-start;gap:.75rem;margin-bottom:.25rem;padding:.5rem 0;display:flex}.Locations-module__Fsodma__sectionIcon{color:#fff;background:#ffffff26;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.Locations-module__Fsodma__sectionTitle{font-family:var(--font-body);color:#fff;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:1rem;font-weight:700;line-height:1.3}.Locations-module__Fsodma__sectionDescription{font-family:var(--font-body);color:#ffffffa6;margin:.125rem 0 0;font-size:.8125rem;line-height:1.4}.Locations-module__Fsodma__locationsList::-webkit-scrollbar{width:6px}.Locations-module__Fsodma__locationsList::-webkit-scrollbar-track{background:0 0}.Locations-module__Fsodma__locationsList::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.Locations-module__Fsodma__locationsList::-webkit-scrollbar-thumb:hover{background:#ffffff59}.Locations-module__Fsodma__locationCard{cursor:pointer;background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;align-items:flex-start;gap:1rem;padding:1.25rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.Locations-module__Fsodma__locationCard:before{content:"";background:var(--color-redwood);opacity:0;border-radius:3px 0 0 3px;width:3px;transition:all .25s cubic-bezier(.4,0,.2,1);position:absolute;top:0;bottom:0;left:0;transform:scaleY(.6)}.Locations-module__Fsodma__locationCard:hover{background:#ffffff26;border-color:#fff3;box-shadow:0 4px 16px #00000026}.Locations-module__Fsodma__locationCard:hover:before{opacity:.5;transform:scaleY(.8)}.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__hovered{border-color:var(--color-redwood);background:#ffffff26;box-shadow:0 4px 20px #a04b2c33}.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__hovered:before{opacity:.8;transform:scaleY(.9)}.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__selected{border-color:var(--color-redwood);background:#fff3;box-shadow:0 0 0 3px #a04b2c40,0 8px 24px #0003}.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__selected:before{opacity:1;transform:scaleY(1)}.Locations-module__Fsodma__cafeCard{background:linear-gradient(135deg,#a04b2c40 0%,#a04b2c26 100%);border-color:#a04b2c66;padding:1.5rem}.Locations-module__Fsodma__cafeCard:before{background:var(--color-redwood);opacity:1;width:4px;transform:scaleY(1)}.Locations-module__Fsodma__cafeCard:hover{border-color:var(--color-redwood);background:linear-gradient(135deg,#a04b2c59 0%,#a04b2c33 100%)}.Locations-module__Fsodma__cafeIcon{background:var(--color-redwood);color:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.Locations-module__Fsodma__cafeCard .Locations-module__Fsodma__cardTitle{font-size:1.125rem;font-weight:700}.Locations-module__Fsodma__cafeCard .Locations-module__Fsodma__cardAddress{font-size:.9375rem}.Locations-module__Fsodma__breakfastInfo{font-family:var(--font-body);color:#fff;background:#ffffff1f;border-radius:8px;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;font-size:.8125rem;display:flex}.Locations-module__Fsodma__breakfastInfo svg{opacity:.7;flex-shrink:0}.Locations-module__Fsodma__breakfastLabel{opacity:.8;font-weight:600}.Locations-module__Fsodma__breakfastValue{font-weight:500}.Locations-module__Fsodma__holidayNote{font-family:var(--font-body);color:#fffc;background:#ffffff1a;border-radius:8px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem .75rem;font-size:.75rem;line-height:1.4;text-decoration:none;transition:all .2s;display:inline-flex}.Locations-module__Fsodma__holidayNote:hover{color:#fff;background:#fff3}.Locations-module__Fsodma__holidayNote svg{opacity:.8;flex-shrink:0}.Locations-module__Fsodma__cardIndex{font-family:var(--font-display);color:#fff;opacity:.3;flex-shrink:0;min-width:2rem;font-size:1.5rem;font-weight:400;line-height:1;transition:opacity .2s}.Locations-module__Fsodma__locationCard:hover .Locations-module__Fsodma__cardIndex,.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__selected .Locations-module__Fsodma__cardIndex{opacity:.5}.Locations-module__Fsodma__cardContent{flex:1;min-width:0}.Locations-module__Fsodma__cardTitle{font-family:var(--font-body);color:#fff;margin:0 0 .375rem;font-size:1rem;font-weight:600;line-height:1.35}.Locations-module__Fsodma__cardAddress{font-family:var(--font-body);color:#ffffffb3;margin:0;font-size:.875rem;line-height:1.45}.Locations-module__Fsodma__cardHours{flex-wrap:wrap;gap:.5rem;margin-top:.75rem;display:flex}.Locations-module__Fsodma__hoursTag{font-family:var(--font-body);background:#ffffff1a;border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.75rem;display:inline-flex}.Locations-module__Fsodma__hoursLabel{color:#fff9;text-transform:uppercase;letter-spacing:.03em;font-weight:600}.Locations-module__Fsodma__hoursValue{color:#fff;font-weight:500}.Locations-module__Fsodma__cardAction{color:#fff;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-top:.25rem;text-decoration:none;transition:all .2s;display:flex}.Locations-module__Fsodma__cardAction:hover{background:var(--color-redwood);border-color:var(--color-redwood);color:#fff;transform:translateY(-1px)}.Locations-module__Fsodma__locationCard.Locations-module__Fsodma__selected .Locations-module__Fsodma__cardAction{background:var(--color-redwood);border-color:var(--color-redwood);color:#fff}.Locations-module__Fsodma__sidebarFooter{background:#0000001a;border-top:1px solid #ffffff1a;padding:1.25rem 1.5rem}.Locations-module__Fsodma__shopLink{color:var(--color-sage);font-family:var(--font-body);background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:.625rem;padding:.875rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .25s;display:flex}.Locations-module__Fsodma__shopLink:hover{background:var(--color-redwood);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #a04b2c59}.Locations-module__Fsodma__loadingState{color:#ffffffb3;font-family:var(--font-body);flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem;font-size:.875rem;display:flex}.Locations-module__Fsodma__loadingSpinner{border:2px solid #fff3;border-top-color:#fff;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite Locations-module__Fsodma__spin}@keyframes Locations-module__Fsodma__spin{to{transform:rotate(360deg)}}.Locations-module__Fsodma__mapContainer{flex:1;min-height:100vh;position:relative}.Locations-module__Fsodma__map{width:100%;height:100%;position:absolute;inset:0}@media (max-width:1200px){.Locations-module__Fsodma__sidebar{width:400px;min-width:400px}.Locations-module__Fsodma__sidebarHeader{padding:2rem 1.5rem 1.25rem}.Locations-module__Fsodma__title{font-size:2rem}}@media (max-width:991px){.Locations-module__Fsodma__splitLayout{flex-direction:column;height:auto;min-height:auto}.Locations-module__Fsodma__sidebar{border-top:1px solid #ffffff1a;border-left:none;width:100%;min-width:100%;height:auto;max-height:none;padding-top:0}.Locations-module__Fsodma__sidebarHeader{padding:1.5rem}.Locations-module__Fsodma__title{font-size:1.75rem}.Locations-module__Fsodma__locationsList{gap:1rem;max-height:450px;padding:1rem}.Locations-module__Fsodma__locationSection{gap:.5rem}.Locations-module__Fsodma__sectionHeader{padding:.375rem 0}.Locations-module__Fsodma__sectionIcon{width:32px;height:32px}.Locations-module__Fsodma__sectionTitle{font-size:.875rem}.Locations-module__Fsodma__sectionDescription{font-size:.75rem}.Locations-module__Fsodma__cafeCard{padding:1.25rem}.Locations-module__Fsodma__cafeIcon{width:38px;height:38px}.Locations-module__Fsodma__mapContainer{height:calc(100vh - 70px);min-height:350px;padding-top:70px;position:relative}.Locations-module__Fsodma__map{height:100%;position:relative}}@media (max-width:767px){.Locations-module__Fsodma__sidebarHeader{padding:1.25rem}.Locations-module__Fsodma__badge{padding:.375rem .75rem;font-size:.75rem}.Locations-module__Fsodma__title{font-size:1.5rem}.Locations-module__Fsodma__subtitle{font-size:.875rem}.Locations-module__Fsodma__locationsList{gap:.875rem;max-height:400px;padding:.875rem}.Locations-module__Fsodma__sectionIcon{width:28px;height:28px}.Locations-module__Fsodma__sectionIcon svg{width:16px;height:16px}.Locations-module__Fsodma__cafeCard{padding:1rem}.Locations-module__Fsodma__cafeIcon{width:34px;height:34px}.Locations-module__Fsodma__cafeIcon svg{width:18px;height:18px}.Locations-module__Fsodma__cafeCard .Locations-module__Fsodma__cardTitle{font-size:1rem}.Locations-module__Fsodma__cafeCard .Locations-module__Fsodma__cardAddress{font-size:.8125rem}.Locations-module__Fsodma__locationCard{gap:.75rem;padding:1rem}.Locations-module__Fsodma__cardIndex{min-width:1.75rem;font-size:1.25rem}.Locations-module__Fsodma__cardTitle{font-size:.9375rem}.Locations-module__Fsodma__cardAddress{font-size:.8125rem}.Locations-module__Fsodma__cardHours{gap:.375rem}.Locations-module__Fsodma__hoursTag{padding:.1875rem .5rem;font-size:.6875rem}.Locations-module__Fsodma__cardAction{width:32px;height:32px}.Locations-module__Fsodma__mapContainer{height:45vh;min-height:300px}.Locations-module__Fsodma__sidebarFooter{padding:1rem}.Locations-module__Fsodma__shopLink{padding:.75rem 1.25rem;font-size:.8125rem}}@media (max-width:479px){.Locations-module__Fsodma__locationsList{max-height:320px}.Locations-module__Fsodma__mapContainer{height:40vh;min-height:280px}.Locations-module__Fsodma__cardHours{flex-direction:column;gap:.25rem}.Locations-module__Fsodma__hoursTag{width:fit-content}}@media (prefers-reduced-motion:reduce){.Locations-module__Fsodma__locationCard,.Locations-module__Fsodma__cardAction,.Locations-module__Fsodma__shopLink,.Locations-module__Fsodma__loadingSpinner{transition:none;animation:none}}.Locations-module__Fsodma__locationCard:focus-visible{outline:2px solid var(--color-redwood);outline-offset:2px}.Locations-module__Fsodma__cardAction:focus-visible,.Locations-module__Fsodma__shopLink:focus-visible{outline-offset:2px;outline:2px solid #fff}
