/* Only requested hero overlay and video-intro proportions. Existing fonts inherited. */
#top #wrap_all .tw-deal .tw-hero-caption {position:absolute;inset:auto 0 0;padding:60px 28px 24px;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none;}
#top #wrap_all .tw-deal .tw-hero-caption .tw-address,
#top #wrap_all .tw-deal .tw-hero-caption .tw-region {color:#fff;}
#top #wrap_all .tw-deal .tw-hero-caption .tw-region {font-size:18px;margin-top:4px;}
#top #wrap_all .tw-deal .tw-intro-layout--video {display:grid;grid-template-columns:minmax(0,60fr) minmax(0,40fr);gap:30px;align-items:start;}
#top #wrap_all .tw-deal .tw-intro-layout--video .tw-intro .tw-subject {font-size:26px;}
#top #wrap_all .tw-deal .tw-stream-video {position:relative;aspect-ratio:16/9;min-width:0;margin-top:24px;}
#top #wrap_all .tw-deal .tw-stream-start {position:absolute;inset:0;border:0;padding:0;width:100%;height:100%;background:transparent;cursor:pointer;}
#top #wrap_all .tw-deal .tw-stream-start img {width:100%;height:100%;object-fit:cover;display:block;}
#top #wrap_all .tw-deal .tw-stream-play {position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:48px;min-height:48px;display:flex;align-items:center;justify-content:center;}
#top #wrap_all .tw-deal .tw-stream-video iframe {position:absolute;inset:0;width:100%;height:100%;border:0;}
@media(max-width:767px){
 #top #wrap_all .tw-deal .tw-hero-caption {padding:40px 16px 14px;}
 #top #wrap_all .tw-deal .tw-hero-caption .tw-address {font-size:24px;line-height:1.15;margin:0;}
 #top #wrap_all .tw-deal .tw-hero-caption .tw-region {font-size:15px;line-height:1.2;}
 #top #wrap_all .tw-deal .tw-intro-layout--video {display:block;}
 #top #wrap_all .tw-deal .tw-stream-video {margin:0 0 24px;}
}

/* The film introduction spans the content width before the existing main/sidebar grid. */
#top #wrap_all .tw-deal > .tw-intro-layout--video {margin-bottom:24px;}
@media(max-width:767px){
 #top #wrap_all .tw-deal .tw-columns--video {display:flex;flex-direction:column;align-items:stretch;}
 #top #wrap_all .tw-deal .tw-columns--video > .tw-main {display:contents;}
 #top #wrap_all .tw-deal .tw-columns--video > .tw-property-sidebar {order:1;}
 #top #wrap_all .tw-deal .tw-columns--video .tw-panels {order:2;}
}

/* Align the two columns only after a film intro; no-video spacing is unchanged. */
@media(min-width:768px){
 #top #wrap_all .tw-deal .tw-columns--video > .tw-main > .tw-quick:first-child {margin-top:0;}
}

/* Same iframe throughout rotation: no reparenting, source change or playback reset. */
html.tw-stream-landscape-open {overflow:hidden;}
html.tw-stream-landscape-open body * {visibility:hidden;}
html.tw-stream-landscape-open #top #wrap_all .tw-stream-landscape,
html.tw-stream-landscape-open #top #wrap_all .tw-stream-landscape * {visibility:visible;}
#top #wrap_all .tw-deal .tw-stream-video.tw-stream-landscape {
 position:fixed;inset:0;width:100%;height:100vh;height:100dvh;max-width:none;
 margin:0;aspect-ratio:auto;background:#000;z-index:2147483647;
}
#top #wrap_all .tw-deal .tw-stream-video:fullscreen {width:100%;height:100%;margin:0;background:#000;}
/* Gallery remains the existing modal/scrollable list, with uncropped viewport-sized photos. */
html.tw-gallery-landscape-open #header,
html.tw-gallery-landscape-open #wpadminbar,
html.tw-gallery-landscape-open #scroll-top-link,
html.tw-gallery-landscape-open .tw-nav,
html.tw-gallery-landscape-open .tw-hero-caption {visibility:hidden;}
@media(orientation:landscape) and (max-height:600px) and (max-width:1200px) and (any-pointer:coarse){
 #top #wrap_all .tw-deal .tw-photo-dialog {width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;}
 #top #wrap_all .tw-deal .tw-photo-list {max-width:none;}
 #top #wrap_all .tw-deal .tw-photo-list figure {height:100vh;height:100dvh;margin:0;scroll-margin-top:0;}
 #top #wrap_all .tw-deal .tw-photo-list img {width:100%;height:100%;object-fit:contain;}
 #top #wrap_all .tw-deal .tw-photo-back {margin:max(8px,env(safe-area-inset-top)) 8px 8px max(8px,env(safe-area-inset-left));}
}

/* Touch viewer uses document scrolling, not a fixed nested scrolling surface. */
#top #wrap_all .tw-deal .tw-stream-video iframe[hidden] {display:none;}
#top #wrap_all .tw-deal .tw-photo-back,
#top #wrap_all .tw-deal .tw-photo-back:focus {outline:none;box-shadow:none;}
#top #wrap_all .tw-deal .tw-photo-back:focus-visible {outline:none;box-shadow:inset 0 0 0 2px currentColor;}
html.tw-gallery-document-open {margin-top:0 !important;}
html.tw-gallery-document-open #top > :not(#wrap_all),
html.tw-gallery-document-open #header,
html.tw-gallery-document-open #footer,
html.tw-gallery-document-open #socket,
html.tw-gallery-document-open #scroll-top-link,
html.tw-gallery-document-open #top #wrap_all .tw-deal > :not(.tw-photo-dialog) {display:none !important;}
html.tw-gallery-document-open #top #wrap_all,
html.tw-gallery-document-open #top #main,
html.tw-gallery-document-open #top .tw-page-surface,
html.tw-gallery-document-open #top #wrap_all .tw-shell.container,
html.tw-gallery-document-open #top .tw-deal {
 margin:0 !important;padding:0 !important;width:100% !important;max-width:none !important;min-height:0;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-dialog {
 position:static;inset:auto;width:100%;height:auto;max-height:none;overflow:visible;overscroll-behavior:auto;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-toolbar {z-index:3;}
@media(orientation:landscape) and (max-height:600px) and (max-width:1200px) and (any-pointer:coarse){
 html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-list figure {
  height:var(--tw-gallery-height,100dvh);margin:0;
 }
 html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-list img {
  width:100%;height:100%;max-height:var(--tw-gallery-height,100dvh);object-fit:contain;
 }
}

/* Mobile gallery only: a viewport control, never part of the image flow. */
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-toolbar {
 position:static;border:0;outline:0;box-shadow:none;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back,
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back:focus,
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back:focus-visible {
 position:fixed;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));
 z-index:2147483000;margin:0;border:0 !important;outline:none !important;box-shadow:none !important;
 -webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back::before,
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back::after {content:none !important;}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-back:focus-visible {
 text-decoration:underline;text-underline-offset:4px;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-list figure {
 touch-action:pan-y;overflow:hidden;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-list img {
 transform-origin:center center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;
}
html.tw-gallery-document-open #top #wrap_all .tw-deal .tw-photo-list figure.tw-photo-zoomed {touch-action:none;}
