/* ESTB Video Card v1.2.0 — réplica del bloque "entry-film" (Sección 01). */
.estb-vc{
	--estb-vc-coral:#e75655;--estb-vc-navy:#123a4a;--estb-vc-ink:#071c24;--estb-vc-focus:#3f807c;
	--estb-vc-grad:#123a4af5;
	--estb-vc-shift-x:16px;--estb-vc-shift-y:0px;--estb-vc-stripes-dur:700ms;
	--estb-vc-disc-scale:1.08;--estb-vc-disc-dur:300ms;
	line-height:normal;font-synthesis:none
}
.estb-vc *,.estb-vc *::before,.estb-vc *::after{box-sizing:border-box}

/* ---------- Recuadro ---------- */
.estb-vc .estb-vc-card{
	position:relative;isolation:isolate;display:block;width:100%;height:clamp(280px,39vw,560px);
	margin:0;padding:0;border:0;border-radius:22px;overflow:hidden;
	background:var(--estb-vc-navy);color:#fff;text-align:left
}
/* Disparador: cubre todo el recuadro (reset fuerte frente a estilos de botón del tema / kit) */
.estb-vc button.estb-vc-trigger,
.estb-vc button.estb-vc-trigger:hover,
.estb-vc button.estb-vc-trigger:focus,
.estb-vc button.estb-vc-trigger:active{
	position:absolute;inset:0;isolation:isolate;display:block;width:100%;height:100%;
	margin:0;padding:0;border:0;border-radius:0;overflow:hidden;
	background:transparent;color:#fff;text-align:left;
	font:inherit;line-height:normal;letter-spacing:normal;text-transform:none;text-decoration:none;
	white-space:normal;box-shadow:none;outline:none;cursor:pointer;user-select:auto;transition:none;
	-webkit-tap-highlight-color:transparent;-webkit-appearance:none;appearance:none
}
.estb-vc .estb-vc-card:has(.estb-vc-trigger:focus-visible){outline:3px solid var(--estb-vc-focus);outline-offset:5px}

.estb-vc .estb-vc-poster{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;margin:0;border:0;border-radius:0;box-shadow:none}
.estb-vc .estb-vc-stripes{position:absolute;width:100%;height:auto;max-width:none;left:0;top:0;opacity:.88;margin:0;border:0;border-radius:0;box-shadow:none;pointer-events:none;transition:transform var(--estb-vc-stripes-dur)}
.estb-vc .estb-vc-trigger::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,var(--estb-vc-grad));z-index:0}

.estb-vc .estb-vc-action{position:absolute;z-index:1;left:28px;right:28px;bottom:27px;display:flex;align-items:center;gap:20px}
.estb-vc .estb-vc-disc{display:grid;place-items:center;flex:0 0 auto;width:66px;height:66px;border-radius:50%;background:var(--estb-vc-coral);color:var(--estb-vc-ink);font-size:23px;line-height:normal;transition:transform var(--estb-vc-disc-dur),background-color var(--estb-vc-disc-dur),color var(--estb-vc-disc-dur)}
.estb-vc .estb-vc-text{display:block;font-size:22px;font-weight:700}
.estb-vc .estb-vc-title{display:inline;color:inherit}
.estb-vc .estb-vc-subtitle{display:block;font-size:14px;font-weight:400;margin-top:5px;color:inherit}
.estb-vc .estb-vc-arrow{margin-left:auto;font-size:38px;line-height:normal}
.estb-vc .estb-vc-disc svg,.estb-vc .estb-vc-arrow svg{width:1em;height:1em;fill:currentColor}
.estb-vc .estb-vc-disc i,.estb-vc .estb-vc-arrow i{line-height:1}

@media(hover:hover){
	.estb-vc .estb-vc-trigger:hover .estb-vc-disc{transform:scale(var(--estb-vc-disc-scale))}
	.estb-vc .estb-vc-trigger:hover .estb-vc-stripes{transform:translate(var(--estb-vc-shift-x),var(--estb-vc-shift-y))}
}
.estb-vc .estb-vc-trigger:focus-visible .estb-vc-disc{transform:scale(var(--estb-vc-disc-scale))}
.estb-vc .estb-vc-trigger:focus-visible .estb-vc-stripes{transform:translate(var(--estb-vc-shift-x),var(--estb-vc-shift-y))}

/* ---------- Popup ---------- */
.estb-vc .estb-vc-dialog{
	width:min(var(--estb-vc-dialog-w,1100px),94vw);max-width:none;max-height:95dvh;
	padding:20px;background:var(--estb-vc-navy);color:#fff;
	border:1px solid #ffffff50;border-radius:16px;line-height:normal;font-family:inherit
}
.estb-vc .estb-vc-dialog:not([open]){display:none}
.estb-vc .estb-vc-dialog::backdrop{background:#071c24dc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}
.estb-vc .estb-vc-dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:15px}
.estb-vc .estb-vc-dialog-title{margin:0;padding:0;font-family:inherit;font-size:20px;font-weight:700;line-height:normal;letter-spacing:normal;text-transform:none;color:inherit}
.estb-vc .estb-vc-dialog-title>span{font-size:14px;font-weight:400}

.estb-vc button.estb-vc-close,
.estb-vc button.estb-vc-close:hover,
.estb-vc button.estb-vc-close:focus,
.estb-vc button.estb-vc-close:active{
	position:relative;display:block;flex:0 0 auto;margin:0;border:0;border-radius:0;background:none;color:inherit;
	padding:8px 35px 8px 8px;min-height:44px;text-align:left;
	font-family:inherit;font-weight:600;font-size:14px;line-height:normal;letter-spacing:normal;text-transform:none;
	white-space:normal;box-shadow:none;cursor:pointer;transition:none;-webkit-appearance:none;appearance:none
}
.estb-vc button.estb-vc-close:focus:not(:focus-visible){outline:none}
.estb-vc button.estb-vc-close:focus-visible{outline:3px solid #fff;outline-offset:5px}
.estb-vc .estb-vc-close small{display:block;font-size:12px;font-weight:400;margin-top:2px;color:#cbdde2}
.estb-vc .estb-vc-close>span:last-child{position:absolute;right:0;top:5px;font-size:32px;font-weight:400}

.estb-vc .estb-vc-frame{aspect-ratio:16/9;background:var(--estb-vc-stage,#071c24)}
.estb-vc .estb-vc-frame iframe,.estb-vc .estb-vc-frame video{display:block;width:100%;height:100%;max-width:none;margin:0;border:0}
.estb-vc .estb-vc-frame video{object-fit:contain;background:var(--estb-vc-stage,#071c24)}
.estb-vc .estb-vc-frame>div{width:100%;height:100%}

/* ---------- Reproducción dentro del recuadro ---------- */
.estb-vc .estb-vc-stage{position:absolute;inset:0;z-index:2;background:var(--estb-vc-stage,#071c24)}
.estb-vc .estb-vc-stage[hidden]{display:none!important}
.estb-vc .estb-vc-stage .estb-vc-frame{position:absolute;inset:0;aspect-ratio:auto;width:100%;height:100%}
.estb-vc .estb-vc-card.is-playing .estb-vc-trigger{visibility:hidden}
.estb-vc--ratio .estb-vc-card.is-playing{height:auto!important;aspect-ratio:16/9}
/* Cubrir: el vídeo (16:9) se amplía hasta llenar el recuadro y se recortan los bordes que sobran */
.estb-vc--fit-cover .estb-vc-stage .estb-vc-frame{container-type:size;overflow:hidden}
.estb-vc--fit-cover .estb-vc-stage .estb-vc-frame iframe{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:max(100%,calc(100cqh * 16 / 9));height:max(100%,calc(100cqw * 9 / 16))}
.estb-vc--fit-cover .estb-vc-stage .estb-vc-frame video{object-fit:cover}
.estb-vc .estb-vc-stage-ui{position:absolute;z-index:3;top:var(--estb-vc-ui-offset,14px);right:var(--estb-vc-ui-offset,14px);display:flex;gap:8px;opacity:.85;transition:opacity .25s}
.estb-vc .estb-vc-stage:hover .estb-vc-stage-ui,.estb-vc .estb-vc-stage-ui:focus-within{opacity:1}

/* Botones redondos (cerrar / anterior / siguiente) */
.estb-vc button.estb-vc-ui-btn,
.estb-vc button.estb-vc-ui-btn:hover,
.estb-vc button.estb-vc-ui-btn:focus,
.estb-vc button.estb-vc-ui-btn:active{
	display:grid;place-items:center;flex:0 0 auto;width:var(--estb-vc-ui-size,44px);height:var(--estb-vc-ui-size,44px);
	margin:0;padding:0;border:1px solid #ffffff50;border-radius:50%;
	background:var(--estb-vc-ui-bg,#123a4ad9);color:var(--estb-vc-ui-color,#fff);
	box-shadow:none;cursor:pointer;transition:background-color .25s,color .25s;-webkit-appearance:none;appearance:none
}
@media(hover:hover){.estb-vc button.estb-vc-ui-btn:hover{background:var(--estb-vc-ui-bg-hover,#e75655);color:var(--estb-vc-ui-color-hover,#071c24);border-color:transparent}}
.estb-vc button.estb-vc-ui-btn:focus:not(:focus-visible){outline:none}
.estb-vc button.estb-vc-ui-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
.estb-vc .estb-vc-ui-btn svg{width:45%;height:45%;overflow:visible}
.estb-vc .estb-vc-dialog-actions{display:flex;align-items:center;gap:16px;flex:0 0 auto}
.estb-vc .estb-vc-nav{display:flex;gap:8px}

.estb-vc a.estb-vc-external,
.estb-vc a.estb-vc-external:hover,
.estb-vc a.estb-vc-external:visited{display:block;width:fit-content;margin-top:16px;font-size:14px;text-decoration:none;color:inherit;border-bottom:1px solid #ffffff70;padding-bottom:5px}
.estb-vc a.estb-vc-external:focus-visible{outline:3px solid #fff;outline-offset:5px}
.estb-vc .estb-vc-external small{display:block;font-size:12px;color:#cbdde2;margin-top:4px}
.estb-vc .estb-vc-external-icon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-top:2px;color:inherit;overflow:visible}

/* Vista previa del popup dentro del editor de Elementor */
.estb-vc .estb-vc-dialog.is-preview{position:relative;inset:auto;display:block;margin:20px auto 0}

/* ---------- Móvil (≤767px, breakpoint de Elementor) ---------- */
@media(max-width:767px){
	.estb-vc .estb-vc-card{height:285px;border-radius:18px}
	.estb-vc .estb-vc-stripes{height:100%;width:150%;object-fit:cover;left:-25%}
	.estb-vc .estb-vc-action{left:18px;right:18px;bottom:20px;gap:13px}
	.estb-vc .estb-vc-disc{width:53px;height:53px;font-size:18px}
	.estb-vc .estb-vc-text{font-size:19px}
	.estb-vc .estb-vc-subtitle{font-size:12px}
	.estb-vc .estb-vc-arrow{font-size:29px}
	.estb-vc .estb-vc-dialog{padding:14px;width:min(var(--estb-vc-dialog-w,96vw),96vw)}
	.estb-vc .estb-vc-dialog-title{font-size:17px}
	.estb-vc .estb-vc-dialog-title>span{display:block;font-size:12px;margin-top:4px}
	.estb-vc button.estb-vc-close,.estb-vc button.estb-vc-close:hover,.estb-vc button.estb-vc-close:focus,.estb-vc button.estb-vc-close:active{font-size:12px}
	.estb-vc .estb-vc-close small{font-size:10px}
}

@media(prefers-reduced-motion:reduce){
	.estb-vc *{animation:none!important;transition:none!important}
	.estb-vc .estb-vc-trigger:hover .estb-vc-disc,.estb-vc .estb-vc-trigger:focus-visible .estb-vc-disc{transform:none}
}
