.contact-hero{display:flex;flex-direction:column;gap:2rem}@media(min-width:900px){.contact-hero{flex-direction:row;align-items:stretch}.contact-hero-text{flex:1}.contact-hero-side{flex:0.9;display:flex;align-items:stretch}}.contact-hero-text>p{max-width:40rem}.contact-hero-actions{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1.5rem}.contact-hero-meta{margin-top:1.25rem}.contact-hero-side{margin-top:1.5rem}.gradient-card{background:linear-gradient(135deg,rgba(39,195,195,0.12),rgba(110,199,255,0.14),rgba(198,184,255,0.18),rgba(255,189,173,0.22));border-radius:1.25rem;padding:1.5rem;height:100%;box-shadow:var(--shadow-soft)}.gradient-card h3{margin-top:0;margin-bottom:0.5rem}.contact-hero-list{margin:0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--color-text-soft)}.contact-hero-list li{margin-bottom:0.25rem}.team-grid{gap:1.5rem}.team-card .card-inner{height:100%}.team-list{margin:0.5rem 0 0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--color-text-soft)}.team-list li{margin-bottom:0.15rem}.contact-main-grid{display:grid;grid-template-columns:minmax(0,1.6fr);gap:2rem}@media(min-width:960px){.contact-main-grid{grid-template-columns:minmax(0,1.8fr)minmax(0,1.1fr)}}.contact-form-col .card-soft{border-radius:1.25rem}.contact-form-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}@media(min-width:720px){.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-grid .full{grid-column:1/-1}}.form-field{display:flex;flex-direction:column}.consent-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0.6rem;align-items:flex-start;font-size:var(--text-sm);color:var(--color-text-soft)}.consent-row input[type="checkbox"]{margin-top:0.2rem}.contact-form-actions{margin-top:1.25rem;display:flex;flex-direction:column;gap:0.5rem}.contact-form-note{font-size:var(--text-xs);color:var(--color-text-muted);max-width:28rem}.contact-info-col{display:flex;flex-direction:column;gap:1.25rem}.contact-info-card{border-radius:1.25rem}.contact-details{margin:0}.contact-detail-row{display:flex;flex-direction:column;margin-bottom:0.75rem;font-size:var(--text-sm)}.contact-detail-row dt{font-weight:500;color:var(--color-text-soft);margin-bottom:0.1rem}.contact-detail-row dd{margin:0;color:var(--color-text)}.contact-detail-row a{color:var(--color-accent-blue)}.contact-detail-note{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:0.1rem}.contact-links{margin-top:1.25rem;display:flex;flex-direction:column;gap:0.5rem}.contact-service-card{border-radius:1.25rem;margin-top:0.5rem}.contact-service-list{margin:0.5rem 0 0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--color-text-soft)}.reservation-grid{display:grid;grid-template-columns:minmax(0,1.4fr);gap:2rem;align-items:start}@media(min-width:960px){.reservation-grid{grid-template-columns:minmax(0,1.5fr)minmax(0,1fr)}}.reservation-info>p{max-width:34rem}.reservation-highlights{margin:0.75rem 0 0.25rem;padding-left:1.1rem;font-size:var(--text-sm);color:var(--color-text-soft)}.reservation-form-wrapper{background:var(--color-surface-soft);border-radius:1.25rem;padding:1.25rem;box-shadow:var(--shadow-soft)}.reservation-form .form-field{margin-bottom:0.75rem}.reservation-form .btn-full{margin-top:0.25rem}.info-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1.75rem}@media(min-width:900px){.info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.info-card{border-radius:1.25rem}.hours-grid{display:flex;flex-direction:column;gap:0.5rem;margin-top:0.75rem}.hours-row{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--color-text-soft);background:rgba(255,255,255,0.9);border-radius:var(--radius-md);padding:0.45rem 0.75rem;box-shadow:var(--shadow-soft)}.location-list,.events-list,.parking-list,.privacy-list,.security-list{margin:0.5rem 0 0;padding-left:1.1rem;font-size:var(--text-sm);color:var(--color-text-soft)}.map-placeholder{margin-top:1rem;border-radius:1rem;border:1px dashed rgba(148,163,184,0.6);padding:0.9rem;font-size:var(--text-xs);color:var(--color-text-muted);background:rgba(255,255,255,0.8);text-align:center}.faq-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem}@media(min-width:900px){.faq-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.faq-item h3{margin-top:0}.sticky-cta-inner .btn{white-space:nowrap}@media(min-width:768px){.contact-links{flex-direction:row}.contact-links .btn-full{width:auto;flex:1}}
