.contact-details { position: relative; isolation: isolate; scroll-margin-top: 96px; min-height: 540px; overflow: hidden; display: grid; align-items: center; background: url("/wp-content/uploads/menu/get-in-touch/NYC-1.webp") center 44% / cover no-repeat rgb(22, 26, 32); font-family: Blinker, sans-serif; }
.contact-details::before { position: absolute; z-index: -1; inset: 0px; content: ""; background: linear-gradient(90deg, rgba(22, 26, 32, 0.96) 0%, rgba(22, 26, 32, 0.84) 37%, rgba(22, 26, 32, 0.42) 68%, rgba(22, 26, 32, 0.2) 100%); }
.contact-details::after { position: absolute; z-index: -1; right: -120px; bottom: -180px; width: 440px; height: 440px; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 50%; content: ""; }
.contact-details__inner { width: min(1440px, 100% - 40px); margin: 0px auto; padding: 72px 0px; display: grid; grid-template-columns: minmax(280px, 0.78fr) minmax(580px, 1.22fr); align-items: center; gap: clamp(48px, 7vw, 112px); }
.contact-details__location { color: rgb(255, 255, 255); }
.contact-details__eyebrow, .contact-details__panel-heading p { margin: 0px; font-size: 13px; font-weight: 600; line-height: 1.2; letter-spacing: 0.14em; text-transform: uppercase; }
.contact-details__eyebrow { display: flex; align-items: center; gap: 10px; color: rgba(255, 255, 255, 0.72); }
.contact-details__eyebrow span { width: 9px; height: 9px; border-radius: 50%; background: rgb(216, 12, 24); box-shadow: rgba(216, 12, 24, 0.2) 0px 0px 0px 5px; }
.contact-details__location h2 { margin: 20px 0px 14px; font-family: Blinker, sans-serif; font-size: clamp(50px, 5.2vw, 76px); font-weight: 600; line-height: 0.95; letter-spacing: -0.025em; color: rgb(255, 255, 255); }
.contact-details__intro { margin: 0px; padding-left: 18px; border-left: 2px solid rgb(216, 12, 24); font-size: 20px; line-height: 1.4; color: rgba(255, 255, 255, 0.78); }
.contact-details__panel { overflow: hidden; padding: 0px 34px 10px; border: 1px solid rgba(255, 255, 255, 0.65); border-radius: 26px; background: rgba(255, 255, 255, 0.96); box-shadow: rgba(5, 10, 18, 0.3) 0px 24px 70px; backdrop-filter: blur(14px); }
.contact-details__panel-heading { padding: 30px 0px 24px; border-bottom: 1px solid rgb(223, 226, 230); }
.contact-details__panel-heading p { color: rgb(216, 12, 24); }
.contact-details__panel-heading h3 { margin: 8px 0px 0px; font-family: Blinker, sans-serif; font-size: clamp(24px, 2vw, 30px); font-weight: 600; line-height: 1.15; color: rgb(40, 45, 53); }
.contact-details__item { position: relative; display: grid; grid-template-columns: 52px minmax(0px, 1fr) auto; align-items: center; gap: 20px; margin: 0px -14px; padding: 19px 14px; border-radius: 14px; color: rgb(40, 45, 53); text-decoration: none; transition: background-color 180ms, transform 180ms; }
.contact-details__item + .contact-details__item::before { position: absolute; top: 0px; right: 14px; left: 86px; height: 1px; content: ""; background: rgb(231, 233, 236); }
.contact-details__item:hover, .contact-details__item:focus-visible { background: rgb(243, 244, 246); color: rgb(40, 45, 53); transform: translateX(3px); }
.contact-details__item:focus-visible { outline: rgb(216, 12, 24) solid 2px; outline-offset: 2px; }
.contact-details__icon { width: 52px; height: 52px; display: grid; place-items: center; border-radius: 15px; background: rgb(252, 235, 237); color: rgb(216, 12, 24); }
.contact-details__icon svg { width: 24px; height: 24px; fill: none; stroke: currentcolor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.contact-details__copy, .contact-details__label, .contact-details__value { display: block; }
.contact-details__label { margin-bottom: 4px; font-size: 12px; font-weight: 600; line-height: 1.2; letter-spacing: 0.1em; text-transform: uppercase; color: rgb(109, 115, 124); }
.contact-details__value { font-size: 18px; font-weight: 500; line-height: 1.3; text-transform: none; overflow-wrap: anywhere; color: rgb(40, 45, 53); }
.contact-details__action { display: flex; align-items: center; gap: 9px; font-size: 15px; font-weight: 600; white-space: nowrap; color: rgb(216, 12, 24); }
.contact-details__arrow { position: relative; width: 12px; height: 12px; display: inline-block; border-top: 2px solid; border-right: 2px solid; transition: transform 180ms; }
.contact-details__arrow::before { position: absolute; top: 4px; left: -4px; width: 14px; height: 2px; content: ""; background: currentcolor; transform: rotate(-45deg); transform-origin: center center; }
.contact-details__item:hover .contact-details__arrow, .contact-details__item:focus-visible .contact-details__arrow { transform: translate(2px, -2px); }
@media (max-width: 980px) {
  .contact-details { min-height: 0px; background-position: 42% center; }
  .contact-details::before { background: linear-gradient(rgba(22, 26, 32, 0.88) 0%, rgba(22, 26, 32, 0.74) 42%, rgba(22, 26, 32, 0.52) 100%); }
  .contact-details__inner { width: min(760px, 100% - 40px); grid-template-columns: 1fr; gap: 38px; }
  .contact-details__location { text-align: center; }
  .contact-details__eyebrow { justify-content: center; }
  .contact-details__intro { display: inline-block; padding-left: 0px; border-left: 0px; }
}
@media (max-width: 600px) {
  .contact-details__inner { width: calc(100% - 32px); padding: 56px 0px; gap: 32px; }
  .contact-details__location h2 { margin-top: 16px; }
  .contact-details__intro { font-size: 18px; }
  .contact-details__panel { padding: 0px 20px 6px; border-radius: 20px; }
  .contact-details__panel-heading { padding: 24px 0px 20px; }
  .contact-details__item { grid-template-columns: 44px minmax(0px, 1fr) 20px; gap: 14px; margin: 0px -8px; padding: 18px 8px; }
  .contact-details__item + .contact-details__item::before { right: 8px; left: 66px; }
  .contact-details__icon { width: 44px; height: 44px; border-radius: 13px; }
  .contact-details__icon svg { width: 21px; height: 21px; }
  .contact-details__value { font-size: 16px; }
  .contact-details__action { font-size: 0px; }
}
@media (prefers-reduced-motion: reduce) {
  .contact-details__item, .contact-details__arrow { transition: none; }
}