/* A warmer, circular contact screen within the showroom TV. */
#contactContent[hidden] { display: none; }
#tvMenu.contact-open {
  background: #faf5e9;
  color: #233c32;
  box-shadow: inset 0 0 0 1px #d8d6c9;
  padding: 1.6cqw 2cqw;
  background-image: radial-gradient(circle at 102% 110%, #edcf7138 0 20%, transparent 20.2%);
}
#tvMenu.contact-open #menuDetail .back {
  float: right; min-height: 44px; margin: 0 0 .6cqw 1cqw;
  font-size: max(12px,.95cqw); padding: .55cqw 1cqw;
  color: #334c40; background: #e6ecdf; border: 0; border-radius: 999px;
}
#tvMenu.contact-open #detailTitle {
  min-height: 44px; display: flex; align-items: center;
  margin: 0; font-size: max(22px,2.5cqw); font-weight: 600; letter-spacing: -.04em;
}
#contactContent { clear: both; text-align: center; }
.contact-intro { margin: .2cqw 0 1.4cqw; font-size: max(12px,1.14cqw); line-height: 1.4; color: #4d6355; text-align: left; }
.contact-choices { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8cqw; }
#tvMenu #contactContent .contact-choice {
  flex-direction: column; justify-content: flex-start; align-items: center;
  gap: .4cqw; padding: .6cqw .2cqw; min-width: 0; min-height: 44px;
  border: 0; border-radius: 1.5cqw; background: transparent; color: #233c32; text-align: center;
}
.contact-orb {
  width: 7cqw; height: 7cqw; min-width: 56px; min-height: 56px;
  display: grid; place-items: center; flex: none; border-radius: 50%; margin-bottom: .4cqw;
  color: #233c32; background: #f2cf5e; transition: transform .2s ease, box-shadow .2s ease;
}
.contact-orb svg { width: 43%; height: 43%; }
.contact-norwich .contact-orb { background: #c2d2ba; }
.contact-mobile .contact-orb { background: #edbd9e; }
.contact-choice strong { font-size: max(13px,1.2cqw); font-weight: 600; }
.contact-choice small { font-size: max(12px,1.04cqw); line-height: 1.4; color: #4d6355; white-space: nowrap; font-variant-numeric: tabular-nums; }
.contact-signoff { margin: 1.1cqw 0 0; font-size: max(11px,.95cqw); line-height: 1.4; color: #526657; }
#tvMenu #contactContent .contact-choice:focus-visible, #tvMenu.contact-open .back:focus-visible { outline: 3px solid #376747; outline-offset: 2px; }
@media(hover:hover) {
  #tvMenu #contactContent .contact-choice:hover { background: #eee6d455; }
  .contact-choice:hover .contact-orb { transform: translateY(-4px) rotate(-5deg); box-shadow: 0 5px 0 #233c3212; }
  .contact-mobile:hover .contact-orb { transform: translateY(-4px) rotate(5deg); }
}
@media(min-width:601px) and (max-width:1000px) {
  #picture.contact-ready { overflow: hidden; }
  #picture.contact-ready #roomStill { width: 155%; height: 155%; max-width: none; left: -27.53525%; top: -36.048%; }
  #picture.contact-ready #tvMenu.contact-open { left: 17.5%; top: 20%; width: 64.945%; height: 64.821%; padding: 1.7cqw 2.4cqw; }
  .contact-orb { width: 8.5cqw; height: 8.5cqw; }
}
@media(min-width:1001px) {
  #picture.contact-ready { overflow: hidden; }
  #picture.contact-ready #roomStill { width: 135%; height: 135%; max-width: none; left: -17.50425%; top: -23.816%; }
  #picture.contact-ready #tvMenu.contact-open { left: 21.72%; top: 25%; width: 56.565%; height: 56.457%; }
}
@media(max-width:600px) and (orientation:portrait) {
  #picture.menu-ready #tvMenu.contact-open { padding: 4cqw; }
  #picture.menu-ready #tvMenu.contact-open #menuDetail .back { margin: 0 0 2cqw 2cqw; padding: 2cqw 3cqw; border-radius: 999px; }
  #picture.menu-ready #tvMenu.contact-open #detailTitle { font-size: 5.8cqw; margin: 0; }
  .contact-intro { font-size: 3.5cqw; margin: 1cqw 0 4cqw; }
  .contact-choices { gap: 1cqw; }
  #picture.menu-ready #tvMenu #contactContent .contact-choice { gap: 1.5cqw; padding: 1cqw 0; border-radius: 4cqw; }
  .contact-orb { width: 17cqw; height: 17cqw; min-width: 0; min-height: 0; margin-bottom: 1cqw; }
  .contact-choice strong { font-size: 3.35cqw; }
  .contact-choice small { font-size: 3.05cqw; }
  .contact-signoff { font-size: 3.15cqw; margin-top: 4cqw; }
}
@media(prefers-reduced-motion:reduce) {
  .contact-orb { transition: none; }
  .contact-choice:hover .contact-orb, .contact-mobile:hover .contact-orb { transform: none; }
}
