/* Correção de bold para Safari, iOS e macOS */
.row-auto strong, .row-auto b, .row-auto .bold {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Força o bold em elementos específicos se necessário */
.row-auto h1 strong, .row-auto h2 strong, .row-auto h3 strong, .row-auto h4 strong, .row-auto h5 strong, .row-auto h6 strong,
.row-auto h1 b, .row-auto h2 b, .row-auto h3 b, .row-auto h4 b, .row-auto h5 b, .row-auto h6 b {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
}

.row-auto p strong, .row-auto p b,
.row-auto span strong, .row-auto span b,
.row-auto div strong, .row-auto div b {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
}
/* Correção de bold para Safari, iOS e macOS */
.description strong, .description b, .description .bold {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Força o bold em elementos específicos se necessário */
.description h1 strong, .description h2 strong, .description h3 strong, .description h4 strong, .description h5 strong, .description h6 strong,
.description h1 b, .description h2 b, .description h3 b, .description h4 b, .description h5 b, .description h6 b {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
}

.description p strong, .description p b,
.description span strong, .description span b,
.description div strong, .description div b {
	font-family: 'Netflix Sans Bold' !important;
    font-weight: 700 !important;
}

/* Se estiver usando uma fonte customizada, certifique-se de que ela tem a variante bold */
@supports (-webkit-touch-callout: none) {
    /* CSS específico para iOS/Safari */
    .row-auto strong, .row-auto b {
    	font-family: 'Netflix Sans Bold' !important;
        font-weight: 700 !important;
        font-synthesis: weight;
    }
}

.awb-menu__main-a i {
    font-size: 24px;
	transition: all .2s ease-in-out;
}

.awb-menu__main-a:hover i {
    transform: scale(1.1);
}

.off-canvas-content .fusion-fullwidth {
    padding: 15px 10px;
}

.logo-subtitulo{
	width: auto !important;
}

.fusion-checklist {
    width: 100%;
}

.logo-fixed {
	position: fixed !important;
    right: 20px !important;
    max-width: 160px !important;
    bottom: 20px !important;
	z-index: 10000000;
	opacity: 0;
	transition: .3s ease all;
}

.logo-fixed.fixed {
	opacity: 1 !important;
}

.fusion-fullwidth:has(.logo-fixed){
	z-index: 9999;
}

.fusion-button {
    justify-content: flex-start !important;
}

.awb-menu__sub-ul_main .glyphicon {
	font-size: 24px;
}

.borboleta-footer a{
	display: flex;
	align-items: center;
}

.borboleta {
    display: flex;
    padding: 0 10px;
    align-items: center;
}

.toggle-content .fusion-fullwidth{
	display: block;
}

.fusion-footer h4 {
    text-wrap: nowrap;
}

.morreu .fusion-title-4 {
	display: flex;
	justify-content: center;
}

#fusion-scroll-section-nav-1 {
    display: none;
}

/*////////////////////////*/
/*/// Estilo do modal ////*/
.modal-header {
    border: none !important;
    position: absolute;
    top: 20px;
    right: 10px;
}

.modal-footer {
	display: none;
}
.modal-backdrop.in{
	opacity: 0.9;
}

.modal-dialog.modal-lg, .modal-content {
	min-height: auto;
	width: calc(100vw - 90px) !important;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding: 0;
}

.modal-body {
	padding: 0 !important;
}

.modal-content .coluna-modais {
    padding: 30px;
}

.modal-content .coluna-modais article {align-self: middle !important}
.coluna-modais .fusion-title-heading p {
    margin: 0;
}

.coluna-modais .overflow-descricao {
	margin: 0 0 10px;
}

.modal-header {
	z-index: 99999;
}

.img-bg .fusion-column-wrapper{
	background-size: cover !important;
	background-position: left top !important;
}

.fusion-modal {
	display: flex;
	align-content: center;
	overflow-x: hidden;
}

.logo-subtitulo-modal.fusion_builder_column_inner {
    width: auto !important;
	margin: 0 !important;
}

.coluna-modais .fusion-builder-row {
	justify-content: flex-start !important;
}

.coluna-modais .fusion-button {
	/*width: auto;*/
}

.fusion-modal-trigger {
    width: 100%;
}

#laboratorio .awb-carousel {
	overflow: visible;
}

#laboratorio .fusion-layout-column:nth-child(2) {
	/*overflow: hidden;*/
}

/* ===== CSS PARA MODAIS - Melhorias ===== */

.fusion-modal-trigger:not(button):not(.button):not(.btn) {
    cursor: pointer !important;
    transition: opacity 0.3s ease;
}

.fusion-modal-trigger:not(button):not(.button):not(.btn):hover {
    opacity: 0.8;
}

.fusion-modal {
    z-index: 9999 !important;
}

.modal-backdrop {
    z-index: 9998 !important;
}

/*////////////////////////*/
/*Container das temporadas*/
.row-auto .fusion-builder-row .fusion-layout-column {
    width: auto !important;
}

.fusion-fullwidth .row-auto .fusion-builder-row .fusion-layout-column:nth-child(1) {
	margin: 0 0 0 30px !important;
}

#ideomarketing .fusion-fullwidth .row-auto .fusion-builder-row .fusion-layout-column:nth-child(1) {
	margin: 0 0 0 3px !important;
}

.row-auto.lab .fusion-builder-row .fusion-layout-column:nth-child(1) {
	margin: 0 20px 0 10px !important;
}

.row-auto .fusion-button {
    width: 80%;
	white-space: nowrap;
}

.row-auto.ideomarketing .fusion-button {
	width: auto;
}

.overflow-descricao .wrapper{
	overflow-x: hidden;
	overflow-y: auto;
	max-height: 300px;
	margin: 10px 0;
	padding: 0 10px 0 0;
	position: relative;
	transition: box-shadow 0.3s ease;
}

/* Container para as sombras ficarem por cima do conteúdo */
.overflow-descricao {
	position: relative;
}

/* Sombra no topo - aparece quando você JÁ ROLOU */
.overflow-descricao .wrapper.show-shadow-top::before {
	content: '';
	position: sticky;
	display: block;
	top: 0;
	left: 0;
	right: 0;
	height: 30px;
	margin-bottom: -20px;
	background: radial-gradient(
		farthest-side at 50% 0,
		rgba(255, 255, 255, 0.25),
		rgba(255, 255, 255, 0)
	);
	pointer-events: none;
	z-index: 10;
}

/* Sombra no bottom - aparece quando TEM CONTEÚDO ABAIXO */
.overflow-descricao .wrapper.show-shadow-bottom::after {
	content: '';
	position: sticky;
	display: block;
	bottom: 0;
	left: 0;
	right: 0;
	height: 30px;
	margin-top: -20px;
	background: radial-gradient(
		farthest-side at 50% 100%,
		rgba(255, 255, 255, 0.25),
		rgba(255, 255, 255, 0)
	);
	pointer-events: none;
	z-index: 10;
}

.overflow-descricao{
	position: relative;
}

.temp-videos .fusion-builder-row {
    /*padding: 20px !important;*/
    margin-bottom: 20px;
    background-color: #39393c;
    border-radius: 10px;
    display: grid !important;
    grid-template-columns: 2fr 7fr 14fr;
	/*grid-gap: 10px;*/
    align-items: center !important;
	justify-content: center !important;
}

.temp-videos .fusion-layout-column{
	width: 100%;
}
.temp-videos .fusion-layout-column:nth-child(1) .fusion-column-wrapper, .temp-videos .fusion-layout-column:nth-child(2) .fusion-column-wrapper {
    text-align: center;
}

.temp-videos .fusion-builder-row .fusion-layout-column, .temp-videos .fusion-builder-row .fusion-layout-column p,.temp-videos .fusion-column-wrapper{
	margin: 0 !important;
}

.temp-ativo {
	background: #454545 !important;
	padding: 2vw 8vw !important;
}

.fusion-builder-row-6 .fusion-builder-row {
    flex-wrap: nowrap !important;
}

/*////////////////////*/
/*Número das temporadas*/
.num .fusion-title-heading{
	font-size: 256px !important;
	margin-right: -35px !important;
}

.num-img {
    width: /*257.15px 257px*/ 231px !important;
    height: /*342.86px 321px*/ 288px;
    /*margin: 0 -25px 0 0 !important;*/
}

#assistir .fusion-builder-row-inner {
    flex-wrap: nowrap !important;
}

.num .fusion-title-heading{
	background: linear-gradient(to bottom, #fff, #666 50%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-stroke: 4px transparent !important;
    text-stroke: 4px transparent !important;
    display: inline-block;
}
.num .fusion-title-heading a {
	color: #000 !important;
}

.num {
	margin-right: -35px;
}

/* ===== CSS BÁSICO DO SISTEMA DE TEMPORADAS ===== */

[class*="ntemp-"] {
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
}

[class*="ntemp-"]:hover,
[class*="ntemp-"].temp-active {
    opacity: 0.8;
    transform: scale(1.05);
}

[class*="ntemp-"].temp-active::after {
    content: '';
    position: absolute;
    bottom: -52px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 25px solid transparent;
    border-right: 25px solid transparent;
    border-bottom: 30px solid #1f1e22;
    z-index: 10;
}

[class*="ntemp-"]:hover .num .fusion-title-heading a {
	background: transparent;
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-stroke: 2px #7b5bf5 !important;
    color: #7b5bf5 !important;
	transition-duration: .001s;
}

[class*="ctemp-"] {
    min-height: 0px !important;
    overflow: hidden !important;
}

[class*="ctemp-"].temp-fechado {
    display: none !important;
}

[class*="ctemp-"].temp-aberto {
    display: block !important;
    overflow: visible !important;
}

.temp-aberto{
	z-index: 0 !important;
}

/* Container principal dos elementos sobrepostos */
.fusion-builder-row-inner {
    position: relative;
}

/* Coluna do número - sempre na esquerda */
.fusion_builder_column_inner.num {
    position: relative !important;
    z-index: 1 !important; /* Z-index baixo para ficar atrás da imagem */
}

/* Styling do número */
.num .fusion-title-heading {
    font-weight: 900 !important;
    position: relative !important;
    z-index: 1 !important;
}

/* Coluna da imagem/ícone - sem efeitos */
.fusion_builder_column_inner.num-img {
    position: relative !important;
    z-index: 10 !important; /* Z-index alto para sempre ficar por cima do número */
    background: transparent !important;
}

/* Container da imagem - sem efeitos */
.num-img .fusion-image-element {
    opacity: 1;
    filter: none;
}

/* Remove separadores desnecessários */
.num .title-sep-container {
    display: none !important;
}

.num .awb-title-spacer {
    display: none !important;
}

/* Setas */
.awb-swiper-button-next, .awb-swiper-button-prev, .temporadas-prev, .temporadas-next {
    /*width: 35px !important; SID*/
    /*height: 35px !important;SID*/
    font-size: 16px !important;
    /*background: rgba(0, 0, 0, 0.7) !important;*/
    background: rgba(0, 0, 0, 0.5) !important;
    color: rgb(255, 255, 255) !important;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
    transition: background 0.3s !important;
    font-size: 18px !important;
    /*margin-right: 10px;*/
    opacity: 1;
}

.slb3-tv {
	font-size: 30px !important;
}

.msg-erro {
	position: absolute;
	bottom: -30px;
	left: 0;
	color: #7b5bf5
}

/* Ajustes responsivos */
@media (max-width: 1024px) {    	
	.fusion-tb-header .awb-menu__main-li {
        height: 60px;
    }
    
    .row-auto .fusion-builder-row-inner {
		margin: 0 !important;
	}
	
	.row-auto .fusion-builder-row-inner .fusion-column-wrapper {
		margin: 0 10px 0 0;
	}
	
	.row-auto .fusion-builder-row-inner .fusion-column-wrapper {
		margin: 0 10px 0 0;
	}
	
	.coluna-modais .fusion-button, .row-auto .fusion-button{
		width: 100% !important;
	}
	
	.overflow-descricao {
		margin: 10px 0;
	}
	
	.modal-body {
		/*margin: 40px 0;*/
		padding: 0;
	}
	
	.modal-dialog.modal-lg {
        width: calc(100vw - 20px) !important;
        height: calc(100dvh - 20px) !important;
        min-height: calc(100dvh - 20px) !important;
		max-height: calc(100dvh - 20px) !important;
		flex-direction: row;
        margin: 0 auto;
		align-self: center;
		justify-self: center;
    }
	
	.modal-content {
		width: calc(100vw - 10px) !important;
		flex-direction: row;
	}
	
	.bg-modal, .bg-modal .fusion-column-wrapper {
		height: calc(100vw * 0.5625 - 10px);
		min-height: calc(100vw * 0.5625 - 10px);
	}
	
	.coluna-modais .fusion-layout-column {
		width: auto;
		margin: 20px 0 0;
	}
	
	.coluna-modais .fusion-layout-column:nth-child(2) {
		margin: 0;
	}
	
	#content{
		margin-bottom: 0 !important;
	}
	
	.ctemp-1 .fusion-builder-row, .ctemp-2 .fusion-builder-row, .ctemp-3 .fusion-builder-row, .ctemp-4 .fusion-builder-row {
		margin: 0 auto !important;
	}
	
	/* ===== CARROSSEL DOS EPISÓDIOS - MOBILE ===== */
	.temp-videos {
		margin-top: 20px !important;
	}
	
	.temp-videos .fusion-builder-row {
		grid-template-columns: none;
	}
	
	.temp-videos .fusion-modal-trigger {
		margin: 0 30px !important;
	}

	.temp-videos .fusion-imageframe {
		width: 100%;
	}

	.temp-videos img {
		border-radius: 0;
		width: 100%;
	}
	
	.num-ep {
		display: none !important;
	}
	
	/* Estilos dos botões de navegação dos episódios */
	.temp-videos-prev,
    .temp-videos-next {
        width: 35px !important;
        height: 35px !important;
        font-size: 16px !important;
    }
	
	/* ===== CARROSSEL DAS TEMPORADAS - MOBILE ===== */
	
	/* Personalizar setas menores no mobile */
    [class*="ntemp-"].temp-active::after {
        border-left: 12px solid transparent;
        border-right: 12px solid transparent;
        border-bottom: 16px solid #1f1e22;
        bottom: -18px;
    }
    
    /* SLIDER DAS TEMPORADAS - SÓ ABAIXO DE 1024px */
    .temporadas {
        position: relative;
        overflow: hidden;
    }
    
    .temporadas [class*="ntemp-"]:not(.temp-active) {
        display: none;
    }
    
    .temporadas-nav {
        position: absolute;
        top: 50%;
        left: 0;
        right: 0;
        transform: translateY(-50%);
        display: flex;
        justify-content: space-between;
        pointer-events: none;
        z-index: 15;
    }
    
    .temporadas-prev,
    .temporadas-next {
        background: rgba(255,255,255,0.8);
        color: #000;
        border: none;
        width: 45px;
        height: 100% !important;
        border-radius: 0;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        pointer-events: auto;
        font-size: 20px;
    }
    
    .temporadas-prev {
        margin-left: 15px;
    }
    
    .temporadas-next {
        margin-right: 15px;
    }
	
	/* Estilos para navegação das temporadas */
	/*.temporadas-nav button:hover {
		background: rgba(255, 255, 255, 1) !important;
	}*/
    
    .temporadas-prev,
    .temporadas-next {
        width: 40px !important;
        height: 40px !important;
        font-size: 18px !important;
    }
	
	.fusion-fullwidth .row-auto .fusion-builder-row .fusion-layout-column:nth-child(1){
		margin: 0 !important;
	}
	
	.num-img, .num-img > div  {
		/*width: 214.29px !important;
    	height: 285.71px;*/
		width: 214px !important; /*SID » ratio 3x4*/
    	height: 268px !important; /*SID » ratio 3x4*/
	}
	
	.num-img .fusion-column-wrapper {
		margin-left: -35px !important;
	}
	
	/*.num.fusion_builder_column_inner.num {
		margin-right: -35px !important;
	}*/
	
	.overflow-descricao .wrapper {
		margin: 15px 0 !important;
	}
	
	.modal-header {
		position: fixed;
		right: 0;
	}
	
	.fusion-modal.modal {
		z-index: 999999999 !important;
	}
	
	#laboratorio .fusion-layout-column:nth-child(2) {
		overflow: visible;
	}
	
	.num .fusion-title {
		flex-direction: column !important;
		justify-content: flex-end;
	}

	/*.ideomarketing div {
	    width: 100%;
	}*/

    .mobile-menu .fusion-layout-column {
        flex-basis: 100%;
        display: flex;
        justify-content: flex-start;
    }

    .mobile-menu .awb-menu__main-a {
    	justify-content: flex-start !important;
    }

    .mobile-menu .awb-menu__main-a span {
    	margin: 0;
		padding: 0 0 0 12px !important;
    }

    .mobile-menu .awb-menu__open-nav-submenu-hover {
	    position: absolute;
	    right: 0;
	}

	.awb-menu__sub-a span {
	    display: flex;
	    align-items: center;
	}

	.borboleta {
		padding: 0 12px 0 0;
	}

	.submenu-text del {
        font-size: 14px;
        line-height: 14px;
        color: #7e7e7e;
    }

    .submenu-text span {
        font-size: 18px;
        line-height: 18px;
    }

    .ctemp-1 .fusion-modal-trigger img, .ctemp-2 .fusion-modal-trigger img, .ctemp-3 .fusion-modal-trigger img, .ctemp-4 .fusion-modal-trigger img {
    	border-radius: 10px 10px 0 0;
    }
	
	.off-canvas-close.fa-times::before {
		content: "×" !important;
	}
	
	.slb3-tv {
		margin-left: -3px;
	}
	
	.logo-subtitulo-modal .fusion-image-element {
    	margin: 0 0 0 5px !important;
	}
	
}


@media (min-width: 1024px) {
	/*////////////////////*/
	/* Animação do menu */
	.fusion-tb-header .fusion-sticky-container{
		position: fixed;
	    width: 80px;
		transition: .3s all ease !important;
		-webkit-transition: .3s all ease !important;
	}

	/* Container dos itens do menu */
	.fusion-tb-header .awb-menu__main-ul {
		display: flex;
		flex-direction: column;
	}

	/* Cada item do menu com tamanho fixo */
	.fusion-tb-header .awb-menu__main-li {
		/*height: 70px; /* Altura fixa para todos os itens */
		display: flex;
		align-items: center;
		justify-content: center;
		overflow: hidden; /* Esconde o texto que está fora da área */
		position: relative;
		flex-wrap: wrap;
	}

	/* Links do menu */
	.fusion-tb-header .awb-menu__main-a {
		display: flex !important;
	}

	/* Texto do menu */
	.fusion-tb-header .menu-text{
		display: none;
		opacity: 0;
		transition: .3s all ease !important;
		-webkit-transition: .3s all ease !important;
	}

	/* Ícones sempre visíveis */
	.fusion-tb-header .awb-menu__i {
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 0 30px 0 25px !important;
		transition: all 0.3s ease;
		z-index: 2;
		position: relative;
	}

	.fusion-tb-header .fusion-sticky-container .awb-menu__main-a,
	.fusion-tb-header .fusion-sticky-container .awb-menu__open-nav-submenu_main{
		flex: 1;
	}

	.fusion-tb-header .awb-menu_v-stacked .menu-item-has-children{
		display: flex !important;
		transition: none;
	}

	.awb-menu__sub-a span{
		display: flex;
		justify-content: flex-start;
	}

	.menu-item .awb-menu__i_sub {
		padding: 0 10px !important;
	}

	.submenu-text {
		display: flex;
		flex-direction: column;
		padding-left: 15px;
	}

	.submenu-text del {
		font-size: 14px;
		line-height: 14px;
		color: #7e7e7e;
	}

	.submenu-text span {
		font-size: 18px;
		line-height: 18px;
	}

	.awb-menu__sub-li:hover del {
		color: #454545;
	}

	/* Esconder as setas antes do hover */
	.fusion-tb-header .awb-menu__open-nav-submenu-hover {
		display: none !important;
		opacity: 0;
	}

	/* Submenu do menu */
	.fusion-tb-header .awb-menu__sub-ul{
		flex-basis: 100%;
	}

	/* Hover no container - expandir largura */
	.fusion-tb-header .fusion-sticky-container:hover {
		width: 300px !important; /* Largura expandida */
		transition: all 0.3s ease;
	}

	.fusion-tb-header .fusion-sticky-container:hover .awb-menu__main-a{
		justify-content: flex-start;
	}

	.fusion-tb-header .fusion-sticky-container:hover .awb-menu__i{
		/*padding: 0 25px 0 30px;*/
	}

	.fusion-tb-header .fusion-sticky-container:hover .awb-menu__main-background-active{
		border-left: 0 ;
		border-right: 5px solid #7b5bf5;
	}

	.fusion-tb-header:hover .awb-menu__main-li .menu-text {
		top: 50%; /* Centraliza o texto verticalmente */
		opacity: 1; /* Torna o texto visível */
		display: block;
	}

	.fusion-tb-header .fusion-sticky-container:hover .awb-menu__open-nav-submenu-hover{
		display: block !important;
		position: absolute;
		right: 0;
		top: 15px;
		opacity: 1;
		padding-right: 20px;
	}

	.overflow-descricao {
	  --scrollbarBG: transparent;
	  --thumbBG: #90a4ae;

	  scrollbar-width: thin;
	  scrollbar-color: var(--thumbBG) var(--scrollbarBG);
	}

	.overflow-descricao::-webkit-scrollbar {
	  width: 6px;
	}

	.overflow-descricao::-webkit-scrollbar-track {
	  background: var(--scrollbarBG);
	}

	.overflow-descricao::-webkit-scrollbar-thumb {
	  background-color: var(--thumbBG);
	  border-radius: 6px;
	  border: 3px solid var(--scrollbarBG);
	}

	.num-ep {
	    padding-left: 20px;
	}

	.ctemp-1 .fusion-modal-trigger img, .ctemp-2 .fusion-modal-trigger img, .ctemp-3 .fusion-modal-trigger img, .ctemp-4 .fusion-modal-trigger img {
		padding: 20px;
		border-radius: 25px;
	}
}