@media screen and (max-width: 1680px) {
	.topsec {
	    padding-right: calc(40% - 50px);
	}
}
@media screen and (max-width: 1460px) {
	.topsec {
	    padding-right: calc(45% - 50px);
	}
}
@media screen and (max-width: 1300px) {
	.topsec {
	    padding-right: calc(50% - 50px);
	}
}
@media screen and (max-width: 1200px) {
	.show-mid {
		display: block;
	}
	.hide-mid {
		display: none;
	}
}
@media screen and (max-width: 1024px) {
	.show-sm {
		display: block;
	}
	.mainbg {
		background-size: cover;
		top: 22px;
	}
	.time-block {
		display: block;
		z-index: 1;
    	position: relative;
	}
	.time-group {
	    width: calc(100%);
	    max-width: 600px;
	    margin: 0;
	    display: block;
	    margin-bottom: 30px;
	}
	.speaker {
		margin: 0 20px 30px;
	}
}
@media screen and (max-width: 768px) {
	.bgs.small {
		display: block;
	}
	.mainbg.show .bgs.small {
		opacity: 1;
	}

	.hide-sm {
		display: none;
	}
	body {
		font-size: 1rem;
	}
	.hbg-btn {
		display: inline-block;
	}
	header {
		overflow: hidden;
		max-height: 60px;
	}
	header.active {
		max-height: 300px;
	}
	.navtop .flex {
		display: block;
		margin-left: -5px;
		text-align: left;
		padding-top: 13px;
	}
	.navbar {
		padding-top: 70px;
	}
	.navbar li {
		display: block;
		padding: 0px 20px;
		margin-bottom: 10px;
	}
	.navbar li + li {
		margin-left: 0px;
	}
	.nav-logo {
		padding: 0.5em 0 0.5em;
		position: absolute;
	}
	.navbar a {
		color: #666;
	}
	/* text */
	.t-xlarge {
		font-size: 1.6em; /* 30px */
	}
	.t-large {
		font-size: 1.4em; /* 26px */
	}
	.t-midlarge {
		font-size: 1.2em; /* 22px */
	}
	.t-mid {
		font-size: 1em; /* 18px */
	}
	.t-small {
		font-size: 0.9em; /* 16px */
	}
	.t-xsmall {
		font-size: 0.8em; /* 14px */
	}
	
	.section-title {
		font-size: 26px;
		margin-left: 0;
	}

	/* layout */
	.container {
		padding: 4em 1.3em;
	}
	.bg-w-sm {
		padding: 15px;
		margin: 0 -15px;
	}
	.text-center-sm {
		text-align: center;
	}
	.mx-auto-sm {
		margin-left: auto;
		margin-right: auto;
	}

	.mainbg.show .bgs, .mainbg.show::after {
		filter: blur(1px);
	}
	.topsec .nav-scrollspy {
		margin-top: 0px;
	}
	.topsec .nav-scrollspy p {
		text-shadow: 0 0 5px rgba(0, 0, 0, 1);
		text-align: left;
	}
	#intro-sec .text-center {
		text-align: left;
	}
	.rollover figure .back {
		width: 240px;
		margin-left: -16px;
	}
	.long-btn {
	    height: 135px;
	    width: 36px;
	    padding: 9px;
	    letter-spacing: 3px;
	    font-size: 19px;
	}
	.topsec {
		text-align: center;
		padding-top: 35%;
	}
	.top-btn {
		width: 36px;
		height: 36px;
		padding: 18px 11.5px;
	}
	.top-btn::before {
		width: 18px;
		top: 10px;
	}
	.top-btn::after {
		width: 9px;
		height: 9px;
	}
	.news-card {
		display: block;
		max-width: 100%;
		margin-bottom: 30px;
	}
	.flex-space {
		display: block;
		text-align: center;
	}
	.hideontop {
		opacity: 0;
		right: -4px;
    	transform: scale(0.65);
	}
	.hideontop.show {
	    opacity: 1;
	    pointer-events: auto;
	    transform: translateY(50px) scale(0.65);
	}
	.long-btn {
		font-weight: 500;
	}
	.speaker {
		margin-bottom: 0px;
	}
	.slider {
		width: 270px;
	}
	.speaker-slick .speaker {
		margin: 0 54px 0 46px;
	}
	.speaker-info {
		
	}
	.slick-arrow {
		top: 100px;
	}
	.news-slick, .speaker-slick {
		padding-top: 1em;
	}
	.slick-arrow.slick-prev {
		left: 0%;
	}
	.slick-arrow.slick-next {
		right: 2%;
	}
	.slick-dots {
		top: -42px;
	}
	footer {
		margin-top: -1px;
	}
	footer .container {
		text-align: center;
	}
	footer .container span {
		display: block;
		margin-top: 2em;
	}
	footer .container span#count-people {
		display: inline-block;
		margin-top: 0;
	}
	.logo {
		margin-left: 0;
	}
	.popup-img {
		display: block;
		text-align: center;
		margin: 0 auto 20px;
	}
	#popup-world-3 .popup-img {
		width: 160px;
		min-width: 160px;
	}
	.popup-block p {
		padding-right: 0px;
	}
	.textblock {
		max-height: 150px;
	}

}

@media screen and (max-width: 574px) {
	.topsec h1, .topsec h2 {
		text-align: center;
	}
	
	.d-table {
		display: block;
	}
	.d-row {
		display: block;
	}
	.d-cell {
		display: block;
	}
	.form-item label {
		margin-bottom: 10px;
	}
	.content {
	    padding: 4em 1em;
	}
	.linkafter.showafter + .form-item {
		display: table-row;
	}

	.card {
		margin: 0;
	}
	.card-footer h4 {
		margin-bottom: 0;
	}
	/* info */
	.time-group {
		border-left: 0 solid transparent;
		border-right: 0px solid transparent;
	}
	.time-row {
		display: block;
	}
	.time-col, .event-col {
		width: 100%;
		text-align: left;
	}
	.time-col p {
		font-size: 14px;
		line-height: 1;
	}
	.event-col p span {
		font-size: 12px;
    	margin-left: 6px;
	}
	.bg-dec::before, .bg-dec::after {
		z-index: 0;
    	opacity: 0.25;
    	filter: blur(5px);
	}
	.name-wrap {
		white-space: normal;
	}
}