.contact-hero{background:radial-gradient(circle at top left,rgba(215,202,184,0.55),transparent 55%),radial-gradient(circle at bottom right,rgba(199,154,73,0.38),transparent 55%);padding-block:var(--space-16)}.contact-hero-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:var(--space-10);align-items:center}.contact-hero-title{margin-top:var(--space-3);margin-bottom:var(--space-4)}.contact-hero-lead{max-width:40rem}.contact-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.contact-hero-meta{margin-top:var(--space-4)}.contact-hero-card{max-width:26rem}.contact-hero-card-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}.contact-hero-card-body{display:flex;flex-direction:column;gap:var(--space-4)}.contact-hero-row{display:flex;gap:var(--space-4);align-items:flex-start}.contact-hero-footnote{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:var(--line-height-relaxed);border-radius:var(--radius-md);border:1px dashed rgba(199,154,73,0.7);padding:var(--space-3);background-color:rgba(246,242,236,0.7)}.contact-icon-circle{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:radial-gradient(circle at 30% 10%,rgba(247,241,231,1),rgba(215,202,184,0.9));box-shadow:0 12px 30px rgba(18,8,0,0.28);font-size:1.1rem}.contact-label{font-size:var(--font-size-xs);letter-spacing:0.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-1)}.contact-primary-link{font-weight:600;color:var(--color-heading);text-decoration:none;position:relative}.contact-primary-link::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:linear-gradient(to right,rgba(199,154,73,0.9),rgba(199,154,73,0.1));transform-origin:left;transform:scaleX(0);transition:transform var(--transition-base)}.contact-primary-link:hover::after{transform:scaleX(1)}.contact-note{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.contact-divider{border-bottom:1px solid rgba(222,212,199,0.9);margin-block:var(--space-3)}.contact-info{background-color:var(--color-background-muted)}.contact-info-grid{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,1.1fr);gap:var(--space-8);align-items:flex-start}.section-title{margin-bottom:var(--space-4)}.contact-info-items{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.contact-info-item{display:flex;gap:var(--space-4);align-items:flex-start}.contact-links,.contact-reservation-links,.contact-special-cta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-4)}.text-link{font-size:var(--font-size-sm);color:var(--color-heading);text-decoration:none;position:relative;padding-bottom:2px}.text-link::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:linear-gradient(to right,rgba(199,154,73,0.9),rgba(199,154,73,0));transition:transform var(--transition-base);transform-origin:left;transform:scaleX(0.9);opacity:.75}.text-link:hover::after{transform:scaleX(1);opacity:1}.contact-map{position:relative}.contact-address-block{margin-top:var(--space-4)}.contact-text-strong{font-weight:600;color:var(--color-heading);margin-bottom:var(--space-2)}.contact-map-embed{margin-top:var(--space-4);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border-subtle);background:linear-gradient(135deg,#2f2923,#1e1914)}.contact-map-placeholder{position:relative;padding-top:60%;background-image:radial-gradient(circle at 20% 0,rgba(215,202,184,0.5),transparent 60%),radial-gradient(circle at 80% 100%,rgba(199,154,73,0.4),transparent 55%);background-color:#1e1914}.contact-map-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-5);color:#f6f2ec;background:linear-gradient(to top,rgba(9,4,0,0.86),transparent 60%)}.contact-map-title{font-family:var(--font-serif);font-size:var(--font-size-xl);margin-bottom:var(--space-1)}.contact-map-subtitle{font-size:var(--font-size-sm);color:rgba(246,242,236,0.86)}.contact-arrival-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.contact-reservation{padding-block:var(--space-16)}.contact-reservation-inner{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,1.1fr);gap:var(--space-8);align-items:flex-start}.contact-reservation-list,.contact-special-list{margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}.contact-bullet{color:var(--color-accent);margin-right:var(--space-1)}.contact-form{margin-top:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.contact-form-grid-simple{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-form-consent{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.contact-consent-item{display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer}.contact-consent-item input{margin-top:4px}.contact-form-actions{display:flex;flex-direction:column;gap:var(--space-2)}.contact-response-note{font-size:var(--font-size-xs);color:var(--color-text-muted)}.contact-forms{background-color:var(--color-background-muted)}.contact-forms-grid{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,1.1fr);gap:var(--space-8);align-items:flex-start}.contact-special-grid{display:grid;grid-template-columns:minmax(0,1.1fr)minmax(0,1.1fr);gap:var(--space-8);align-items:flex-start}.opening-hours{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.opening-row{padding:var(--space-3);border-radius:var(--radius-md);background-color:var(--color-surface-soft);border:1px solid var(--color-border-subtle)}.opening-highlight{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px dashed rgba(222,212,199,0.9)}@media (max-width:1023px){.contact-hero-inner,.contact-info-grid,.contact-reservation-inner,.contact-forms-grid,.contact-special-grid{grid-template-columns:minmax(0,1fr)}.contact-hero{padding-block:var(--space-12)}.contact-hero-card{max-width:none}.contact-forms,.contact-info,.contact-special,.contact-reservation{padding-block:var(--space-12)}}@media (max-width:768px){.contact-hero-actions{flex-direction:column;align-items:flex-start}.contact-form-grid,.contact-form-grid-simple{grid-template-columns:minmax(0,1fr)}.contact-map-placeholder{padding-top:72%}}