/* A clear purpose, the right restaurant, and one straightforward request. */
.contact-page .contact-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:40px;padding-block:30px 34px;align-items:start}
.contact-page .contact-hero h1{font-size:clamp(2.6rem,4vw,3.8rem);font-weight:800;max-width:20ch;line-height:1.04;margin:14px 0 18px}
.contact-page .contact-hero .lead{font-size:.95rem;line-height:1.75;max-width:46ch}
.contact-urgent{margin-top:18px;padding-top:14px;border-top:1px solid #0e3a5230}
.contact-urgent>span{display:block;font-size:.73rem;line-height:1.6}
.contact-urgent>div{display:flex;gap:10px;flex-wrap:wrap;margin-top:7px}
.contact-urgent a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 16px;border:1px solid var(--navy);border-radius:999px;font-size:.77rem;font-weight:800;text-decoration:none}
.contact-urgent a:hover{background:var(--sun)}
.contact-page .contact-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:none;box-shadow:none;border-radius:0;padding:0}
.contact-page .contact-card-kicker{font-size:.63rem;letter-spacing:.09em}
.contact-shortcuts>.contact-card-kicker{grid-column:1/-1;padding-block:3px}
.contact-page .contact-shortcuts>a{min-width:0;min-height:112px;padding:18px;border:1px solid #0e3a5233;border-radius:20px;background:var(--paper);align-items:start;gap:10px;font-size:.98rem}
.contact-page .contact-shortcuts>a:last-child{border-bottom:1px solid #0e3a5233;padding-bottom:18px}
.contact-page .contact-shortcuts>a small{font-size:.74rem;line-height:1.55;margin-top:8px}
.contact-page .contact-shortcuts>a>span:last-child{font-size:1.1rem}
.contact-page .contact-shortcuts>a.is-selected{border-color:var(--navy);background:var(--sun);color:var(--navy)}
.contact-shortcuts a:focus-visible,.contact-urgent a:focus-visible,.contact-restaurant-summary a:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.contact-page .contact-form-card{box-shadow:none;scroll-margin-top:calc(var(--header-h,100px) + 16px)}
.contact-page .contact-form-card h2{font-size:clamp(2rem,3.4vw,2.8rem);font-weight:800;line-height:1.1;margin:12px 0}
.contact-page .contact-form-intro{font-size:.83rem;line-height:1.7;margin-bottom:22px}
.contact-page .contact-field label{font-size:.8rem}
.contact-page .contact-field-help{font-size:.75rem;line-height:1.65}
.contact-page .contact-details{background:var(--sky);border-color:#0e3a5230;padding:18px}
.contact-page .contact-details[hidden]{display:none}
.contact-page .contact-details legend{font-size:.79rem}
.contact-restaurant-summary{grid-column:1/-1;padding:16px 18px;border-left:3px solid var(--sun);border-radius:0 16px 16px 0;background:var(--sky)}
.contact-restaurant-summary[hidden]{display:none}
.contact-restaurant-summary>span{display:block;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px}
.contact-restaurant-summary strong{display:block;font-family:var(--font-display);font-size:1.2rem;line-height:1.3}
.contact-restaurant-summary address{font-style:normal;font-size:.78rem;line-height:1.65;margin-top:5px}
.contact-restaurant-summary p{display:flex;align-items:center;gap:6px;font-size:.72rem;line-height:1.5;margin-top:8px}
.contact-restaurant-summary p[hidden]{display:none}
.contact-restaurant-summary p::before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#65747a}
.contact-restaurant-summary p.is-open::before{background:#247648}
.contact-restaurant-summary>div{display:flex;gap:16px;flex-wrap:wrap;margin-top:3px}
.contact-restaurant-summary a{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;font-weight:800;text-underline-offset:4px}
.contact-page .contact-sidebar-intro h2{font-size:2.2rem;line-height:1.1;font-weight:800}
.contact-page .contact-sidebar-intro p{font-size:.83rem;line-height:1.7}
.contact-page .contact-location-card{box-shadow:none;padding:24px}
.contact-page .contact-location-card.is-selected{border-color:var(--navy);box-shadow:inset 4px 0 var(--sun)}
.contact-page .contact-phone{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-size:1.05rem}
.contact-page .contact-location-card address{font-size:.85rem;line-height:1.7}
.contact-page .contact-request-note{font-size:.8rem;line-height:1.65}
.contact-page .contact-privacy{font-size:.73rem;line-height:1.7}
@media(max-width:800px){.contact-page .contact-hero{grid-template-columns:1fr;gap:24px}.contact-page .contact-hero h1{max-width:none}.contact-page .contact-shortcuts>a{min-height:94px}}
@media(max-width:540px){
  .contact-page .contact-hero{padding-block:24px;gap:22px}
  .contact-page .contact-hero h1{font-size:clamp(2.1rem,8.4vw,2.8rem)}
  .contact-page .contact-hero .eyebrow{font-size:.58rem;letter-spacing:.07em}
  .contact-page .contact-hero .lead{font-size:.83rem;line-height:1.7}
  .contact-urgent{margin-top:14px;padding-top:10px}.contact-urgent>span{font-size:.7rem}.contact-urgent a{font-size:.74rem}
  .contact-page .contact-shortcuts{gap:10px}.contact-page .contact-shortcuts>a{padding:15px 13px;min-height:98px;border-radius:18px;font-size:.88rem}
  .contact-page .contact-shortcuts>a:last-child{padding-bottom:15px}.contact-page .contact-shortcuts>a small{font-size:.7rem;line-height:1.5}.contact-page .contact-shortcuts>a>span:last-child{font-size:.9rem}
  .contact-page .contact-form-card h2{font-size:2rem}.contact-page .contact-form-intro{font-size:.79rem}
  .contact-page .contact-details{padding:14px 12px}.contact-page .contact-details legend{font-size:.75rem}
  .contact-restaurant-summary{padding:14px}.contact-restaurant-summary>div{gap:10px 16px}.contact-restaurant-summary a{font-size:.72rem}
  .contact-page .contact-field-grid{gap:16px}.contact-page .contact-privacy{font-size:.71rem}
}
@media print{.contact-urgent,.contact-shortcuts,.contact-restaurant-summary{display:none!important}.contact-page .contact-details[hidden]{display:block!important}}
