.product-place { margin:28px 0; padding-top:22px; border-top:1px solid #dce1df; color:var(--abl-shop-text,#394352); }
.product-place[hidden], .product-place-toggle[hidden] { display:none !important; }
.product-place .product-place-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.product-place .product-place-eyebrow { margin:0 0 4px; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:#77756f; }
.product-place h2 { margin:0; padding:0; font-size:20px; line-height:1.3; font-weight:500; }
.product-place .product-place-key { display:inline-flex; align-items:center; gap:7px; flex-shrink:0; font-size:11px; color:#68737a; }
.product-place-key::before { content:""; width:10px; height:10px; border:2px solid #b45f42; border-radius:50%; box-shadow:0 0 0 4px #b45f4215; }
.product-place-key--lowlands::before { width:17px; height:12px; border:0; background:#72a2bd80; box-shadow:0 0 5px 2px #72a2bd40; border-radius:45%; }
.product-place-key--region::before { border-color:#9aa6aa; box-shadow:none; border-radius:2px; }
.product-place figure { margin:0; }
.product-place .product-map-open { display:block; width:100%; padding:0; border:0; background:none; color:inherit; cursor:zoom-in; text-align:left; font:inherit; }
.product-map-open:focus-visible { outline:2px solid #15456b; outline-offset:4px; }
.product-map-hint { display:block; margin-top:6px; font-size:11px; color:#68737a; }
main .product-map-lightbox .product-lightbox-inner { grid-template-rows:auto minmax(0,1fr) auto; }
main .product-map-lightbox .product-place-map { width:min(100%, calc((100vh - 150px) * 2200 / 1507)); width:min(100%, calc((100dvh - 150px) * 2200 / 1507)); }
main .product-map-lightbox .product-place-credit, main .product-map-lightbox .product-place-credit a { color:#b9c3c9; }
.product-place-map { position:relative; width:100%; overflow:hidden; background:#eef3f5; }
.product-place .product-place-map img { display:block; width:100%; max-width:none; height:auto; margin:0; padding:0; border:0; }
.product-place-map svg { position:absolute; inset:0; display:block; width:100%; height:100%; pointer-events:none; }
.product-place figcaption { margin-top:10px; font-size:12px; line-height:1.5; color:#68737a; }
.product-place .product-place-credit,.product-place .product-place-credit a { font-size:10px; line-height:1.5; color:#778188; }
.product-place .product-place-credit { margin:6px 0 0; }
.product-place .product-place-credit a { text-decoration:underline; text-underline-offset:2px; }
@media (max-width:480px) { .product-place .product-place-heading { align-items:flex-start; flex-direction:column; gap:10px; } .product-place h2 { font-size:19px; } }
