/* A native dialog stays above fixed enquiry widgets without changing them. */
dialog.ts-channel {
  box-sizing: border-box;
  width: min(780px, calc(100vw - 40px));
  max-width: none;
  max-height: calc(100dvh - 40px);
  margin: auto;
  padding: 0;
  overflow: auto;
  overscroll-behavior: contain;
  border: 1px solid #766039;
  border-radius: 3px;
  color: #f7f1e5;
  background: #0b0b0a;
  box-shadow: 0 30px 100px #0009;
}
dialog.ts-channel:not([open]) { display: none; }
dialog.ts-channel[open] { animation: ts-channel-arrive .35s ease-out both; }
dialog.ts-channel::backdrop { background: rgba(0, 0, 0, .76); }
body.ts-channel-open { overflow: hidden; }
.ts-channel *, .ts-channel *::before, .ts-channel *::after { box-sizing: border-box; }
.ts-channel__layout { display: grid; grid-template-columns: .85fr 1fr; }
.ts-channel__visual { position: relative; min-width: 0; overflow: hidden; background: #10100e; }
.ts-channel__visual img { display: block; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.ts-channel__visual::after { position: absolute; inset: 0; content: ""; background: linear-gradient(0deg, #000d, transparent 45%); pointer-events: none; }
.ts-channel__visual-label { position: absolute; z-index: 1; left: 27px; bottom: 29px; color: #ecdfc4; font: 500 10px/1.5 "Montserrat", sans-serif; letter-spacing: .14em; }
.ts-channel__visual-label i { display: block; width: 28px; height: 1px; margin: 13px 0; background: #c9a85f; }
.ts-channel__copy { position: relative; padding: 54px 36px 28px; background: radial-gradient(ellipse at 100% 0%, #b8964a0c, transparent 65%), #0b0b0a; }
.ts-channel .ts-channel__close { display: grid; position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; min-height: 0; place-items: center; padding: 0; border: 0; border-radius: 0; color: #c4b799; background: transparent; cursor: pointer; }
.ts-channel .ts-channel__close:hover { color: #fff; background: #ffffff09; transform: none; }
.ts-channel .ts-channel__eyebrow { margin: 0; color: #d4b36b; font: 600 9px/1.6 "Montserrat", sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.ts-channel__rule { display: block; width: 32px; height: 1px; margin: 22px 0 20px; background: #c9a85f; }
.ts-channel #ts-channel-title { margin: 0; color: #f7f1e5; font: 500 49px/.98 "Cormorant Garamond", Georgia, serif !important; letter-spacing: -.025em; text-transform: none; }
.ts-channel #ts-channel-title em { color: #d4b36b; font: inherit !important; font-style: italic !important; }
.ts-channel .ts-channel__description { margin: 21px 0 25px; color: #c5c0b5; font: 400 12px/1.85 "Montserrat", sans-serif; letter-spacing: 0; }
.ts-channel .ts-channel__join { display: flex; min-height: 52px; width: 100%; align-items: center; justify-content: center; gap: 11px; padding: 12px 16px; border: 1px solid #d4b36b; border-radius: 2px; background: #d4b36b; color: #0a0a09; font: 700 10px/1.4 "Montserrat", sans-serif; letter-spacing: .07em; text-transform: uppercase; text-decoration: none; transition: background-color .2s ease; }
.ts-channel .ts-channel__join:hover { background: #e8cd92; transform: none; }
.ts-channel__join svg { flex: 0 0 20px; }
.ts-channel__join > span:last-child { margin-left: auto; font-size: 20px; line-height: 1; }
.ts-channel .ts-channel__note { margin: 13px 0 16px; color: #948e81; font: 400 9px/1.7 "Montserrat", sans-serif; text-align: center; letter-spacing: 0; }
.ts-channel .ts-channel__later { display: block; min-height: 40px; margin: 0 auto; padding: 8px 15px; border: 0; background: transparent; color: #b8b0a1; font: 400 11px/1.5 "Montserrat", sans-serif; letter-spacing: 0; text-transform: none; cursor: pointer; }
.ts-channel .ts-channel__later:hover { color: #f7f1e5; transform: none; }
.ts-channel :is(a, button):focus-visible { outline: 2px solid #f7f1e5; outline-offset: 3px; }
@keyframes ts-channel-arrive { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 620px) {
  dialog.ts-channel { width: min(400px, calc(100vw - 28px)); max-height: calc(100dvh - 28px); }
  .ts-channel__layout { grid-template-columns: 1fr; }
  .ts-channel__visual { height: 150px; }
  .ts-channel__visual img { object-position: 50% 56%; }
  .ts-channel__visual-label { left: 23px; bottom: 19px; font-size: 9px; }
  .ts-channel__visual-label i { display: none; }
  .ts-channel__copy { position: static; padding: 25px 24px 18px; }
  .ts-channel .ts-channel__close { z-index: 2; color: #fff; background: #0009; }
  .ts-channel #ts-channel-title { font-size: 42px !important; }
  .ts-channel__rule { margin: 15px 0; }
  .ts-channel .ts-channel__description { margin: 15px 0 20px; font-size: 11px; line-height: 1.8; }
  .ts-channel .ts-channel__note { margin-bottom: 7px; }
}
@media (max-height: 640px) and (max-width: 620px) {
  .ts-channel__visual { height: 94px; }
  .ts-channel__copy { padding-top: 18px; }
  .ts-channel #ts-channel-title { font-size: 36px !important; }
}
@media (prefers-reduced-motion: reduce) {
  dialog.ts-channel[open] { animation: none; }
  .ts-channel .ts-channel__join { transition: none; }
}
