/* Stage 3: first screen only. Native Elementor text and links stay editable. */
.elementor .taec-hero--cinema { position: relative; isolation: isolate; overflow: hidden; min-height: clamp(640px, calc(100svh - 88px), 980px); padding: clamp(64px,8vh,104px) 40px 100px; background: var(--taec-navy); }
body .elementor .elementor-element.taec-hero--cinema>.e-con-inner { position: static; justify-content: center; gap: 0; padding-block: 0; }
body .elementor .elementor-element.taec-hero--cinema.taec-dark::before { background-color: transparent; z-index: 1; pointer-events: none; opacity: 1; background: linear-gradient(90deg,rgba(3,20,36,.94) 0%,rgba(3,20,36,.8) 42%,rgba(3,20,36,.25) 100%); }
.taec-hero--cinema .elementor-widget-taec-hero-media { position: static; width: 0; height: 0; min-height: 0; margin: 0; }
.taec-hero-media { position: absolute; inset: 0; z-index: 0; overflow: hidden; pointer-events: none; background: var(--taec-navy); }
.elementor .taec-hero-media .taec-hero-poster { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.taec-hero-player { position: absolute; inset: 0; opacity: 0; transition: opacity .8s; }
.taec-hero-media.is-playing .taec-hero-player { opacity: 1; }
.taec-hero-player iframe { position: absolute; top: 50%; left: 50%; width: max(100vw, 177.78vh); height: max(100vh, 56.25vw); transform: translate(-50%,-50%); border: 0; max-width: none; }
.elementor .taec-hero--cinema .taec-hero-copy { position: relative; z-index: 2; width: min(100%,760px); max-width: 760px; gap: 28px; }
.elementor .taec-hero--cinema h1.elementor-heading-title { font-size: clamp(48px,5.8vw,84px); line-height: 1.04; letter-spacing: -.045em; font-weight: 750; max-width: 780px; text-wrap: balance; }
.elementor .taec-hero--cinema .taec-hero-copy>.elementor-widget-text-editor { font-size: clamp(17px,1.45vw,20px); line-height: 1.65; max-width: 550px; }
.elementor .taec-hero--cinema .taec-label .elementor-heading-title { font-size: 11px; letter-spacing: .15em; color: #dceaf4; }
.elementor .taec-hero-actions { flex-direction: row; flex-wrap: wrap; width: 100%; gap: 12px; }
.elementor .taec-hero-actions .elementor-widget-button { width: auto; }
body .elementor .taec-hero-actions .taec-secondary .elementor-button { color: #fff; background: #071f3540; border-color: #a6bccb; min-height: 48px; font-size: 14px; padding: 13px 22px; border-radius: 10px; }
.elementor .taec-hero-scroll .elementor-button { color: #e4edf5; background: transparent; padding: 8px 0; font-size: 11px; letter-spacing: .1em; min-height: 44px; text-transform: uppercase; }
.elementor .taec-hero-scroll { margin-top: 12px; }
.taec-hero-scroll .elementor-button-icon { animation: taec-scroll-cue 1.8s ease-in-out infinite; }
@keyframes taec-scroll-cue { 0%,100% { transform: translateY(0); } 50% { transform: translateY(5px); } }
.taec-hero-media-controls { position: absolute; right: 40px; bottom: 28px; z-index: 3; display: flex; align-items: center; gap: 16px; }
.taec-hero-temporary { font: 500 10px/1.5 Inter,sans-serif; color: #d0dfeb; letter-spacing: .08em; text-transform: uppercase; }
.elementor .taec-hero-media-controls .taec-hero-video-toggle { min-height: 44px; display: inline-flex; align-items: center; gap: 10px; border: 1px solid #91a8bc; border-radius: 999px; padding: 10px 16px; background: #071f35b3; color: #fff; font: 600 12px/1.5 Inter,sans-serif; cursor: pointer; }
.elementor .taec-hero-media-controls .taec-hero-video-toggle[hidden] { display: none; }
.elementor .taec-hero-media-controls .taec-hero-video-toggle:focus-visible { outline-color: #73c9ff; }
@media (hover:hover) and (pointer:fine) { body .elementor .taec-hero-actions .taec-secondary .elementor-button:hover { background: #fff; color: var(--taec-navy); } .elementor .taec-hero-media-controls .taec-hero-video-toggle:hover { background: var(--taec-navy); color: #fff; } .elementor .taec-hero-scroll .elementor-button:hover { color: #fff; background: transparent; } }
@media (max-width:1024px) { .elementor .taec-hero--cinema { min-height: min(820px,calc(100svh - 80px)); padding: 72px 28px 90px; } .elementor .taec-hero--cinema h1.elementor-heading-title { font-size: clamp(46px,7vw,68px); } .taec-hero-media-controls { right: 28px; } .taec-hero-temporary { display: none; } }
@media (max-width:767px) { .elementor .taec-hero--cinema { min-height: calc(100svh - 76px); padding: 54px 22px 52px; } .elementor .taec-hero--cinema .taec-hero-copy { gap: 24px; } .elementor .taec-hero--cinema h1.elementor-heading-title { font-size: clamp(38px,10.2vw,56px); line-height: 1.08; letter-spacing: -.035em; } .elementor .taec-hero--cinema .taec-hero-copy>.elementor-widget-text-editor { font-size: 16px; line-height: 1.7; } .elementor .taec-hero-actions { flex-direction: column; gap: 12px; } .elementor .taec-hero-actions .elementor-widget-button,.elementor .taec-hero-actions .elementor-button { width: 100%; } body .elementor .elementor-element.taec-hero--cinema.taec-dark::before { background: linear-gradient(90deg,#031424eb,#031424c7); } .taec-hero-media-controls { right: 22px; bottom: 16px; } }
@media (prefers-reduced-motion:reduce) { .taec-hero-player { transition: none; } .taec-hero-scroll .elementor-button-icon { animation: none; } }

body { --taec-hero-header: 88px; --taec-hero-admin: 0px; }
body.admin-bar { --taec-hero-admin: 32px; }
.elementor .taec-hero--cinema { min-height: clamp(600px,calc(100svh - var(--taec-hero-header) - var(--taec-hero-admin)),980px); }
body .elementor .taec-hero-copy>.elementor-widget-text-editor { width: 100%; min-width: 0; max-width: 550px; }
@media(max-width:1024px) { body { --taec-hero-header: 80px; } .elementor .taec-hero--cinema { min-height: min(820px,calc(100svh - var(--taec-hero-header) - var(--taec-hero-admin))); } }
@media(max-width:782px) { body.admin-bar { --taec-hero-admin: 46px; } }
@media(max-width:767px) { body { --taec-hero-header: 76px; } .elementor .taec-hero--cinema { min-height: calc(100svh - var(--taec-hero-header) - var(--taec-hero-admin)); } }
