/* Closing Contact section only, Overview and the seven service pavilions remain independent */
.contact-section[data-contact-lounge] {
  --contact-copper: #d4a474;
  --contact-muted: #bfad9b;
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-height: calc(100svh - var(--header-height));
  padding: 0;
  scroll-margin-top: var(--header-height);
  color-scheme: dark;
  background: radial-gradient(ellipse at 31% 52%, #6d381a1a, transparent 58%), radial-gradient(ellipse at 83% 48%, #70432212, transparent 44%), #090909;
  border-top: 1px solid #b9824d3d;
}
.contact-section[data-contact-lounge]:focus-visible { outline: 1px solid #d4a474; outline-offset: -2px; }
.contact-section[data-contact-lounge] > .page-width { width: min(calc(100% - var(--page-inline-space)), 1600px); }
.contact-lounge-topline { display: flex; align-items: center; gap: 22px; padding-block: 12px; border-bottom: 1px solid #a9724533; }
.contact-lounge-topline p, .contact-lounge-chapter { font: 400 8px/1.5 var(--font-body); letter-spacing: .17em; color: #c1ab93; }
.contact-lounge-topline p > span { margin-right: 9px; color: #e5b181; }
.contact-lounge-chapter { margin-left: auto; }
.contact-lounge-chapter-mark { font-size: 19px; line-height: 1; color: var(--contact-copper); }
.contact-lounge-layout { display: grid; flex: 1 0 auto; grid-template-columns: minmax(0, 1.9fr) minmax(300px, .85fr); align-items: center; gap: clamp(30px, 3.2vw, 58px); padding-block: 20px; }
.contact-lounge-theatre { min-width: 0; }
.contact-lounge-shot-heading { display: flex; align-items: center; gap: 15px; padding-bottom: 13px; font: 400 8px/1.5 var(--font-body); letter-spacing: .16em; color: #c29a77; }
.contact-lounge-shot-rule { flex: 1; height: 1px; background: linear-gradient(90deg, #98613966, #9861390d); }
.contact-lounge-shot-index { color: #a18c77; font-size: 7px; letter-spacing: .13em; }
.contact-lounge-frame { position: relative; isolation: isolate; width: 100%; max-width: min(100%, max(300px, calc((100svh - var(--header-height) - 180px) * 1.777778))); margin-inline: auto; padding: 1px; border: 1px solid #a46d424d; border-top-color: #dfb08061; border-radius: 4px; background: linear-gradient(135deg, #58361f, #100d0a 28%, #302014 90%); box-shadow: 0 24px 55px #0007, 0 3px 0 #17120f, 0 5px 0 #8d60373d, 0 10px 0 #0c0b0a, 0 11px 0 #704d2b33; }
.contact-lounge-frame::before { content: ''; position: absolute; inset: 10px -6px -10px 6px; z-index: -1; border: 1px solid #865b3624; border-radius: 4px; background: #0a0908; pointer-events: none; }
.contact-lounge-media { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; background: #090a0b; border-radius: 2px; }
.contact-lounge-poster, .contact-lounge-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.contact-lounge-video { display: block; opacity: 0; pointer-events: none; transition: opacity .24s ease; }
.contact-lounge-media.is-playing .contact-lounge-video { opacity: 1; }
.contact-lounge-media.has-no-poster .contact-lounge-poster { visibility: hidden; }
.contact-lounge-unavailable { position: absolute; inset: 0; display: grid; place-content: center; max-width: 440px; margin-inline: auto; padding: 30px; color: #d1bfae; font-size: 13px; text-align: center; line-height: 1.8; }
.contact-lounge-corner { position: absolute; width: 13px; height: 13px; pointer-events: none; border-color: #b9875d; border-style: solid; opacity: .65; }
.contact-lounge-corner-top { top: 8px; left: 8px; border-width: 1px 0 0 1px; }
.contact-lounge-corner-bottom { right: 8px; bottom: 8px; border-width: 0 1px 1px 0; }
.contact-lounge-caption { display: flex; align-items: center; gap: 14px; min-height: 50px; padding-top: 8px; color: #a99683; font-size: 9px; line-height: 1.5; }
.contact-lounge-motion-status { display: inline-flex; align-items: center; gap: 7px; margin-left: auto; white-space: nowrap; }
.contact-lounge-motion-status i { width: 4px; height: 4px; border: 1px solid #a77b55; border-radius: 50%; }
.contact-lounge-theatre:has(.is-playing) .contact-lounge-motion-status i { background: #d7b187; border-color: #d7b187; box-shadow: 0 0 8px #d0a57344; }
.contact-lounge-motion { min-height: 44px; min-width: 84px; padding: 8px 0 8px 12px; border: 0; border-left: 1px solid #986a4138; background: transparent; color: #d0ac87; text-align: right; font-size: 9px; }
.contact-lounge-motion:hover { color: #ffdfb8; }
.contact-lounge-motion:disabled { cursor: default; color: #a9947f; opacity: 1; }
.contact-lounge-motion:focus-visible { outline-offset: 2px; }
.contact-lounge-editorial { min-width: 0; padding-block: 6px; }
.contact-lounge-eyebrow { margin-bottom: 10px; color: #c09165; font: 400 7px/1.6 var(--font-body); letter-spacing: .18em; }
.contact-lounge-title { font: 400 clamp(40px, 3.8vw, 60px)/1.02 var(--font-display); letter-spacing: -.047em; }
.contact-lounge-title em { display: inline-block; font-family: var(--font-editorial); font-size: 1.025em; letter-spacing: -.055em; color: #d6ab80; }
.contact-lounge-intro { margin-top: 16px; max-width: 390px; color: var(--contact-muted); font-size: 12px; line-height: 1.8; }
.contact-lounge-channels { display: grid; gap: 7px; margin: 23px 0 0; padding: 0; list-style: none; }
.contact-lounge-channels li { min-width: 0; }
.contact-lounge-channels a { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 16px; min-height: 75px; padding: 12px 16px; border: 1px solid #a06a435c; border-radius: 3px; background: linear-gradient(112deg, #59331b22, #17100d33); box-shadow: inset 0 1px 0 #d9ac7817; text-decoration: none; transition: background .22s ease, border-color .22s ease, color .22s ease; }
.contact-lounge-channels li:first-child a { border-color: #a06a4375; box-shadow: inset 2px 0 0 #c99464, inset 0 1px 0 #d9ac7821; }
.contact-lounge-channel-label { grid-column: 1; color: #bd9773; font: 400 8px/1.5 var(--font-body); letter-spacing: .09em; }
.contact-lounge-channels strong { grid-column: 1; color: #f1d1ae; font: 400 clamp(17px, 1.5vw, 22px)/1.3 var(--font-display); letter-spacing: -.015em; overflow-wrap: anywhere; }
.contact-lounge-channel-arrow { grid-column: 2; grid-row: 1 / 3; align-self: center; color: #d2a06e; font-size: 24px; }
.contact-lounge-channels a:hover { border-color: #d6a273bb; background: linear-gradient(112deg, #73432242, #21160f60); }
.contact-lounge-channels a:hover strong, .contact-lounge-channels a:hover .contact-lounge-channel-arrow { color: #ffe0bb; }
.contact-lounge-channels a:focus-visible, .contact-lounge-socials a:focus-visible { outline-offset: 3px; }
.contact-lounge-socials { margin-top: 23px; }
.contact-lounge-socials h3 { color: #c6ad94; font: 400 10px/1.5 var(--font-body); letter-spacing: .045em; }
.contact-lounge-socials ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; margin: 10px 0 0; padding: 0; list-style: none; }
.contact-lounge-socials li { min-width: 0; }
.contact-lounge-socials a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; min-height: 62px; padding: 10px 6px; border: 1px solid #8c5b384d; border-radius: 2px; color: #c7b19a; background: #24160d26; font-size: 10px; line-height: 1.4; text-decoration: none; transition: border-color .2s ease, background .2s ease, color .2s ease; }
.contact-lounge-socials svg { width: 17px; height: 17px; flex: 0 0 17px; color: #c28f60; }
.contact-lounge-socials a:hover { color: #ffe0bd; border-color: #c78f5a88; background: #643b1d30; }
.contact-lounge-bottomline { display: flex; align-items: center; gap: 20px; min-height: 43px; padding-block: 5px; border-top: 1px solid #a972452b; color: #b59b81; font-size: 7px; line-height: 1.5; letter-spacing: .15em; }
.contact-lounge-bottom-note { margin-left: auto; font-size: 9px; letter-spacing: .01em; }
.contact-lounge-bottomline a { display: inline-flex; align-items: center; gap: 13px; min-height: 30px; color: #cfac88; text-decoration: none; font-size: 9px; letter-spacing: .01em; }
.contact-lounge-bottomline a > span { font-size: 15px; }
.contact-lounge-bottomline a:hover { color: #ffe0ba; }
.header-contact[href='#contact'][aria-current='location'] { color: #ffe0bb; border-color: #c38d5c; background: linear-gradient(112deg, #65402245, #21150e33); box-shadow: inset 0 1px 0 #deb27b24; }

@media (min-width: 960px) and (max-height: 760px) {
  .contact-lounge-topline { padding-block: 9px; }
  .contact-lounge-layout { padding-block: 12px; gap: 30px; }
  .contact-lounge-title { font-size: clamp(36px, 3.2vw, 45px); }
  .contact-lounge-intro { margin-top: 10px; font-size: 11px; line-height: 1.65; }
  .contact-lounge-channels { margin-top: 17px; gap: 6px; }
  .contact-lounge-channels a { min-height: 63px; padding-block: 9px; }
  .contact-lounge-channels strong { font-size: 18px; }
  .contact-lounge-socials { margin-top: 16px; }
  .contact-lounge-socials a { min-height: 53px; padding-block: 7px; gap: 5px; }
  .contact-lounge-bottomline { min-height: 36px; }
}
@media (max-width: 1199px) {
  .contact-section[data-contact-lounge] > .page-width { width: calc(100% - var(--page-inline-space)); }
  .contact-lounge-layout { grid-template-columns: minmax(0, 1.5fr) minmax(300px, 1fr); gap: 28px; }
  .contact-lounge-title { font-size: 42px; }
  .contact-lounge-caption { gap: 9px; font-size: 8px; }
  .contact-lounge-motion { min-width: 76px; font-size: 8px; padding-left: 9px; }
}
@media (min-width: 960px) and (max-width: 1199px) and (max-height: 760px) {
  .contact-lounge-title { font-size: 36px; }
}
@media (max-width: 959px) {
  .contact-section[data-contact-lounge] { min-height: 0; }
  .contact-lounge-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; padding-block: 28px; }
  .contact-lounge-frame { max-width: none; }
  .contact-lounge-editorial { max-width: 640px; }
  .contact-lounge-title { font-size: 48px; }
  .contact-lounge-intro { max-width: 540px; font-size: 13px; }
  .contact-lounge-channels strong { font-size: 22px; }
}
@media (max-width: 759px) {
  .contact-section[data-contact-lounge] > .page-width { width: calc(100% - var(--page-inline-space)); }
  .contact-lounge-topline { padding-block: 14px; gap: 14px; }
  .contact-lounge-topline p, .contact-lounge-chapter { font-size: 7px; letter-spacing: .1em; }
  .contact-lounge-chapter-mark { font-size: 17px; }
  .contact-lounge-shot-heading { font-size: 7px; gap: 10px; }
  .contact-lounge-shot-index { font-size: 6px; }
  .contact-lounge-caption { flex-wrap: wrap; gap: 6px 10px; font-size: 8px; min-height: 52px; }
  .contact-lounge-motion { min-width: 78px; }
  .contact-lounge-title { font-size: clamp(40px, 9vw, 54px); }
  .contact-lounge-eyebrow { font-size: 8px; }
  .contact-lounge-channel-label { font-size: 10px; }
  .contact-lounge-socials h3 { font-size: 12px; }
  .contact-lounge-bottomline { flex-wrap: wrap; gap: 4px 14px; padding-block: 12px; }
  .contact-lounge-bottom-note { display: none; }
  .contact-lounge-bottomline a { margin-left: auto; min-height: 44px; font-size: 10px; }
}
@media (max-width: 359px) {
  .contact-section[data-contact-lounge] > .page-width { width: calc(100% - var(--page-inline-space)); }
  .contact-lounge-caption > span:first-child { width: 100%; }
  .contact-lounge-motion-status { margin-left: 0; }
  .contact-lounge-motion { margin-left: auto; }
  .contact-lounge-socials ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .contact-lounge-channels a { padding-inline: 12px; }
  .contact-lounge-channels strong { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .contact-lounge-video, .contact-lounge-channels a, .contact-lounge-socials a { transition: none; }
}
@media (forced-colors: active) {
  .contact-section[data-contact-lounge] { background: Canvas; color: CanvasText; }
  .contact-lounge-topline, .contact-lounge-bottomline, .contact-lounge-frame { border-color: CanvasText; background: Canvas; box-shadow: none; }
  .contact-lounge-frame::before, .contact-lounge-corner, .contact-lounge-shot-rule, .contact-lounge-motion-status i { display: none; }
  .contact-lounge-title, .contact-lounge-title em, .contact-lounge-eyebrow, .contact-lounge-intro, .contact-lounge-topline p, .contact-lounge-topline p > span, .contact-lounge-chapter, .contact-lounge-chapter-mark, .contact-lounge-shot-heading, .contact-lounge-shot-index, .contact-lounge-caption, .contact-lounge-socials h3, .contact-lounge-bottomline, .contact-lounge-bottomline a { color: CanvasText; }
  .contact-lounge-channels a, .contact-lounge-socials a, .contact-lounge-motion { border: 1px solid ButtonText; color: ButtonText; background: Canvas; box-shadow: none; }
  .contact-lounge-channel-label, .contact-lounge-channels strong, .contact-lounge-channel-arrow, .contact-lounge-socials svg { color: ButtonText; }
  .contact-lounge-motion:disabled { border-color: GrayText; color: GrayText; }
  .header-contact[href='#contact'][aria-current='location'] { border-color: Highlight; color: LinkText; background: Canvas; box-shadow: none; }
}
