.map-placeholder{width:100%;height:400px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-accent-light) 0,var(--color-bg) 50%,var(--color-accent-light) 100%);border:2px solid var(--color-accent);border-radius:var(--radius-md);position:relative;overflow:hidden}.map-placeholder:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(157,210,222,.1) 0,transparent 70%);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.map-placeholder p{color:var(--color-text-dark);margin:0;font-family:var(--font-body);font-size:1.1rem;position:relative;z-index:1}.map-container{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-lg);border:3px solid var(--color-accent-light);transition:all var(--transition-base);height:100%;min-height:400px}.map-container:hover{border-color:var(--color-heading);box-shadow:var(--shadow-lg),0 0 0 8px rgba(157,210,222,.1);transform:translateY(-2px)}.map-wrapper{position:relative;width:100%;height:100%;min-height:400px}.map-iframe{width:100%;height:100%;border:0;display:block}.place-card-large{display:none!important}.map-link-overlay{position:absolute;top:10px;right:10px;z-index:10}.map-link-button{display:inline-block;padding:10px 20px;background:linear-gradient(135deg,var(--color-heading) 0,var(--color-accent) 100%);color:var(--color-bg);text-decoration:none;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;box-shadow:var(--shadow-md);transition:all var(--transition-base);border:2px solid hsla(0,0%,100%,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.map-link-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--color-accent) 0,var(--color-heading) 100%);color:var(--color-bg)}@media (max-width:991px){.map-container{margin-bottom:2rem}.map-container,.map-wrapper{min-height:350px}.map-link-button{padding:8px 16px;font-size:.85rem}.map-card-mask{width:min(70%,300px);height:110px}}