@media only screen and (max-width: 959px) {
	
	body {
	    background-image: none;
	}

	.ibm #container {
	    max-width: 957px;
	    width: 100%;
	    padding: 0px 2%;
	    z-index: 1;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}

	.ibm #header {
		height: auto;
		background-image: none;
		background-color: #ebebeb;
		max-width: 100%;
	}

	#splash.social,
	#container #splash {
		display: block;
		background-size: 100% auto;
		width:102%;
		height:0;
		padding-bottom:38%;
    	top: -35px !important;
    	left: -1%;
	}

	#container #splash {
		top:-27px !important;
	}

	#splash.home .video {
	    float: none;
	    background-color: #FFF;
	    position: absolute;
	    top:14%;
	    left: 5%;
	    width: 47%;
	    margin:0;
	    height: 68%;
	}

	.video#internal {
	    position: absolute;
	    top:14%;
	    right: 5%;
	    width: 47%;
	    margin:0;
	    height: 68%;
	}

	#splash.home .video embed,
	#splash.home .video img,
	#splash .video embed,
	.video#internal img,
	.video#internal embed {
		width: 100%;
		height: 100%;
	}

	#splash .viewall {
	    width: 440px;
	    text-align: right;
	    padding: 0px 18px 0px 0px;
	    position: absolute;
	    right:0;
	    bottom:10px;
	}

	#splash .viewall p {
		margin: 0;
		padding: 0;
	}

	#splash .text {
		margin: 0;
		padding: 0;
		position: absolute;
		bottom:4%;
		right: 1%;
		width: 45%;
	}

	#splash .text#internal {
		right: auto;
		left: 4%;
	}

	.ibm #logo {
		float: none;
		margin: 0 auto;
		max-width: 316px;
		width: 100%;
	}

	.ibm #logo img {
		max-width: 100%;
		height:auto;
	}

	#main-menu {
		padding-top: 40px;
		padding-bottom: 30px;
	}

	#main-menu ul,
	#main-menu {
		width: 100%;
		display: block;
		text-align: center;
	}

	#main-menu ul li {
		width: auto;
		display: inline-block;
		float: none;
	}

	.ibm #mainContent {
		max-width: 100%;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
		margin: 0;
		padding: 0;
	}
	
	.row {
	    max-width: 890px;
	    width: 100%;
	    float: none;
	    padding: 0 3.19%;
	    margin: 0 auto;
	    clear: both;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}

	.row img {
		max-width: 100%;
		height: auto;
	}

	.profile {
	    float: left;
	    height: 0px;
	    padding-bottom: 49.94%;
	    width: 32.58%;
	    margin-right: 0.67%;
	    position: relative;
	    display: inline-block;	
	}

	.row#profiles .profile:last-child {
		margin-right: 0;
	}

	.row#profiles .profile a img {
		width: 100%;
		height: auto;
	}

	.profile span {
    	position: absolute;
    	width: 100%;
    	bottom: 0px;
    	top: auto;
	}

	.row#topics_bg {
		text-align: center;
		background-image: none;
		margin-right: 3.19%;
		margin-left: 3.19%;
		width: auto;
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.row#topics_bg::before {
		position: absolute;
		width: 100%;
		height:40px;
		background: url(../img/top_topics.jpg) center center no-repeat transparent;
		background-size: 100% auto;
		position: absolute;
		top:0;
		left:0;
		content: " ";
	}

	.row#topics_bg::after {
		content: " ";
		position: absolute;
		width: 100%;
		height:40px;
		background: url(../img/bottom_topics.jpg) center center no-repeat transparent;
		background-size: 100% auto;
		position: absolute;
		bottom:0;
		left:0;
	}

	.row#topics_bg .topic {
	    float: none;
	    position: relative;
		display: inline-block;	    
	}

	.row#topics_bg h2 { 
		text-align: left;
	}

	.extra_box {
	    width: 32.58%;
	    height: 0;
	    padding: 0;
	    padding-bottom: 17.98%;
	    margin-right: 0.45%;
	    position: relative;
	    background-size: 100% auto;
	    margin-bottom: 40px;
	    z-index: 99;
	}

	.extra_box h2 {
	    max-width: 170px;
	    line-height: 24px;
	    position: absolute;
	    top: 10%;
	    left: 8%;
	}

	.btn_more a {
	    position: absolute;
	    top: auto;
	    bottom:-15px;
	    left: 8%;
	    padding: 14px 0px 0px 2px;
	}

	.row#press {
	    padding: 0 3.19%;
	    margin: 0;
	    max-width: 870px;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	    width: 100%;
	}

	.ibm #footer {
		width: 100%;
		background-color: transparent;
		margin:0;
		padding:0;
	}

	.ibm #footer-top {
	    width:100%;
	    background: url(../img/bg_bottom_resp.jpg) center bottom no-repeat #fff;
	    background-size: 100% auto;
	    float: left;
	    padding:20px 3.19%;
	    height: 100px;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	    margin-bottom: 15px;
	}

	.ibm #footer-top {
		width: 100%;
		float: left;
		display: block;
		margin-bottom: 10px;
		height: auto;
		padding-bottom: 10px;
		overflow: hidden;
	}

	.ibm #left_col {
	    margin: 1.06% 1.06% 0px 3.19%;
	    width: 21.28%;
	}
	
	
	.ibm #right_col {
	    float: left;
	    margin: 1.06% 1.06% 0px 3.19%;
	    width: 21.28%;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	    /*clear:left;
	    display: none;*/
		text-align: center;
		background-image: none !important;
		/*clear: both;*/
	}

	.ibm #right_col br {
		display: none;
	}

	.ibm #right_col br a {
		display: inline-block;
	}
	
	.ibm #article {
	    float: right;
	    width: 68%;
	    margin: 1.06% 3.19%;
	}

	.freading {
	    max-width: 100%;
    	padding: 20px 10px 20px 10px;
    	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	}

	#article .profilebox {
	    max-width: 100%;
	 	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	 	width:100%;   
	}

	#sub-menu {
	    max-width: 960px;
	    width:100%;
	    display: block;
	    height: auto !important;
	    position: relative;
	    /*margin: 0 -10px;*/
	    margin-bottom: 15px;
	}

	#sub-menu.show_responsive ul li {
		opacity:1;
		height: 60px;
		border-bottom: 1px #ebebeb solid;
	}

	#sub-menu ul li.current { display: block; height: 60px; opacity: 1.0;}
	
	#sub-menu ul li {
		width: 100%;
		transition:All 1s ease;
		-webkit-transition:All 0.4s ease;
		-moz-transition:All 0.4s ease;
		-o-transition:All 0.4s ease;
		opacity: 0;
		height:0;
	}

	#sub-menu ul li a {
		width: 100%;
		font-size: 18px;
		text-align: left;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
		height:60px;
		background-image: none;
	}

	#sub-menu .responsive_menu {
		display: block;
	}

	#sub-menu li#navi_3.current {
		background-color: #C06;
	}

	#sub-menu li#navi_2.current {
		background-color: #399;
	}

	#sub-menu li#navi_2.current a,
	#sub-menu li#navi_3.current a {
		color: #fff;
		background-image: none;
	}

	.ibm #article_foot {
		width: 100%;
	}

	.ibm #article_foot h6 {
		text-align: center;
	}

	.ibm #article_foot h6 > * {
		display: inline-block !important;
		float: none;
	}

	.ibm #article_foot h6 > a.btop {
		width: 100%;
		margin-top: 20px;
	}

	/***************** GALLERY ******************/

	#mainContent > div.cat_item_row {
	    float: left;
	    width: 72.3%;
	    margin: 1.06%;
	}

	#mainContent > div.cat_item_row > div.cat_item_row {
		width: 100%;
	}

	div.jwbox {
		width: 33.333%;
		height: auto;
		display: block;
		float: left;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
		padding:0px 1px 1px 0px;
	}
	
	div.cat_item { /*CONTAINS THE IMAGE*/
		width: 100%;
		height: 0px;
		padding-bottom: 65.45%;
		margin:0;
	}

	div.cat_item > a {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	div.cat_item > a > img {
		width: 100%;
		height: 100%;
	}
	

	/******************/
	table td img {
		max-width: 100%;
		height: auto;
	}
}

@media only screen and (min-width: 959px) and (max-width: 768px) {
	
}

@media only screen and (max-width: 767px) {
	#mainContent {
		display:flex;
        flex-flow: column;
	}

	#mainContent #sub-menu  { order: 1;}
	#mainContent #splash	{ order: 2;}
	#mainContent #article   { order: 3;}
	#mainContent #left_col  { order: 4;}
	#mainContent #right_col { order: 5;}
	#mainContent #topics_bg { order: 6;}

	#mainContent #right_col { 
		width: 100%;
	    display: block;
	    float: left;
	    clear: both;
	    height: auto;
	    margin: 0 0 20px 0;
	    padding: 1.06%;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
	    overflow:hidden;
	}

	.ibm #left_col {
	    padding: 0 3.19% 20px 3.19%;
	    width: 100%;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
	    margin:0;
	}

	.freading {
	    max-width: 100%;
	    width: 100%;
	}

	.ibm #article {
	    width: 100%;
	    padding: 20px 3.19%;
	    margin:0;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
	}
	
	#article .profilebox {
	    width: 100%;
	    -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
	}

	div#article img {
		max-width: 100%;
		height: auto !important;
	}

	#mainContent > div.cat_item_row {
		width: 100%;
		margin: 0;
		padding: 0 3.19%;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
	}

	.form {
		width: 100%;
		padding: 0 3.19%;
		-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;   
	}

	.form > form table td,
	.form > form table,
	.form > form {
		width: 100% !important;
	}

	#main-menu li a {
	    height: 20px;
	}

	#main-menu {
		height: 40px;
	}

	#splash .text h2 {
		font-size: 15px;
		line-height: 17px;
	}

	#splash .text h1 {
		font-size: 18px;
		line-height: 19px;
	}
}

@media only screen and (min-width: 600px) and (max-width: 767px) {

}

@media only screen and (max-width: 600px) {

	.ibm #footer h2 {
		padding-right: 0;
	}

	.row#profiles {
		text-align: center;
	}

	.profile {
	    padding-bottom: 100%;
	    width: 65.58%;
	    margin-right:0;
	    display: inline-block;
	    float: none;
	}

	.extra_box {
	    width: 100%;
	    padding-bottom: 53%;
	    margin-right: 0;
	    position: relative;
	    background-size: 100% auto;
	    margin-bottom: 20px;
	}

	.extra_box h2 {
		font-size: 40px;
		padding-top: 25px;
	}

	#main-menu {
		height: auto;
		padding-bottom: 25px;
	}
	
	#main-menu li a {
	    color: #666;
	    padding: 10px 0px 0px 0px;
	    height: 20px;
	    margin-bottom: 20px;
	}

	#splash .text h2 {
		font-size: 12px;
		line-height: 14px;
	}

	#splash .text h1 {
		font-size: 15px;
		line-height: 17px;
	}

	.ibm #share {
		width: 100%;
		text-align: center;
	}

	#footer-top > h2 {
		text-align: center;
		margin-top: 10px;
		float: left;
		width: 100%;
	}

	#footer-top > h2 a {
		display: inline-block;
	}
}

@media only screen and (max-width: 599px) {

}

@media only screen and (max-width: 480px) {
	.row#profiles {
		text-align: center;
	}
	
	.profile {
	    padding-bottom: 0;
	    width:100%;
	    height: auto;
	}

	.profile span {
		position: relative;
	}

	div#article img {
		/*min-width: 100%;*/
	}

	div.jwbox {
	    width: 100%;
	    padding:0;
	}

	.extra_box h2 {
		padding-top: 15px;
	}

	table,
	table tbody,
	table tr,
	table td,
	table th {
		width: 100%;
	}

	table td {
		float: left;
		width: 46%;
		height: auto;
	}

	#splash .text h2 {
		font-size: 10px;
		line-height: 12px;
	}

	#splash .text h1 {
		font-size: 12px;
		line-height: 14px;
	}

	.img_right {
		margin: 0;
		width: 100%;
	}

	.img_right img,
	.img_right embed {
		width: 100%;
		padding: 0;
	}

	#splash .viewall {
		bottom: 2px;
	}
}

@media only screen and (min-width: 340px) and (max-width: 479px) {

}


@media only screen and (min-width: 340px) and (max-width: 669px) {
	
	

}

@media only screen and (max-width: 340px) {
	table td {
		float: left;
		width: 100% !important;
		height: auto !important;
		margin: 0;
		text-align: center;
	}

}

