/* Shared Order footer: the illustration frames the heading, never the directory. */
.order-locations-footer{width:min(100% - 64px,1440px);margin:72px auto 0;padding:0 0 24px;border-top:1px solid #d6bdc34d;color:#835668}
.order-locations__hero{position:relative;isolation:isolate;min-height:clamp(260px,25vw,370px);display:grid;place-items:center;margin:20px 0 12px}
.order-locations__art{position:absolute;bottom:0;width:32%;height:100%;overflow:hidden;pointer-events:none;z-index:-1}
.order-locations__art--left{left:0}.order-locations__art--right{right:0}
.order-locations__art img{position:absolute;bottom:0;width:226%;max-width:none;height:auto}.order-locations__art--left img{left:0}.order-locations__art--right img{right:0}
.order-locations__heading{text-align:center;width:100%;padding:12px 0 40px}
.order-locations__lotus{width:54px;height:54px;margin:0 auto 12px;color:#bc5a7b;stroke-width:1.35}
.order-locations__heading h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(60px,6.5vw,96px);font-weight:500;line-height:1.08;letter-spacing:.01em;color:#ba5879;margin:0 0 14px}
.order-locations__heading p{margin:0 auto;max-width:54%;font-size:clamp(11px,1.12vw,16px);font-weight:500;line-height:1.7;text-wrap:balance}
.order-locations__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 20px}
.order-location{display:flex;flex-direction:column;min-width:0;padding:24px 28px 14px;border:1px solid #f2b9c3;border-radius:24px;background:linear-gradient(140deg,#fffdfa,#fffaf4 70%,#fff7f2);box-shadow:0 14px 26px -18px #608f963b,inset 0 1px 0 #fff;color:#835668}
.order-location:last-child:nth-child(3n + 1){grid-column:2}
.order-location__body{position:relative;padding-left:44px;flex:1}
.order-location__pin{position:absolute;left:0;top:0;width:26px;height:32px;color:#c44976;stroke-width:1.6}
.order-location__city{font-size:10px;font-weight:500;letter-spacing:.22em;line-height:1.6;text-transform:uppercase;margin:2px 0 9px;overflow-wrap:anywhere}
.order-location h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(24px,2.1vw,32px);font-weight:600;line-height:1.15;color:#bf3f6c;margin:0 0 9px;overflow-wrap:anywhere;text-wrap:balance}
.order-location address{font-size:13px;line-height:1.7;font-style:normal;margin:0;overflow-wrap:anywhere}
.order-location__actions{display:flex;align-items:stretch;justify-content:center;margin-top:14px;padding-top:6px;border-top:1px solid #efd4d787;gap:7px;color:#ab476d}
.order-location__actions>a,.order-location__phones{flex:1;min-width:0}
.order-location__actions>a,.order-location__phones summary{display:flex;gap:12px;align-items:center;justify-content:center;min-height:48px;padding:6px 4px;font-size:13px;line-height:1.5;text-decoration:none;border-radius:8px;transition:background-color .2s,color .2s}
.order-location__actions>:nth-child(2){position:relative}.order-location__actions>:nth-child(2)::before{content:'';position:absolute;left:-4px;top:14px;height:20px;border-left:1px solid #e7c3cb;pointer-events:none}
.order-location__actions a:hover,.order-location__phones summary:hover{background:#f9e5eb;color:#8d3357}
.order-location__actions :focus-visible{outline:2px solid #b95d7a;outline-offset:3px}
.order-location__icon{width:22px;height:22px;flex-shrink:0;stroke-width:1.6}
.order-location__phones summary{cursor:pointer;list-style:none}.order-location__phones summary::-webkit-details-marker{display:none}
.order-location__phone-list{position:absolute;z-index:3;right:0;top:calc(100% + 5px);min-width:200px;padding:6px;border:1px solid #efb9c5;border-radius:14px;background:#fffaf4;box-shadow:0 10px 24px #70445422}
.order-location__phone-list a{display:block;padding:12px 10px;border-radius:8px;font-size:13px;white-space:nowrap}
.order-location__phones[open] summary{background:#f9e5eb}
.order-locations-footer__credits{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:24px 4px 0;border-top:1px solid #d6bdc366;font-size:11px;line-height:1.7;color:#9a7786}
.order-locations-footer__credits p{margin:0}.order-locations-footer__credits a:hover{color:#b95d7a}
.order-locations__empty{grid-column:1/-1;text-align:center;padding:30px 12px;font-size:14px}
@media(min-width:1600px){.order-locations-footer{width:min(100% - 96px,1440px)}}
@media(min-width:700px) and (max-width:1050px){.order-locations__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.order-location:last-child:nth-child(3n + 1){grid-column:auto}.order-location:last-child:nth-child(2n + 1){grid-column:1/-1;width:calc((100% - 20px)/2);justify-self:center}.order-locations__heading p{max-width:50%}.order-location h3{font-size:28px}.order-location{padding:22px 24px 12px}}
@media(max-width:699px){
 .order-locations-footer{width:calc(100% - 32px);margin-top:48px;padding-bottom:24px}
 .order-locations__hero{min-height:0;display:block;margin:20px 0 22px;padding-top:142px}
 .order-locations__art{top:0;bottom:auto;height:138px;width:50%}.order-locations__art img{width:240%;bottom:0}.order-locations__art--left{left:0}.order-locations__art--right{right:0}
 .order-locations__heading{padding:0 8px}.order-locations__lotus{width:32px;height:32px;margin:0 auto 9px}
 .order-locations__heading h2{font-size:54px;line-height:1.1;margin-bottom:10px;letter-spacing:.015em}
 .order-locations__heading p{max-width:330px;font-size:11px;line-height:1.9;letter-spacing:.02em}
 .order-locations__grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .order-location,.order-location:last-child:nth-child(3n + 1){grid-column:auto;width:100%;padding:23px 22px 12px;border-radius:22px}
 .order-location__body{padding-left:38px}.order-location__pin{width:24px;height:29px}.order-location__city{font-size:9px;letter-spacing:.2em;margin-bottom:8px}
 .order-location h3{font-size:29px;line-height:1.15;margin-bottom:10px}.order-location address{font-size:12px;line-height:1.75}
 .order-location__actions{margin-top:16px}.order-location__actions>a,.order-location__phones summary{gap:10px;min-height:48px;font-size:12px}
 .order-locations-footer__credits{flex-direction:column;text-align:center;gap:8px;margin-top:24px;padding-top:20px;font-size:10px}
}
@media(max-width:359px){.order-locations__hero{padding-top:122px}.order-locations__art{height:118px}.order-location{padding-left:18px;padding-right:18px}.order-location h3{font-size:26px}.order-locations__heading h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){.order-location__actions a,.order-location__phones summary{transition:none}}

@media(min-width:1051px){.order-location--long-name h3{font-size:26px;letter-spacing:-.015em}}
