.hero-shell--contact{grid-template-columns:1.1fr 0.9fr}.hero-left--contact{justify-content:flex-start}.hero-meta--contact{margin-top:var(--space-3)}.hero-meta-note{font-size:var(--font-size-xs);color:var(--color-text-soft)}.hero-right--contact{min-height:260px}.hero-image-frame--contact{min-height:220px}.hero-image--contact{background-image:url("/assets/images/reservations-evening-bistro.webp");background-size:cover;background-position:center;background-repeat:no-repeat;filter:contrast(1.05) saturate(1.05) brightness(0.9)}@media (max-width:1023.98px){.hero-shell--contact{grid-template-columns:1fr}.hero-right--contact{order:-1}}.contact-layout{border-top:none}.contact-layout-grid{display:grid;gap:var(--space-6)}@media (min-width:1024px){.contact-layout-grid{grid-template-columns:minmax(0,2.2fr) minmax(0,1.2fr)}}.contact-form{margin-top:var(--space-3)}.contact-form-grid{display:grid;gap:var(--space-4)}@media (min-width:768px){.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.contact-options-legend{font-size:var(--font-size-xs);letter-spacing:0.18em;text-transform:uppercase;color:var(--color-text-soft);margin-bottom:var(--space-3)}.contact-options-grid{display:grid;gap:var(--space-4)}@media (min-width:768px){.contact-options-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.contact-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.contact-chip{display:inline-flex;align-items:center;gap:0.4rem;padding:0.35rem 0.75rem;border-radius:999px;border:1px solid rgba(30,41,59,1);background:rgba(15,23,42,0.95);font-size:var(--font-size-xs);color:var(--color-text-soft);cursor:pointer;transition:background-color var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.contact-chip input{appearance:none;width:0;height:0;margin:0}.contact-chip:hover{border-color:rgba(148,163,184,0.7);color:var(--color-neutral-50)}.contact-chip input:checked + span,.contact-chip input:checked ~ span{color:#e0f2fe}.contact-chip input:checked ~ span::before{background:radial-gradient(circle at 30% 20%,#e0f2fe,#38bdf8)}.contact-chip span{position:relative;padding-left:1.1rem}.contact-chip span::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:0.55rem;height:0.55rem;border-radius:999px;border:1px solid rgba(148,163,184,0.8);background:rgba(15,23,42,1)}.newsletter-optin{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid rgba(15,23,42,0.9)}.newsletter-checkbox{display:flex;flex-direction:column;gap:0.25rem;font-size:var(--font-size-xs);color:var(--color-text-soft);cursor:pointer}.newsletter-checkbox input{width:auto;height:auto;margin-bottom:var(--space-1)}.newsletter-label{font-size:var(--font-size-sm);color:var(--color-neutral-50)}.newsletter-helper{font-size:var(--font-size-xs);color:var(--color-text-muted)}.contact-form-footer{flex-direction:column;align-items:flex-start}@media (min-width:640px){.contact-form-footer{flex-direction:row;align-items:center}}.contact-form-consent{font-size:var(--font-size-xs);color:var(--color-text-soft);max-width:28rem}.contact-form-consent a{color:var(--color-primary)}.contact-form-consent a:hover{color:#7dd3fc}.contact-sidebar{display:flex;flex-direction:column;gap:var(--space-4)}.contact-card .contact-subtitle{font-size:var(--font-size-sm);color:var(--color-neutral-50);margin-bottom:var(--space-1)}.visit-layout{display:flex;flex-direction:column;gap:var(--space-6)}.visit-grid{margin-top:var(--space-2)}.visit-card .card-body p:last-child{margin-bottom:0}.visit-map-placeholder{margin-top:var(--space-4);border-radius:var(--radius-md);border:1px dashed var(--color-surface-border);background:radial-gradient(circle at 0 0,rgba(56,189,248,0.05) 0,rgba(15,23,42,1) 60%);min-height:180px;position:relative;overflow:hidden}.visit-map-grid{position:absolute;inset:0;background-image:linear-gradient(to right,rgba(30,41,59,0.9) 1px,transparent 1px),linear-gradient(to bottom,rgba(30,41,59,0.9) 1px,transparent 1px);background-size:32px 32px;opacity:0.6}.visit-map-pin{position:absolute;right:18%;top:36%;padding:0.35rem 0.75rem;border-radius:999px;border:1px solid rgba(56,189,248,0.8);background:radial-gradient(circle at 0 0,rgba(56,189,248,0.22) 0,rgba(15,23,42,0.98) 55%);font-size:var(--font-size-xs);color:#e0f2fe;white-space:nowrap;box-shadow:0 18px 35px rgba(0,0,0,0.9)}.visit-hours{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm)}.visit-hours-row{display:flex;justify-content:space-between;gap:var(--space-3);border-bottom:1px dashed rgba(30,41,59,1);padding-bottom:var(--space-1)}.visit-hours-row:last-child{border-bottom:none}.visit-hours dt{color:var(--color-text-soft)}.visit-hours dd{color:var(--color-neutral-50)}.visit-note{padding:var(--space-3);border-radius:var(--radius-md);border:1px solid rgba(56,189,248,0.35);background:var(--color-primary-soft);font-size:var(--font-size-xs)}.visit-bullets{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}.visit-bullets li{position:relative;padding-left:1rem}.visit-bullets li::before{content:"";position:absolute;left:0;top:0.5rem;width:6px;height:6px;border-radius:999px;background:radial-gradient(circle at 30% 20%,#e5e7eb,#38bdf8);box-shadow:0 0 0 3px rgba(56,189,248,0.18)}.contact-subtitle{font-family:var(--font-sans);text-transform:none;letter-spacing:0.04em}.newsletter-inline{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}@media (min-width:480px){.newsletter-inline{flex-direction:row;align-items:center}}.newsletter-inline .input{flex:1 1 auto}.contact-cta-section{border-bottom:none}.contact-cta-grid{display:grid;gap:var(--space-4)}@media (min-width:768px){.contact-cta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.contact-cta-card{display:flex;flex-direction:column;justify-content:space-between;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.contact-cta-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:rgba(56,189,248,0.5)}