.cs-store-details { margin-top: 3.5rem; text-align: left; color: #0b1f3f; }
.cs-store-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.cs-store-panel, .cs-review-card { margin: 0; padding: clamp(1.4rem, 3vw, 2.25rem); border-radius: 1.75rem; background: #fbf8f1; }
.cs-store-details h3 { margin: 0 0 1rem; font-size: clamp(1.4rem, 3vw, 1.9rem); font-weight: 800; line-height: 1.2; letter-spacing: -.025em; }
.cs-store-panel address { font-size: 1.15rem; font-style: normal; line-height: 1.7; }
.cs-store-panel p { margin: .8rem 0; }
.cs-details-link { display: inline-block; margin-top: .5rem; color: #004b99; font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
.cs-details-link:hover { color: #0b1f3f; }
.cs-details-link:focus-visible { outline: 3px solid #0066cb; outline-offset: 4px; }
.cs-hours-list { margin: 0; }
.cs-hours-list > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .25rem 1rem; padding: .55rem 0; border-bottom: 1px solid #0b1f3f26; }
.cs-hours-list dt { font-weight: 600; }
.cs-hours-list dd { margin: 0; white-space: nowrap; }
.cs-details-note { font-size: .85rem; line-height: 1.6; }
.cs-customer-reviews { margin-top: 3rem; }
.cs-reviews-intro { margin: 0 0 1.5rem; line-height: 1.6; }
.cs-review-card blockquote { margin: 0 0 1.5rem; padding: 0; border: 0; font-family: "Fraunces", Georgia, serif; font-size: clamp(1.5rem, 3vw, 2rem); line-height: 1.35; font-style: italic; }
.cs-review-card figcaption strong, .cs-review-card figcaption span { display: block; }
.cs-review-card figcaption span { margin-top: .25rem; font-size: .85rem; }
@media (max-width: 700px) { .cs-store-grid { grid-template-columns: 1fr; } }
