/* CUSTOM */
/*.bio-link {display:none} */
h1,
h2 {
	margin-bottom: 18px !important;
}

h6 {
	margin-top: 0 !important;
	font-size: 0.7em !important;
}

a,
a:hover,
a:visited {
	color: #212529 !important;
	text-decoration: none !important;
}

.invalid-feedback {
	text-align: left;
	font-size: 100%;
}

.conference-president-container {
	column-count: 2;
	column-gap: 30px;
	text-align: justify;
	margin-bottom: 22px;
	word-spacing: 3px;
}

.conference-president-container p {
	margin-bottom: 0;
	text-indent: 30px;
}

#bioModal .modal-dialog {
	min-width: 40vw;
}

#descriptionModal .modal-body,
#bioModal .modal-body {
	overflow-y: scroll;
}

.dropdown-menu {
	top: 15px !important;
}

ul.share-group {
	margin: 0;
	padding: 0;
	font-size: 14px;
}

ul.share-group ul {
	padding: 0.5rem 1rem 0.5rem 0.5rem;
}

ul.share-group li {
	list-style: none;
}

ul.share-group>li {
	display: inline-block;
}

#navbarSupportedContent ul li a.nav-link {
	padding: 0px 16px !important;
	font-size: 16px;
	font-weight: 500;
	line-height: 18px;
}

@media (max-width: 992px) {
	#navbarSupportedContent ul li a.nav-link {
		padding: 0px 10px !important;
		font-size: 18px;
		margin-bottom: 10px;
	}

	.language-dropdown {
		text-align: right;
	}

	.share-group li {
		font-size: 12px;
	}

	.language-dropdown .dropdown-menu.show {
		left: unset !important;
		right: 0;
		top: 40px !important;
	}

	.img-desk {
		display: none !important;
	}

	.img-mobile {
		display: inline !important;
	}

	.display-desktop {
		display: none;
	}

	.navigation-bar {
		background-color: #f1f1f1 !important;
	}

	.modal-dialog {
		width: 100vw;
		margin: 0;
	}

	.modal-dialog .modal-content {
		height: 100vh;
	}

	.programTable thead tr th:nth-child(3),
	.programTable thead tr th:nth-child(4),
	.programTable thead tr:nth-child(2),
	.programTable tbody tr td:nth-child(3),
	.programTable tbody tr td:nth-child(4) {
		display: none;
	}

	.programTable tbody tr td div:not(:last-child) {
		margin-bottom: 10px;
	}

	.c-flex {
		flex-direction: column;
	}

	.conference-president-container {
		column-count: 1;
	}

	h2,
	.h2 {
		font-size: 1.5em;
	}

	h1,
	.h1 {
		font-size: 1.7em;
	}

	p {
		text-align: left;
		font-size: 1em;
	}

	.share-group {
		font-size: 12px;
	}

	.dropdown-toggle,
	.dropdown-menu {
		font-size: 12px;
	}

	a img:not([data-toggle]) {
		width: 100%;
	}

	.share-group {
		margin-top: -18px !important;
	}
}

h4 {
	/*overflow-wrap: break-word;*/
}

.btn-dark {
	background-color: #004245 !important;
}

.carousel-control-prev {
	transform: scale(1.2) translateX(15px);
	max-width: 45px;
	margin-bottom: 30px;
}

.carousel-control-next {
	transform: scale(1.2) translateX(-20px);
	max-width: 45px;
	margin-bottom: 30px;
}

@media (max-width: 991px) {
	.c-flexitem+.c-flexitem {
		border-top: 1px solid rgb(193, 193, 193);
		margin-top: 20px;
		padding-top: 10px;
	}

	h4 {
		font-size: 12px;
	}

	.trend {
		text-align: center;
		font-size: 12px;
	}

	#navbarSupportedContent ul li {
		text-align: center !important;
		width: 100%;
		border-bottom: 1px solid #9a9797;
		padding-top: 7px;
	}

	.apoio-container div:not(:last-child) {}
}

@media (min-width: 992px) {
	.img-desk {
		display: inline;
	}

	.img-mobile {
		display: none;
	}

	.display-mobile {
		display: none;
	}

	.navigation-bar {
		background-color: white !important;
	}

	.programTable tbody tr td div:nth-child(2),
	.programTable tbody tr td div:nth-child(3) {
		display: none;
	}

	.jumbotron-hotel {
		min-height: 485px;
	}

	.navigation-bar {
		background-color: #004444 !important;
	}

	#navbarSupportedContent ul li.nav-item a {
		color: white !important;
	}
}

button.close {
	font-size: 3rem !important;
}

.programTable thead tr th {
	text-align: left !important;
	line-height: 1rem;
	vertical-align: middle;
}

.programTable thead tr th {
	padding: 6px 11px;
}


.programTable tbody tr td {
	text-align: left !important;
	padding: 28px 12px;
	line-height: 1.15rem;
	vertical-align: middle;
}

.wfnr25table thead tr {
	background-color: rgba(214, 215, 181, 0.7);
}

.wfnr25table tbody tr:nth-child(odd) {
	background-color: rgba(141, 196, 203, 0.7);
}

.wfnr25table tbody tr:nth-child(even) {
	background-color: rgba(175, 220, 226, 0.7);
}

.confirmedSpeakersContainer h3 {
	margin: 0;
}

.confirmedSpeakersContainer ul {
	margin-bottom: 1.5rem;
}

.confirmedSpeakersContainer ul {
	min-height: 120px;
}

.bio-link,
.bio-link-fern {
	cursor: pointer;
}

.jumbotron {
	background-color: rgba(217, 228, 230, 1);
}

.c-flex {
	display: flex;
	justify-content: space-around;
}

.c-flex .c-flexitem {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.scale-2x {
	transform: scale(2);
}

.speaker-container li.media {
	border: 1px solid #a5b4c0;
	border-radius: 5px;
	padding: 0px;
	background-color: white;
	overflow: hidden;
}

.speaker-container li.media .media-body {
	margin: 15px 5px 5px 0;
}

.speaker-title {
	font-size: 0.7em !important;
	font-weight: normal;
}

.speaker-name {
	font-size: 14px !important;
	font-weight: bold;
}

.speaker-country {
	font-size: 18px !important;
	font-weight: bold;
}

.speaker-container p {
	line-height: 18px;
}

.speaker-container img {
	max-height: 200px;
	max-width:	150px;
	min-height: 200px;
	margin-right: 10px;
}

.photo-container img {
	max-height: 200px;
	max-width: 150px;
	min-height: 200px;
}

@media (max-width: 767px) {

	.speaker-container .media {
		display: flex;
		flex-direction: column;
		text-align: center;
		align-items: stretch;
		min-height: 380px;
	}


		.speaker-container img {
			width: 100%;
			max-width: 150px;
			height: auto;
			margin-bottom: 10px;
			min-height: auto;
			margin-right: 0px;
		}

		.speaker-container .media-body p {
			text-align:center;
		}


		.main .media {
			align-items: center;
		}
}

@media (min-width: 360px) and (max-width: 767px) {
	.speaker-container .media {
		align-items: center;
	}
}

.col-6 {
	padding-left: 10px;
	padding-right:10px;
}



.carousel-caption h5,
.carousel-caption p {
	text-shadow: 1px 1px 3px black;
}

.bg-white {
	background-color: white;
}

.bg-gray {
	background-color: #F1F1F1;
}

.bg-gray-2 {
	background-color: #CFCFCF;
}

section {
	padding: 10px 0px;
}

.no-padding {
	padding: 0 !important;
}

.carouse-item-title {
	font-size: 14px;
}

.carouse-item-subtitle {
	font-size: 12px;
	margin-top: -4px;
}

.img-carousel-description {
	width: 100%;
	height: auto;
}

.modal-title {
	font-size: 20px;
}

#navbarSupportedContent ul {
	align-items: center;
}

#navbarSupportedContent ul li {
	text-align: center !important;
}

#dropdownMenuButton {
	font-size: 14px;
}

.apoio-container {
	padding: 20px 20px;
	background-color: white;
	border: 1px solid #a5b4c0;
	border-radius: 5px;
	margin-bottom: 20px;
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-wrap: wrap;
	row-gap: 30px;
}

.hotel-content .hotel-content-hidden-area {
	display: none;
}

.hotel-price-table th,
.hotel-price-table td {
	text-align: left !important;
}

.jumbotron-hotel {
	padding: 1rem 1rem;
}

.hotel-content img {
	width: 100%
}

.footer-content h5 {
	margin-bottom: 0px !important;
}

.img-banner-mobile {
	height: auto !important;
}

.hotel-list {
	list-style: none;
	padding: 0;
}

.hotel-list_item {
	padding: 8px 0px;
	border-bottom: 1px solid #2e836b;
}

.hotel-list_item:after {
	content: '>';
	position: absolute;
	color: #2e836b;
	right: 30px;
}

.hotel-item {
	padding: 8px 0px;
	border-bottom: 1px solid #2e836b;
	margin-bottom: 3px;
	font-size: 16px;
}

/*----------- Layout do programa de eventos -----------*/
.dia {
	margin-right: 5px;
	;
	height: 100%;
	display: inline-block;
	padding: 5px;
	cursor: pointer;
}

.dia.selecionado {
	border-bottom: 3px solid #104646;
	cursor: default;
	background-color: #21928f;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	font-weight: bold;
	border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	padding: 5px 15px;
	color: white;
}

.dia.selecionado a time {
	color: white !important;
}

.schedule {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	/* 4 colunas para salas */
	grid-template-rows: 50px;
	/* Altura inicial da primeira linha (para cabeçalhos de sala) */
	grid-auto-rows: min-content;
	/* Define altura automática para as linhas seguintes, ajustando conforme o conteúdo */
	gap: 0px;
	/* Remove espaços entre horários e colunas de auditórios */
	max-width: 100%;
	margin: auto;
	background-color: #ddd;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
}

.room-header {
	font-weight: bold;
	background-color: #f3f3f3;
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid #ddd;
	flex-direction: column;
}

.cell {
	background-color: #fff;
	min-height: 10px;
	border-right: 1px solid #ddd;
}

.cell.first-time {
	border-top: 1px solid #ddd;
}

.time,
.room-header {
	padding: 5px;
	text-align: center;
	box-sizing: border-box;
	vertical-align: middle;
}

.time {
	background-color: #f3f3f3;
	font-weight: bold;
	font-size: 14px;
	display: flex;
	align-items: start;
	justify-content: center;
	padding: 5px;
	text-align: center;
	box-sizing: border-box;
	height: 100%;
	border-right: 1px solid #ddd;
}

.time:not(:first-child) {
	border-top: 1px solid #ddd;
}

.workshop {
	background-color: #bfe8df;
	text-align: left;
	padding: 10px;
	margin: 2px 10px 2px 10px;
	border-radius: 5px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
}

.workshop .conteudo {
	height: 100%;
}

.workshop p {
	margin: 5px 0 0 0;
	color: #555;
	font-size: 14px;
}

.workshop .horario {
	font-size: 17px;
	text-align: left;
	font-weight: bold !important;
	margin-bottom: 10px;
}

.workshop .auditorio {
	font-weight: bold;
	text-align: left;
	margin-top: 10px;
	display: none;
}

.workshop .auditorio p {
	color: #777 !important;
}

.workshop .auditorio svg {
	width: 12px;
}

.full {
	margin: 10px 1.2% 10px 1.2%;
	background-color: #ebc6b9 !important;
}

.desktop {
	display: block;
}

.mobile {
	display: none;
}

@media (max-width: 768px) {
	.desktop {
		display: none;
	}

	.mobile {
		display: block;
	}

	.titulo {
		text-align: center;
		padding-left: 0px;
	}

	.dias {
		padding-top: 5px;
		text-align: center;
		display: flex;
		flex-direction: column;
	}

	.horario-mobile {
		font-size: 16px;
		font-weight: bold;
		margin-top: 20px;
		margin-bottom: 20px;
		margin-left: 20px;
	}

	.workshop {
		margin-top: 10px;
	}

	.workshop .auditorio {
		display: block;
	}
}

.tabela-precos {
	width: 100%;
	margin-bottom: 7px;
}

.tabela-precos thead tr {
	background-color: #0da382;
	color: white;
	font-size: 12px;
}

.tabela-precos thead tr th {
	padding: 5px 10px;
}

.tabela-precos tbody tr td:first-child {
	text-align: left;
}

.tabela-precos tbody tr td:last-child {
	white-space: nowrap;
}

@media (max-width: 768px) {
	.tabela-precos tbody tr td:last-child {
		text-align: right;
	}
}

.tabela-precos tbody tr td {
	padding: 5px 10px;
}

.tabela-precos tbody tr:nth-child(odd) {
	background-color: #bfe8df;
}

.toggle-sibling {
	padding: 0 10px;
	background-color: #0da382;
	color: white;
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	cursor: pointer;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.toggle-sibling>div {
	line-height: 22px;
}

.expandable-item {
	display: none;
	text-align: left;
	background-color: #bfe8df;
	padding: 10px;
}

.toggle-sibling .expand-icon {
	font-size: 40px;
	font-weight: 500;
}

.cell-horario-question {
	font-weight: 700;
	font-size: 12px;
}

.expandable-content {
	column-count: 2;
	column-gap: 30px;
	text-align: left;
	margin-bottom: 22px;
	word-spacing: 3px;
	padding: 5px 15px;
}

.expandable-content ol {
	padding-left: 30px;
}

@media (max-width: 768px) {
	.expandable-content {
		column-count: 1;
	}
}

.separador-bottom {
	border-bottom: 1px solid #a5b4c0;
	padding-bottom: 10px;
	margin-bottom: 25px;
}

.workshop.hide-auditorio .auditorio {
	display: none;
}

.mais-palestrantes div div div.expandable-item {
    padding-left: 0;
    padding-right: 0;
    background-color: transparent !important;
}


@media (max-width: 768px) {
	.custom-agenda {
		
	}
    
    .workshop .horario {
        font-size: 14px !important;
    }
    
    .workshop p {
        font-size: 12px !important;
    }
     
    h2, .h2 {
        font-size: 1.2em;
    }
    
    p {
        font-size: .8em;
    }
}

/* back-to-top button */
#back-to-top {
	display: none;
	background: #004444;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	bottom: 20px;
	-webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .26);
	-moz-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .26);
	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .26);
	color: #fff;
	cursor: pointer;
	display: block;
	height: 56px;
	opacity: 1;
	outline: 0;
	position: fixed;
	right: 20px;
	-webkit-tap-highlight-color: transparent;
	-webkit-touch-callout: none;
	-webkit-transition: bottom .2s, opacity .2s;
	-o-transition: bottom .2s, opacity .2s;
	-moz-transition: bottom .2s, opacity .2s;
	transition: bottom .2s, opacity .2s;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: 56px;
	z-index: 1;
	cursor: pointer;
}

#back-to-top svg {
	display: block;
	fill: white;
	height: 24px;
	margin: 16px auto 0;
	width: 24px;
}

#back-to-top:hover {
	background-color: #333;
}

.map-responsivo {
	max-width: 500px;
	width: 100%; 
	height: 300px; 
	margin: 0 auto; 
}

.map-responsivo iframe {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}