.google-map-container[data-astro-cid-l3oj3rjo]{width:100%;position:relative}.map-placeholder[data-astro-cid-l3oj3rjo]{display:flex;align-items:center;justify-content:center;min-height:450px;background:linear-gradient(135deg,var(--background) 0%,rgba(0,0,0,.06) 100%);border-radius:12px;padding:2rem;text-align:center}.map-placeholder-content[data-astro-cid-l3oj3rjo]{max-width:500px}.map-placeholder-icon[data-astro-cid-l3oj3rjo]{color:var(--accent-light);margin-bottom:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.map-placeholder-title[data-astro-cid-l3oj3rjo]{font-size:1.5rem;font-weight:600;color:var(--primary);margin:0 0 1rem}.map-placeholder-description[data-astro-cid-l3oj3rjo]{color:var(--text-light);line-height:1.6;margin-bottom:1.5rem}.map-placeholder-btn[data-astro-cid-l3oj3rjo]{margin-bottom:1.5rem}.map-placeholder-alternative[data-astro-cid-l3oj3rjo]{color:var(--text-light);font-size:.9rem;line-height:1.6;margin:1rem 0;padding:1rem;background:#ffffff80;border-radius:6px}.map-link[data-astro-cid-l3oj3rjo]{color:var(--accent-light);text-decoration:underline;font-weight:500}.map-link[data-astro-cid-l3oj3rjo]:hover{color:var(--accent)}.map-iframe-wrapper[data-astro-cid-l3oj3rjo]{width:100%;border-radius:12px;overflow:hidden}.map-iframe-wrapper[data-astro-cid-l3oj3rjo] iframe[data-astro-cid-l3oj3rjo]{width:100%;height:450px;display:block}@media(max-width:768px){.map-placeholder[data-astro-cid-l3oj3rjo]{min-height:400px;padding:1.5rem}.map-placeholder-title[data-astro-cid-l3oj3rjo]{font-size:1.25rem}.map-iframe-wrapper[data-astro-cid-l3oj3rjo] iframe[data-astro-cid-l3oj3rjo]{height:400px}}.contact-section{background-color:#fafafa}.contact-grid{display:grid;grid-template-columns:1fr;gap:3rem}@media(min-width:968px){.contact-grid{grid-template-columns:1fr 1fr}}.contact-info{display:flex;flex-direction:column;gap:1.5rem}.info-card{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:all .3s ease}.info-card .info-text{color:#666;font-style:normal;line-height:1.6;margin:0}.info-card .info-icon{font-size:2rem;margin-bottom:.5rem;user-select:none}.info-card .info-title{font-size:1.25rem;color:#0f0f0f;margin-bottom:.75rem}.info-card .info-link{color:#41122b;font-weight:500;transition:color .3s ease}.info-card .info-link:hover{color:#0f0f0f}.info-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.opening-hours{display:flex;flex-direction:column;gap:.75rem}.hour-row{display:flex;align-items:center;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.05)}.hour-row:last-child{border-bottom:none}.hour-day{color:#333;font-weight:500}.hour-time{color:#666}.social-section{background-color:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.social-links{display:flex;gap:1rem;flex-wrap:wrap;user-select:none}.social-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background-color:#fafafa;border-radius:8px;color:#333;font-weight:500;transition:all .3s ease}.social-link:hover{background-color:#41122b;color:#fff;transform:translateY(-2px)}.map-container{display:flex;flex-direction:column;gap:1rem}.map-wrapper{width:100%;height:450px;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014}.map-wrapper iframe{width:100%;height:100%}.map-note{background-color:#fff;padding:1rem 1.5rem;border-radius:8px;color:#666;line-height:1.6;margin:0;box-shadow:0 2px 8px #00000014}.reservation-section{background-color:#fff}.reservation-content{max-width:1000px;margin:0 auto}.reservation-intro{text-align:center;font-size:1.125rem;color:#666;max-width:700px;margin:0 auto 3rem;line-height:1.7}.reservation-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-bottom:3rem}.reservation-card{background-color:#fafafa;padding:2rem;border-radius:16px;text-align:center;transition:all .3s ease;box-shadow:0 2px 8px #00000014}.reservation-card:hover{transform:translateY(-8px);box-shadow:0 8px 20px #0000001f}.reservation-card .card-title{font-size:1.375rem;color:#0f0f0f;margin-bottom:1rem}.reservation-card .btn{width:100%}.card-description{color:#666;line-height:1.6;margin-bottom:1.5rem}.reservation-note{background:linear-gradient(135deg,#800020,#41122b);padding:1.5rem;border-radius:12px;text-align:center}.note-text{color:#fff;line-height:1.7;margin:0;font-size:1.05rem}.note-text strong{font-weight:600}@media(max-width:640px){.reservation-options{grid-template-columns:1fr}.map-wrapper{height:350px}}
